From 2b4019cdae3d1abbd47bb2524a620e23cd8806e3 Mon Sep 17 00:00:00 2001
From: cnf <3200815559@qq.com>
Date: 星期六, 23 八月 2025 16:17:54 +0800
Subject: [PATCH] 1增加了通用控件选择库位 2增加撤回报工,自动入库维护功能

---
 WebApi/Gs.Warehouse/Services/MesAutoRkController.cs     |  352 +++++++++++++++++++++++++++++++++-----------------
 WebApi/Gs.Wom/Service/MesScrksqDjManager.cs             |   16 +-
 WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs |   42 ++---
 3 files changed, 259 insertions(+), 151 deletions(-)

diff --git a/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs b/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs
index f83ea1c..0c0f480 100644
--- a/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs
+++ b/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs
@@ -1,4 +1,5 @@
 锘縰sing System.Data;
+using System.Data.SqlClient;
 using System.Dynamic;
 using System.Text;
 using Gs.Toolbox;
@@ -27,138 +28,174 @@
 
         #region
         /// <summary>
-        /// 璇诲彇鍒楄〃锛屾敮鎸佸垎椤�
+        ///     璇诲彇鍒楄〃锛屾敮鎸佸垎椤�
         /// </summary>
         /// <param name="model"></param>
         /// <returns></returns>
         [RequestMethod(RequestMethods.POST)]
