From 5a3f8fe4c563f26c745e70a1fcc000af78744d14 Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期日, 01 九月 2024 14:17:39 +0800 Subject: [PATCH] qq --- MES.Service/Dto/service/ProductionPickDto.cs | 10 ++ MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs | 21 ++- MESApplication/Controllers/Warehouse/MesInvItemBarcodesController.cs | 26 +++++ MES.Service/Modes/Womdab.cs | 40 +++++--- MESApplication/Controllers/WomdaaController.cs | 44 +++++++- MES.Service/util/ResponseResult.cs | 2 MESApplication/Controllers/Warehouse/MesInvItemInCDetailsController.cs | 6 MES.Service/service/WomdaaManager.cs | 75 ++++++++++++-- MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs | 6 MES.Service/Dto/service/MESInvItemOutItems.cs | 22 ++-- MES.Service/Dto/service/WarehouseQuery.cs | 3 MES.Service/service/Warehouse/MesInvItemOutsManager.cs | 16 ++- 12 files changed, 209 insertions(+), 62 deletions(-) diff --git a/MES.Service/Dto/service/MESInvItemOutItems.cs b/MES.Service/Dto/service/MESInvItemOutItems.cs index e399091..6c2dde3 100644 --- a/MES.Service/Dto/service/MESInvItemOutItems.cs +++ b/MES.Service/Dto/service/MESInvItemOutItems.cs @@ -4,41 +4,41 @@ public class MESInvItemOutItems { - [SugarColumn(ColumnName = "REMARK")] public string Remark { get; set; } + [SugarColumn(ColumnName = "REMARK")] public string? Remark { get; set; } - [SugarColumn(ColumnName = "PBILL_NO")] public string PbillNo { get; set; } + [SugarColumn(ColumnName = "PBILL_NO")] public string? PbillNo { get; set; } [SugarColumn(ColumnName = "ITEM_OUT_ID")] - public string ItemOutId { get; set; } + public string? ItemOutId { get; set; } [SugarColumn(ColumnName = "RK_QTY")] public decimal RkQty { get; set; } [SugarColumn(ColumnName = "TL_QTY")] public decimal TlQty { get; set; } [SugarColumn(ColumnName = "WORK_LINE")] - public string WorkLine { get; set; } + public string? WorkLine { get; set; } [SugarColumn(ColumnName = "QUANTITY")] public decimal Quantity { get; set; } - [SugarColumn(ColumnName = "ITEM_NO")] public string ItemNo { get; set; } + [SugarColumn(ColumnName = "ITEM_NO")] public string? ItemNo { get; set; } [SugarColumn(ColumnName = "KT_QTY")] public decimal KtQty { get; set; } // 鍓╀綑鍙�� [SugarColumn(ColumnName = "DEPOT_SECTION_CODE")] - public string DepotSectionCode { get; set; } + public string? DepotSectionCode { get; set; } [SugarColumn(ColumnName = "ITEM_MODEL")] - public string ItemModel { get; set; } + public string? ItemModel { get; set; } [SugarColumn(ColumnName = "ITEM_NAME")] - public string ItemName { get; set; } + public string? ItemName { get; set; } - [SugarColumn(ColumnName = "CGB014")] public string Cgb014 { get; set; } + [SugarColumn(ColumnName = "CGB014")] public string? Cgb014 { get; set; } [SugarColumn(ColumnName = "STAFF_NAME")] - public string StaffName { get; set; } + public string? StaffName { get; set; } [SugarColumn(ColumnName = "DEPOT_CODE")] - public string DepotCode { get; set; } + public string? DepotCode { get; set; } } \ No newline at end of file diff --git a/MES.Service/Dto/service/ProductionPickDto.cs b/MES.Service/Dto/service/ProductionPickDto.cs new file mode 100644 index 0000000..887c67c --- /dev/null +++ b/MES.Service/Dto/service/ProductionPickDto.cs @@ -0,0 +1,10 @@ +锘縰sing MES.Service.Modes; + +namespace MES.Service.Dto.service; + +public class ProductionPickDto +{ + public string? ItemModel { get; set; } + + public List<Womdab>? Womdabs{ get; set; } +} \ No newline at end of file diff --git a/MES.Service/Dto/service/WarehouseQuery.cs b/MES.Service/Dto/service/WarehouseQuery.cs index 218b284..6ddeaf6 100644 --- a/MES.Service/Dto/service/WarehouseQuery.cs +++ b/MES.Service/Dto/service/WarehouseQuery.cs @@ -32,4 +32,7 @@ public string? Printnumn { get; set; } public string? ItemName { get; set; } + public string? daa001 { get; set; } + + public decimal? Num { get; set; } } \ No newline at end of file diff --git a/MES.Service/Modes/Womdab.cs b/MES.Service/Modes/Womdab.cs index aed9181..a8e39b2 100644 --- a/MES.Service/Modes/Womdab.cs +++ b/MES.Service/Modes/Womdab.cs @@ -24,31 +24,31 @@ /// 宸ュ崟鍗曞彿 /// </summary> [SugarColumn(ColumnName = "DAB001")] - public string Dab001 { get; set; } + public string? Dab001 { get; set; } /// <summary> /// 搴忓彿 /// </summary> [SugarColumn(ColumnName = "DAB002")] - public string Dab002 { get; set; } + public string? Dab002 { get; set; } /// <summary> /// 鏉愭枡缂栫爜 /// </summary> [SugarColumn(ColumnName = "DAB003")] - public string Dab003 { get; set; } + public string? Dab003 { get; set; } /// <summary> /// 鏉愭枡鍚嶇О /// </summary> [SugarColumn(ColumnName = "DAB004")] - public string Dab004 { get; set; } + public string? Dab004 { get; set; } /// <summary> /// 鏉愭枡瑙勬牸 /// </summary> [SugarColumn(ColumnName = "DAB005")] - public string Dab005 { get; set; } + public string? Dab005 { get; set; } /// <summary> /// 闇�棰嗙敤閲� @@ -66,25 +66,25 @@ /// 宸ヨ壓 /// </summary> [SugarColumn(ColumnName = "DAB008")] - public string Dab008 { get; set; } + public string? Dab008 { get; set; } /// <summary> /// 鍗曚綅 /// </summary> [SugarColumn(ColumnName = "DAB009")] - public string Dab009 { get; set; } + public string? Dab009 { get; set; } /// <summary> /// 鏉愭枡绫诲瀷 /// </summary> [SugarColumn(ColumnName = "DAB010")] - public string Dab010 { get; set; } + public string? Dab010 { get; set; } /// <summary> /// 涓绘枡 /// </summary> [SugarColumn(ColumnName = "DAB011")] - public string Dab011 { get; set; } + public string? Dab011 { get; set; } /// <summary> /// 缁勬垚鐢ㄩ噺 @@ -102,37 +102,37 @@ /// 鏄惁鏇挎枡 /// </summary> [SugarColumn(ColumnName = "DAB014")] - public string Dab014 { get; set; } + public string? Dab014 { get; set; } /// <summary> /// 鐐逛綅 /// </summary> [SugarColumn(ColumnName = "DAB015")] - public string Dab015 { get; set; } + public string? Dab015 { get; set; } /// <summary> /// 鎶曟枡鍗曞彿 /// </summary> [SugarColumn(ColumnName = "DAB016")] - public string Dab016 { get; set; } + public string? Dab016 { get; set; } /// <summary> /// 浠撳簱缂栫爜 /// </summary> [SugarColumn(ColumnName = "DAB017")] - public string Dab017 { get; set; } + public string? Dab017 { get; set; } /// <summary> /// 浠撳簱鍚嶇О /// </summary> [SugarColumn(ColumnName = "DAB018")] - public string Dab018 { get; set; } + public string? Dab018 { get; set; } /// <summary> /// 棰嗘枡鏂瑰紡 /// </summary> [SugarColumn(ColumnName = "DAB019")] - public string Dab019 { get; set; } + public string? Dab019 { get; set; } /// <summary> /// 鍥哄畾鎹熻�� @@ -144,4 +144,14 @@ /// </summary> [SugarColumn(ColumnName = "ERP_ID")] public decimal? ErpId { get; set; } + + // 鍔ㄦ�佹坊鍔犵殑灞炴�� + [SugarColumn(IsIgnore = true)] + public decimal? wNum { get; set; } + + [SugarColumn(IsIgnore = true)] + public string? ItemName { get; set; } + + [SugarColumn(IsIgnore = true)] + public string? ItemNo { get; set; } } \ No newline at end of file diff --git a/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs b/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs index 48f5973..920f82e 100644 --- a/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs +++ b/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs @@ -75,19 +75,23 @@ { return new PurchaseInventory { - ItemIns = GetInvItemInsList(query)[0], + ItemIns = GetInvItemInsList(query).Items[0], ItemInDetails = GetItemInDetails(query.id), InvItemInCDetails = GetInvItemInCDetails(query.id) }; } - public List<MesInvItemIns> GetInvItemInsList(WarehouseQuery query) + public (List<MesInvItemIns> Items, int TotalCount) GetInvItemInsList( + WarehouseQuery query) { - return Db.Queryable<MesInvItemIns, MesDepots, MesSupplier>((a, b, c) => - new JoinQueryInfos(JoinType.Left, a.DepotsCode == b.DepotCode - && b.Factory == a.Factory - && b.Company == a.Company, - JoinType.Left, a.SuppNo == c.SuppNo)) + var totalCount = 0; + var result = Db.Queryable<MesInvItemIns, MesDepots, MesSupplier>( + (a, b, c) => + new JoinQueryInfos(JoinType.Left, + a.DepotsCode == b.DepotCode + && b.Factory == a.Factory + && b.Company == a.Company, + JoinType.Left, a.SuppNo == c.SuppNo)) .WhereIF(query.id > 0, (a, b, c) => a.Id == query.id) .Select((a, b, c) => new MesInvItemIns { @@ -104,7 +108,8 @@ CreateBy = a.CreateBy, DepotName = b.DepotName, SuppName = c.SuppName - }).ToPageList(query.PageIndex, query.Limit); + }).ToPageList(query.PageIndex, query.Limit, ref totalCount); + return (result, totalCount); } public List<MesInvItemInCItems> GetItemInDetails(decimal? pid) diff --git a/MES.Service/service/Warehouse/MesInvItemOutsManager.cs b/MES.Service/service/Warehouse/MesInvItemOutsManager.cs index 95cc7b2..8b255c9 100644 --- a/MES.Service/service/Warehouse/MesInvItemOutsManager.cs +++ b/MES.Service/service/Warehouse/MesInvItemOutsManager.cs @@ -14,13 +14,15 @@ //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvItemOutsManager.cs - public List<MesInvItemOuts> GetProductionPickPage(WarehouseQuery query) + public (List<MesInvItemOuts> Items, int TotalCount) GetProductionPickPage(WarehouseQuery query) { - return Db.Queryable<MesInvItemOuts, MesDepots>((a, o) => + int totalCount = 0; // 鍒濆鍖� totalCount + // 纭繚杩欓噷浣跨敤 'out' 鏉ヨ幏鍙栨�昏鏁� + var result = Db.Queryable<MesInvItemOuts, MesDepots>((a, o) => new JoinQueryInfos( JoinType.Left, o.DepotCode == a.DepotCode && a.Company == o.Company && - a.Factory == o.Factory + a.Factory == a.Factory )) .Where((a, o) => a.BillTypeId == 200 && a.TransactionNo == 201 && @@ -46,7 +48,9 @@ ItemOutNo = a.ItemOutNo, DepotName = o.DepotName // 闇�瑕佸姩鎬佹坊鍔犵殑瀛楁 }) - .ToPageList(query.PageIndex, query.Limit); + .ToPageList(query.PageIndex, query.Limit, ref totalCount); // 纭繚杩欓噷浣跨敤 'out' + + return (result, totalCount); } public MaterialReceipt GetProductionPick(WarehouseQuery query) @@ -55,9 +59,9 @@ if (query.id != null) { var mesInvItemOutsList = GetProductionPickPage(query); - if (mesInvItemOutsList.Count <= 0) return form; + if (mesInvItemOutsList.TotalCount <= 0) return form; - form.ItemOuts = mesInvItemOutsList[0]; + form.ItemOuts = mesInvItemOutsList.Items[0]; form.ItemsList = getProductionItemsList(query); form.InvItemoutCDetails = GetProductionDetails(query); } diff --git a/MES.Service/service/WomdaaManager.cs b/MES.Service/service/WomdaaManager.cs index 255556a..bab21e5 100644 --- a/MES.Service/service/WomdaaManager.cs +++ b/MES.Service/service/WomdaaManager.cs @@ -1,25 +1,76 @@ 锘縰sing MES.Service.DB; +using MES.Service.Dto.service; using MES.Service.Modes; +using SqlSugar; namespace MES.Service.service; public class WomdaaManager : Repository<Womdaa> { //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� + //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomdaaManager.cs - public int TestUpdate(Womdaa womdaa) + //鑾峰彇宸ュ崟鍙� + public List<string> GetProductionPickDaa001(WarehouseQuery query) { - return UseTransaction(db => - { - return db.Updateable<Womdaa>() - .SetColumns(a => a.Daa001 == womdaa.Daa001) - .SetColumns(a => a.Daa002 == womdaa.Daa002) - .SetColumns(a => a.Daa003 == womdaa.Daa003) - .SetColumns(a => a.Daa004 == womdaa.Daa004) - .Where(a => a.Id == womdaa.Id) - .ExecuteCommand(); - }); + string sql = + "SELECT DAA001 FROM WOMDAA A LEFT JOIN (SELECT COUNT(1) UN_NUM, PID FROM WOMDAB WHERE DAB006 > DAB007 GROUP BY PID) B ON A.ID = B.PID WHERE DAA001 LIKE '%" + + query.daa001 + + "%' and DAA018 != '瀹屽伐' AND DAA022 = 1 AND UN_NUM > 0 AND ROWNUM <= 10 order by a.id desc"; + + return Db.Ado.SqlQuery<string>(sql); } - //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomdaaManager.cs + //鏍规嵁宸ュ崟鍙疯繑鍥炰骇鍝佸瀷鍙峰拰寰呴鐗╂枡 + public ProductionPickDto GetItemsByDaa001(WarehouseQuery query) + { + if (string.IsNullOrEmpty(query.daa001)) + { + throw new Exception("宸ュ崟鍙蜂负绌�"); + } + + var womdaa = Db.Queryable<Womdaa, MesItems>((a, i) => + new JoinQueryInfos(JoinType.Left, + a.Daa002 == i.ItemId.ToString())) + .Where((a, i) => a.Daa001 == query.daa001) + .Select((a, i) => new + { + i.ItemModel + }).First(); + + if (womdaa?.ItemModel == null) + { + throw new Exception("宸ュ崟鍙蜂笉瀛樺湪"); + } + + var dto = new ProductionPickDto + { + ItemModel = womdaa.ItemModel + }; + + var womdabs = Db.Queryable<Womdaa, Womdab, MesItems>((a, b, c) => + new JoinQueryInfos( + JoinType.Left, + a.Id == b.Pid, // LEFT JOIN WOMDAB B ON A.ID = B.PID + JoinType.Inner, + c.Id.ToString() == + b.Dab003 // INNER JOIN MES_ITEMS C ON C.ID = B.DAB003 + )) + .Where((a, b, c) => + a.Daa001 == query.daa001) // WHERE DAA001 = 'SCDD003681-1' + .Select((a, b, c) => new Womdab() + { + Pid = b.Pid, + Dab003 = b.Dab003, + Dab006 = b.Dab006, + Dab007 = b.Dab007, + wNum = b.Dab006 - b.Dab007, // 璁$畻瀛楁 W_NUM + ItemName = c.ItemName, // 鍔ㄦ�佸瓧娈� ITEM_NAME + ItemNo = c.ItemNo // 鍔ㄦ�佸瓧娈� ITEM_NO + }) + .ToList(); + + dto.Womdabs = womdabs; + return dto; + } } \ No newline at end of file diff --git a/MES.Service/util/ResponseResult.cs b/MES.Service/util/ResponseResult.cs index 830da6b..24f8f15 100644 --- a/MES.Service/util/ResponseResult.cs +++ b/MES.Service/util/ResponseResult.cs @@ -15,6 +15,8 @@ //杩斿洖鐨勬暟鎹� public object data { get; set; } + public int TotalCount { get; set; } = 0; + //澶辫触鐨勮繑鍥炵粨鏋� public static ResponseResult ResponseError(Exception e) { diff --git a/MESApplication/Controllers/Warehouse/MesInvItemBarcodesController.cs b/MESApplication/Controllers/Warehouse/MesInvItemBarcodesController.cs index b783353..124e534 100644 --- a/MESApplication/Controllers/Warehouse/MesInvItemBarcodesController.cs +++ b/MESApplication/Controllers/Warehouse/MesInvItemBarcodesController.cs @@ -1,4 +1,5 @@ 锘縰sing System.Dynamic; +using MES.Service.Dto.service; using MES.Service.Modes; using MES.Service.service.Warehouse; using MES.Service.util; @@ -15,6 +16,31 @@ /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/ + //GetBarCodesQuan + /// <summary> + /// 鏍规嵁鏉$爜鑾峰彇鏁伴噺 + /// </summary> + /// <returns></returns> + [HttpPost("GetBarCodesQuan")] + public ResponseResult GetBarCodesQuan(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetBarCodesQuan(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + /// <summary> /// 鑾峰彇鎵�鏈� /// </summary> diff --git a/MESApplication/Controllers/Warehouse/MesInvItemInCDetailsController.cs b/MESApplication/Controllers/Warehouse/MesInvItemInCDetailsController.cs index 7cc9221..df91695 100644 --- a/MESApplication/Controllers/Warehouse/MesInvItemInCDetailsController.cs +++ b/MESApplication/Controllers/Warehouse/MesInvItemInCDetailsController.cs @@ -82,12 +82,14 @@ try { dynamic resultInfos = new ExpandoObject(); - resultInfos.tbBillList = m.GetInvItemInsList(entity); + var (items, totalCount) = m.GetInvItemInsList(entity); + resultInfos.tbBillList = items; return new ResponseResult { status = 0, message = "OK", - data = resultInfos + data = resultInfos, + TotalCount = totalCount }; } catch (Exception ex) diff --git a/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs b/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs index a106240..b5227eb 100644 --- a/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs +++ b/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs @@ -41,12 +41,14 @@ try { dynamic resultInfos = new ExpandoObject(); - resultInfos.tbBillList = m.GetProductionPickPage(entity); + var productionPickPage = m.GetProductionPickPage(entity); + resultInfos.tbBillList = productionPickPage.Items; return new ResponseResult { status = 0, message = "OK", - data = resultInfos + data = resultInfos, + TotalCount = productionPickPage.TotalCount }; } catch (Exception ex) diff --git a/MESApplication/Controllers/WomdaaController.cs b/MESApplication/Controllers/WomdaaController.cs index b2ac255..55ba24d 100644 --- a/MESApplication/Controllers/WomdaaController.cs +++ b/MESApplication/Controllers/WomdaaController.cs @@ -1,4 +1,5 @@ 锘縰sing System.Dynamic; +using MES.Service.Dto.service; using MES.Service.Modes; using MES.Service.service; using MES.Service.util; @@ -11,15 +12,20 @@ public class WomdaaController : ControllerBase { private readonly WomdaaManager m = new(); - - //TestUpdate - [HttpPost("TestUpdate")] - public ResponseResult TestUpdate([FromBody] Womdaa data) + + #region 鐢熶骇棰嗘枡 + //GetProductionPickDaa001 + /// <summary> + /// 妯$硦鏌ヨ宸ュ崟鍙峰苟杩斿洖 + /// </summary> + /// <returns></returns> + [HttpPost("GetProductionPickDaa001")] + public ResponseResult GetProductionPickDaa001(WarehouseQuery query) { try { dynamic resultInfos = new ExpandoObject(); - resultInfos.tbBillList = m.TestUpdate(data); + resultInfos.tbBillList = m.GetProductionPickDaa001(query); return new ResponseResult { status = 0, @@ -32,7 +38,32 @@ return ResponseResult.ResponseError(ex); } } - + + //GetItemsByDaa001 + /// <summary> + /// 鏍规嵁宸ュ崟鍙疯幏鍙栦唬棰嗙墿鏂欐槑缁� + /// </summary> + /// <returns></returns> + [HttpPost("GetItemsByDaa001")] + public ResponseResult GetItemsByDaa001(WarehouseQuery query) + { + try + { + dynamic resultInfos = new ExpandoObject(); + resultInfos.tbBillList = m.GetItemsByDaa001(query); + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + /// <summary> /// 鑾峰彇鎵�鏈� /// </summary> @@ -177,4 +208,5 @@ return ResponseResult.ResponseError(ex); } } + #endregion } \ No newline at end of file -- Gitblit v1.9.3