From d1b14d00d9ee4ff4a1b271e6b4fe094f5049a55f Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期一, 17 三月 2025 09:23:16 +0800
Subject: [PATCH] 采购入库单:下推采购退料单

---
 WebAPI/Controllers/BaseSet/Gy_SupplierController.cs |   73 ++++++++++++++++++++++++++++++++----
 1 files changed, 64 insertions(+), 9 deletions(-)

diff --git a/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs b/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs
index 240b2f4..030c263 100644
--- a/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_SupplierController.cs
@@ -261,8 +261,10 @@
                 string sql = string.Format(@"select  * from h_v_Gy_SupplierEdit where HItemID='" + HInterID + "'");
                 ds = oCN.RunProcReturn(sql, "h_v_Gy_SupplierEdit");
                 DataSet cs = oCN.RunProcReturn("select * from Gy_Supplier_PayPlan where HSupID = '"+ HInterID + "'", "Gy_Supplier_PayPlan");
+                DataSet cs1 = oCN.RunProcReturn("select * from Gy_Supplier_Link where HSupID = '" + HInterID + "'", "Gy_Supplier_Link");
                 List<Object> list = new List<object>();
                 list.Add(cs);
+                list.Add(cs1);
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "";
@@ -297,6 +299,7 @@
                 string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                 string msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
                 string msg3 = sArray[1].ToString(); //瀛愯〃鏁版嵁
+                string msg4 = sArray[2].ToString(); //瀛愯〃鏁版嵁
                 //涓昏〃鍙嶅簭鍒楀寲
                 msg2 = "[" + msg2.ToString() + "]";
 
@@ -318,7 +321,7 @@
                 string HAddress = list[0].HAddress;
                 string HLinkMan = list[0].HLinkMan;
                 string HLinkPhone = list[0].HLinkPhone;
-                string HBankAccount = list[0].HMobilePhone;
+                string HBankAccount = list[0].HBankAccount;
                 string HFax = list[0].HFax;
                 string HPostalCode = list[0].HPostalCode;
                 string HEmail = list[0].HEmail;
