From 1e20867615150dce50f2a834cfe277bfa4749dbb Mon Sep 17 00:00:00 2001 From: hudong <Administrator@PC-20250329JZUF> Date: 星期一, 30 六月 2025 17:25:04 +0800 Subject: [PATCH] 1.分拣接口拆分出回库接口 2.自动回库接口逻辑完成 --- core/WMSCore.cs | 114 +++++++++++++++++++++++++++++---------------------------- 1 files changed, 58 insertions(+), 56 deletions(-) diff --git a/core/WMSCore.cs b/core/WMSCore.cs index 8135c9c..62c41c5 100644 --- a/core/WMSCore.cs +++ b/core/WMSCore.cs @@ -135,81 +135,83 @@ { foreach (var item in list) { - var cir2 = db.Queryable<CGRels>().Where(a => a.S_ITEM_CODE == item.S_ITEM_CODE).First(); + var cir2 = db.Queryable<CGRels>().Where(a => a.S_ITEM_CODE == item.S_ITEM_CODE&&a.S_CNTR_TYPE=="鍗婃墭").First(); var S_CNTR_CODE = ""; if (cir2 != null) { S_CNTR_CODE=cir2.S_CNTR_CODE; - } - var lcr = db.Queryable<LocCntrRel>().Where(c => c.S_CNTR_CODE == S_CNTR_CODE).First(); - if (lcr != null) - { - //璧峰搴撲綅 - var startloc = db.Queryable<Location>().Where(it => it.S_CODE == lcr.S_LOC_CODE).First(); - var wsc= db.Queryable<WCSTask>().Where(it => it.S_CODE == lcr.S_LOC_CODE&&it.N_B_STATE<3).First(); - if (wsc!=null) + + var lcr = db.Queryable<LocCntrRel>().Where(c => c.S_CNTR_CODE == S_CNTR_CODE).First(); + if (lcr != null) { - item.N_B_STATE = 2; - db.Updateable(item).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand(); - } - else - { - if (startloc != null)//&& + //璧峰搴撲綅 + var startloc = db.Queryable<Location>().Where(it => it.S_CODE == lcr.S_LOC_CODE).First(); + var wsc = db.Queryable<WCSTask>().Where(it => it.S_CNTR_CODE == S_CNTR_CODE && it.N_B_STATE < 3).First(); + if (wsc != null) { - //缁堢偣璐т綅 - var endloc = db.Queryable<Location>().Where(it => it.S_AREA_CODE == "QYQXHQ" && it.N_LOCK_STATE == 0 && it.N_CURRENT_NUM == 0).First(); - - // var endloc = db.Queryable<Location>().Where(it => it.S_CODE == item.S_END_LOC).First(); - if (endloc != null) + item.N_B_STATE = 2; + db.Updateable(item).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand(); + } + else + { + if (startloc != null)//&& { - var optask = new WMSTask - { - S_CODE = WMSHelper.GenerateTaskNo(), - S_START_LOC = startloc.S_CODE, - S_START_AREA = startloc.S_AREA_CODE, - S_START_WH = startloc.S_WH_CODE, - S_END_LOC = endloc.S_CODE, - S_END_AREA = endloc.S_AREA_CODE, - S_END_WH = endloc.S_WH_CODE, - S_TYPE = "鍑哄簱鍖�, - N_TYPE = 2, - N_B_STATE = 0, - S_BS_NO = "", - S_CNTR_CODE = S_CNTR_CODE, - S_OP_DEF_NAME = item.S_BS_TYPE - }; - var res = db.Insertable(optask).ExecuteCommand() > 0; - if (res) - { - startloc.N_LOCK_STATE = 2; - startloc.S_LOCK_STATE = "鍑哄簱閿�; - db.Updateable(startloc).UpdateColumns(it => new { it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand(); - LocationHelper.LockLoc(endloc.S_CODE, 1); - item.N_B_STATE = 2; - db.Updateable(item).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand(); + //缁堢偣璐т綅 + var endloc = db.Queryable<Location>().Where(it => it.S_AREA_CODE == "QYQXHQ" && it.N_LOCK_STATE == 0 && it.N_CURRENT_NUM == 0).First(); + // var endloc = db.Queryable<Location>().Where(it => it.S_CODE == item.S_END_LOC).First(); + if (endloc != null) + { + var optask = new WMSTask + { + S_CODE = WMSHelper.GenerateTaskNo(), + S_START_LOC = startloc.S_CODE, + S_START_AREA = startloc.S_AREA_CODE, + S_START_WH = startloc.S_WH_CODE, + S_END_LOC = endloc.S_CODE, + S_END_AREA = endloc.S_AREA_CODE, + S_END_WH = endloc.S_WH_CODE, + S_TYPE = "鍑哄簱鍖�, + N_TYPE = 2, + N_B_STATE = 0, + S_BS_NO = "", + S_CNTR_CODE = S_CNTR_CODE, + S_OP_DEF_NAME = item.S_BS_TYPE + }; + var res = db.Insertable(optask).ExecuteCommand() > 0; + if (res) + { + startloc.N_LOCK_STATE = 2; + startloc.S_LOCK_STATE = "鍑哄簱閿�; + db.Updateable(startloc).UpdateColumns(it => new { it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand(); + LocationHelper.LockLoc(endloc.S_CODE, 1); + item.N_B_STATE = 2; + db.Updateable(item).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand(); + + + } + } + else + { + LogHelper.Info($"{item.S_BS_NO}閰嶇洏 搴撳尯AGVXHQ鏃犵┖璐т綅"); } } else { - LogHelper.Info($"{item.S_BS_NO}閰嶇洏 搴撳尯AGVXHQ鏃犵┖璐т綅"); - + LogHelper.Info($"{item.S_BS_NO}閰嶇洏 搴撳尯鏃犺揣浣�); } } - else - { - LogHelper.Info($"{item.S_BS_NO}閰嶇洏 搴撳尯鏃犺揣浣�); - } + } - - - - + else + { + LogHelper.Info($"閰嶇洏鐢熸垚浣滀笟瀹瑰櫒鏈粦瀹氳揣浣�); + } } else { - LogHelper.Info($"閰嶇洏鐢熸垚浣滀笟瀹瑰櫒鏈粦瀹氳揣浣�); + LogHelper.Info($"鏈壘鍒扮墿鏂檣item.S_ITEM_CODE}瀵瑰簲鐨勫鍣�); } } -- Gitblit v1.9.1