From 67bfff895914fe3d56f1c1c4c5e39efb5fec2a06 Mon Sep 17 00:00:00 2001
From: zrg <z18737863051@163.com>
Date: 星期二, 30 七月 2024 16:53:33 +0800
Subject: [PATCH] 设备工艺参数趋势图后端查询

---
 WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs |  119 ++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 100 insertions(+), 19 deletions(-)

diff --git a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
index 9c69640..a617fd4 100644
--- a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
+++ b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
@@ -1,4 +1,5 @@
-锘縰sing Newtonsoft.Json.Linq;
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
 using NPOI.SS.Formula.Functions;
 using Pub_Class;
 using System;
@@ -39,6 +40,7 @@
         {
             try
             {
+                List<object> columnNameList = new List<object>();//瀹氫箟澹版槑鍙橀噺 锛屾妸閫氳繃 new List<object>()鍒涘缓鐨� 瀹炰緥锛岃祴鍊肩粰鍙橀噺
                 if (sWhere == null || sWhere.Equals(""))
                 {
                     string sql = "select * from h_v_Kf_POStockInBillList order by hmainid desc";
@@ -50,6 +52,12 @@
                     string sql = sql1 + sWhere+ " order by hmainid desc";
                     ds = oCN.RunProcReturn(sql, "h_v_Kf_POStockInBillList");
                 }
+                foreach (DataColumn col in ds.Tables[0].Columns)//閬嶅巻ds涓涓�涓〃锛圱ables[0]锛夌殑鎵�鏈夊垪锛圕olumns锛夋瘡娆″惊鐜腑锛宑ol鍙橀噺浼氭寔鏈夊綋鍓嶅垪鐨勫紩鐢�
+                {
+                    Type dataType = col.DataType; //鑾峰彇褰撳墠鏁版嵁绫诲瀷浼犲叆 鑷畾涔夊彉閲廳atadataType
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //瀛楃涓叉嫾鎺�         // 灏嗗垪鍚嶅拰鏁版嵁绫诲瀷淇℃伅鎷兼帴鎴愪竴涓狫SON鏍煎紡鐨勫瓧绗︿覆
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
 
                 //if (ds.Tables[0].Rows.Count != 0 || ds != null)
                 //{
@@ -57,6 +65,7 @@
                 objJsonResult.count = 1;
                 objJsonResult.Message = "Sucess锛�";
                 objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;//灏哻olumnNameList璧嬪�肩粰objJsonResult鐨刲ist灞炴��
                 return objJsonResult;
                 //}
                 //else
@@ -148,10 +157,12 @@
                 long HSCWHID = mainList[0].HSCWHID;//璋冨嚭浠撳簱
                 long HSecManagerID = mainList[0].HSecManagerID;//楠屾敹
                 long HKeeperID = mainList[0].HKeeperID;//淇濈鍛�
+                long HProjectID = mainList[0].HProjectID;//椤圭洰
 
 
 
        
+                string HInvoiceBillNo = mainList[0].HInvoiceBillNo;//鍙戠エ缂栧彿 
                 string HExplanation = mainList[0].HExplanation;//鎽樿
                 string HInnerBillNo = mainList[0].HInnerBillNo;//鍐呴儴鍗曟嵁鍙� 
 
@@ -170,9 +181,19 @@
                 string HCloseMan = mainList[0].HCloseMan;
                 string HCloseDate = mainList[0].HCloseDate;
 
+                //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0;
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.Message = s;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn("select * from h_v_Kf_POStockInBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_Kf_POStockInBillList");
 
-                if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
+                if ((OperationType == 1 || OperationType == 2 || OperationType == 4) && ds.Tables[0].Rows.Count == 0)//鏂板
                 {
                     //淇濆瓨鍓嶆帶鍒�=========================================              
                     ds = oCN.RunProcReturn("exec h_p_Kf_POStockInBill_BeforeSaveCtrl " + HInterID, "h_p_Kf_POStockInBill_BeforeSaveCtrl");
@@ -198,24 +219,52 @@
                     String sql =$@"Insert Into Kf_ICStockBillMain 
                         (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate,HBillNo,HBillStatus
 	                    ,HAddress,HSupID,HCurID,HWHID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID,HExplanation,HRemark
-                        ,HInnerBillNo,HSTOCKORGID,HOWNERID,HMaker,HMakeDate)
+                        ,HInnerBillNo,HSTOCKORGID,HOWNERID,HMaker,HMakeDate,HProjectID,HInvoiceBillNo)
                         values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 1201 + "','" +
-                    HBillSubType + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
+                    1201 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress +
                     "'," + HSupID + "," + HCurID + "," + HWHID + "," + HEmpID + "," + HManagerID + "," + 
                     HSecManagerID + ","+ HKeeperID +"," + HDeptID + ",'" + HExplanation + "','" + HRemark
-                    + "','" + HInnerBillNo + "'," + HSTOCKORGID + "," + HOWNERID + ",'" + HMaker + "',getdate()" +")";
+                    + "','" + HInnerBillNo + "'," + HSTOCKORGID + "," + HOWNERID + ",'" + HMaker + "',getdate(),"+ HProjectID + ",'"+ HInvoiceBillNo + "')";
 
                     oCN.RunProc(sql);
                 }
                 else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
                 { //淇敼
+
+                    DataSet dss;
+                    dss = oCN.RunProcReturn("select * from h_v_Kf_POStockInBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_Kf_POStockInBillList");
+                    //鍒ゆ柇鏄惁鍙紪杈�
+                    if (dss.Tables[0].Rows[0]["瀹℃牳浜�"].ToString() != "" && dss.Tables[0].Rows[0]["瀹℃牳浜�"] != null)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    if (dss.Tables[0].Rows[0]["鐘舵��"].ToString() != "鍒涘缓")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+
                     String sql = $@"update Kf_ICStockBillMain  set " +
                                 "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" +
                                  ",HSupID=" + HSupID + ",HCurID=" + HCurID + ",HSecManagerID=" + HSecManagerID + ", HSTOCKORGID=" + HSTOCKORGID + ",HKeeperID=" + HKeeperID + ",HWHID = " + HWHID
                                  + ",HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HDeptID=" + HDeptID + ",HOWNERID=" + HOWNERID
-                                 + ",HAddress='" + HAddress + "',HInnerBillNo='" + HInnerBillNo + "' where HInterID=" + HInterID;
+                                 + ",HAddress='" + HAddress + "',HInnerBillNo='" + HInnerBillNo + "',HProjectID="+ HProjectID + ",HInvoiceBillNo='"+ HInvoiceBillNo + "' where HInterID=" + HInterID;
 
                     oCN.RunProc(sql);
+
+                    //閲囪喘鍏ュ簱鍗�  缂栬緫 鎾ら攢鍥炲~  閲囪喘璁㈠崟  鍏宠仈鏁伴噺
+                    oCN.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPOStockIn_Del " + HInterID);
+
+                    //閲囪喘鍏ュ簱鍗�  缂栬緫 鎾ら攢鍥炲~  鏀舵枡閫氱煡鍗�  鍏宠仈鏁伴噺
+                    oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Del " + HInterID);
+
                     //鍒犻櫎瀛愯〃
                     oCN.RunProc("delete from Kf_ICStockBillSub where HInterID='" + HInterID + "'");
                 }
@@ -227,7 +276,7 @@
 
                 //閲囪喘鍏ュ簱鍗曟柊澧炲洖濉敹鏂欓�氱煡鍗曞叧鑱旀暟閲�
                 oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Add " + HInterID);
-                
+
 
                 if (objJsonResult.code == "0")
                 {
@@ -329,13 +378,15 @@
 	            ,HMoney,HOrderPrice,HWHID,HSPID,HRelationQty,HBatchNo
                 ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType
                 ,HPOOrderInterID,HPOOrderEntryID ,HPOOrderBillNo
-                ,HPropertyID,HSecUnitID,HSecUnitRate,HPlanMode,HRemark,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo)  
+                ,HPropertyID,HSecUnitID,HSecUnitRate,HPlanMode,HRemark,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo
+                ,HTaxRate,HTaxPrice,HlineTotal)  
                  values({HInterID},{NewHEntryID},{oSub.HMaterID},{oSub.HUnitID}
                 ,{oSub.HQtyMust},{(oSub.HQty == null ? 0 : oSub.HQty)},{oSub.HPrice},{oSub.HMoney},{oSub.HOrderPrice},{oSub.HWHID},{oSub.HSPID},{oSub.HRelationQty}
                 ,'{oSub.HBatchNo}',{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}'
                 ,{oSub.HPOOrderInterID},{oSub.HPOOrderEntryID},'{oSub.HPOOrderBillNo}'
                 ,{(oSub.HPropertyID == null ? 0 : oSub.HPropertyID)},{(oSub.HSecUnitID == null ? 0 : oSub.HSecUnitID)},{(oSub.HSecUnitRate == null ? 0 : oSub.HSecUnitRate)}
-                ,{(oSub.HPlanMode == null ? 0 : oSub.HPlanMode)},'{oSub.HRemark}',{oSub.HSeOrderInterID},{oSub.HSeOrderEntryID},'{oSub.HSeOrderBillNo}')";
+                ,{(oSub.HPlanMode == null ? 0 : oSub.HPlanMode)},'{oSub.HRemark}',{oSub.HSeOrderInterID},{oSub.HSeOrderEntryID},'{oSub.HSeOrderBillNo}'
+                ,{(oSub.HTaxRate == null ? 0 : oSub.HTaxRate)},{(oSub.HTaxPrice == null ? 0 : oSub.HTaxPrice)},{(oSub.HlineTotal == null ? 0 : oSub.HlineTotal)})";
 
                 //string sReturn = "";
                 //ds = oCN.RunProcReturn("exec h_p_Cg_POInStockBillMain " + oSub.HQty + ", '" +oSub.HSourceInterID + "', '" + oSub.HSourceEntryID + "','" + user+" '", "h_p_Cg_POInStockBillMain");
