From 7b84eb64d11b12b6fb41ae7f7085452512ad5d3f Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期五, 20 六月 2025 08:18:08 +0800 Subject: [PATCH] 1.采购入库优化 --- service/Wom/MesWorkProdManager.cs | 43 +++++++++++++++++++++++++++---------------- 1 files changed, 27 insertions(+), 16 deletions(-) diff --git a/service/Wom/MesWorkProdManager.cs b/service/Wom/MesWorkProdManager.cs index 3d88cb7..07d18e1 100644 --- a/service/Wom/MesWorkProdManager.cs +++ b/service/Wom/MesWorkProdManager.cs @@ -84,7 +84,7 @@ var exists = Db.Queryable<MesWorkProd, MesWorkProdCDetails>( (a, b) => new JoinQueryInfos(JoinType.Inner, - a.BillNo == b.BillNo)) + a.Id == b.MesWorkProdId)) .Where((a, b) => b.ItemBarcode == request.ItemBarcode && a.BillTypeId == billTypeId && a.TransactionNo == transactionNo) @@ -133,11 +133,11 @@ db.Updateable<MesInvItemBarcodes>() .SetColumns(x => new MesInvItemBarcodes { - WorkFlg = true, - Quantity = reportQty + WorkFlg = true + //Quantity = reportQty }) .Where(x => x.Guid == barcode.Guid) - .ExecuteCommandAsync(); + .ExecuteCommand(); // 11. 鑾峰彇鎴栧垱寤烘姤宸ュ崟 var workProd = db.Queryable<MesWorkProd>() @@ -147,13 +147,15 @@ DateTime.Now.Date.ToString("yyyy-MM-dd") && x.BillTypeId == billTypeId && x.TransactionNo == transactionNo - && x.Status == 0) + && x.ReportBy == request.StaffNo) .First(); + var id = Guid.Empty; + var billNo = ""; if (workProd == null) { - var id = Guid.NewGuid(); - var billNo = BillNo.GetBillNo("BG(鎶ュ伐缂栧彿)"); + id = Guid.NewGuid(); + billNo = BillNo.GetBillNo("BG(鎶ュ伐)"); workProd = new MesWorkProd { @@ -168,11 +170,18 @@ LastupdateDate = DateTime.Now, BillTypeId = billTypeId, TransactionNo = transactionNo, - TaskNo = barcode.BillNo + TaskNo = barcode.BillNo, + ReportBy = request.StaffNo, + ReportDate = DateTime.Now }; db.Insertable(workProd).IgnoreColumns(true) .ExecuteCommand(); + } + else + { + id = workProd.Id; + billNo = workProd.BillNo; } // 12. 鎻掑叆鎶ュ伐鏄庣粏 @@ -180,7 +189,8 @@ db.Insertable(new MesWorkProdCDetails { Id = detailId, - BillNo = workProd.BillNo, + MesWorkProdId = id, + BillNo = billNo, ItemBarcode = request.ItemBarcode, Quantity = (int)reportQty, Company = barcode.Company, @@ -194,16 +204,17 @@ SilkPqty = barcode.SilkPqty, SilkId = barcode.SilkId, Silk = barcode.Silk, - BgYg = staff.Id + BgYg = request.StaffNo }).IgnoreColumns(true).ExecuteCommand(); // 13. 鏇存柊宸ュ崟宸叉姤宸ユ暟閲� db.Updateable<Womdaa>() - .SetColumns(x => - x.Daa011 == (x.Daa011 ?? 0) + (int)barcode.Quantity - ) - .Where(x => x.Daa001 == barcode.BillNo) - .ExecuteCommandAsync(); + .SetColumns(x => new Womdaa + { + Daa011 = (x.Daa011 ?? 0) + (int)barcode.Quantity + }) + .Where(x => x.Daa001 == barcode.BillNo) + .ExecuteCommand(); // 14. 閲嶆柊鑾峰彇鏈�鏂板凡鎶ュ伐鏁伴噺 reportedQty = db.Queryable<MesWorkProd, MesWorkProdCDetails>( @@ -222,7 +233,7 @@ // 15. 杩斿洖澶勭悊缁撴灉 return new ScanWorkResult { - TaskNo = barcode.TaskNo, + TaskNo = barcode.BillNo, ItemNo = item.ItemNo, PlanQty = planQty ?? 0, ReportedQty = reportedQty ?? 0, -- Gitblit v1.9.3