-        public ReturnDto<PageList<dynamic>> GetListPage([FromBody] PageQuery model)
+        public ReturnDto<PageList<dynamic>> GetListPage([FromBody] dynamic model)
         {
             int currentPage = model.currentPage;
             int everyPageSize = model.everyPageSize;
-            string sortName = string.IsNullOrEmpty(model.sortName) ? "org.FNumber" : model.sortName;
+            string sortName = model.sortName;
             string keyWhere = model.keyWhere;
-            System.Text.StringBuilder _w = new StringBuilder();
-            _w.Append(" from [dbo].[MES_BACK_FLASH] a");
-            _w.Append(" left join MES_ITEMS i on a.ItemID=i.item_id  ");
-            _w.Append(" left join MES_DEPOTS d on a.depotId=d.depot_id ");
-            _w.Append(" left join SYS_DEPARTMENT m on a.departmentId=m.departmentid ");
-            _w.Append(" left join SYS_ORGANIZATION org on i.FSubsidiary=org.FID");
-            _w.Append(" where 1=1 " + keyWhere);
-            System.Text.StringBuilder sbSql = new StringBuilder();
-            sbSql.Append("select * from ");
-            sbSql.Append("( ");
-            sbSql.Append("select top 100000 ROW_NUMBER() over(order by " + sortName + " " + model.sortOrder + ") as rowIndex,a.*,'('+org.FNumber+')'+org.NAME as orgName  ");
-            sbSql.Append(",i.item_no as itemNo,i.item_name as itemName,i.item_model as itemModel,d.depot_name as depotName,m.departmentname as bmName");
-            sbSql.Append(_w);
-            sbSql.Append(") as T ");
-            sbSql.Append(" where T.rowindex>(" + currentPage + "-1)*" + everyPageSize + " and  T.rowindex<=" + currentPage + "*" + everyPageSize);
-            sbSql.Append(" order by rowindex asc ");
-            sbSql.Append(" select count(1) as intTotal ");
-            sbSql.Append(_w);
-            DataSet dset = new DataSet();
-            try
+            SqlParameter[] parameters =
             {
-                dset = Gs.Toolbox.DbHelperSQL.Query(sbSql.ToString());
-            }
-            catch (Exception ex)
-            {
-                Gs.Toolbox.LogHelper.Debug(this.ToString(), "GetListPage error锛�" + ex.Message);
-                return ReturnDto<PageList<dynamic>>.QuickReturn(default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
-            }
-            PageList<dynamic> _pglist = new PageList<dynamic>
+            new("@inCurrentPage", currentPage),
+            new("@inEveryPageSize", everyPageSize),
+            new("@inSortName", sortName),
+            new("@inSortOrder", ""),
+            new("@inQueryWhere", keyWhere),
+            new("@inFid", ""),
+            new("@inP1", ""),
+            new("@inP2", ""),
+            new("@inP3", ""),
+            new("@inP4", "")
+        };
+            var dset = new DataSet();
+            var _pglist = new PageList<dynamic>
             {
                 total = 0,
                 everyPageSize = 0,
                 pages = 0,
                 list = new List<dynamic>()
             };
-            if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)//鏈夋暟鎹�
-            {
-                int intTotal = int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
-                int pages = (intTotal % everyPageSize != 0) ? (intTotal / everyPageSize + 1) : (intTotal / everyPageSize);
-                _pglist.total = intTotal;
-                _pglist.everyPageSize = everyPageSize;
-                _pglist.pages = pages;
-                List<dynamic> _dy = dset.Tables[0].TableToDynamicList();
-                _pglist.list = _dy;
-            }
-            return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, ReturnCode.Success, "璇诲彇鎴愬姛");
-        }
-
-
-        /// <summary>
-        /// 鍒犻櫎瀹炰綋
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [RequestMethod(RequestMethods.POST)]
-        public ReturnDto<int?> DeleteModel([FromBody] JArray guidList)
-        {
-            var intArray = guidList.ToObject<string[]>();
-            string guid = intArray[0];
-            int rtnInt = (int)ReturnCode.Default;
-            int cont = 0;
             try
             {
-                cont = isChkOrUnChk(guid, 1);
-                if (cont > 0)
-                    return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鍒犻櫎澶辫触锛岃淇℃伅宸茶瀹℃牳锛�");
-                StringBuilder strSql = new StringBuilder();
-                strSql.Append(" delete from MES_BACK_FLASH ");
-                strSql.Append(" where guid='" + guid + "'");
-                int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
-                rtnInt = rows;
+                dset = DbHelperSQL.RunProcedure("prc_auto_rk_lst", parameters, "0");
+                if (dset != null && dset.Tables.Count > 0 &&
+                    dset.Tables[0].Rows.Count > 0) //鏈夋暟鎹�
+                {
+                    var intTotal =
+                        int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
+                    var pages = intTotal % everyPageSize != 0
+                        ? intTotal / everyPageSize + 1
+                        : intTotal / everyPageSize;
+                    _pglist.total = intTotal;
+                    _pglist.everyPageSize = everyPageSize;
+                    _pglist.pages = pages;
+                    var _dy = dset.Tables[0].TableToDynamicList();
+                    _pglist.list = _dy;
+                }
             }
             catch (Exception ex)
             {
-                LogHelper.Debug(this.ToString(), "DeleteModel error锛�" + ex.Message);
-                rtnInt = (int)ReturnCode.Exception;
-                return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鍒犻櫎澶辫触锛�" + ex.Message);
+                LogHelper.Debug(ToString(), ex.Message);
+                return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
+              ReturnCode.Exception, ex.Message);
             }
-            if (rtnInt > 0)
-                return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Success, "鎿嶄綔鎴愬姛锛屽叡鍒犻櫎" + rtnInt.ToString() + "鏉℃暟鎹紒");
-            else
-                return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鍒犻櫎澶辫触锛岃閲嶈瘯锛�");
+            return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
+                ReturnCode.Success, "璇诲彇鎴愬姛");
         }
 
         /// <summary>
