From fa7bc52240a52b1d0ab1b8a1746243fe56fdd043 Mon Sep 17 00:00:00 2001 From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU> Date: 星期四, 11 九月 2025 15:06:58 +0800 Subject: [PATCH] 委外领料:1.显示当前组织2.添加工单查询列表3.添加库位列表4.(待发物料)和(物料总清单)更改为(待扫物料)和(已扫物料)5.查询列表与带出明细改为存储过程 --- service/Warehouse/MesXsthManager.cs | 100 ++++++++++++++++++++++++++++++++++---------------- 1 files changed, 68 insertions(+), 32 deletions(-) diff --git a/service/Warehouse/MesXsthManager.cs b/service/Warehouse/MesXsthManager.cs index 5298152..27d063f 100644 --- a/service/Warehouse/MesXsthManager.cs +++ b/service/Warehouse/MesXsthManager.cs @@ -3,6 +3,7 @@ using NewPdaSqlServer.DB; using NewPdaSqlServer.Dto.service; using NewPdaSqlServer.entity; +using NewPdaSqlServer.entity.Base; using NewPdaSqlServer.util; using OracleInternal.Sharding; using SqlSugar; @@ -18,13 +19,33 @@ /// 鑾峰彇閿�鍞��璐х敵璇峰垪琛� /// </summary> /// <returns>閿�鍞��璐х敵璇峰垪琛�</returns> - public List<string> GetXsthBillNo(WarehouseQuery query) + public dynamic GetXsthBillNo(WarehouseQuery query,dynamic RequestInfo) { - var list = Db.Queryable<SalesReturnNotice>() - .Where(s => s.CheckStatus == true) - .Select(s => s.BillNo).ToList(); + var orgId = RequestInfo.OrgId; - return list; + if (orgId == null) + throw new Exception("缁勭粐涓嶅瓨鍦紒"); + + // 鑾峰彇鏈畬鎴愮殑閫�鏂欏崟鍙峰垪琛� + var parameters = new[] + { + new SugarParameter("@pi_orgId", orgId), + new SugarParameter("@inP1", null), + new SugarParameter("@inP2", null), + new SugarParameter("@inP3", null), + new SugarParameter("@inP4", null) + }; + try + { + // 杩斿洖鍗曞彿瀛楃涓插垪琛� + var blDetails = Db.Ado.SqlQuery<string>( + "EXEC prc_pda_xsth_list @pi_orgId,@inP1,@inP2,@inP3,@inP4", parameters); + return blDetails; + } + catch (Exception ex) + { + throw new Exception($"{ex.Message}"); + } } /// <summary> @@ -32,35 +53,50 @@ /// </summary> /// <param name="query">浠撳簱鏌ヨ鍙傛暟</param> /// <returns>鐗╂枡鏄庣粏鍒楄〃</returns> - public List<ItemDetailModel> GetMesItemDetailByBillNo( - WarehouseQuery query) + public dynamic GetMesItemDetailByBillNo(dynamic query, dynamic RequestInfo) { - // 鍏宠仈鏌ヨ鐗╂枡琛ㄣ�佺墿鏂欐槑缁嗚〃鍜岀墿鏂欏熀纭�淇℃伅琛� - var mesItemTblDetails = Db - .Queryable<SalesReturnNotice, SalesReturnNoticeDetail, MesItems>( - (a, b, c) => new JoinQueryInfos( - JoinType.Left, - a.Id == b.Pid, - JoinType.Left, - b.MaterialId == c.Id.ToString()) - ).Where((a, b, c) => a.BillNo == query.billNo && a.CheckStatus == true) - .Select<ItemDetailModel>((a, b, c) => new ItemDetailModel + if (string.IsNullOrEmpty(query.billNo)) + throw new Exception("璇烽�夊崟鎹彿锛�"); + + if (query == null) + throw new ArgumentNullException(nameof(query), "鍙傛暟瀵硅薄涓嶈兘涓簄ull"); + + if (string.IsNullOrEmpty(query.billNo?.ToString())) + throw new ArgumentException("鍗曟嵁鍙蜂笉鑳戒负绌�", nameof(query.billNo)); + + var orgId = RequestInfo.OrgId; + + if (orgId == null) + throw new Exception("缁勭粐涓嶅瓨鍦紒"); + + // 鑾峰彇鏈畬鎴愮殑閿�鍞��璐ф槑缁� + var parameters = new[] +{ + new SugarParameter("@billNo", query.billNo), + new SugarParameter("@pi_orgId",orgId), + new SugarParameter("@inP1", null), + new SugarParameter("@inP2", null), + new SugarParameter("@inP3", null), + new SugarParameter("@inP4", null) + }; + try + { + List<dynamic>? blDetails = Db.Ado.SqlQuery<dynamic>( + "EXEC prc_pda_xsth_detailList @billNo,@pi_orgId,@inP1,@inP2,@inP3,@inP4", parameters); + var items = blDetails.Where(x => x.DSQty > 0).ToList(); // 寰呮壂鐗╂枡 + var ysitems = blDetails.Where(x => x.SQty > 0).ToList(); // 宸叉壂鐗╂枡 + return new { - ItemNo = c.ItemNo, - ItemName = c.ItemName, - ItemModel = c.ItemModel, - FQty = b.SqQty, // 鐢宠鏁伴噺 - SQty = b.YsQty, // 宸叉壂鏁伴噺 - Pid = b.Pid.ToString(), - FMaterialId = b.MaterialId, - Id = b.Id.ToString() - }).ToList(); - - // 绛涢�夊嚭寰呴��鏁伴噺澶т簬宸查��鏁伴噺鐨勮褰� - //var itemTblDetails = mesItemTblDetails - // .Where(s => (s.Tld005 ?? 0) - (s.Tld006 ?? 0) > 0).ToList(); - - return mesItemTblDetails; + items = items, + ysitems = ysitems, + Count = items.Count + ysitems.Count + }; + } + catch (Exception ex) + { + // 淇濈暀鍘熸湁寮傚父澶勭悊閫昏緫 + throw new Exception($"{ex.Message}"); + } } /// <summary> -- Gitblit v1.9.3