From 9937f480fd5e861255b0c51d10d7f1135d4c5db9 Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期五, 21 二月 2025 09:59:39 +0800 Subject: [PATCH] 1.委外补料优化调整 2.新增PDA日志通用方法 --- service/Wom/WwGdManager.cs | 83 +++++++++++++++++++++++++++++------------ 1 files changed, 58 insertions(+), 25 deletions(-) diff --git a/service/Wom/WwGdManager.cs b/service/Wom/WwGdManager.cs index a1a244d..9aeb560 100644 --- a/service/Wom/WwGdManager.cs +++ b/service/Wom/WwGdManager.cs @@ -58,7 +58,9 @@ daa001 = query.daa001, barcodeNum = barcodeNum, splitNum = splitNum, - barcode = query.barcode + barcode = query.barcode, + strMsg = _strMsg, + result = _intSum }; return dto; @@ -147,7 +149,7 @@ var wwgd = Db.Queryable<WwGd, MesItems>((a, i) => new JoinQueryInfos(JoinType.Left, a.Daa003 == i.ItemId)) - .Where((a, i) => a.Daa001 == query.daa001) + .Where((a, i) => a.Daa001 == query.daa001 && (a.PcSh ?? 0) == 1) .Select((a, i) => new { a.Daa001, a.RwdGuid @@ -162,8 +164,7 @@ JoinType.Left, a.Id == b.Pid, JoinType.Inner, - c.Id == - b.Dab003, + c.Id == b.Dab003, JoinType.Inner, b.Erpid.ToString() == d.ErpId )) .Where((a, b, c, d) => @@ -588,11 +589,10 @@ #endregion - #region 濮斿琛ユ枡 /// <summary> - /// 濮斿宸ュ崟閫�鏂欐壂鐮� + /// 濮斿宸ュ崟琛ユ枡鎵爜 /// 鎵弿鏉$爜 prc_rf_pda_scan_zout_barcode3 /// </summary> /// <param name="query">鏌ヨ鍙傛暟</param> @@ -669,6 +669,11 @@ .Where(a => a.Daa001 == query.billNo) .First(); + // 妫�鏌ュ伐鍗曚俊鎭� + var WWRWD = Db.Queryable<ProductionOrder>() + .Where(a => a.OrderNo == wwgd.Daa014) + .First(); + if (wwgd == null) throw new Exception($"宸ュ崟 {query.billNo} 涓嶅瓨鍦紝璇风‘璁わ紒"); @@ -679,6 +684,11 @@ if (womdab == null) throw new Exception($"澶囨枡鏄庣粏涓嶅瓨鍦ㄦ鐗╂枡 {stockBarcode.ItemNo} 璇风‘璁わ紒"); + + + var depots = Db.Queryable<MesDepots>() + .Where(t => t.DepotId == stockBarcode.DepotId) + .First(); if (stockBarcode.Quantity > quantity) { @@ -708,13 +718,24 @@ // 寮�鍚簨鍔″鐞� var success = UseTransaction(db => { + //query.Type = "濮斿琛ユ枡"; + var outNoType = "WWBL(濮斿琛ユ枡)"; + if (query.Type == "濮斿琛ユ枡") + { + outNoType = "WWBL(濮斿琛ユ枡)"; + } + else + { + outNoType = "WWCL(濮斿瓒呴)"; + } + //outNoType = "WWBL(濮斿琛ユ枡)"; // 鑾峰彇鎴栧垱寤哄嚭搴撳崟 var outId = Guid.NewGuid(); - var outNo = BillNo.GetBillNo("BL(宸ュ崟琛ユ枡)"); + var outNo = BillNo.GetBillNo(outNoType); var existingOut = db.Queryable<MesInvItemOuts>() - .Where(a => a.BbillNo == query.blNo - && a.DepotCode == womdab.Dab017 + .Where(a => a.TaskNo == query.blNo + && a.DepotId == stockBarcode.DepotId && a.OutDate.Value.Date.ToString("yyyy-MM-dd") == DateTime.Now.Date.ToString("yyyy-MM-dd") && a.BillTypeId == 200 @@ -742,33 +763,36 @@ BillTypeId = 200, TransactionNo = 209, Remark = mesItemBl.Bl007, - DepotCode = womdab.Dab017, - OutPart = wwgd.Daa013.ToString(), + DepotCode = depots.DepotCode, + OutPart = wwgd.DepartId.ToString(), + OutType = query.Type, FType = 0, Factory = stockBarcode.Factory, Company = stockBarcode.Company, - // WorkNo = wwgd.Daa021, - // BoardItem = wwgd.Daa002, + WorkNo = WWRWD.ErpProductionOrderNo, + BoardItem = wwgd.Daa003.ToString(), PbillNo = wwgd.Daa001, OutDate = DateTime.Now, Status = 0, - BbillNo = query.blNo + DepotId = stockBarcode.DepotId, + THORGID = stockBarcode.StockOrgId, + //BbillNo = query.billNo }).IgnoreColumns(true).ExecuteCommand(); } // 妫�鏌ュ苟鏇存柊鍑哄簱鍗曠墿鏂欐槑缁� var itemCount = db.Queryable<MesInvItemOutItems>() .Where(i => - i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId) + i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString()) .Count(); if (itemCount > 0) // 鏇存柊宸插瓨鍦ㄧ殑鐗╂枡鏄庣粏鏁伴噺 db.Updateable<MesInvItemOutItems>() .SetColumns(i => - i.Quantity == i.Quantity + stockBarcode.Quantity) + i.TlQty == i.TlQty + stockBarcode.Quantity) .Where(i => - i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId) + i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString()) .ExecuteCommand(); else // 鎻掑叆鏂扮殑鐗╂枡鏄庣粏璁板綍 @@ -778,21 +802,24 @@ ItemOutId = outId, ItemNo = blDetail.Bld002, Quantity = stockBarcode.Quantity, + TlQty = stockBarcode.Quantity, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, Factory = stockBarcode.Factory, Company = stockBarcode.Company, - DepotCode = womdab.Dab017, + DepotCode = depots.DepotCode, TaskNo = query.blNo, - // WorkNo = wwgd.Daa021, + WorkNo = WWRWD.ErpProductionOrderNo, WorkLine = blDetail.Bld013, ErpItemNo = womdab.Dab003.ToString(), ErpId = womdab.Eid, ErpAutoid = womdab.Erpid, PbillNo = query.billNo, - ItemId = blDetail.Bld012 + ItemId = blDetail.Bld012, + DepotId = stockBarcode.DepotsId.ToString(), + ItemDabid = womdab.Id, // Unit = blDetail.Bld009, // DepotId = (int)stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); @@ -811,7 +838,7 @@ CreateDate = DateTime.Now, LastupdateBy = query.userName, LastupdateDate = DateTime.Now, - DepotCode = stockBarcode.DepotsCode, + DepotCode = depots.DepotCode, DepotSectionCode = stockBarcode.DepotSectionsCode, Remark = blDetail.Bld010, Factory = stockBarcode.Factory, @@ -836,7 +863,7 @@ Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, // p_bill_type_id - TransactionCode = "210", // p_transaction_no + TransactionCode = "209", // p_transaction_no BusinessType = -1, ItemBarcode = stockBarcode.ItemBarcode, ItemNo = stockBarcode.ItemNo, @@ -871,6 +898,7 @@ }) .Where(it => it.Id == womdab.Id && it.Dab003 == womdab.Dab003) .ExecuteCommand(); + // 鏇存柊琛ユ枡鍗曟槑缁嗗凡琛ユ暟閲� db.Updateable<MesItemBlDetail>() @@ -918,6 +946,11 @@ }) .Where(it => it.Id == mesItemBl.Id) .ExecuteCommand(); + + // 鍒涘缓 鎻掑叆鏃ュ織 + var logService = new LogService(); + var LogMsg = query.Type + "銆傛潯鐮併��" +query.barcode+"銆� 琛ユ枡鍗曞彿銆�"+ outNo +"銆�"; + logService.CreateLog(db,query.userName,wwgd.Id.ToString(), "WW_GD", LogMsg,wwgd.Daa001); return 1; }); @@ -1096,7 +1129,7 @@ Guid = Guid.NewGuid(), Status = 1, BillTypeId = 200, // p_bill_type_id - TransactionCode = "209", // p_transaction_no + TransactionCode = "220", // p_transaction_no BusinessType = -1, ItemBarcode = newBarcode, ItemNo = stockBarcode.ItemNo, @@ -1195,7 +1228,7 @@ && a.OutDate.Value.Date.ToString("yyyy-MM-dd") == DateTime.Now.Date.ToString("yyyy-MM-dd") && a.BillTypeId == 200 - && a.TransactionNo == 209 + && a.TransactionNo == 220 && a.Status == 0) .First(); @@ -1216,7 +1249,7 @@ LastupdateBy = query.userName, LastupdateDate = DateTime.Now, BillTypeId = 200, - TransactionNo = 209, + TransactionNo = 220, Remark = mesItemBl.Bl007, DepotCode = womdab.Dab017, OutPart = womdaa.Daa013.ToString(), -- Gitblit v1.9.3