-        /// 澧炲姞瀹炰綋
+        ///     璇诲彇
+        /// </summary>
+        /// <param name="guid"></param>
+        /// <returns></returns>
+        [RequestMethod(RequestMethods.POST)]
+        public ReturnDto<ExpandoObject> GetModel([FromBody] dynamic model)
+        {
+            string guid = model.guid.ToString();
+            dynamic m = new ExpandoObject();
+            m.list = new List<dynamic>();
+            m.list2 = new List<dynamic>();
+            SqlParameter[] parameters =
+            {
+            new("@inMainGuid", guid),
+            new("@inP1", ""),
+            new("@inP2", ""),
+            new("@inP3", ""),
+            new("@inP4", "")
+        };
+            var dset = new DataSet();
+            try
+            {
+                dset = DbHelperSQL.RunProcedure("[prc_auto_rk_mx]", parameters, "0");
+                if (dset != null && dset.Tables.Count > 0 &&
+                    dset.Tables[0].Rows.Count > 0)
+                {
+                    var dr = dset.Tables[0].Rows[0];
+                    m = dr.RowToDynamic();
+                }
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Debug(ToString(), ex.Message);
+            }
+
+            if (m != null)
+                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
+                    "璇诲彇鎴愬姛锛�");
+            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�");
+        }
+
+        /// <summary>
+        ///     澧炲姞鎴栫紪杈戝疄浣�
         /// </summary>
         /// <param name="model"></param>
         /// <returns></returns>
         [RequestMethod(RequestMethods.POST)]
         public ReturnDto<ExpandoObject> EditModel([FromBody] dynamic model)
         {
+            Guid? guid = model.guid; //涓婚敭
             string itemId = model.itemId;
             string departmentId = model.departmentId;
             string depotId = model.depotId;
-            int? rtnInt = (int)ReturnCode.Default;
+            string depotlocid = model.depotlocid;
             dynamic mObj = new ExpandoObject();
             mObj.outMsg = "";
             mObj.outSum = -1;
             mObj.outGuid = "";
             mObj.outNo = "";
-            StringBuilder strSql = new StringBuilder();
-            string guid = Guid.NewGuid().ToString();
-            strSql.Append(" insert into MES_BACK_FLASH");
-            strSql.Append(" ([guid] ,[ItemId] ,[departmentId] ,[depotId],createBy,createDate,checkStatus)");
-            strSql.Append(" values(");
-            strSql.Append(" '" + guid + "','" + itemId + "','" + departmentId + "'," + depotId + ",'" + _userCode + "',getdate(),0)");
-            try
+            using (var conn = new SqlConnection(DbHelperSQL.strConn))
             {
-                rtnInt = DbHelperSQL.ExecuteSql(strSql.ToString());
-                mObj.outMsg = "鎿嶄綔鎴愬姛锛�";
-                mObj.outSum = rtnInt;
-                mObj.outGuid = guid;
-                mObj.outNo = itemId;
-            }
-            catch (Exception ex)
-            {
-                LogHelper.Debug(this.ToString(), "EditModel error锛�" + ex.Message);
-                rtnInt = (int)ReturnCode.Exception;
-                mObj.outMsg = ex.Message;
-                mObj.outSum = -1;
+                using (var cmd = new SqlCommand("[prc_auto_rk_edt]", conn))
+                {
+                    try
+                    {
+                        conn.Open();
+                        cmd.CommandType = CommandType.StoredProcedure;
+                        SqlParameter[] parameters =
+                        {
+                        new SqlParameter("@outMsg", SqlDbType.NVarChar, 300),
+                        new SqlParameter("@outSum", SqlDbType.Int),
+                        new SqlParameter("@outGuid", SqlDbType.UniqueIdentifier),
+                        new SqlParameter("@outNo", SqlDbType.NVarChar, 300),
+                        new SqlParameter("@inOrderGuid", CheckGuid(guid) ? guid : DBNull.Value),
+                        new SqlParameter("@ItemId", string.IsNullOrEmpty(itemId) ? DBNull.Value : (object)long.Parse(itemId)),
+                        new SqlParameter("@departmentId", string.IsNullOrEmpty(departmentId) ? DBNull.Value : (object)long.Parse(departmentId)),
+                        new SqlParameter("@depotId", string.IsNullOrEmpty(depotId) ? DBNull.Value : (object)long.Parse(depotId)),
+                        new SqlParameter("@depotlocid", string.IsNullOrEmpty(depotlocid) ? DBNull.Value : (object)depotlocid),
+                        new SqlParameter("@remark", ""),
+                        new SqlParameter("@inEdtUserGuid", _userGuid),
+                        new SqlParameter("@inLineList", DBNull.Value), // 璁剧疆涓篋BNull.Value
+                        new SqlParameter("@inLineList2", DBNull.Value) // 璁剧疆涓篋BNull.Value
+                    };
+                        parameters[0].Direction = ParameterDirection.Output;
+                        parameters[1].Direction = ParameterDirection.Output;
+                        parameters[2].Direction = ParameterDirection.Output;
+                        parameters[3].Direction = ParameterDirection.Output;
+                        foreach (var parameter in parameters)
+                            cmd.Parameters.Add(parameter);
+                        cmd.ExecuteNonQuery();
+                        mObj.outMsg = parameters[0].Value.ToString();
+                        mObj.outSum = int.Parse(parameters[1].Value.ToString());
+                        mObj.outGuid = parameters[2].Value.ToString();
+                        mObj.outNo = parameters[3].Value.ToString();
+                    }
+                    catch (Exception ex)
+                    {
+                        LogHelper.Debug(ToString(),
+                            "prc_item_tbl_edt error锛�" + ex.Message);
+                        mObj.outMsg = ex.Message;
+                        mObj.outSum = -1;
+                    }
+                    finally
+                    {
+                        conn.Close();
+                    }
+                }
             }
             if (mObj.outSum <= 0)
                 return ReturnDto<dynamic>.QuickReturn(mObj, ReturnCode.Exception, mObj.outMsg);
@@ -166,48 +203,121 @@
         }
 
         /// <summary>
