From 6373a5ee748898cb5db477035dca66c6e4194dfc Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期三, 23 七月 2025 17:34:46 +0800 Subject: [PATCH] 产品入库添加物料名称描述数量输入框和货位解绑功能, 手动添加物料信息功能 --- wms/LocationHelper.cs | 44 ++++++++++++++++++++++++++++++++------------ 1 files changed, 32 insertions(+), 12 deletions(-) diff --git a/wms/LocationHelper.cs b/wms/LocationHelper.cs index 6de64e2..d03cf2f 100644 --- a/wms/LocationHelper.cs +++ b/wms/LocationHelper.cs @@ -210,7 +210,6 @@ } cntrs = lcrList.Select(a => a.S_CNTR_CODE).ToList(); - var log = JsonConvert.SerializeObject(cntrs); var location = db.Queryable<TN_Location>().First(a => a.S_CODE == loc); if (location != null) @@ -219,14 +218,19 @@ location.S_LOCK_STATE = "鏃�; location.N_LOCK_STATE = 0; + var updateCgDetalList = db.Queryable<TN_CG_Detail>().Where(d => cntrs.Contains(d.S_CNTR_CODE)).ToList(); + if (updateCgDetalList.Count == 0) { + LogHelper.Info($"娌℃湁鏇存柊鐨勭墿鏂欏垪琛�); + } + using (var tran = db.Ado.UseTran()) { - if (db.Deleteable<TN_Loc_Container>().Where(it => cntrs.Contains(it.S_CNTR_CODE) && it.S_LOC_CODE == loc).ExecuteCommand() > 0 && - db.Updateable<TN_CG_Detail>().SetColumns(d => d.S_LOC_CODE == null).Where(d => cntrs.Contains(d.S_CNTR_CODE)).ExecuteCommand() > 0) // ADD锛氳ˉ鍏呴拡瀵筆DA鍒嗘嫞 - { - LogHelper.Info($"鍒犻櫎璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔燂紝{log}"); + if (updateCgDetalList.Count > 0 && db.Updateable(updateCgDetalList).ExecuteCommand() <= 0) { + tran.RollbackTran(); + return "鏇存柊鐗╂枡淇℃伅鍒楄〃澶辫触"; // ADD锛氳ˉ鍏呴拡瀵筆DA鍒嗘嫞 } - else + + if (lcrList.Count > 0 && db.Deleteable<TN_Loc_Container>().Where(it => cntrs.Contains(it.S_CNTR_CODE) && it.S_LOC_CODE == loc).ExecuteCommand() <= 0) { tran.RollbackTran(); @@ -289,24 +293,40 @@ { // 琛ュ厖閫昏緫锛氶伩鍏嶈В缁戝鑷寸殑淇℃伅涓㈠け (N_LOCK_STATE涓嶤G_Detail淇濇寔涓�嚧鎵�互鐩存帴璧嬪�灏辫锛汭MGURL璐т綅绉诲姩浜嗗氨鍒犻櫎锛屼篃寰堝悎鐞嗭級 var cgDetail = db.Queryable<TN_CG_Detail>().Where(d => d.S_CNTR_CODE == item).First(); - bindLocCntList.Add(new TN_Loc_Container() { S_LOC_CODE = loc, S_CNTR_CODE = item, S_IMG_URL = cgDetail?.S_EXT_ATTR5 ?? "", N_LOCK_STATE = cgDetail?.N_LOCK_STATE ?? 0 }); + if (cgDetail == null) { + bindLocCntList.Add(new TN_Loc_Container() { S_LOC_CODE = loc, S_CNTR_CODE = item, S_IMG_URL = "", N_LOCK_STATE = 0 }); + } + else { + bindLocCntList.Add(new TN_Loc_Container() { S_LOC_CODE = loc, S_CNTR_CODE = item, S_IMG_URL = cgDetail.S_EXT_ATTR5, N_LOCK_STATE = cgDetail.N_LOCK_STATE }); + } + } var log = JsonConvert.SerializeObject(bindLocCntList); + var updateCgDetalList = db.Queryable<TN_CG_Detail>().Where(d => cntrs.Contains(d.S_CNTR_CODE)).ToList(); + if (updateCgDetalList.Count == 0) { + LogHelper.Info($"娌℃湁鏇存柊鐨勭墿鏂欏垪琛�); + } + using (var tran = db.Ado.UseTran()) { - if (db.Insertable<TN_Loc_Container>(bindLocCntList).ExecuteCommand() > 0 && - db.Updateable<TN_CG_Detail>().SetColumns(d => d.S_LOC_CODE == loc).Where(d => cntrs.Contains(d.S_CNTR_CODE)).ExecuteCommand() > 0) // ADD锛氳ˉ鍏呴拡瀵筆DA鍒嗘嫞 + if (db.Insertable<TN_Loc_Container>(bindLocCntList).ExecuteCommand() > 0) { LogHelper.Info($"鎻掑叆璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔燂紝{log}"); } else { - db.RollbackTran(); + tran.RollbackTran(); LogHelper.Info($"鎻掑叆璐т綅瀹瑰櫒鍏崇郴琛ㄥけ璐ワ紝{log}"); return "璐т綅缁戝畾瀹瑰櫒澶辫触锛� + logs; } + + if (updateCgDetalList.Count > 0 && db.Updateable(updateCgDetalList).ExecuteCommand() <= 0) { + tran.RollbackTran(); + return "鏇存柊鐗╂枡淇℃伅鍒楄〃澶辫触"; + } + var location = db.Queryable<TN_Location>().First(a => a.S_CODE == loc); if (location != null) @@ -318,13 +338,13 @@ if (db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM, it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand() > 0) { - db.CommitTran(); + tran.CommitTran(); LogHelper.Info($"鏇存柊璐т綅琛ㄦ垚鍔燂紝{log}"); } else { - db.RollbackTran(); + tran.RollbackTran(); LogHelper.Info($"鏇存柊璐т綅琛ㄥけ璐ワ紝{log}"); -- Gitblit v1.9.1