From cd1c62ccfd8cf9c582686b6aec02d394a9f4528e Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期日, 29 六月 2025 19:00:15 +0800
Subject: [PATCH] 保存送货单方法外取消事务;生成送货单前校验完善实物回滚;验证采购订单方法添加防死锁;采购订单列表分页查询;物料标准包装模块;

---
 WebAPI/Controllers/POOrderController.cs |  130 +++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 123 insertions(+), 7 deletions(-)

diff --git a/WebAPI/Controllers/POOrderController.cs b/WebAPI/Controllers/POOrderController.cs
index e8f676e..dc131e7 100644
--- a/WebAPI/Controllers/POOrderController.cs
+++ b/WebAPI/Controllers/POOrderController.cs
@@ -19,7 +19,7 @@
     {
         private JsonResult objJsonResult = new JsonResult();
         private json objjson = new json();
-        SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
+        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
 
         /// <summary>
         /// 閲囪喘鍗曞垪琛�
@@ -33,15 +33,15 @@
         //閲囪喘璁㈠崟鍒楄〃
         public object GetPOOrderBill([FromBody] JObject msg)
         {
-            string HSupNo = msg["HSupNo"].ToString(); string sqlWhere = msg["sqlWhere"].ToString();
+            string HSupIDs = msg["HSupIDs"].ToString(); string sqlWhere = msg["sqlWhere"].ToString();
             //string msg = "";
             try
             {
                 string VsWhere = "";
                 string PcWhere = "";
-                SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
+                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
                 DataSet ds;
-                string sql = " Where hsupid in (select HSupID from h_v_Gy_UserSupplierList where 鐢ㄦ埛 = ^^" + HSupNo.Trim() + "^^) " + sqlWhere;
+                string sql = " Where hsupid in (" + HSupIDs.Trim() + ")" + sqlWhere;
                 //杞崲鐗规畩瀛楃
                 if (Common.SQLtoChange(sql, ref VsWhere, ref PcWhere) == false)
                 {
@@ -86,6 +86,67 @@
             }
 
         }
+
+        #region
+
+        [Route("GetPOOrderBillList_byPage")]
+        [HttpPost]
+        //閲囪喘璁㈠崟鍒楄〃
+        public object GetPOOrderBillList_byPage([FromBody] JObject msg)
+        {
+            string HSupIDs = msg["HSupIDs"].ToString(); 
+            string sqlWhere = msg["sqlWhere"].ToString();
+            string page = msg["page"].ToString();
+            string size = msg["size"].ToString();
+            string Organization = msg["Organization"].ToString();
+            try
+            {
+                string VsWhere = "";
+                string PcWhere = "";
+                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+                DataSet ds;
+                string sql = " Where hsupid in (" + HSupIDs.Trim() + ")" + sqlWhere;
+                //杞崲鐗规畩瀛楃
+                if (Common.SQLtoChange(sql, ref VsWhere, ref PcWhere) == false)
+                {
+                    objjson.code = "0";
+                    objjson.count = 0;
+                    objjson.Message = "杞崲鐗规畩瀛楃澶辫触";
+                    objjson.data = null;
+                    return objjson;
+                }
+
+                sql = "exec h_p_SRM_POOrderBillListByPage " + page + "," + size + ",'" + Organization + "','" + PcWhere + "'";
+
+                ds = oCn.RunProcReturn(sql, "h_p_SRM_POOrderBillListByPage");
+                //娣诲姞鍒楀悕
+                List<object> columnNameList = new List<object>();
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+                objjson.code = "1";
+                objjson.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
+                objjson.Message = "鑾峰彇鎴愬姛";
+                objjson.data = ds.Tables[0];
+                objjson.list = columnNameList;
+                return objjson;
+
+            }
+            catch (Exception e)
+            {
+                objjson.code = "0";
+                objjson.count = 0;
+                objjson.Message = "鑾峰彇澶辫触" + e.ToString();
+                objjson.data = null;
+                return objjson;
+            }
+
+        }
+        #endregion
+
         /// <summary>
         /// 閲囪喘璁㈠崟琛ㄥご淇℃伅
         /// </summary>
@@ -188,17 +249,25 @@
             }
         }
         [Route("POOrderAccept")]
-        [HttpGet]
+        [HttpPost]
         /// <summary>
         /// 璁㈠崟鎺ュ彈
         /// </summary>
         /// <param name="HInterID"></param>
         /// <returns></returns>
-        public object POOrderAccept(string HInterID, string HBillNo, string HUser)
+        public object POOrderAccept([FromBody] JObject oData)
         {
+            var _value = oData["oData"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string HInter = sArray[0].ToString();
+            string HInterID = HInter.Replace("\"", ""); //鍐呯爜
+            string HBillNo = sArray[1].ToString().Replace("\"", "");
+            string HUser = sArray[2].ToString(); //鐢ㄦ埛鍚�
+           
             try
             {
-                if (DBUtility.ClsPub.isLong(HInterID) == 0)
+                if (DBUtility.ClsPub.isStrNull(HInterID) == "")
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -206,6 +275,7 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
+
                 DAL.ClsCg_POOrderBill oBill = new DAL.ClsCg_POOrderBill();
                 oBill.WebAccept(DBUtility.ClsPub.isLong(HInterID), DBUtility.ClsPub.isStrNull(HBillNo), DBUtility.ClsPub.isStrNull(HUser), ref DBUtility.ClsPub.sExeReturnInfo);
                 objJsonResult.code = "0";
@@ -297,5 +367,51 @@
                 return objJsonResult;
             }
         }
+
+        [Route("Cg_Poorder/UpdateSupSendGoodsDateRemark")]
+        [HttpGet]
+        /// <summary>
+        /// 鏇存柊鍥炲浜ゆ湡 -- 鍑礉濂堢壒
+        /// </summary>
+        /// <param name=""></param>
+        /// <returns></returns>
+        public object UpdateSupSendGoodsDateRemark(string HInterID, string HEntryID,string HSupSendGoodsDateRemark)
+        {
+            try
+            {
+                if (HInterID == null || HInterID == "" || HInterID == "undefined" || HEntryID == null || HEntryID == "" || HEntryID == "undefined")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎿嶄綔澶辫触锛佷富鍐呯爜鎴栧瓙鍐呯爜涓虹┖";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }         
+
+                string sql = "";
+
+                sql = "update Cg_POOrderBillSub set HSupSendGoodsDateRemark = '" + HSupSendGoodsDateRemark + "' where HInterID = " + HInterID + " and HEntryID = " + HEntryID;
+                oCn.RunProc(sql);
+
+                //鍑礉濂堢壒
+                sql = "update AIS20210820164804..T_PUR_POORDERENTRY set F_aaaa_gysjqhf = '" + HSupSendGoodsDateRemark + "' where FID = " + HInterID + " and FENTRYID = " + HEntryID;
+                oCn.RunProc(sql);
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎿嶄綔鎴愬姛锛�";
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1