@@ -370,20 +373,34 @@
               "') ");
                 //淇敼涓婄骇涓洪潪鏈骇浠g爜
                 oCN.RunProc("Update Gy_Supplier set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
-                //瀛愯〃娣诲姞
-                List<ClsGy_Supplier_PayPlan> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_Supplier_PayPlan>>(msg3);
-                int i = 0;
+
+                //鍒犻櫎瀛愯〃鎿嶄綔 闃叉鍑洪敊
                 DataSet Cs;
                 Cs = oCN.RunProcReturn("select MAX(HItemID)HItemID from Gy_Supplier", "Gy_Supplier");
                 string MaxHItemID = Cs.Tables[0].Rows[0]["HItemID"].ToString();
-                //鍒犻櫎瀛愯〃鎿嶄綔 闃叉鍑洪敊
                 oCN.RunProc("delete from Gy_Supplier_PayPlan where HSupID='" + MaxHItemID + "'");
+                oCN.RunProc("delete from Gy_Supplier_Link where HSupID='" + MaxHItemID + "'");
+
+                //瀛愯〃娣诲姞
+                List<ClsGy_Supplier_PayPlan> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_Supplier_PayPlan>>(msg3);
+                int i = 0;
                 foreach (ClsGy_Supplier_PayPlan oSub in DetailColl)
                 {
                     i++;
                     oCN.RunProc($@"Insert into Gy_Supplier_PayPlan 
                 (HSupID,HSubID,HPayType,HPayRate,HPayTime,HPayRemark) 
                  values({MaxHItemID},{i} ,'{oSub.HPayType}',{oSub.HPayRate},{oSub.HPayTime},'{oSub.HPayRemark}')");
+                }
+
+                //瀛愯〃娣诲姞
+                List<ClsGy_Supplier_Link> DetailCol2 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_Supplier_Link>>(msg4);
+                int i2 = 0;
+                foreach (ClsGy_Supplier_Link oSub in DetailCol2)
+                {
+                    i2++;
+                    oCN.RunProc($@"Insert into Gy_Supplier_Link 
+                (HSupID,HSubID,HLinkMan,HLinkPhone,HRemark) 
+                 values({MaxHItemID},{i2} ,'{oSub.HLinkMan}','{oSub.HLinkPhone}','{oSub.HRemark}')");
                 }
 
                 oCN.Commit();
@@ -478,10 +495,11 @@
                 string msg1 = _value.ToString();
                 string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                 string msg2 = sArray[0].ToString();   //琛ㄥご鏁版嵁
-                string msg3 = sArray[1].ToString();   //瀛愯〃鏁版嵁
+                string msg3 = sArray[1].ToString();   //瀛愯〃鏁版嵁-浠樻璁″垝
                 string msg4 = sArray[2].ToString();   //鍒楄〃涓籌D
                 string msg5 = sArray[3].ToString();   //鐧诲綍浜哄憳
                 string msg6 = sArray[4].ToString();   //鏉冮檺妯″潡浠g爜
+                string msg7 = sArray[5].ToString();   //瀛愯〃鏁版嵁-鑱旂郴浜�
                 //鍙嶅簭鍒楀寲
                 msg2 = "[" + msg2.ToString() + "]";
                 List<Supplier> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Supplier>>(msg2);
@@ -499,7 +517,7 @@
                 string HAddress = list[0].HAddress;
                 string HLinkMan = list[0].HLinkMan;
                 string HLinkPhone = list[0].HLinkPhone;
-                string HBankAccount = list[0].HMobilePhone;
+                string HBankAccount = list[0].HBankAccount;
                 string HFax = list[0].HFax;
                 string HPostalCode = list[0].HPostalCode;
                 string HEmail = list[0].HEmail;
@@ -588,17 +606,30 @@
                 oCN.RunProc("Update Gy_Supplier set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                 //
 
+                //鍒犻櫎瀛愯〃鎿嶄綔 闃叉鍑洪敊
+                oCN.RunProc("delete from Gy_Supplier_PayPlan where HSupID='" + HItemID + "'");
+                oCN.RunProc("delete from Gy_Supplier_Link where HSupID='" + HItemID + "'");
+
                 //瀛愯〃娣诲姞
                 List<ClsGy_Supplier_PayPlan> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_Supplier_PayPlan>>(msg3);
                 int i = 0;
-                //鍒犻櫎瀛愯〃鎿嶄綔 闃叉鍑洪敊
-                oCN.RunProc("delete from Gy_Supplier_PayPlan where HSupID='" + HItemID + "'");
                 foreach (ClsGy_Supplier_PayPlan oSub in DetailColl)
                 {
                     i++;
                     oCN.RunProc($@"Insert into Gy_Supplier_PayPlan 
                 (HSupID,HSubID,HPayType,HPayRate,HPayTime,HPayRemark) 
                  values({HItemID},{i} ,'{oSub.HPayType}',{oSub.HPayRate},{oSub.HPayTime},'{oSub.HPayRemark}')");
+                }
+
+                //瀛愯〃娣诲姞
+                List<ClsGy_Supplier_Link> DetailCol2 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_Supplier_Link>>(msg7);
+                int i2 = 0;
+                foreach (ClsGy_Supplier_Link oSub in DetailCol2)
+                {
+                    i2++;
+                    oCN.RunProc($@"Insert into Gy_Supplier_Link 
+                (HSupID,HSubID,HLinkMan,HLinkPhone,HRemark) 
+                 values({HItemID},{i2} ,'{oSub.HLinkMan}','{oSub.HLinkPhone}','{oSub.HRemark}')");
                 }
 
 
@@ -663,12 +694,36 @@
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
+
+                    //鍒犻櫎鍓嶆帶鍒�=========================================      
+                    string sql1 = "exec h_p_Gy_Supplier_BeforeDelCtrl " + HItemID + ",'" + User + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_Gy_Supplier_BeforeDelCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:鍒犻櫎鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //==================================================================================  
+
                     oCN.BeginTran();
                     //
                     if (oGroup.DeleteByID(HItemID))
                     {
                         //鍒犻櫎瀛愯〃
                         oCN.RunProc("delete from Gy_Supplier_PayPlan where HSupID='" + HItemID + "'");
+                        oCN.RunProc("delete from Gy_Supplier_Link where HSupID='" + HItemID + "'");
                         oCN.Commit();
                         //鍐欏叆鏃ュ織
                         ClsPub.Add_Log("", "鍒犻櫎椤圭洰锛屼唬鐮侊細" + oGroupHlp.omodel.HNumber + ",鍚嶇О锛�" + oGroupHlp.omodel.HName, ClsPub.CurUserName);

--
Gitblit v1.9.1