-        /// 璇诲彇瀹炰綋
+        ///     鍒犻櫎涓昏〃鎴栨槑缁�
         /// </summary>
-        /// <param name="guid"></param>
+        /// <param name="model"></param>
         /// <returns></returns>
         [RequestMethod(RequestMethods.POST)]
-        [AllowAnonymous]
-        public ReturnDto<System.Dynamic.ExpandoObject> GetModel([FromBody] dynamic model)
+        public ReturnDto<int?> DeleteModel([FromBody] dynamic model)
         {
-            dynamic m = new System.Dynamic.ExpandoObject();
-            System.Text.StringBuilder sbSql = new StringBuilder();
-            sbSql.Append("select top 1 a.*,org.FID as orgId ,i.item_no as itemNo,i.item_name as itemName,i.item_model as itemModel from MES_BACK_FLASH a left join MES_ITEMS i on a.ItemID=i.item_id left join SYS_ORGANIZATION org on i.FSubsidiary=org.FID where 1=1 and a.guid='" + model.guid.ToString() + "' ");
-            try
+            int? rtnInt = (int)ReturnCode.Default;
+            Guid? guid = model.guid; //鍒拌揣鍗曚富閿�
+            var _outMsg = "";
+            var _outSum = -1;
+            using (var conn = new SqlConnection(DbHelperSQL.strConn))
             {
-                DataSet dset = new DataSet();
-                dset = DbHelperSQL.Query(sbSql.ToString());
-                if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)
+                using (var cmd = new SqlCommand("[prc_auto_rk_del]", conn))
                 {
-                    System.Data.DataRow dr = dset.Tables[0].Rows[0];
-                    m = dr.RowToDynamic();
-                    return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "璇诲彇鎴愬姛锛�");
+                    try
+                    {
+                        conn.Open();
+                        cmd.CommandType = CommandType.StoredProcedure;
+                        SqlParameter[] parameters =
+                        {
+                        new("@outMsg", SqlDbType.NVarChar, 300),
+                        new("@outSum", SqlDbType.Int),
+                        new("@inOrderGuid",
+                            CheckGuid(guid)
+                                ? guid
+                                : DBNull.Value),
+                        new("@inEdtUserGuid", _userGuid)
+                    };
+                        parameters[0].Direction = ParameterDirection.Output;
+                        parameters[1].Direction = ParameterDirection.Output;
+                        foreach (var parameter in parameters)
+                            cmd.Parameters.Add(parameter);
+
+                        cmd.ExecuteNonQuery();
+                        _outMsg = parameters[0].Value.ToString();
+                        _outSum = int.Parse(parameters[1].Value.ToString());
+                    }
+                    catch (Exception ex)
+                    {
+                        LogHelper.Debug(ToString(),
+                            "prc_auto_rk_del error锛�" + ex.Message);
+                        _outMsg = ex.Message;
+                        _outSum = -1;
+                    }
+                    finally
+                    {
+                        conn.Close();
+                    }
                 }
