From 1d47cda889c0408d2fe885fc99727e85c591764c Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期三, 08 二月 2023 09:47:27 +0800
Subject: [PATCH] 日计划维护

---
 WebAPI/Controllers/SCGL/日计划管理/Sc_WorkBillSortBillController.cs |  122 +++++++++++++++++++++++++++++-----------
 1 files changed, 88 insertions(+), 34 deletions(-)

diff --git "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/Sc_WorkBillSortBillController.cs" "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/Sc_WorkBillSortBillController.cs"
index 6d480b1..aa5e8df 100644
--- "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/Sc_WorkBillSortBillController.cs"
+++ "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/Sc_WorkBillSortBillController.cs"
@@ -11,7 +11,7 @@
 {
     public class Sc_WorkBillSortBillController : ApiController
     {
-        private json objJsonResult = new json();
+        private json objJsonResult = new json();    
         public DataSet ds = new DataSet();
         public WebServer webserver = new WebServer();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
@@ -35,7 +35,7 @@
                     return objJsonResult;
                 }
 
-                ds = oCN.RunProcReturn("select * from  h_v_JIT_Sc_WorkBillSortBillList where 1=1" + sWhere + "order by hmainid desc ", "h_v_JIT_Sc_WorkBillSortBillList");
+                ds = oCN.RunProcReturn("select * from  h_v_JIT_Sc_WorkBillSortBillList where 1=1" + sWhere + " order by 鍗曟嵁鍙� desc ", "h_v_JIT_Sc_WorkBillSortBillList");
 
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -87,12 +87,11 @@
             string msg2 = sArray[0].ToString();
             string msg3 = sArray[1].ToString();
 
-            int hentryid = int.Parse(sArray[2].ToString());//瀛愯〃鐨勯『搴廼d
-            int OperationType = int.Parse(sArray[3].ToString());//鏁版嵁绫诲瀷 1娣诲姞 3淇敼
-            string user = sArray[4].ToString();
+            int OperationType = int.Parse(sArray[2].ToString());//鏁版嵁绫诲瀷 1娣诲姞 3淇敼
+            string user = sArray[3].ToString();
             try
             {
-                if (!DBUtility.ClsPub.Security_Log("Sc_WorkBillSortBill_Edit", 1, false, user))
+                if (!DBUtility.ClsPub.Security_Log("Sc_WorkBillSortBill_Edit", 1, false, user)) 
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -103,7 +102,11 @@
 
                 omdelMian = Newtonsoft.Json.JsonConvert.DeserializeObject<Sc_WorkBillSortBillMain>(msg2);
                 string BillType = "4610";
-
+                ds = ds = oCN.RunProcReturn($"select * from  h_v_JIT_Sc_WorkBillSortBillList where hmainid={omdelMian.HInterID} and  鍗曟嵁鍙�='{omdelMian.HBillNo}'", "h_v_JIT_Sc_WorkBillSortBillList");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    OperationType = 3;
+                }
 
                 if (OperationType == 1)//鏂板
                 {
@@ -137,6 +140,18 @@
                 }
                 else if (OperationType == 3)
                 {
+
+                    ds = oCN.RunProcReturn($"select * from  Sc_WorkBillSortBillMain where HMainSourceInterID={omdelMian.HMainSourceInterID}" +
+                      $" and HMainSourceEntryID={omdelMian.HMainSourceEntryID} and HICMOBillNo='{omdelMian.HICMOBillNo}' and HICMOEntrySEQ={omdelMian.HICMOEntrySEQ} and HSourceID={omdelMian.HSourceID}", "Sc_WorkBillSortBillMain");
+                    if ((ds.Tables[0].Rows.Count == 1 && ds.Tables[0].Rows[0]["HInterID"].ToString() != omdelMian.HInterID.ToString()))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鐢熶骇璧勬簮鏈夐噸澶�,璇蜂慨鏀�!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
                     //淇敼
                     oCN.RunProc($"update Sc_WorkBillSortBillMain set HDate='{omdelMian.HDate}',HUpDater='{omdelMian.HMaker}',HUpDateDate=GETDATE()" +
                                   $", HRemark='{omdelMian.HRemark}', HPrintQty={(omdelMian.HPrintQty == null ? 0 : omdelMian.HPrintQty)}" +
@@ -168,7 +183,7 @@
                                   $", HHangUp='{(omdelMian.HHangUp == true ? 1 : 0)}' where HInterID={omdelMian.HInterID}");
                 }
                 //淇濆瓨瀛愯〃
-                objJsonResult = AddBillSub(msg3, hentryid);
+                objJsonResult = AddBillSub(msg3);
                 if (objJsonResult.code == "0")
                 {
                     objJsonResult.code = "0";
@@ -194,24 +209,21 @@
             }
         }
 
