From a95309ec158af3b95fe5b77f4f0c24208dc657e3 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 05 12月 2024 14:10:38 +0800
Subject: [PATCH] 22
---
CC/iWareCC_ASRS/ThreadService/01_BZ01工位(清灰,洗板后工位)/DataProcess_BZ01.cs | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 110 insertions(+), 4 deletions(-)
diff --git "a/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs" "b/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs"
index b99875d..ef1a668 100644
--- "a/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs"
+++ "b/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs"
@@ -9,6 +9,8 @@
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Net.NetworkInformation;
+using System.Reflection.Emit;
using System.ServiceModel.Configuration;
using System.Text;
using System.Threading;
@@ -31,17 +33,28 @@
LogType logType = LogType.DataProcess_BZ01;
while (true)
{
- Thread.Sleep(2000);//浼戠湢2绉掞紝灏嗕紤鐪犲啓鍒板墠闈紝鏄负浜嗕笅闈㈢殑continue鏂规硶鎵ц鍚庝笉鏄剧ず閿欒淇℃伅鐨勬彁绀猴紒锛侊紒銆怑ditBy shaocx,2022-05-24銆�
+ Thread.Sleep(1000);//浼戠湢2绉掞紝灏嗕紤鐪犲啓鍒板墠闈紝鏄负浜嗕笅闈㈢殑continue鏂规硶鎵ц鍚庝笉鏄剧ず閿欒淇℃伅鐨勬彁绀猴紒锛侊紒銆怑ditBy shaocx,2022-05-24銆�
SystemWarningMsg._lbl_alert_DataProcess_BZ01 = string.Empty;
try
{
- if (SystemValue.isAllowRuning_DataProcess_BZ01 && SystemValue.isStartedModel)
+ if (SystemValue.isStartedModel)//SystemValue.isAllowRuning_DataProcess_BZ01 &&
{
+ if (FormCC.IsAllowRunOutMode == true)
+ {
+ SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"姝e湪骞插嚭搴撴ā寮忥紝姝ゆ柟娉曟殏鍋溿�傘�� ";
+ continue;
+ }
+
var rgvLocation = StationLocationEnum.BZ01.ToString();
/*
* 1銆佷粠鏁版嵁搴撲腑鍒ゆ柇鏄惁榻愬
* 2銆佹牴鎹綈濂楃粨鏋滐紝鎺ㄩ�佺粰PLC
*/
+ if (FormCC.stationView == null)
+ {
+ SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()}-鑾峰彇PLC瀵硅薄涓簄ull";
+ continue;
+ }
var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault();
if (obj.R_ReqParseData)
{
@@ -61,6 +74,14 @@
SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()},鏍规嵁UPI:{upiCode}娌℃湁鎵惧埌瀵硅薄 ";
continue;
}
+
+ var isAllow = IsAllloRunOutTaskMode(wmsDB, upiObj);
+ if (isAllow)
+ {
+ SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()},鍒ゆ柇瑕佹墽琛屽嚭搴撴ā寮忎簡锛屾鏂规硶鏆傚仠銆傘�� ";
+ continue;
+ }
+
//鏌ヨ鏄惁榻愬寘
var allList = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == upiObj.PackageCode).ToList();
var isQiTaoList = allList.Where(x => x.AreaCode == (int)AreaCodeEnum.寰呯紦瀛樺垎鎷e尯
@@ -115,10 +136,17 @@
rbRunMode.OrderId = upiObj.OrderId;
rbRunMode.PackageCode = upiObj.PackageCode;
+ WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, "BZ01", "榻愬寘楠岃瘉:" + (qitaoReault ? "榻愬寘" : "涓嶉綈鍖�"));
+
wmsDB.SaveChanges();
}
-
-
+ }
+ else
+ {
+ using (WmsDBModel wmsDB = new WmsDBModel())
+ {
+ var isAllow = IsAllloRunOutTaskMode(wmsDB, null);
+ }
}
}
}
@@ -130,5 +158,83 @@
}
}
+
+ /// <summary>
+ /// 鏄惁鍙互鎵ц鍑哄簱妯″紡
+ /// </summary>
+ /// <param name="wmsDB"></param>
+ /// <param name="curUpiObj"></param>
+ /// <returns></returns>
+ private static bool IsAllloRunOutTaskMode(WmsDBModel wmsDB, mes_batchOrderUPI_new curUpiObj)
+ {
+ //棣栧厛鏌ヨ鏁版嵁搴撲腑鏄惁鏈� 瑕佸嚭搴撶殑鏁版嵁
+ var isExistOutTaskForNewCreated = wmsDB.wms_rbline_task.Where(x =>
+ (x.RbTaskType == (int)RbTaskTypeEnum.榻愬寘鍑哄簱浠诲姟 || x.RbTaskType == (int)RbTaskTypeEnum.寮哄埗鍑哄簱浠诲姟)
+ && x.TaskStatus == (int)TaskStatusEnum.鏂板缓
+ ).Count();
+ if (isExistOutTaskForNewCreated == 0)
+ {
+ FormCC.IsAllowRunOutMode = false;
+ return false;//涓嶈兘鎵ц 鍑哄簱妯″紡
+ }
+
+ var rbRunMode = wmsDB.wms_rbline_runmode.FirstOrDefault();
+ var lastUpi = rbRunMode.UPI;
+ var lastPackageCode = rbRunMode.PackageCode;
+
+ if (curUpiObj == null)
+ {//琛ㄧず姝ゆ椂鏃犳柊鏉胯繃鏉�
+ if (!string.IsNullOrEmpty(lastUpi))
+ {
+ var lastObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == lastUpi).FirstOrDefault();
+ if (lastObj.UpiStatus == (int)UpiStatusEnum.涓嶉綈鍖� || lastObj.UpiStatus == (int)UpiStatusEnum.鍒濆)
+ {//琛ㄧず鏈�鍚庤繃鍘荤殑鏉挎槸涓嶉綈鍖呯殑鏉�
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ else
+ {//琛ㄧず鏈�鍚庤繃鍘荤殑鏉挎槸榻愬寘鐨勬澘
+ //瑕佺户缁垽鏂悗闈� 寰呭垎鎷e尯鍩熻繕瀛樺湪鐩稿悓鍖呯殑鏉挎暟鎹悧
+ var isExistSamePackageCode = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == lastPackageCode
+ && x.AreaCode == (int)AreaCodeEnum.寰呯紦瀛樺垎鎷e尯).Count();
+ if (isExistSamePackageCode > 0)
+ {
+ FormCC.IsAllowRunOutMode = false;
+ return false;//涓嶈兘鎵ц 鍑哄簱妯″紡
+ }
+ else
+ {
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+ }
+ else
+ {
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+ else
+ {//琛ㄧず姝ゆ椂鏈夋柊鏉胯繃鏉�
+ if (!string.IsNullOrEmpty(lastUpi))
+ {
+ if (lastPackageCode == curUpiObj.PackageCode)
+ {
+ FormCC.IsAllowRunOutMode = false;
+ return false;//涓嶈兘鎵ц 鍑哄簱妯″紡
+ }
+ else
+ {//鏂板寘杩囨潵浜�
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+ else
+ {
+ //鍙互杩愯鎵ц 鍑哄簱妯″紡
+ }
+ }
+
+ FormCC.IsAllowRunOutMode = true;
+ return true;
+ }
+
}
}
--
Gitblit v1.9.3