-                else
-                    return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�");
             }
-            catch (Exception ex)
-            {
-                LogHelper.Debug(this.ToString(), "GetModel error:" + ex.Message);
-                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�");
-            }
+
+            if (_outSum <= 0)
+                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception,
+                    _outMsg);
+            return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success, _outMsg);
         }
 
+
         /// <summary>
-        /// 鍒ゆ柇鏄惁瀹℃牳
+        ///     鎻愪氦妫�楠�
         /// </summary>
-        /// <param name="guidList"></param>
-        /// <param name="status"></param>
+        /// <param name="mode"></param>
         /// <returns></returns>
-        private int isChkOrUnChk(string guidList, int status)
+        [RequestMethod(RequestMethods.POST)]
+        public ReturnDto<ExpandoObject> EditModelSubmit([FromBody] dynamic mode)
         {
-            int cont = 0;
-            cont = int.Parse(DbHelperSQL.GetSingle("select count(1) from MES_BACK_FLASH where guid='" + guidList + "' and isnull(checkstatus,0)=" + status + "").ToString());
-            return cont;
+            string _guid = mode.guid;
+            string _inFieldValue = mode.inFieldValue;
+            string _chkOut = mode.chkOut;
+            string _proName = "prc_auto_rk_submit";
+            dynamic m = new ExpandoObject();
+            m.outSum = -1;
+            m.outMsg = "";
+            using (var conn = new SqlConnection(DbHelperSQL.strConn))
+            {
+                using (var cmd = new SqlCommand(_proName, conn))
+                {
+                    try
+                    {
+                        conn.Open();
+                        cmd.CommandType = CommandType.StoredProcedure;
+                        SqlParameter[] parameters =
+                        {
+                         new("@outMsg", SqlDbType.NVarChar, 2500),
+                        new("@outSum", SqlDbType.Int),
+                        new("@inEdtUserGuid", _userGuid),
+                        new("@inOrderGuid", _guid),
+                        new("@inFieldValue", _inFieldValue),
+                        new("@in1", _chkOut),
+                        new("@in2", "")
+                    };
+                        parameters[0].Direction = ParameterDirection.Output;
+                        parameters[1].Direction = ParameterDirection.Output;
+                        foreach (var parameter in parameters)
+                            cmd.Parameters.Add(parameter);
+                        cmd.ExecuteNonQuery();
+                        m.outMsg = parameters[0].Value.ToString();
+                        m.outSum = int.Parse(parameters[1].Value.ToString());
+                    }
+                    catch (Exception ex)
+                    {
+                        LogHelper.Debug(ToString(),
+                            "prc_auto_rk_submit error锛�" + ex.Message);
+                        m.outMsg = ex.Message;
+                        return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
+                            ex.Message);
+                    }
+                    finally
+                    {
+                        conn.Close();
+                    }
+                }
+            }
+            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "鎿嶄綔鎴愬姛锛�");
         }
         #endregion
     }
diff --git a/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs b/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs
index d3bcde8..4895098 100644
--- a/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs
+++ b/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs
@@ -1,4 +1,5 @@
-锘縰sing Gs.Entity.BaseInfo;
+锘縰sing AngleSharp.Text;
+using Gs.Entity.BaseInfo;
 using Gs.Entity.Sys;
 using Gs.Toolbox;
 using Gs.Toolbox.ApiCore.Abstract.Mvc;
@@ -29,27 +30,24 @@
             var _sbWhere = new StringBuilder(" 1=1" + query.keyWhere);
             var _sbBy = new StringBuilder(query.sortName + " " + query.sortOrder);
             var totalCount = 0;
