From 5fccb067ad7dc2dbcdacf8db642aa471488cd8f0 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期四, 20 二月 2025 15:24:29 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs |  255 +++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 237 insertions(+), 18 deletions(-)

diff --git a/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs b/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs
index 7d3fc65..0db6ff1 100644
--- a/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs
+++ b/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs
@@ -25,7 +25,70 @@
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         DataSet ds;
 
-    /// <summary>
+        #region 閲囪喘璁㈠崟鍒嗛〉鍒楄〃
+        [Route("Cg_POOrderBill/page")]
+        [HttpGet]
+        public object Cg_POOrderBillPage(string sWhere, string user, int page, int size)
+        {
+            DataSet ds;
+            json res = new json();
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鍒ゆ柇鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Cg_POOrderBillList", 3, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //鍒ゆ柇鏄惁鏈夐噰璐粡鐞嗘潈闄愶紙瀹夌憺锛�
+                bool isCgjl = Security_Log("Cg_POOrderBill_PurchasManager", 1, true, user);
+                if (!isCgjl)
+                {
+                    sWhere += $" and HEmpID in (select HEmpID from Gy_Czygl where Czymc='{user}' and HEmpID >0  )";
+                }
+
+
+                sWhere = sWhere.Replace("'", "''");
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("exec h_p_IF_POOrderBillList " + page + "," + size + ",''", "h_p_IF_POOrderBillList");
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_IF_POOrderBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_IF_POOrderBillList");
+                }
+
+                //娣诲姞鍒楀悕
+                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鍒楀璞$殑鍒楀悕
+                }
+
+                res.code = CodeConstant.SUCCEED;
+                res.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
+                res.Message = "Sucess锛�";
+                res.list = columnNameList;
+                res.data = ds.Tables[0];
+                return res;
+            }
+            catch (Exception e)
+            {
+                res.code = CodeConstant.FAIL;
+                res.count = CountConstant.FAIL;
+                res.Message = "Exception锛�" + e.ToString();
+                res.data = null;
+                return res;
+            }
+        }
+        #endregion
+
+        /// <summary>
         /// 杩斿洖閲囪喘璁㈠崟鍒楄〃
         ///鍙傛暟锛歴tring sql銆�
         ///杩斿洖鍊硷細object銆�
@@ -746,7 +809,8 @@
                 string HInnerBillNo = mainList[0].HInnerBillNo;//鍐呴儴鍗曟嵁鍙� 
                 long HWHID = mainList[0].HWHID;//浠撳簱 
                 long HProjectID = mainList[0].HProjectID;//浠撳簱 
-
+                string HLinkMan = mainList[0].HLinkMan;//鑱旂郴浜�
+                string HLinkPhone = mainList[0].HLinkPhone;//鑱旂郴浜虹數璇�
                 List<ClsCg_POOrderBillMain> mainList2 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsCg_POOrderBillMain>>(msg2);
                 DateTime dt = DateTime.Now;
                 long HPURCHASEORGID = mainList2[0].HOrgID;
@@ -827,20 +891,20 @@
 	                    ,HMaker,HMakeDate
 	                    ,HERPInterID,HERPBillType,HPURCHASEORGID
                         ,HPURCHASERGROUPID,HPROVIDERID,HSETTLEID,HCHARGEID,HBUSINESSTYPE,HPROVIDERADDRESS,HCORRESPONDORGID,HPROVIDERCONTACTID
-                        ,HWHID,HProjectID)
+                        ,HWHID,HProjectID,HLinkMan,HLinkPhone)
                         values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 1102 + "','" +
                     1102 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
                     "'," + HSSID + ",'" + HSSDate + "'," + HPSStyleID + "," + HSupID + "," + HCurID +
                     "," + HExRate + "," + HEmpID + "," + HManagerID + "," + HDeptID + ",'" + HExplanation + "','" + HRemark + "','" + HInnerBillNo + "','" + HMaker + "',getdate()" + "," + HERPInterID + ",'" + HERPBillType + "'," + HPURCHASEORGID + "," + HPURCHASERGROUPID + ","
                     + HPROVIDERID + "," + HSETTLEID + "," + HCHARGEID + ",'" + HBUSINESSTYPE + "','" + HPROVIDERADDRESS + "',"
                     + HCORRESPONDORGID + "," + HPROVIDERCONTACTID + ","
-                    + HWHID+","+ HProjectID + ")");
+                    + HWHID+","+ HProjectID +",'"+HLinkMan+"','"+HLinkPhone+"'"+")");
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
                 { //淇敼
 
                     DataSet dss;
-                    dss = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_POOrderBillList");
+                    dss = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID, "h_v_IF_POOrderBillList");
                     //鍒ゆ柇鏄惁鍙紪杈�
                     if (dss.Tables[0].Rows[0]["瀹℃牳浜�"].ToString() != "" && dss.Tables[0].Rows[0]["瀹℃牳浜�"] != null)
                     {
@@ -859,17 +923,39 @@
                         return objJsonResult;
                     }
                     oCN.RunProc("update Cg_POOrderBillMain  set " +
-                                "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" +
+                                "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + ",HBillNo='" +HBillNo +"'"+ 
                                  ",HSSID=" + HSSID + ",HPSStyleID=" + HPSStyleID + ",HSupID=" + HSupID + ",HCurID=" + HCurID
                                  + ",HExRate=" + HExRate + ",HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HDeptID=" + HDeptID
-                                 + ",HAddress='" + HAddress + "',HSSDate='" + HSSDate + "',HWHID="+ HWHID + ",HProjectID="+ HProjectID + " where HInterID=" + HInterID);
+                                 + ",HAddress='" + HAddress + "',HSSDate='" + HSSDate + "',HWHID="+ HWHID + ",HProjectID="+ HProjectID +",HLinkMan = '"+HLinkMan+"',HLinkPhone = '"+HLinkPhone+ "' where HInterID=" + HInterID);
 
                     //鍒犻櫎瀛愯〃
                     oCN.RunProc("delete from Cg_POOrderBillSub where HInterID='" + HInterID + "'");
                 }
                 //淇濆瓨瀛愯〃
                 objJsonResult = AddBillSub(msg3, HInterID, OperationType);
