From 00b6105b34870f6f5a33551534d0088f3f741906 Mon Sep 17 00:00:00 2001 From: 海波 张 <2956280567@qq.com> Date: 星期一, 07 七月 2025 17:33:53 +0800 Subject: [PATCH] 退库修改 --- process/TaskProcess.cs | 73 +++++++++++++++++++++++------------- 1 files changed, 47 insertions(+), 26 deletions(-) diff --git a/process/TaskProcess.cs b/process/TaskProcess.cs index 5f2c653..e88f347 100644 --- a/process/TaskProcess.cs +++ b/process/TaskProcess.cs @@ -174,6 +174,7 @@ NDCApi.ChangeOrderParam(mst.S_CODE, 1, startSite); NDCApi.ChangeOrderParam(mst.S_CODE, 2, endSite); NDCApi.ChangeOrderParam(mst.S_CODE, 4, "0"); + Thread.Sleep(1000); NDCApi.ChangeOrderParam(mst.S_CODE, 6, "2"); } } @@ -203,13 +204,16 @@ /// <param name="state"></param> internal static void OperateStatus(WMSTask mst, int state) { - if (state == 4) + if (state == 4)//鍙栬揣瀹屾垚 { CacheBitUpdate(mst, true); } if (state == 6)//鍗歌揣瀹屾垚 { - CacheBitUpdate(mst, false); + //閫�簱浠诲姟涓嶇粦瀹�+ if (!LocationHelper.GetErroArea(mst.S_END_AREA)) { + CacheBitUpdate(mst, false); + } } if (state == 7) { @@ -261,7 +265,9 @@ //鏀逛竴娈典换鍔$粓鐐� task.S_END_LOC = end.S_CODE; task.S_END_AREA = end.S_AREA_CODE; - db.Updateable(task).UpdateColumns(it => new { it.S_END_LOC, it.S_END_AREA }).ExecuteCommand(); + task.S_END_AREA_NAME = end.S_AREA_Name; + + db.Updateable(task).UpdateColumns(it => new { it.S_END_LOC, it.S_END_AREA ,it.S_END_AREA_NAME}).ExecuteCommand(); kt.Status = "Y"; db.Updateable(kt).UpdateColumns(it => new { it.Status }).ExecuteCommand(); db.CommitTran(); @@ -269,6 +275,7 @@ LogHelper.Info($"浠诲姟{task.S_CODE}鏀归亾鎴愬姛锛屾敼鍙傛暟2涓簕site},鍙傛暟6涓�锛�涓�", "鏀归亾瀹夊叏浜や簰"); NDCApi.ChangeOrderParam(task.S_CODE, 2, site); NDCApi.ChangeOrderParam(task.S_CODE, 4, "0"); + Thread.Sleep(1000); NDCApi.ChangeOrderParam(task.S_CODE, 6, "2"); return; } @@ -397,11 +404,6 @@ db.Updateable(wcsTask).UpdateColumns(it => new { it.S_END_LOC }).ExecuteCommand(); db.CommitTran(); - - - - - LocationHelper.LockLoc(connection.S_CODE, "鍏ュ簱閿�, 1); var endLoc1 = LocationHelper.GetLocOne(task.S_END_LOC); endLoc1.N_LOCK_STATE = 0; @@ -411,19 +413,24 @@ //鏀逛竴娈典换鍔$粓鐐� task.S_END_LOC = connection.S_CODE; task.S_END_AREA = connection.S_AREA_CODE; - db.Updateable(task).UpdateColumns(it => new { it.S_END_LOC, it.S_END_AREA }).ExecuteCommand(); + + task.S_END_AREA_NAME = connection.S_AREA_Name; + db.Updateable(task).UpdateColumns(it => new { it.S_END_LOC, it.S_END_AREA,it.S_END_AREA_NAME }).ExecuteCommand(); //鏀逛簩娈典换鍔¤捣鐐� wcsTask.S_START_LOC = connection.S_CODE; wcsTask.S_START_AREA = connection.S_AREA_CODE; - db.Updateable(wcsTask).UpdateColumns(it => new { it.S_START_LOC, it.S_START_AREA }).ExecuteCommand(); + + wcsTask.S_START_AREA_NAME = connection.S_AREA_Name; + db.Updateable(wcsTask).UpdateColumns(it => new { it.S_START_LOC, it.S_START_AREA,it.S_START_AREA_NAME}).ExecuteCommand(); db.CommitTran(); var site = LocationHelper.GetAgvSiteZc(connection.S_CODE); LogHelper.Info($"浠诲姟{task.S_CODE}鏀归亾鎴愬姛锛屾敼鍙傛暟2涓簕site},鍙傛暟6涓�,4涓�024", "鏀归亾瀹夊叏浜や簰"); NDCApi.ChangeOrderParam(task.S_CODE, 2, site); NDCApi.ChangeOrderParam(task.S_CODE, 4, "1024"); + Thread.Sleep(1000); NDCApi.ChangeOrderParam(task.S_CODE, 6, "2"); //} else if (workFlow.FLOWNAME.Contains("鍑哄簱")) { @@ -441,6 +448,7 @@ else { LogHelper.Info($"褰撳墠浠诲姟{task.S_CODE}鎺ラ┏浣峽task.S_END_LOC}鍙敤,褰撳墠搴撳尯{wcsTask.S_END_AREA}褰撳墠宸烽亾{loc1.N_ROADWAY}鍙敤锛屼笉闇�鏀归亾锛岀洿鎺ヤ慨鏀瑰弬鏁�涓�锛�涓�024", "鏀归亾瀹夊叏浜や簰"); NDCApi.ChangeOrderParam(task.S_CODE, 4, "1024"); + Thread.Sleep(1000); NDCApi.ChangeOrderParam(task.S_CODE, 6, "2"); } } @@ -738,14 +746,14 @@ var TrayLocation = db.Queryable<LocCntrRel>().Where(e => e.S_CNTR_CODE == model.TOOLS_NO).ToList(); if (TrayLocation.Count() > 0) { - LogHelper.Info("鏌ヨ鍒拌宸ヨ宸茬粡缁戝畾浜嗚揣浣嶄俊鎭�, "鐗╂枡缁戝畾瑙g粦"); - throw new Exception("鏌ヨ鍒拌宸ヨ宸茬粡缁戝畾浜嗚揣浣嶄俊鎭�); + LogHelper.Info("鏌ヨ鍒拌宸ヨ鎵樼洏鐮佸凡缁忕粦瀹氫簡璐т綅淇℃伅", "鐗╂枡缁戝畾瑙g粦"); + throw new Exception("鏌ヨ鍒拌宸ヨ鎵樼洏鐮佸凡缁忕粦瀹氫簡璐т綅淇℃伅"); } var TrayItems = db.Queryable<CntrItemRel>().Where(e => e.S_CNTR_CODE == model.TOOLS_NO).ToList(); if (TrayItems.Count() > 0) { - LogHelper.Info("鏌ヨ鍒拌宸ヨ宸茬粡缁戝畾浜嗙墿鏂欎俊鎭�, "鐗╂枡缁戝畾瑙g粦"); - throw new Exception("鏌ヨ鍒拌宸ヨ宸茬粡缁戝畾浜嗙墿鏂欎俊鎭�); + LogHelper.Info("鏌ヨ鍒拌宸ヨ鎵樼洏鐮佸凡缁忕粦瀹氫簡鐗╂枡淇℃伅", "鐗╂枡缁戝畾瑙g粦"); + throw new Exception("鏌ヨ鍒拌宸ヨ鎵樼洏鐮佸凡缁忕粦瀹氫簡鐗╂枡淇℃伅"); } var Locations = db.Queryable<Location>().Where(e => e.S_CODE == model.LOCATION_CODE)?.First(); if (Locations == null) @@ -937,6 +945,9 @@ ContainerHelper.delCntr(task.S_CNTR_CODE); ContainerHelper.delCntrItem(task.S_CNTR_CODE); } + else { + WcsTask.WcsCancellTask(wcsTask); + } TaskHelper.Fail(wcsTask); @@ -970,6 +981,9 @@ { ContainerHelper.delCntr(task.S_CNTR_CODE); ContainerHelper.delCntrItem(task.S_CNTR_CODE); + } + else { + WcsTask.WcsCancellTask(wcsTask); } TaskHelper.Fail(wcsTask); TaskProcess.OperateStatus(wcsTask, 7); @@ -1479,6 +1493,14 @@ { //婊℃墭鍏� balanceLocList = LocationHelper.FindBalanceEndLocList(endList, workFlow.ENDAREA, workFlow.ROADWAY); + + if (TOOLSTYPE == "25" || TOOLSTYPE == "35") { + LogHelper.Info($"ZCSendTask鍏ュ簱浠诲姟宸ヨ鏄簩鍚堜竴搴�闇�鐗╂枡鍧囪 ", "Mes浠诲姟涓嬪彂"); + balanceLocList = LocationHelper.RoadWayBalance1ByItem(balanceLocList, model.PROD_NO); + } + + + } else if (workFlow.FLOWCODE == "3") { @@ -1506,12 +1528,6 @@ break; } } - if (connection == "") - { - LogHelper.Info($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂娌℃壘鍒版帴椹充綅", "Mes浠诲姟涓嬪彂"); - throw new Exception($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂娌℃壘鍒版帴椹充綅"); - } - if (end!=null) { LogHelper.Info($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂瀵绘壘鍒扮粓鐐箋end.S_CODE}", "Mes浠诲姟涓嬪彂"); @@ -1519,11 +1535,16 @@ } } } + if (connection == "") + { + LogHelper.Info($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂娌℃壘鍒版帴椹充綅", "Mes浠诲姟涓嬪彂"); + throw new Exception($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂娌℃壘鍒版帴椹充綅"); + } } else { - LogHelper.Info($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂瀵绘壘鎺ラ┏浣嶅け璐�, "Mes浠诲姟涓嬪彂"); - throw new Exception($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂瀵绘壘鎺ラ┏浣嶅け璐�); + LogHelper.Info($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂瀵绘壘鎺ラ┏浣嶆帴鍙eけ璐�, "Mes浠诲姟涓嬪彂"); + throw new Exception($"ZCSendTask鍏ュ簱浠诲姟涓嬪彂瀵绘壘鎺ラ┏浣嶆帴鍙eけ璐�); } @@ -1580,7 +1601,7 @@ var EXPIRED_TIME = model.EXPIRED_TIME.ToString(); if (EXPIRED_TIME == "0001/1/1 0:00:00") { - rel.expireTime = model.SHELF_LIFE_TIME.AddHours(model.EXPIRED_REP); + rel.expireTime = model.PRODUCE_TIME.AddHours(model.EXPIRED_REP); LogHelper.Info($"澶辨晥鏃堕棿涓�001/1/1 0:00:00锛屼慨鏀逛负锛歿rel.expireTime}", "Mes浠诲姟涓嬪彂"); } else @@ -1591,7 +1612,7 @@ var SHELF_LIFE_TIME = model.SHELF_LIFE_TIME.ToString(); if (SHELF_LIFE_TIME == "0001/1/1 0:00:00") { - rel.takeEffectTime = model.SHELF_LIFE_TIME.AddHours(-model.SHELF_REP); + rel.takeEffectTime = model.PRODUCE_TIME.AddHours(-model.SHELF_REP); LogHelper.Info($"鐢熸晥鏃堕棿涓�001/1/1 0:00:00锛屼慨鏀逛负锛歿rel.takeEffectTime}", "Mes浠诲姟涓嬪彂"); } else @@ -1763,7 +1784,7 @@ - if (workFlow.FLOWCODE == "9") + if (workFlow.FLOWCODE == "9" || workFlow.FLOWCODE == "4") { if (TOOLSTYPE == "85" || TOOLSTYPE == "95") { @@ -1773,7 +1794,7 @@ else { //鏍规嵁鍒跺搧缂栧彿瀵绘壘绔嬪簱鍖哄搴旂墿鏂欐墭鐩�- start = LocationHelper.FindStartcolByLoclistAndItem(strrtList, model.PROD_NO, workFlow.STARTAREA, workFlow.ROADWAY); + start = LocationHelper.FindStartcolByLoclistAndItem(strrtList, model.PROD_NO, workFlow.STARTAREA, workFlow.ROADWAY,workFlow.CONNECTION); if (start == null) { strrtList = LocationHelper.GetAllLocList2(workFlow.STARTAREA); -- Gitblit v1.9.1