From eda0c8f74ce453b6e43f88fc92b1e651ce5b6095 Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期四, 13 二月 2025 13:46:33 +0800 Subject: [PATCH] 1.条码表实体类型调整 2.条码库存表实体新增基础字段 3.期初入库新增入库人 --- service/Warehouse/MesItemBlManager.cs | 85 ++++++++++++++++++++++++------------------ 1 files changed, 49 insertions(+), 36 deletions(-) diff --git a/service/Warehouse/MesItemBlManager.cs b/service/Warehouse/MesItemBlManager.cs index 46d86b9..a80a2a2 100644 --- a/service/Warehouse/MesItemBlManager.cs +++ b/service/Warehouse/MesItemBlManager.cs @@ -14,12 +14,12 @@ /// 鑾峰彇鐢熶骇琛ユ枡鍗曞彿鍒楄〃 /// </summary> /// <returns>琛ユ枡鍗曞彿鍒楄〃</returns> - public List<string> GetSCBLBillNo() + public List<string> GetSCBLBillNo(WarehouseQuery query) { var list = Db.Queryable<MesItemBl>() .Where(s => (s.Bl018 ?? false) == true && (s.Bl019 ?? false) == false - && s.Bl008 == "鐢熶骇琛ユ枡") + && s.Bl008 == query.Type) .Select(s => s.BlNo) .ToList(); return list; @@ -39,7 +39,7 @@ // 妫�鏌ヨˉ鏂欏崟鏄惁瀛樺湪涓斾负鐢熶骇琛ユ枡绫诲瀷 var mesItemBl = Db.Queryable<MesItemBl>() - .Where(a => a.BlNo == query.billNo && a.Bl008 == "鐢熶骇琛ユ枡") + .Where(a => a.BlNo == query.billNo && a.Bl008 == query.Type) .First(); if (mesItemBl == null) @@ -68,6 +68,7 @@ } /// <summary> + /// 鐢熶骇宸ュ崟琛ユ枡鎵爜 /// 鎵弿鏉$爜 prc_rf_pda_scan_zout_barcode3 /// </summary> /// <param name="query">鏌ヨ鍙傛暟</param> @@ -80,7 +81,7 @@ /// - blNo: 琛ユ枡鍗曞彿(蹇呭~) /// </remarks> public (WarehouseQuery item, List<MesItemBlDetail> pendingList) - SctlScanBarcode( + ScblScanBarcode( WarehouseQuery query) { if (string.IsNullOrEmpty(query.billNo)) @@ -93,7 +94,7 @@ throw new Exception("鐢ㄦ埛鍚嶄笉鑳戒负绌猴紒"); if (string.IsNullOrEmpty(query.blNo)) - throw new Exception("琛ユ枡鍗曞彿涓嶈兘涓虹┖锛�"); + throw new Exception("鐢宠鍗曞彿涓嶈兘涓虹┖锛�"); // 妫�楠屾槸鍚﹂噸澶嶆壂鎻� @@ -114,7 +115,7 @@ // 妫�鏌ヨˉ鏂欏崟鐘舵�� var mesItemBl = Db.Queryable<MesItemBl>() - .Where(a => a.BlNo == query.blNo && (a.Bl018 ?? false) == false) + .Where(a => a.BlNo == query.blNo) .First(); if (mesItemBl == null) @@ -184,9 +185,17 @@ // 寮�鍚簨鍔″鐞� var success = UseTransaction(db => { + var outNoType = ""; + if(query.Type == "鐢熶骇琛ユ枡") + { + outNoType = "BL(宸ュ崟琛ユ枡)"; + }else + { + outNoType = "CL(宸ュ崟瓒呴)"; + } // 鑾峰彇鎴栧垱寤哄嚭搴撳崟 var outId = Guid.NewGuid(); - var outNo = BillNo.GetBillNo("SCBL"); + var outNo = BillNo.GetBillNo(outNoType); var existingOut = db.Queryable<MesInvItemOuts>() .Where(a => a.BbillNo == query.blNo @@ -220,6 +229,7 @@ Remark = mesItemBl.Bl007, DepotCode = womdab.Dab017, OutPart = womdaa.Daa013, + OutType = query.Type, FType = 0, Factory = stockBarcode.Factory, Company = stockBarcode.Company, @@ -228,28 +238,25 @@ PbillNo = womdaa.Daa001, OutDate = DateTime.Now, Status = 0, - BbillNo = query.blNo + 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 - { // 鎻掑叆鏂扮殑鐗╂枡鏄庣粏璁板綍 db.Insertable(new MesInvItemOutItems { @@ -257,6 +264,7 @@ ItemOutId = outId, ItemNo = blDetail.Bld002, Quantity = stockBarcode.Quantity, + TlQty = stockBarcode.Quantity, CreateBy = query.userName, CreateDate = DateTime.Now, LastupdateBy = query.userName, @@ -271,12 +279,12 @@ ErpId = womdab.Eid, ErpAutoid = womdab.Erpid, PbillNo = query.billNo, - ItemId = blDetail.Bld012 + ItemId = blDetail.Bld012, + DepotId = stockBarcode.DepotsId.ToString(), // Unit = blDetail.Bld009, // DepotId = (int)stockBarcode.DepotsId }).IgnoreColumns(true).ExecuteCommand(); - } - + // 鎻掑叆鍑哄簱鍗曟潯鐮佹槑缁� db.Insertable(new MesInvItemOutCDetails { @@ -509,8 +517,8 @@ // Mblnr = stockBarcode.Mblnr, // Zeile = stockBarcode.Zeile, // RohInId = stockBarcode.RohInId, - // BarcodeStatus = 0, - // OldQty = query.Num, + Barcodestatus = false, + Oldqty = query.Num as long?, // Unit = stockBarcode.Unit, // WeightUnit = stockBarcode.WeightUnit, Factory = stockBarcode.Factory, @@ -523,8 +531,9 @@ // MemoBad = stockBarcode.MemoBad, ComeFlg = 5, // Memo = stockBarcode.Memo, + SuppId = stockBarcode.SuppId, SuppNo = stockBarcode.SuppNo, - // InsDate = stockBarcode.InsDate, // Added InsDate + InsDate = stockBarcode.IndepDate, // Added InsDate ItemId = stockBarcode.ItemId // ItemUnit = stockBarcode.ItemUnit // Added ItemUnit }).IgnoreColumns(true).ExecuteCommand(); @@ -682,7 +691,7 @@ { // 鍒涘缓鏂扮殑鍑哄簱鍗� var outId = Guid.NewGuid(); - var outNo = BillNo.GetBillNo("SCBL"); + var outNo = BillNo.GetBillNo("BL(宸ュ崟琛ユ枡)"); // 鎻掑叆鍑哄簱鍗曚富琛� executeCommand += db.Insertable(new MesInvItemOuts @@ -895,12 +904,12 @@ #region 鐢熶骇瓒呴 - public List<string> GetSccList() + public List<string> GetSccList(WarehouseQuery query) { var list = Db.Queryable<MesItemBl>() .Where(s => (s.Bl018 ?? false) == true && (s.Bl019 ?? false) == false - && s.Bl008 == "鐢熶骇瓒呴") + && s.Bl008 == query.Type) .Select(s => s.BlNo) .ToList(); return list; @@ -911,15 +920,16 @@ /// </summary> /// <param name="query">鏌ヨ鍙傛暟</param> /// <returns>鐢熶骇瓒呴鍗曟槑缁嗗垪琛�</returns> - public (string bl001,List<MesItemBlDetail> item) GetMesItemBlDetailBySccBillNo( - WarehouseQuery query) + public (string bl001, List<MesItemBlDetail> item) + GetMesItemBlDetailBySccBillNo( + WarehouseQuery query) { if (string.IsNullOrEmpty(query.billNo)) throw new Exception("璇烽�夊崟鎹彿锛�"); - // 妫�鏌ヨ秴棰嗗崟鏄惁瀛樺湪涓斾负鐢熶骇瓒呴绫诲瀷 + // 妫�鏌ヨ秴棰嗗崟鏄惁瀛樺湪涓斾负鐢熶骇瓒呴/濮斿瓒呴绫诲瀷 var mesItemBl = Db.Queryable<MesItemBl>() - .Where(a => a.BlNo == query.billNo && a.Bl008 == "鐢熶骇瓒呴") + .Where(a => a.BlNo == query.billNo && a.Bl008 == query.Type) .First(); if (mesItemBl == null) @@ -959,7 +969,7 @@ }) .ToList(); - return (mesItemBl.Bl001,pendingDetails); + return (mesItemBl.Bl001, pendingDetails); } /// <summary> @@ -1113,7 +1123,7 @@ if (outRecord == null) { outId = Guid.NewGuid(); - outNo = BillNo.GetBillNo("SCBL"); // 闇�瑕佸疄鐜扮敓鎴愬崟鍙风殑鏂规硶 + outNo = BillNo.GetBillNo("BL(宸ュ崟琛ユ枡)"); // 闇�瑕佸疄鐜扮敓鎴愬崟鍙风殑鏂规硶 // 鎻掑叆鍑哄簱鍗曚富琛� db.Insertable(new MesInvItemOuts @@ -1517,7 +1527,7 @@ itemOut = new MesInvItemOuts { Guid = Guid.NewGuid(), - ItemOutNo = BillNo.GetBillNo("SCBL"), // 闇�瑕佸疄鐜扮敓鎴愬崟鍙风殑鏂规硶 + ItemOutNo = BillNo.GetBillNo("BL(宸ュ崟琛ユ枡)"), // 闇�瑕佸疄鐜扮敓鎴愬崟鍙风殑鏂规硶 TaskNo = query.blNo, CreateBy = query.userName, CreateDate = DateTime.Now, @@ -1695,18 +1705,21 @@ // 鑾峰彇鏈�缁堢殑寰呭鐞嗗垪琛� + // 鑾峰彇琛ユ枡鍗曟槑缁嗕腑鏈畬鎴愮殑璁板綍 + // 閫氳繃宸﹁繛鎺ユ煡璇㈣ˉ鏂欏崟(MesItemBl)鍜岃ˉ鏂欏崟鏄庣粏(MesItemBlDetail)琛� + // 鏉′欢: 1.琛ユ枡鍗曞彿鍖归厤 2.璁″垝鏁伴噺(Bld007)鍑忓幓宸茶ˉ鏁伴噺(Bld008)澶т簬0(鍗虫湭瀹屾垚鐨�) var pendingList = Db.Queryable<MesItemBl, MesItemBlDetail>((a, b) => new JoinQueryInfos(JoinType.Left, a.Id == b.Mid)) .Where((a, b) => a.BlNo == query.blNo && (b.Bld007 ?? 0) - (b.Bld008 ?? 0) > 0) .Select((a, b) => new MesItemBlDetail { - Bld012 = b.Bld012, - Bld002 = b.Bld002, - Bld003 = b.Bld003, - Bld004 = b.Bld004, - Bld007 = b.Bld007, - Bld008 = b.Bld008 + Bld012 = b.Bld012, // 鐗╂枡ID + Bld002 = b.Bld002, // 鐗╂枡缂栧彿 + Bld003 = b.Bld003, // 鐗╂枡鍚嶇О + Bld004 = b.Bld004, // 鐗╂枡瑙勬牸 + Bld007 = b.Bld007, // 璁″垝鏁伴噺 + Bld008 = b.Bld008 // 宸茶ˉ鏁伴噺 }) .ToList(); -- Gitblit v1.9.3