From 971e03ccbe5124d4761f56e71025453d1d4742bc Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期三, 17 九月 2025 14:17:08 +0800 Subject: [PATCH] 111 --- service/base/WmsBaseMangeer.cs | 271 +++++++++++++++++++++++++++++------------------------- 1 files changed, 146 insertions(+), 125 deletions(-) diff --git a/service/base/WmsBaseMangeer.cs b/service/base/WmsBaseMangeer.cs index ae7fa43..b3bbe50 100644 --- a/service/base/WmsBaseMangeer.cs +++ b/service/base/WmsBaseMangeer.cs @@ -1,144 +1,165 @@ -锘縰sing System.Data; -using System.Data.SqlClient; -using NewPdaSqlServer.DB; -using NewPdaSqlServer.Dto.service; -using NewPdaSqlServer.entity; -using NewPdaSqlServer.util; -using SqlSugar; - -namespace NewPdaSqlServer.service.@base; - -public class WmsBaseMangeer : Repository<dynamic> +锘縩amespace NewPdaSqlServer.service.@base { - /// <summary> - /// 閫氱敤鍏ュ簱鏍¢獙 - /// </summary> - /// <param name="db">SqlSugar 鏁版嵁搴撲笂涓嬫枃</param> - /// <param name="edtUserNo">鎿嶄綔浜哄伐鍙�</param> - /// <param name="barcode">鐗╂枡鏉$爜</param> - /// <param name="sectionCode">搴撲綅缂栫爜</param> - /// <param name="stockId">浠撳簱ID</param> - /// <param name="stockOrgId">搴撳瓨缁勭粐ID</param> - /// <param name="billNo">鐢宠鍗曞彿</param> - /// <param name="transactionNo">浜嬪姟绫诲瀷</param> - /// <returns>鍖呭惈鏍¢獙缁撴灉鐨勬暟鎹紶杈撳璞�</returns> - public dynamic pdaInvJY(SqlSugarScope db, string edtUserNo, - string barcode, string sectionCode, string stockId, string stockOrgId, - string billNo, string transactionNo) + using NewPdaSqlServer.Dto.service; + using NewPdaSqlServer.entity; + using SqlSugar; + using System; + using static Microsoft.EntityFrameworkCore.DbLoggerCategory; + using System.Data; + using NewPdaSqlServer.DB; + using System.Data; + using System.Data.SqlClient; + using Microsoft.EntityFrameworkCore.Metadata.Internal; + + + public class WmsBaseMangeer : Repository<dynamic> { - var outputMsg = ""; - var outputStatus = -1; - using (var conn = new SqlConnection(DbHelperSQL.strConn)) - using (var cmd = new SqlCommand("prc_pda_inv_JY", conn)) + /// <summary> + /// 閫氱敤鍏ュ簱鏍¢獙 + /// </summary> + /// <param name="db">SqlSugar 鏁版嵁搴撲笂涓嬫枃</param> + /// <param name="edtUserNo">鎿嶄綔浜哄伐鍙�</param> + /// <param name="barcode">鐗╂枡鏉$爜</param> + /// <param name="sectionCode">搴撲綅缂栫爜</param> + /// <param name="stockId">浠撳簱ID</param> + /// <param name="stockOrgId">搴撳瓨缁勭粐ID</param> + /// <param name="billNo">鐢宠鍗曞彿</param> + /// <param name="transactionNo">浜嬪姟绫诲瀷</param> + /// <returns>鍖呭惈鏍¢獙缁撴灉鐨勬暟鎹紶杈撳璞�</returns> + public dynamic pdaInvJY(SqlSugarScope db, string edtUserNo, + string barcode, string sectionCode, string stockId, string stockOrgId, + string billNo, string transactionNo) { - cmd.CommandType = CommandType.StoredProcedure; - // 杈撳叆鍙傛暟閰嶇疆 - SqlParameter[] parameters = + // 鍙傛暟楠岃瘉 + if (string.IsNullOrEmpty(edtUserNo)) + throw new ArgumentException("鎿嶄綔浜哄伐鍙蜂笉鑳戒负绌�", nameof(edtUserNo)); + if (string.IsNullOrEmpty(barcode)) + throw new ArgumentException("鐗╂枡鏉$爜涓嶈兘涓虹┖", nameof(barcode)); + if (string.IsNullOrEmpty(sectionCode)) + throw new ArgumentException("搴撲綅缂栫爜涓嶈兘涓虹┖", nameof(sectionCode)); + if (string.IsNullOrEmpty(stockId)) + throw new ArgumentException("浠撳簱ID涓嶈兘涓虹┖", nameof(stockId)); + if (string.IsNullOrEmpty(stockOrgId)) + throw new ArgumentException("搴撳瓨缁勭粐ID涓嶈兘涓虹┖", nameof(stockOrgId)); + if (string.IsNullOrEmpty(transactionNo)) + throw new ArgumentException("浜嬪姟绫诲瀷涓嶈兘涓虹┖", nameof(transactionNo)); + + var outputMsg = ""; + var outputStatus = -1; + + using (var conn = new SqlConnection(DbHelperSQL.strConn)) + using (var cmd = new SqlCommand("prc_pda_inv_JY", conn)) { - new("@pi_user", SqlDbType.NVarChar, 100) { Value = edtUserNo }, - new("@pi_barcode", SqlDbType.NVarChar, 100) { Value = barcode }, - new("@pi_sectionCode", SqlDbType.NVarChar, 100) - { Value = sectionCode }, - new("@pi_stockId", SqlDbType.NVarChar, 100) { Value = stockId }, - new("@pi_stockOrgId", SqlDbType.NVarChar, 100) - { Value = stockOrgId }, - new("@pi_billno", SqlDbType.NVarChar, 100) { Value = billNo }, - new("@pi_transaction_no", SqlDbType.NVarChar, 10) - { Value = transactionNo }, - new("@pi_val1", SqlDbType.NVarChar, 100) - { Value = DBNull.Value }, // 棰勭暀鎵╁睍瀛楁 - new("@pi_val2", SqlDbType.NVarChar, 100) - { Value = DBNull.Value }, // 棰勭暀鎵╁睍瀛楁 - new("@po_outMsg", SqlDbType.NVarChar, 2000) - { Direction = ParameterDirection.Output }, - new("@po_outStatus", SqlDbType.Int) - { Direction = ParameterDirection.Output } - }; - - try - { - conn.Open(); - cmd.Parameters.AddRange(parameters); - cmd.ExecuteNonQuery(); - - // 鑾峰彇杈撳嚭鍙傛暟 - outputMsg = parameters[9].Value?.ToString() ?? ""; - outputStatus = Convert.ToInt32(parameters[10].Value); - - if (outputStatus <= 0) - throw new Exception(outputMsg); - - return new ProductionPickDto + cmd.CommandType = CommandType.StoredProcedure; + // 杈撳叆鍙傛暟閰嶇疆 + SqlParameter[] parameters = { - barcode = barcode, - strMsg = outputMsg, - result = outputStatus.ToString() - // 鍏朵粬闇�瑕佹槧灏勭殑瀛楁... + new("@pi_user", SqlDbType.NVarChar, 100) { Value = edtUserNo }, + new("@pi_barcode", SqlDbType.NVarChar, 100) { Value = barcode }, + new("@pi_sectionCode", SqlDbType.NVarChar, 100) { Value = sectionCode }, + new("@pi_stockId", SqlDbType.NVarChar, 100) { Value = stockId }, + new("@pi_stockOrgId", SqlDbType.NVarChar, 100) { Value = stockOrgId }, + new("@pi_billno", SqlDbType.NVarChar, 100) { Value = string.IsNullOrEmpty(billNo) ? DBNull.Value : billNo }, + new("@pi_transaction_no", SqlDbType.NVarChar, 10) { Value = transactionNo }, + new("@pi_val1", SqlDbType.NVarChar, 100) { Value = DBNull.Value }, // 棰勭暀鎵╁睍瀛楁 + new("@pi_val2", SqlDbType.NVarChar, 100) { Value = DBNull.Value }, // 棰勭暀鎵╁睍瀛楁 + new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, + new("@po_outStatus", SqlDbType.Int) { Direction = ParameterDirection.Output } }; - } - catch (Exception ex) - { - throw new Exception($"鍏ュ簱鏍¢獙澶辫触: {ex.Message}"); + + try + { + conn.Open(); + cmd.Parameters.AddRange(parameters); + cmd.ExecuteNonQuery(); + + // 鑾峰彇杈撳嚭鍙傛暟 + outputMsg = parameters[9].Value?.ToString() ?? ""; + outputStatus = Convert.ToInt32(parameters[10].Value); + + if (outputStatus <= 0) + throw new Exception(outputMsg); + + return new ProductionPickDto + { + barcode = barcode, + strMsg = outputMsg, + result = outputStatus.ToString(), + // 鍏朵粬闇�瑕佹槧灏勭殑瀛楁... + }; + } + catch (Exception ex) + { + throw new Exception($"鍏ュ簱鏍¢獙澶辫触: {ex.Message}"); + } } } - } - /// <summary> - /// 鑾峰彇鏉$爜淇℃伅 - /// </summary> - /// <param name="unity"></param> - /// <returns></returns> - /// <exception cref="Exception"></exception> - public MesInvItemBarcodes GetBarInfo(WarehouseQuery unity) - { - var barInfo = Db.Queryable<MesInvItemBarcodes>() - .Where(s => s.ItemBarcode == unity.barcode) - .First(); - if (barInfo is null) throw new Exception("璇ユ潯鐮佸簱瀛樹笉瀛樺湪锛�"); + /// <summary> + /// 鑾峰彇鏉$爜淇℃伅 + /// </summary> + /// <param name="unity"></param> + /// <returns></returns> + /// <exception cref="Exception"></exception> + public MesInvItemBarcodes GetBarInfo(WarehouseQuery unity) + { + var barInfo = Db.Queryable<MesInvItemBarcodes>() + .Where(s => s.ItemBarcode == unity.barcode) + .First(); + if (barInfo is null) throw new Exception("璇ユ潯鐮佸簱瀛樹笉瀛樺湪锛�"); - return barInfo; // 杩斿洖绗竴琛屾暟鎹紝濡傛灉娌℃湁鍒欒繑鍥� null - } + return barInfo; // 杩斿洖绗竴琛屾暟鎹紝濡傛灉娌℃湁鍒欒繑鍥� null + } - /// <summary> - /// 鑾峰彇鐗╂枡淇℃伅 - /// </summary> - /// <param name="strItemId"></param> - /// <returns></returns> - /// <exception cref="Exception"></exception> - public MesItems GetItemNo(decimal strItemId) - { - var itemInfo = Db.Queryable<MesItems>() - .Where(s => s.Id == strItemId && s.Fforbidstatus == "A") - .First(); - if (itemInfo is null) throw new Exception("璇ユ潯鐮佸搴旂墿鏂欎俊鎭笉瀛樺湪鎴栧凡绂佺敤锛�"); + /// <summary> + /// 鑾峰彇鐗╂枡淇℃伅 + /// </summary> + /// <param name="strItemId"></param> + /// <returns></returns> + /// <exception cref="Exception"></exception> + public MesItems GetItemNo(decimal strItemId) + { + var itemInfo = Db.Queryable<MesItems>() + .Where(s => s.Id == strItemId && s.Fforbidstatus == "A") + .First(); + if (itemInfo is null) throw new Exception("璇ユ潯鐮佸搴旂墿鏂欎俊鎭笉瀛樺湪鎴栧凡绂佺敤锛�"); - return itemInfo; - } + return itemInfo; + } - /// <summary> - /// 鑾峰彇璐т富绫诲瀷 - /// </summary> - /// <param name="ownerId">璐т富ID</param> - /// <returns>璐т富绫诲瀷(BD_OwnerOrg/BD_Customer/BD_Supplier)</returns> - public string GetOwnerType(string ownerId) - { - if (string.IsNullOrEmpty(ownerId)) - throw new ArgumentNullException(nameof(ownerId)); + /// <summary> + /// 鑾峰彇璐т富绫诲瀷 + /// </summary> + /// <param name="ownerId">璐т富ID</param> + /// <returns>璐т富绫诲瀷(BD_OwnerOrg/BD_Customer/BD_Supplier)</returns> + public string GetOwnerType(string ownerId) + { + // 濡傛灉 ownerId 涓虹┖锛岃繑鍥為粯璁ょ殑璐т富绫诲瀷 + if (string.IsNullOrEmpty(ownerId)) + return "BD_OwnerOrg"; // 榛樿涓虹粍缁囩被鍨� - if (Db.Queryable<SysOrganization>().Any(x => x.Fid == ownerId)) - return "BD_OwnerOrg"; + if (Db.Queryable<SysOrganization>().Any(x => x.Fid == ownerId)) + { + return "BD_OwnerOrg"; + } + else if (Db.Queryable<MesCustomer>().Any(x => x.Id == Convert.ToInt32(ownerId))) + { + return "BD_Customer"; + } + else if (Db.Queryable<MesSupplier>().Any(x => x.Id == Convert.ToInt32(ownerId))) + { + return "BD_Supplier"; + } + else if (Db.Queryable<SysOrganization>().Any(x => x.Fid == ownerId)) + { + return "BD_OwnerOrg"; + } + + throw new Exception("鏃犳硶纭畾璐т富绫诲瀷锛岃妫�鏌ヨ揣涓籌D鏄惁姝g‘锛�"); + } - if (Db.Queryable<MesCustomer>() - .Any(x => x.Id == Convert.ToInt32(ownerId))) return "BD_Customer"; - - if (Db.Queryable<MesSupplier>() - .Any(x => x.Id == Convert.ToInt32(ownerId))) return "BD_Supplier"; - - if (Db.Queryable<SysOrganization>().Any(x => x.Fid == ownerId)) - return "BD_OwnerOrg"; - - throw new Exception("鏃犳硶纭畾璐т富绫诲瀷锛岃妫�鏌ヨ揣涓籌D鏄惁姝g‘锛�"); + } } \ No newline at end of file -- Gitblit v1.9.3