-            var itemsList = Db.Queryable<MesDepots,MesDepotSections, SysOrganization, MesStaff, MesCustomer, MesSupplier, SysDepartment>(
-                    (a, b,Org, c, d, f, g) => new object[]
-                    {
-                        JoinType.Left, a.Guid == b.DepotGuid,
-                        JoinType.Left, a.FSubsidiary == Org.Fid,
-                        JoinType.Left, a.CreateBy == c.Id.ToString(),
-                        JoinType.Left,d.Id.ToString()==a.ClientId.ToString(),
-                        JoinType.Left,f.Id.ToString()==a.SuppLierId.ToString(),
-                        JoinType.Left,g.Id.ToString()==a.department.ToString(),
-                    }).Select((a, b, Org, c, d, f, g) => new MesDepotSections
-                    {
-                        Guid=b.Guid,
-                        DepotSectionCode=b.DepotSectionCode.ToString(),
-                        DepotSectionName=b.DepotSectionName.ToString(),
-                        CreateBy = c.StaffName.ToString()
-                   
-                    }, true)
-                .Where(_sbWhere.ToString())
-                .OrderBy(_sbBy.ToString())
-                .ToPageList(query.currentPage, query.everyPageSize,
-                    ref totalCount);
+            // 鍏堟瀯寤哄熀纭�鏌ヨ
+            var queryBase = Db.Queryable<MesDepots>()
+                .LeftJoin<MesDepotSections>((a, b) => a.Guid == b.DepotGuid);
+                //.LeftJoin<SysOrganization>((a, b, c) => a.FSubsidiary == c.Fid)
+                //.LeftJoin<MesStaff>((a, b, c, d) => a.CreateBy == d.Id.ToString())
+                //.LeftJoin<MesCustomer>((a, b, c, d, e) => e.Id.ToString() == a.ClientId)
+                //.LeftJoin<MesSupplier>((a, b, c, d, e, f) => f.Id.ToString() == a.SuppLierId)
+                //.LeftJoin<SysDepartment>((a, b, c, d, e, f, g) => g.Id.ToString() == a.department);
+            // 鐒跺悗杩涜閫夋嫨鍜屽垎椤�
+            var itemsList = queryBase.Select((a, b) => new MesDepotSections
+            {
+                Guid = b.Guid,
+                DepotSectionCode = b.DepotSectionCode,
+                DepotSectionName = b.DepotSectionName
+            })
+            .Where(_sbWhere.ToString())
+            .OrderBy(_sbBy.ToString())
+            .ToPageList(query.currentPage, query.everyPageSize, ref totalCount);
 
             pageList = new PageList<MesDepotSections>(itemsList, totalCount,
                 query.everyPageSize);
diff --git a/WebApi/Gs.Wom/Service/MesScrksqDjManager.cs b/WebApi/Gs.Wom/Service/MesScrksqDjManager.cs
index 5e0934a..3b18c66 100644
--- a/WebApi/Gs.Wom/Service/MesScrksqDjManager.cs
+++ b/WebApi/Gs.Wom/Service/MesScrksqDjManager.cs
@@ -229,14 +229,14 @@
                     cmd.CommandType = CommandType.StoredProcedure;
                     SqlParameter[] parameters =
                     {
-                        new("@outMsg", SqlDbType.NVarChar, 2500),
-                        new("@outSum", SqlDbType.Int),
-                        new("@inEdtUserGuid", userGuid),
-                        new("@inOrderGuid", orderGuid),
-                        new("@pi_inventoryAppBillNo",_billNo),
-                        new("@in1", ""),
-                        new("@in2", ""),
-                        new("@in3", "")
+                        new SqlParameter("@outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output },
+                        new SqlParameter("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output },
+                        new SqlParameter("@inEdtUserGuid", SqlDbType.UniqueIdentifier) { Value = userGuid },
+                        new SqlParameter("@inOrderGuid", SqlDbType.UniqueIdentifier) { Value = orderGuid },
+                        new SqlParameter("@pi_inventoryAppBillNo", SqlDbType.NVarChar, 100) { Value = _billNo ?? (object)DBNull.Value },
+                        new SqlParameter("@in1", ""),
+                        new SqlParameter("@in2", ""),
+                        new SqlParameter("@in3", "")
                     };
                     parameters[0].Direction = ParameterDirection.Output;
                     parameters[1].Direction = ParameterDirection.Output;

--
Gitblit v1.9.3