From 72eb8c99e94428d2ea03c7cb71636bb09aa5546b Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期三, 24 一月 2024 10:23:07 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/项目管理/报表分析/PM_ReportController.cs          |   60 ++++++++++++++++++++
 WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs |    4 
 WebAPI/DLL/ClsSc_ICMOReportBill.cs                           |   94 ++++++++++++++++++++++++-------
 3 files changed, 135 insertions(+), 23 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs
index f40d94e..5027755 100644
--- a/WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs
@@ -665,7 +665,7 @@
                 DataTable dt2 = new DataTable("DataColor");
                 List<object> columnNameList = new List<object>();
 
-                string sql = "exec h_p_SingleRowWall  "+ sWhere;
+                string sql = "exec h_p_Sc_SingleRowWall  " + sWhere;
                 ds = oCN.RunProcReturn(sql, "DataSouce");
 
                 //娣诲姞鍒楀悕
@@ -766,7 +766,7 @@
                                 }
                             }
                         }
-                        if (num == ds.Tables[0].Columns.Count||i==3)
+                        if (num == ds.Tables[0].Columns.Count)
                         {
                             break;
                         }
diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs"
index 9ce5acf..4748a1d 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\346\212\245\350\241\250\345\210\206\346\236\220/PM_ReportController.cs"
@@ -180,6 +180,66 @@
 
         #endregion
 
+        #region 鎴戠殑椤圭洰 鏌ヨ
+        /// <summary>
+        /// 鎴戠殑椤圭洰鏌ヨ
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <param name="user"></param>
+        /// <returns></returns>
+        [Route("PM_ReportController/PM_ProjectBillMYList")]
+        [HttpGet]
+        public object PM_ProjectBillMYList(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("PM_ProjectBillMainMy_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCn.RunProcReturn("select * from h_v_PM_ProjectBillMYList order by 鍗曟嵁鍙� desc", "h_v_PM_ProjectBillMYList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_PM_ProjectBillMYList where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                    ds = oCn.RunProcReturn(sql, "h_v_PM_ProjectBillMYList");
+                }
+
+                //娣诲姞鍒楀悕
+                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 = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
 
         #endregion
 
diff --git a/WebAPI/DLL/ClsSc_ICMOReportBill.cs b/WebAPI/DLL/ClsSc_ICMOReportBill.cs
index 8a873a8..5029aa8 100644
--- a/WebAPI/DLL/ClsSc_ICMOReportBill.cs
+++ b/WebAPI/DLL/ClsSc_ICMOReportBill.cs
@@ -68,6 +68,15 @@
                 ",HGroupID=" + omodel.HGroupID.ToString() +
                 ",HCheckType='" + omodel.HCheckType + "'" +
                 " where HInterID=" + lngBillKey.ToString());
+
+                //鑾峰彇鏄庣粏琛屼慨鏀瑰墠鏁伴噺
+                Int64 HBackQty = 0;
+                Ds = oCn.RunProcReturn("select isnull(sum(isnull(HQty,0)),0) + isnull(sum(isnull(HWasterQty,0)),0) as HBackQty from Sc_ICMOReportBillSub where HInterID = " + lngBillKey, "Sc_ICMOReportBillSub");
+                if (Ds != null && Ds.Tables[0].Rows.Count > 0)
+                {
+                    HBackQty = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HBackQty"]);
+                }
+
                 //鍒犻櫎鍏宠仈
                 DeleteRelation(lngBillKey);
                 //鍒犻櫎瀛愯〃
@@ -93,6 +102,18 @@
                       "," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'" +
                       "," + oSub.HICMOInterID.ToString() + ",'" + oSub.HICMOBillNo + "','" + oSub.HBarCode + "'," + oSub.HICMOEntryID +
                       ") ");
+
+                    //鍙嶅啓浜ч噺姹囨姤鍗曪紝璐ㄩ噺姹囨姤鍗曞叧鑱斿瓧娈�,鐢熶骇璁㈠崟鍏宠仈鏁伴噺
+                    Ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_ReverseWriteQty " + omodel.HInterID + "," + oSub.HEntryID + ",'" + omodel.HBillNo + "'," +
+                        DetailColl[0].HICMOInterID + "," + DetailColl[0].HICMOEntryID + "," + DetailColl[0].HICMOBillNo + ",'" + DetailColl[0].HSourceID + "','" +
+                        "Edit" + "'," + HBackQty
+                        , "h_p_Sc_ICMOReportBill_ReverseWriteQty");
+                    if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBack"]) == "1")
+                    {
+                        sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBackRemark"]);
+                        oCn.RollBack();
+                        return false;
+                    }
                 }
                 if (omodel.HCheckType == "鍚堟牸")
                 {
@@ -100,6 +121,16 @@
                         "from Sc_ICMOReportBillSub a inner join Gy_BarCodeBill b on a.HBarCode=b.HBarCode  " +
                         "Where a.HInterID=" + lngBillKey.ToString() + " ");
                 }
