From e01a2b8111b8d9204b8f322709a9233969e26294 Mon Sep 17 00:00:00 2001 From: zongzhibin <zongzhibin@weben-smart.com> Date: 周四, 28 11月 2024 10:52:00 +0800 Subject: [PATCH] add --- CC/iWareCC_ASRS/ThreadService/04_BZ21(搬运整垛机器人)/DataProcess_BZ21.cs | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 150 insertions(+), 2 deletions(-) diff --git "a/CC/iWareCC_ASRS/ThreadService/04_BZ21\357\274\210\346\220\254\350\277\220\346\225\264\345\236\233\346\234\272\345\231\250\344\272\272\357\274\211/DataProcess_BZ21.cs" "b/CC/iWareCC_ASRS/ThreadService/04_BZ21\357\274\210\346\220\254\350\277\220\346\225\264\345\236\233\346\234\272\345\231\250\344\272\272\357\274\211/DataProcess_BZ21.cs" index 9c62d16..a02976f 100644 --- "a/CC/iWareCC_ASRS/ThreadService/04_BZ21\357\274\210\346\220\254\350\277\220\346\225\264\345\236\233\346\234\272\345\231\250\344\272\272\357\274\211/DataProcess_BZ21.cs" +++ "b/CC/iWareCC_ASRS/ThreadService/04_BZ21\357\274\210\346\220\254\350\277\220\346\225\264\345\236\233\346\234\272\345\231\250\344\272\272\357\274\211/DataProcess_BZ21.cs" @@ -1,4 +1,9 @@ -锘縰sing iWareCommon.Utils; +锘縰sing Admin.NET.Application; +using iWareCC.StationService; +using iWareCommon.Common.Globle; +using iWareCommon.Utils; +using iWareModel; +using iWareSql.DataAccess; using iWareSql.WmsDBModel; using System; using System.Collections.Generic; @@ -11,7 +16,150 @@ { public class DataProcess_BZ21 { + public static void Hander() + { + var alertMsg = ""; + LogType logType = LogType.DataProcess_BZ21; + while (true) + { + Thread.Sleep(2000);//浼戠湢2绉掞紝灏嗕紤鐪犲啓鍒板墠闈紝鏄负浜嗕笅闈㈢殑continue鏂规硶鎵ц鍚庝笉鏄剧ず閿欒淇℃伅鐨勬彁绀猴紒锛侊紒銆怑ditBy shaocx,2022-05-24銆� + SystemWarningMsg._lbl_alert_DataProcess_BZ21 = string.Empty; + try + { + if (SystemValue.isStartedModel) + { + var rgvLocation = StationLocationEnum.BZ21.ToString(); + /* + * 1銆佷粠鏁版嵁搴撲腑鍒ゆ柇鏄惁榻愬 + * 2銆佹牴鎹綈濂楃粨鏋滐紝鎺ㄩ�佺粰PLC + */ + var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); + if (obj.R_PalletizingAck) + { + //缁橮LC鎺ㄩ�佷换鍔″畬鎺ユ敹瀹屾垚澶嶄綅淇″彿 + using (StationServiceClient client = new StationServiceClient()) + { + var res = client.WriteStation_ACK((int)EDevice.Station, false, rgvLocation); + if (!res.result) + { + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}-涓嬪彂鐮佹澘浠诲姟 澶辫触,SetPalletizingTaskFinishAck 杩斿洖:{res.resMsg}"; + continue; + } + else + { + Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 鎴愬姛,SetPalletizingTaskFinishAck锛屽弬鏁�: 绔欑偣{rgvLocation}"); + } + } + + } + if (obj.R_ReqParseData) + { + var result = obj.R_ReadCodeResult; + if (string.IsNullOrEmpty(result)) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ21 = $"{rgvLocation.ToString()}-璇锋眰浜嗚В鐮侊紝浣嗘槸缁撴灉鏄┖鐨�,姝ゆ寰幆缁撴潫"; + continue; + } + var upiCode = result.Replace("/r", ""); ; + short cartonwidth = 0;//鏄惁鏈澘 + short cartonhigh = 0;//鏄惁鏃嬭浆 + short placeX = 0; + short placeY = 0; + short placeZ = 0; + string place = "22"; + using (WmsDBModel wmsDB = new WmsDBModel()) + { + //瑕佹槸鏈夊凡涓嬪彂鐨勪换鍔★紝灏变笉瑕佹墽琛� + var isValidate = TaskHandler.ValidateIssueTaskForBZ21(wmsDB,result); + if (!isValidate) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ21 = $"{rgvLocation.ToString()}-鏈夆�樺凡涓嬪彂鈥欑殑浠诲姟锛屼笉鑳藉鐞�,姝ゆ寰幆缁撴潫"; + continue; + } + var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); + if (upiObj == null) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ21 = $"{rgvLocation.ToString()},鏍规嵁UPI:{upiCode}娌℃湁鎵惧埌瀵硅薄 "; + continue; + } + + placeX = (short)upiObj.MachineXCenter; + placeY = (short)upiObj.MachineYCenter; + placeZ = (short)upiObj.MachineZCenter; + cartonhigh = (short)upiObj.Info3; + cartonwidth = (short)upiObj.Info2; + + //璁板綍浠诲姟 + var _id = Yitter.IdGenerator.YitIdHelper.NextId(); + var plcTaskNo = BusinessHelper.CreatePlcTaskIdForSrmTask(); + var putpakegecode = new mes_push_packagecode() + { + Id = _id, + PackageCode=upiObj.PackageCode, + PushStatus=0, + PushNum=0, + ApiMessage="11", + CreateTime = DateTime.Now, + CreateUserName = "CC", + UpdateTime = DateTime.Now, + UpdateUserName = "CC", + CreateOrgName="11" + }; + var task = new wms_rbline_task() + { + Id = _id, + TaskNo = plcTaskNo, + UPI = upiObj.UPI, + Length = upiObj.Length, + Width = upiObj.Width, + Thk = upiObj.Thk, + IssueTime = DateTime.Now, + PlanNo = upiObj.PlanNo, + OrderId = upiObj.OrderId, + PackageCode = upiObj.PackageCode, + RbTaskType = (int)RbTaskTypeEnum.澶规澘浠诲姟, + RbTaskTypeEnumName = RbTaskTypeEnum.澶规澘浠诲姟.ToString(), + TaskStatus = (int)TaskStatusEnum.宸蹭笅鍙�, + TaskStatusName = TaskStatusEnum.宸蹭笅鍙�.ToString(), + TaskMsg = "澶规澘", + CreateTime = DateTime.Now, + CreateUserName = "CC", + UpdateTime = DateTime.Now, + UpdateUserName = "CC", + PlaceCode = place + }; + + wmsDB.wms_rbline_task.Add(task); + // wmsDB.mes_push_packagecode.Add(putpakegecode); + using (StationServiceClient client = new StationServiceClient()) + { + + var res = client.WriteSurroundTaskInfo((int)EDevice.Station, rgvLocation, short.Parse(task.TaskNo), + (short)upiObj.Length, (short)upiObj.Width,cartonhigh,cartonwidth,placeX,placeY); + if (!res.result) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ12 = $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 澶辫触,WriteInStoreTaskInfoAsync 杩斿洖:{res.resMsg}"; + continue; + } + else + { + Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 鎴愬姛,WriteInStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}"); + } + } + + wmsDB.SaveChanges(); + } + } + } + } + catch (Exception ex) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 += " 鍑虹幇寮傚父:" + ex.Message + SysGloble.SPLIT_STR; + Log4NetHelper.WriteErrorLog(logType, " 鍑虹幇寮傚父锛�" + ex.Message, ex); + } + } + } public static void PushPackageCode() { while (true) @@ -19,7 +167,7 @@ Thread.Sleep(2000); using (WmsDBModel edm = new WmsDBModel()) { - var value = edm.mes_PushPackageCode.Where(x => x.PushStatus == 0 || x.PushStatus == 1).FirstOrDefault(); + var value = edm.mes_push_packagecode.Where(x => x.PushStatus == 0 || x.PushStatus == 1).FirstOrDefault(); if (value != null) { PushPackageCodeInput input = new PushPackageCodeInput(); -- Gitblit v1.9.3