-
+                //鑷姩瀹℃牳璁剧疆
+                if ((OperationType == 1 || OperationType == 2))
+                {
+                    objJsonResult.HInterID = HInterID.ToString(); //杩斿洖涓籌D
+                    //绯荤粺鍙傛暟  鑷姩瀹℃牳
+                    string sReturn = "";
+                    if (oSystemParameter.ShowBill(ref sReturn) == true)
+                    {
+                        if (oSystemParameter.omodel.Cg_POOrderBill_AutoCheck == "Y") //绯荤粺鍙傛暟  鑷姩瀹℃牳 
+                        {
+                            objJsonResult.Verify = "Y";
+                        }
+                        else
+                        {
+                            objJsonResult.Verify = "N";
+                        }
+                    }
+                }
+                else if (OperationType == 3)
+                {
+                    objJsonResult.HInterID = HInterID.ToString(); //杩斿洖涓籌D
+                    objJsonResult.Verify = "N";
+                }
                 if (objJsonResult.code == "0")
                 {
                     objJsonResult.code = "0";
@@ -956,14 +1042,14 @@
                 long HBUYERWITHHOLDING = DetailColl2[i].HBUYERWITHHOLDING;//涔版柟浠f墸浠g即
                 string HMATERIALDESC = DetailColl2[i].HMATERIALDESC == null ? "''" : DetailColl2[i].HMATERIALDESC; //鐗╂枡璇存槑
                 i++;
-                if (oSub.HQty <= 0 || oSub.HQty == 0)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
+                //if (oSub.HQty <= 0 || oSub.HQty == 0)
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
 
                 if (oSub.HMaterID == 0)
                 {
@@ -1252,7 +1338,7 @@
             try
             {
                 
-                ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid =" + HInterID, "h_v_IF_POOrderBillList");
+                ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillEdit where hmainid =" + HInterID, "h_v_IF_POOrderBillList");
                 if (ds == null || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
@@ -3031,7 +3117,7 @@
                 }
                 string sql = "select * from h_v_Cg_POOrderBillQuerySub where hmainid =  "+ hmainid;
 
-                ds = oCN.RunProcReturn(sql + " order by hsubid desc", "h_v_Cg_POOrderBillQuerySub");
+                ds = oCN.RunProcReturn(sql + " order by hsubid ASC", "h_v_Cg_POOrderBillQuerySub");
                 
 
                 foreach (DataColumn col in ds.Tables[0].Columns)
@@ -3058,6 +3144,139 @@
             }
         }
         #endregion
+
+        #region 閲囪喘璁㈠崟涓嬫帹鏌ヨ鍒楄〃
+        [Route("Cg_POOrderBill/PushList")]
+        [HttpGet]
+        public object PushList(string HBillNo, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+
+                if (!DBUtility.ClsPub.Security_Log("Cg_POOrderBillQuery", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犳潈闄愭煡鐪�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                string sql = "select * from h_v_IF_POOrderBillList where 鍗曟嵁鍙� = '" + HBillNo + "' and 鐘舵�� = '宸插鏍�' and 鏈叧鑱旀暟閲� > 0";
+
+
+                ds = oCN.RunProcReturn(sql, "h_v_IF_POOrderBillList");
+
+                if (ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鎵句笉鍒扮鍚堟潯浠跺崟鎹�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                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鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍑哄簱姹囨�� 鏌ヨ
+        [Route("Xs_SeOrderOutStockSumReport/Xs_SeOrderOutStockSumReportList")]
+        [HttpGet]
+        public object Xs_SeOrderOutStockSumReportList(string sWhere)
+        {
+            try
+            {
+                //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
+
+                ds = oCN.RunProcReturn($"exec h_p_Xs_SeOrderOutStockSumReport " + sWhere + "", "h_p_Xs_SeOrderOutStockSumReport");
+
+                List<object> listCol = new List<object>();
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    listCol.Add(JsonConvert.DeserializeObject(str));
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = listCol;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鍏ュ簱姹囨�� 鏌ヨ
+        [Route("Cg_PoOrderInStockSumReport/Cg_PoOrderInStockSumReportList")]
+        [HttpGet]
+        public object Cg_PoOrderInStockSumReportList(string sWhere)
+        {
+            try
+            {
+                //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
+
+                ds = oCN.RunProcReturn($"exec h_p_Cg_PoOrderInStockSumReport " + sWhere + "", "h_p_Cg_PoOrderInStockSumReport");
+
+                List<object> listCol = new List<object>();
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    listCol.Add(JsonConvert.DeserializeObject(str));
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = listCol;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
     }
 
 }
\ No newline at end of file

--
Gitblit v1.9.1