+                //淇濆瓨鍚庢帶鍒�=========================================
+                Ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_AfterSaveCtrl_New " + omodel.HInterID + "," + DetailColl[0].HICMOInterID + "," + DetailColl[0].HICMOEntryID + ",'" + DetailColl[0].HICMOBillNo + "'", "h_p_Sc_ICMOReportBill_AfterSaveCtrl_New");
+
+                if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBack"]) == "1")
+                {
+                    sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBackRemark"]);
+                    oCn.RollBack();
+                    return false;
+                }
+                //=========================================================
                 //瀹℃牳鍗曟嵁
                 Ds = oCn.RunProcReturn("EXEC h_p_Sc_ICMOReportBill_Check  " + omodel.HInterID.ToString() + ",'" + omodel.HMaker+ "'", "h_p_Sc_ICMOReportBill_Check");
                 if (Ds == null)
@@ -213,20 +244,32 @@
                       oSub.HREQENTRYSEQ + "," + oSub.HREQENTRYID + "," + oSub.HMOMAINENTRYID + "," + oSub.HSTOCKINQUASELQTY + "," + oSub.HPRODUCTTYPE + ",'" + oSub.HPROJECTNO + "'," + oSub.HICMOENTRYSEQ + "," + oSub.HSEQ + ",'" + oSub.HPRODUCEDATE + "','" + oSub.HEXPIRYDATE + "'," + oSub.HBASEUNITID + "," + oSub.HDEPTID + "," + oSub.HGroupID + ",'" + oSub.HDESCRIPTION + "','" + oSub.HSourceNumber + "'," + oSub.HQPQty + ","  + oSub.HICMOEntryID + ","  +  oSub.HWhID + "," + oSub.HSPID + ",'" + oSub.HBatChNo + "'," + oSub.HAuxPropID + ",'" + oSub.HMTONo + "'," + oSub.HPlanMode + "," + oSub.HERPInterID + "," + oSub.HERPEntryID +
                       ") ");
 
-                    //鍙嶅啓浜ч噺姹囨姤鍗曚复鏃惰〃鍏宠仈瀛楁淇℃伅
-                    string sql = string.Format(@"update Sc_ICMOBillWorkQtyStatus_Tmp  set " +
-                                                                   " HICMOReportBillNo ='" + omodel.HBillNo +
-                                                                   "', HRelationInterID='" + omodel.HInterID +
-                                                                   "', HRelationEntryID='" + oSub.HEntryID +
-                                                                   "' from Sc_ICMOBillWorkQtyStatus_Tmp a where a.HICMOBillNo='" + DetailColl[0].HICMOBillNo + "' and a.HSourceID='" + DetailColl[0].HSourceID + "' and  HICMOInterID='" + DetailColl[0].HICMOInterID + "' and a.HICMOEntryID='" + DetailColl[0].HICMOEntryID + "'  and HRelationInterID='0'");
-                    oCn.RunProc(sql);
+                    ////鍙嶅啓浜ч噺姹囨姤鍗曚复鏃惰〃鍏宠仈瀛楁淇℃伅
+                    //string sql = string.Format(@"update Sc_ICMOBillWorkQtyStatus_Tmp  set " +
+                    //                                               " HICMOReportBillNo ='" + omodel.HBillNo +
+                    //                                               "', HRelationInterID='" + omodel.HInterID +
+                    //                                               "', HRelationEntryID='" + oSub.HEntryID +
+                    //                                               "' from Sc_ICMOBillWorkQtyStatus_Tmp a where a.HICMOBillNo='" + DetailColl[0].HICMOBillNo + "' and a.HSourceID='" + DetailColl[0].HSourceID + "' and  HICMOInterID='" + DetailColl[0].HICMOInterID + "' and a.HICMOEntryID='" + DetailColl[0].HICMOEntryID + "'  and HRelationInterID='0'");
+                    //oCn.RunProc(sql);
 
-                    //鍙嶅啓璐ㄩ噺姹囨姤鍗曚复鏃惰〃鍏宠仈瀛楁淇℃伅
-                    string sql2 = string.Format(@"update Sc_ICMOBillQualityStatus_Tmp  set " +
-                                                                   " HRelationBillNo ='" + omodel.HBillNo +
-                                                                   "', HRelationInterID='" + omodel.HInterID +
-                                                                   "' from Sc_ICMOBillQualityStatus_Tmp a where a.HICMOBillNo='" + DetailColl[0].HICMOBillNo + "' and a.HSourceID='" + DetailColl[0].HSourceID + "' and  HICMOInterID='" + DetailColl[0].HICMOInterID + "' and a.HICMOEntryID='" + DetailColl[0].HICMOEntryID + "'  and HRelationInterID='0'");
-                    oCn.RunProc(sql2);
+                    ////鍙嶅啓璐ㄩ噺姹囨姤鍗曚复鏃惰〃鍏宠仈瀛楁淇℃伅
+                    //string sql2 = string.Format(@"update Sc_ICMOBillQualityStatus_Tmp  set " +
+                    //                                               " HRelationBillNo ='" + omodel.HBillNo +
+                    //                                               "', HRelationInterID='" + omodel.HInterID +
+                    //                                               "' from Sc_ICMOBillQualityStatus_Tmp a where a.HICMOBillNo='" + DetailColl[0].HICMOBillNo + "' and a.HSourceID='" + DetailColl[0].HSourceID + "' and  HICMOInterID='" + DetailColl[0].HICMOInterID + "' and a.HICMOEntryID='" + DetailColl[0].HICMOEntryID + "'  and HRelationInterID='0'");
+                    //oCn.RunProc(sql2);
+
+                    //鍙嶅啓浜ч噺姹囨姤鍗曪紝璐ㄩ噺姹囨姤鍗曞叧鑱斿瓧娈�,鐢熶骇璁㈠崟鍏宠仈鏁伴噺
+                    ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_ReverseWriteQty " + omodel.HInterID + "," + oSub.HEntryID + ",'" + omodel.HBillNo + "'," +
+                        DetailColl[0].HICMOInterID + "," + DetailColl[0].HICMOEntryID + "," + DetailColl[0].HICMOBillNo + ",'" + DetailColl[0].HSourceID + "','" +
+                        "Add" + "'," + 0
+                        , "h_p_Sc_ICMOReportBill_ReverseWriteQty");
+                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
+                    {
+                        sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+                        oCn.RollBack();
+                        return false;
+                    }
                 }
                 //
                 //foreach (Model.ClsSc_ICMOReportBillSub oSub in DetailColl)