@@ -379,7 +430,9 @@
             objJsonResult.data = null;
             return objJsonResult;
         }
+        #endregion
 
+        #region 鍒犻櫎鍔熻兘
         /// <summary>
         ///鍒犻櫎鍔熻兘
         /// </summary>
@@ -413,8 +466,26 @@
                 }
                 //==================================================================================      
 
+                //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0;
+                DateTime HDate = DateTime.Now;
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.Message = s;
+                    return objJsonResult;
+                }
+
                 string sReturn = "";
                 oCN.BeginTran();
+
+                //閲囪喘鍏ュ簱鍗�  鍒犻櫎 鎾ら攢鍥炲~  閲囪喘璁㈠崟  鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPOStockIn_Del " + HInterID);
+
+                //閲囪喘鍏ュ簱鍗�  鍒犻櫎 鎾ら攢鍥炲~  鏀舵枡閫氱煡鍗�  鍏宠仈鏁伴噺
+                oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Del " + HInterID);
+
                 oCN.RunProc("Delete From Kf_ICStockBillMain where HInterID = " + HInterID);
                 oCN.RunProc("Delete From Kf_ICStockBillSub where HInterID = " + HInterID);
                 oCN.Commit();
@@ -460,9 +531,9 @@
                 return objJsonResult;
             }
         }
