1
duhe
2025-03-31 9b4915b7b3669ffe80774740bd06c547ece49494
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 @@
              "') ");
                //修改上级为非末级代码
                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();   //列表主ID
                string msg5 = sArray[3].ToString();   //登录人员
                string msg6 = sArray[4].ToString();   //权限模块代码
                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);