@@ -243,7 +286,7 @@
                 //
                 //       
                 //淇濆瓨鍚庢帶鍒�=========================================
-                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_AfterSaveCtrl_New " + omodel.HInterID + "," + oSub.HICMOInterID + "," + oSub.HICMOEntryID + ",'" + oSub.HICMOBillNo + "'", "h_p_Sc_ICMOReportBill_AfterSaveCtrl_New");
+                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_AfterSaveCtrl_New " + omodel.HInterID + "," + DetailColl[0].HICMOInterID + "," + DetailColl[0].HICMOEntryID + ",'" + DetailColl[0].HICMOBillNo + "'", "h_p_Sc_ICMOReportBill_AfterSaveCtrl_New");
 
                 if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
                 {
@@ -592,13 +635,22 @@
                 string HICMOInterID = ds.Tables[0].Rows[0]["HICMOInterID"].ToString();
                 string HICMOEntryID = ds.Tables[0].Rows[0]["HICMOEntryID"].ToString();
                 //
-                //鏇存柊浜ч噺姹囨姤涓存椂琛ㄦ槸鍚︽姤妫�鐢宠鐘舵��
-                string sql1 = string.Format(@"update Sc_ICMOBillWorkQtyStatus_Tmp set HRelationInterID='0',HRelationEntryID='0',HICMOReportBillNo=null where HICMOReportBillNo='" + HBillNo + "' and HICMOInterID='"+ HICMOInterID + "' and HICMOEntryID='"+ HICMOEntryID + "'");
-                oCn.RunProc(sql1);
-                //鏇存柊璐ㄩ噺姹囨姤涓存椂琛ㄦ槸鍚︽姤妫�鐢宠鐘舵��
-                string sql2 = string.Format(@"update Sc_ICMOBillQualityStatus_Tmp set HRelationInterID='0',HRelationBillNo='' where HRelationBillNo='" + HBillNo + "' and HRelationInterID='" + lngBillKey + "'");
-                oCn.RunProc(sql2);
-              
+                ////鏇存柊浜ч噺姹囨姤涓存椂琛ㄦ槸鍚︽姤妫�鐢宠鐘舵��
+                //string sql1 = string.Format(@"update Sc_ICMOBillWorkQtyStatus_Tmp set HRelationInterID='0',HRelationEntryID='0',HICMOReportBillNo=null where HICMOReportBillNo='" + HBillNo + "' and HICMOInterID='"+ HICMOInterID + "' and HICMOEntryID='"+ HICMOEntryID + "'");
+                //oCn.RunProc(sql1);
+                ////鏇存柊璐ㄩ噺姹囨姤涓存椂琛ㄦ槸鍚︽姤妫�鐢宠鐘舵��
+                //string sql2 = string.Format(@"update Sc_ICMOBillQualityStatus_Tmp set HRelationInterID='0',HRelationBillNo='' where HRelationBillNo='" + HBillNo + "' and HRelationInterID='" + lngBillKey + "'");
+                //oCn.RunProc(sql2);
+                //鏇存柊浜ч噺/璐ㄩ噺姹囨姤涓存椂琛ㄦ槸鍚︽姤妫�鐢宠鐘舵�侊紝鎾ゅ洖鐢熶骇璁㈠崟鍏宠仈鏁伴噺
+                ds = oCn.RunProcReturn("exec h_p_Sc_ICMOReportBill_BeforeDel " + lngBillKey + ",'" + HBillNo + "'," + HICMOInterID + "," + HICMOEntryID , "h_p_Sc_ICMOReportBill_BeforeDel");
+
+                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "1")
+                {
+                    sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+                    oCn.RollBack();
+                    return false;
+                }
+
                 //鍒犻櫎鍏宠仈
                 DeleteRelation(ref sReturn, lngBillKey);
                 //鍒犻櫎鏄庣粏琛�

--
Gitblit v1.9.1