From 53d582ad41d8450b21045b2d862a532ecc57a9ba Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期一, 26 五月 2025 17:29:57 +0800 Subject: [PATCH] 抽检移库基本测完,添加TCP模拟测试输送线产品下线的逻辑 --- api/ApiHelper.cs | 60 +++++++++++++++++++++++++++++++++++------------------------- 1 files changed, 35 insertions(+), 25 deletions(-) diff --git a/api/ApiHelper.cs b/api/ApiHelper.cs index 9c71a92..0d86eb0 100644 --- a/api/ApiHelper.cs +++ b/api/ApiHelper.cs @@ -45,6 +45,7 @@ var startLoc = db.Queryable<TN_Location>() .Where(l => l.S_CODE == model.StartLoc) // 鎸囧畾锛氳捣鐐硅揣浣嶅彿 .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 0) // 璧风偣缁戝畾鍓嶆病鏈夊鍣� .First(); if (startLoc == null) { @@ -59,12 +60,6 @@ S_CNTR_CODE = cgDetail.S_CNTR_CODE, S_CNTR_TYPE = "濂借繍绠�, }; - - if (db.Insertable<TN_Loc_Container>(locCntrRel).ExecuteCommand() <= 0) { - info = $"鎻掑叆璐т綅瀹瑰櫒鍏崇郴澶辫触锛� + JsonConvert.SerializeObject(locCntrRel); - LogHelper.Info(info); - return NewSimpleResult(4, info); - } // TODO 婊$鍏ュ簱绠楁硶寰呬紭鍖� var endLoc = db.Queryable<TN_Location>() @@ -87,6 +82,13 @@ LocationHelper.LockLoc(ref endLoc, 1); // 缁堢偣鍏ュ簱閿� using (var tran = db.Ado.UseTran()) { + if (db.Insertable<TN_Loc_Container>(locCntrRel).ExecuteCommand() <= 0) { + info = $"鎻掑叆璐т綅瀹瑰櫒鍏崇郴澶辫触锛� + JsonConvert.SerializeObject(locCntrRel); + tran.RollbackTran(); + LogHelper.Info(info); + return NewSimpleResult(4, info); + } + if (db.Updateable<TN_Location>(startLoc).UpdateColumns(it => new { it.N_LOCK_STATE, it.S_LOCK_STATE, @@ -266,7 +268,9 @@ // TODO 鏆傚畾閫夋嫨鏈�綆灞傛寜鍖轰綅椤哄簭鍏ュ簱锛屽悗闈㈠緟淇敼 var endLoc = db.Queryable<TN_Location>() - .Where(a => Settings.AreaMap[AreaName.绌烘墭瀛樻斁鍖篯.Contains(a.S_AREA_CODE)) + .Where(l => Settings.AreaMap[AreaName.绌烘墭瀛樻斁鍖篯.Contains(l.S_AREA_CODE)) + .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(a => a.N_CURRENT_NUM == 0) .OrderBy(l => l.N_LAYER) .First(); @@ -361,9 +365,11 @@ // TODO 鏆傚畾閫夋嫨鏈�綆灞傛寜鍖轰綅椤哄簭鍏ュ簱锛屽悗闈㈠緟淇敼 var endLoc = db.Queryable<TN_Location>() - .Where(a => Settings.AreaMap[AreaName.绌虹瀛樻斁鍖篯.Contains(a.S_AREA_CODE)) - .OrderBy(l => l.N_LAYER) - .OrderBy(l => l.S_AREA_CODE).First(); + .Where(l => Settings.AreaMap[AreaName.绌虹瀛樻斁鍖篯.Contains(l.S_AREA_CODE)) + .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(a => a.N_CURRENT_NUM == 0) + .OrderBy(l => new { l.N_LAYER }) + .First(); if (endLoc == null) { return NewSimpleResult(4, $"鏆傛椂娌℃湁绗﹀悎鏉′欢鐨勭粓鐐规斁璐т綅"); @@ -451,10 +457,10 @@ } var endLoc = db.Queryable<TN_Location>() - .Where(a => Settings.AreaMap[AreaName.鍖呰鍖篯.Contains(a.S_AREA_CODE)) + .Where(l => Settings.AreaMap[AreaName.鍖呰鍖篯.Contains(l.S_AREA_CODE)) .Where(l => taskInfo.EndAreas.Contains(l.S_AREA_CODE)) - .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 - .Where(a => a.N_CURRENT_NUM == 0) // 绛涢�锛氱┖璐т綅 + .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 0) // 绛涢�锛氱┖璐т綅 .First(); if (endLoc == null) { @@ -542,10 +548,10 @@ } var endLoc = db.Queryable<TN_Location>() - .Where(a => Settings.AreaMap[AreaName.鍖呰鍖篯.Contains(a.S_AREA_CODE)) + .Where(l => Settings.AreaMap[AreaName.鍖呰鍖篯.Contains(l.S_AREA_CODE)) .Where(l => taskInfo.EndAreas.Contains(l.S_AREA_CODE)) - .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 - .Where(a => a.N_CURRENT_NUM == 0) + .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 0) .First(); if (endLoc == null) { @@ -707,7 +713,8 @@ var startLoc = db.Queryable<TN_Location>() .Where(l => l.S_CODE == locCntrRel.S_LOC_CODE) - .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 1) .First(); if (startLoc == null) { @@ -719,16 +726,16 @@ var endLoc = new TN_Location(); if (locCntrRel.S_CNTR_TYPE == "鎵樼洏") { endLoc = db.Queryable<TN_Location>() - .Where(a => Settings.AreaMap[AreaName.婊℃墭瀛樻斁鍖篯.Contains(a.S_AREA_CODE)) - .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 - .Where(a => a.N_CURRENT_NUM == 0) // 绛涢�锛氱┖璐т綅 + .Where(l => Settings.AreaMap[AreaName.婊℃墭瀛樻斁鍖篯.Contains(l.S_AREA_CODE)) + .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 0) // 绛涢�锛氱┖璐т綅 .First(); } else if (locCntrRel.S_CNTR_TYPE == "濂借繍绠�) { endLoc = db.Queryable<TN_Location>() - .Where(a => Settings.AreaMap[AreaName.婊$瀛樻斁鍖篯.Contains(a.S_AREA_CODE)) - .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 - .Where(a => a.N_CURRENT_NUM == 0) + .Where(l => Settings.AreaMap[AreaName.婊$瀛樻斁鍖篯.Contains(l.S_AREA_CODE)) + .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 0) .First(); } else { @@ -827,7 +834,8 @@ var startLoc = db.Queryable<TN_Location>() .Where(l => l.S_CODE == locCntrRel.S_LOC_CODE) - .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 1) .First(); if (startLoc == null) { @@ -839,7 +847,8 @@ var endLoc = db.Queryable<TN_Location>() .Where(l => l.S_AREA_CODE == model.EndArea) .Where(a => a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 - .Where(a => a.N_CURRENT_NUM == 0).First(); + .Where(a => a.N_CURRENT_NUM == 0) + .First(); if (endLoc == null) { return NewSimpleResult(3, "鏌ヨ锛氭病鏈夋壘鍒板悎閫傜殑缁堢偣璐т綅"); @@ -915,6 +924,7 @@ var startLoc = db.Queryable<TN_Location>() .Where(l => l.S_CODE == model.StartLoc) .Where(l => l.N_LOCK_STATE == 0 && l.S_LOCK_STATE == "鏃� && l.C_ENABLE == "Y") // 绛涢�锛氭湭涓婇攣 + .Where(l => l.N_CURRENT_NUM == 1) .First(); var locCntrRel = db.Queryable<TN_Loc_Container>() -- Gitblit v1.9.1