+        #endregion
 
-
-       
+        #region 鏌ユ壘璁板綍鍔熻兘
         /// <summary>
         /// 鏍规嵁鍩虹璧勬枡ID 鏌ユ壘璁板綍
         ///鍙傛暟锛歴tring sql銆�
@@ -502,6 +573,7 @@
                 return objJsonResult;
             }
         }
+#endregion
 
         #region 鏍规嵁鐗╂枡鍐呯爜鑾峰彇鐗╂枡淇℃伅
         [Route("Kf_POStockInBill/getMaterialByMaterID")]
@@ -615,6 +687,16 @@
                     return objJsonResult;
                 }
 
+                //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0;
+                DateTime HDate = DateTime.Now;
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.Message = s;
+                    return objJsonResult;
+                }
 
                 //杩涜闇�瑕佽繘琛岀殑瀹℃牳/鍙嶅鏍告搷浣�
                 if (IsAudit == 0) //瀹℃牳鎻愪氦
@@ -640,8 +722,8 @@
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
-                    //==================================================================================      
-
+                    //==================================================================================                        
+                    
                     //瀹℃牳鎻愪氦
                     if (oBill.CheckBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Kf_POStockInBill_AfterCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                     {
@@ -680,8 +762,8 @@
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
-                    //=========================================================
-
+                    //=========================================================                   
+                 
                     //鍙嶅鏍告彁浜bandonCheck
                     if (oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Kf_POStockInBill_AfterUnCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                     {
@@ -1168,7 +1250,7 @@
         #endregion
 
 
-        #region 閲囪喘鍏ュ簱鍗� 鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栭噰璐叆搴撳崟鏁版嵁
+        #region 閲囪喘鍏ュ簱鍗�  鏍规嵁涓诲唴鐮佷笌瀛愬唴鐮佽幏鍙栭噰璐叆搴撳崟鏁版嵁
         [Route("Kf_POStockInBill/loadKf_POStockInBill_Push")]
         [HttpGet]
         public object loadKf_POStockInBill_Push(long HInterID, long HSubID)
@@ -1176,7 +1258,7 @@
             try
             {
 
-                ds = oCN.RunProcReturn("select * from h_v_IF_POStockInBillList where hmainid =" + HInterID + " and hsubid = " + HSubID, "h_v_IF_POStockInBillList");
+                ds = oCN.RunProcReturn("select * from h_v_Kf_POStockInBillList where hmainid =" + HInterID + " and hsubid = " + HSubID, "h_v_Kf_POStockInBillList");
                 if (ds == null || ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
@@ -1206,5 +1288,4 @@
         #endregion
 
     }
-}
-#endregion
\ No newline at end of file
+}
\ No newline at end of file

--
Gitblit v1.9.1