-        public json AddBillSub(string msg3, int hentryid)
+        public json AddBillSub(string msg3)
         {
-            //鑾峰彇琛ㄦ牸鏁版嵁
-            ds = oCN.RunProcReturn($"select * from  h_v_JIT_Sc_WorkBillSortBillList where 鍗曟嵁鍙�='{omdelMian.HBillNo}'", "h_v_JIT_Sc_WorkBillSortBillList");
-
             //鍒犻櫎瀛愯〃
-            oCN.RunProc("delete from Sc_WorkBillSortBillSub where HInterID='" + omdelMian.HInterID.ToString() + "' and HEntryID='" + hentryid + "'");
+            oCN.RunProc("delete from Sc_WorkBillSortBillSub where HInterID='" + omdelMian.HInterID.ToString() + "'");
 
             omodelsub = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Sc_WorkBillSortBillSub>>(msg3);
             int i = 1;
             //鎻掑叆瀛愯〃
             foreach (Models.Sc_WorkBillSortBillSub oSub in omodelsub)
             {
-                oCN.RunProc("insert into Sc_WorkBillSortBillSub(HInterID,HEntryID,HRemark,HMasterDate,HQty" +
+                oCN.RunProc("insert into Sc_WorkBillSortBillSub(HInterID,HSEQ,HRemark,HMasterDate,HQty" +
                             ", HRptFinishQty, HTimes, HUseTimes, HBTimes, HETimes" +
                             ", HDateSub, HCloseMan, HEntryCloseDate, HCloseTypeSub, HColumn" +
                             ", HLockedSub, HComplete, HStatusTag, HIsHandModify)" +
-                            $"values({omdelMian.HInterID}, {(hentryid == -1 ? i : omodelsub.Count==1? hentryid:i==1? hentryid:(i+ds.Tables[0].Rows.Count-1))}, '{oSub.HRemark}', '{oSub.HMasterDate}', {(oSub.HQty == null ? 0: oSub.HQty)}" +
+                            $"values({omdelMian.HInterID}, {i}, '{oSub.HRemark}', '{oSub.HMasterDate}', {(oSub.HQty == null ? 0: oSub.HQty)}" +
                             $", {(oSub.HRptFinishQty == null ? 0: oSub.HRptFinishQty)}, {(oSub.HTimes == null ? 0: oSub.HTimes)}, {(oSub.HUseTimes == null ? 0: oSub.HUseTimes)}, '{oSub.HBTimes}', '{oSub.HETimes}'" +
                             $", '{oSub.HDateSub}', '{oSub.HCloseMan}', '{oSub.HEntryCloseDate}', {(oSub.HCloseTypeSub == true ? 1 : 0)}, '{oSub.HColumn}'" +
                             $", '{(oSub.HLockedSub == true ? 1 : 0)}', '{oSub.HComplete}', '{(oSub.HStatusTag == true ? 1 : 0)}', '{(oSub.HIsHandModify == true ? 1 : 0)}')");
@@ -230,7 +242,7 @@
         #region 鏃ヨ鍒掑伐鍗� 鍒犻櫎
         [Route("Sc_WorkBillSortBill/DelWorkBillSortBillList")]
         [HttpGet]
-        public object DelWorkBillSortBillList(string HInterID, string HEntryID, string User)
+        public object DelWorkBillSortBillList(string HInterID,int DataType, string User)
         {
             try
             {
@@ -243,30 +255,72 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-
-                ds = oCN.RunProcReturn("select * from h_v_JIT_Sc_WorkBillSortBillList where 1=1 and hmainid=" + HInterID, "h_v_JIT_Sc_WorkBillSortBillList");
-
-                if (ds.Tables[0].Rows.Count > 0)
+                //DataType 1=鏃ヨ鍒掑伐鍗� 澶氶�夊垹闄�   2=鏃ヨ鍒掑钩鍙板閫夊垹闄�
+                if (DataType == 1)
                 {
-                    if (ds.Tables[0].Rows[0]["鍗曟嵁鐘舵��"].ToString() != "1")
+                    var NumData = HInterID.Split(',');
+
+                    for (int i = 0; i < NumData.Length; i++)
                     {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "褰撳墠鍗曟嵁涓嶈兘鍒犻櫎锛�";
-                        objJsonResult.data = null;
-                        return objJsonResult;
+                        var NumData_T = NumData[i].Split('_');
+
+                        ds = oCN.RunProcReturn("select * from h_v_JIT_Sc_WorkBillSortBillList where 1=1 and hmainid=" + NumData_T[0], "h_v_JIT_Sc_WorkBillSortBillList");
+
+                        if (ds.Tables[0].Rows.Count > 0)
+                        {
+                            if (ds.Tables[0].Rows[0]["鍗曟嵁鐘舵��"].ToString() != "1")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "褰撳墠鍗曟嵁涓嶈兘鍒犻櫎锛�";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+
+                            oCN.BeginTran();//寮�鍚簨鍔�
+
+                            if (ds.Tables[0].Rows.Count == 1)
+                            {
+                                oCN.RunProc($"delete from Sc_WorkBillSortBillMain where HInterID={ NumData_T[0]}");
+                            }
+                            oCN.RunProc($"delete from Sc_WorkBillSortBillSub where HInterID={ NumData_T[0]} and HEntryID={ NumData_T[1]}");
+
+                            oCN.Commit();//缁撴潫浜嬪姟
+                        }
                     }
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else if (DataType == 2)
+                {
+                    var NumData = HInterID.Split(',');
 
-                    oCN.BeginTran();//寮�鍚簨鍔�
-
-                    if (ds.Tables[0].Rows.Count == 1)
+                    for (int i = 0; i < NumData.Length; i++)
                     {
-                        oCN.RunProc($"delete from Sc_WorkBillSortBillMain where HInterID={HInterID}");
+                        ds = oCN.RunProcReturn("select * from h_v_JIT_Sc_WorkBillSortBillList where 1=1 and hmainid=" + NumData[i], "h_v_JIT_Sc_WorkBillSortBillList");
+
+                        if (ds.Tables[0].Rows.Count > 0)
+                        {
+                            if (ds.Tables[0].Rows[0]["鍗曟嵁鐘舵��"].ToString() != "1")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "褰撳墠鍗曟嵁涓嶈兘鍒犻櫎锛�";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+
+                            oCN.BeginTran();//寮�鍚簨鍔�
+
+                            oCN.RunProc($"delete from Sc_WorkBillSortBillSub where HInterID={ NumData[i]}");
+                            oCN.RunProc($"delete from Sc_WorkBillSortBillMain where HInterID={ NumData[i]}");
+
+                            oCN.Commit();//缁撴潫浜嬪姟
+                        }
                     }
-                    oCN.RunProc($"delete from Sc_WorkBillSortBillSub where HInterID={HInterID} and HEntryID={HEntryID}");
-
-                    oCN.Commit();//缁撴潫浜嬪姟
-
                     objJsonResult.code = "1";
                     objJsonResult.count = 1;
                     objJsonResult.Message = "鍒犻櫎鎴愬姛锛�";

--
Gitblit v1.9.1