From 4d466e44736bae2b9fdbbd1cba6e6a289a70709d Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期四, 11 一月 2024 17:13:38 +0800
Subject: [PATCH] 保存过滤方案

---
 DAL/基础资料/公用基础资料/ClsXt_FastICScheme_Ctl.cs                 |   48 +++++++--------
 WebAPI/Controllers/基础资料/基础资料/Xt_FastICSchemeController.cs |  114 +++++++++++++++++++++++++++++++++++++-
 2 files changed, 133 insertions(+), 29 deletions(-)

diff --git "a/DAL/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/ClsXt_FastICScheme_Ctl.cs" "b/DAL/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/ClsXt_FastICScheme_Ctl.cs"
index 158bc83..652f679 100644
--- "a/DAL/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/ClsXt_FastICScheme_Ctl.cs"
+++ "b/DAL/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/ClsXt_FastICScheme_Ctl.cs"
@@ -27,7 +27,7 @@
 
         #endregion   鑷畾涔夋柟娉�
         //淇敼鍗曟嵁
-        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
+        public bool ModifyBill(Int64 lngBillKey, string HFilterIdLists, string HValue, string HElement_type, ref string sReturn)
         {
             try
             {
@@ -56,31 +56,23 @@
                 //",HExplanation='" + omodel.HExplanation + "'" +
                 //",HInnerBillNo='" + omodel.HInnerBillNo + "'" +
                 //" where HInterID=" + lngBillKey.ToString());
-                ////鍒犻櫎鍏宠仈
-                //DeleteRelation(ref sReturn, lngBillKey);
-                ////鍒犻櫎瀛愯〃
-                //DeleteBillSub(lngBillKey);
-                ////鎻掑叆瀛愯〃
-                //omodel.HInterID = lngBillKey;
-                //foreach (Model.ClsCg_POOrderBillSub oSub in DetailColl)
-                //{
-                //    oCn.RunProc("Insert into Cg_POOrderBillSub " +
-                //      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
-                //      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
-                //      ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo" +
-                //      ",HMaterID,HUnitID,HQty,HPrice,HMoney,HTaxRate,HTaxPrice" +
-                //      ",HTaxMoney,HlineTotal,HlineTotalBB,HDate,HSourceQty" +
-                //      ",HDiscountRate,HRelTaxPrice,HInStockQty,HInvoiceQty" +
-                //      ") values("
-                //      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" +
-                //      ",'" + oSub.HSourceInterID.ToString() + "','" + oSub.HSourceEntryID.ToString() + "','" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
-                //      ",'" + oSub.HSeOrderInterID.ToString() + "','" + oSub.HSeOrderEntryID.ToString() + "','" + oSub.HSeOrderBillNo + "'" +
-                //      "," + oSub.HMaterID.ToString() + "," + oSub.HUnitID.ToString() + "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HMoney.ToString() + "," + oSub.HTaxRate.ToString() + "," + oSub.HTaxPrice.ToString() +
-                //      "," + oSub.HTaxMoney.ToString() + "," + oSub.HlineTotal.ToString() + "," + oSub.HlineTotalBB.ToString() + ",'" + oSub.HDate.ToShortDateString() + "','" + oSub.HSourceQty + "'" +
-                //      "," + oSub.HDiscountRate.ToString() + "," + oSub.HRelTaxPrice.ToString() + "," + oSub.HInStockQty.ToString() + "," + oSub.HInvoiceQty.ToString() +
-                //      ") ");
-                //}
-                
+
+                //鍒犻櫎瀛愯〃
+                DeleteBillSub(lngBillKey);
+                //鑾峰彇瀛愯〃鏁版嵁
+                string[] HFilterIdLists_arr = Regex.Split(HFilterIdLists, ",", RegexOptions.IgnoreCase);
+                string[] HValue_arr = Regex.Split(HValue, ",", RegexOptions.IgnoreCase);
+                string[] HElement_type_arr = Regex.Split(HElement_type, ",", RegexOptions.IgnoreCase);
+                //鎻掑叆瀛愯〃
+                for (var i = 0; i < HFilterIdLists_arr.Length; i++)
+                {
+                    oCn.RunProc("Insert Into xt_FastICSchemeSub " +
+                   "(HInterID,HKey,HValue,HDataType) " +
+                   " values('" + omodel.HInterID.ToString() + "','" + HFilterIdLists_arr[i] + "','" + HValue_arr[i] + "'" +
+                   ",'" + HElement_type_arr[i] +
+                   "') ");
+                }
+               
                 sReturn = "淇敼鍗曟嵁鎴愬姛锛�";
                 oCn.Commit();
                 return true;
@@ -98,6 +90,10 @@
             try
             {                              
                 oCn.BeginTran();
+                if (omodel.HUseingFlag == 1)
+                {
+                    oCn.RunProc("update Xt_FastICSchemeMain set HUseingFlag = 0");
+                }
                 //涓昏〃
                 oCn.RunProc("Insert Into Xt_FastICSchemeMain   " +
                 "(HInterID,HName,HUserCode,HBillType,HBillName" +
diff --git "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Xt_FastICSchemeController.cs" "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Xt_FastICSchemeController.cs"
index 140baf8..b564ba1 100644
--- "a/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Xt_FastICSchemeController.cs"
+++ "b/WebAPI/Controllers/\345\237\272\347\241\200\350\265\204\346\226\231/\345\237\272\347\241\200\350\265\204\346\226\231/Xt_FastICSchemeController.cs"
@@ -61,6 +61,67 @@
             }
         }
 
+        /// <summary>
+        /// 杩斿洖杩囨护鏂规鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Xt_FastICScheme/Chooselist")]
+        [HttpGet]
+        public object Chooselist(string user, string HModuleName,Int64 HInterID,string Type)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                string sql = "";
+
+                if (Type == "Default")
+                {
+                    sql = string.Format(@"select * from h_v_Xt_FastICScheme_ChooseList where 鐢ㄦ埛缂栫爜='" + user + "' and 妯″潡鍚嶇О = '" + HModuleName + "' and 榛樿浣跨敤鏍囪 = '榛樿鏂规'");
+                }
+                else
+                {
+                    sql = string.Format(@"select * from h_v_Xt_FastICScheme_ChooseList where 鐢ㄦ埛缂栫爜='" + user + "' and 妯″潡鍚嶇О = '" + HModuleName + "' and hmainid = " + HInterID);
+                }
+                ds = oCN.RunProcReturn(sql, "h_v_Xt_FastICScheme_ChooseList");
+
+                if (ds.Tables[0].Rows.Count != 0 && ds != null)
+                {
+                    //娣诲姞鍒楀悕
+                    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 = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    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;
+            }
+        }
+
         #region 蹇�熻繃婊ゆ柟妗�
         /// <summary>
         /// 鏂板淇敼鍗曟嵁-淇濆瓨鎸夐挳
@@ -84,6 +145,7 @@
                 string msg4 = sArray[2].ToString();//杩囨护鍊�
                 string msg5 = sArray[3].ToString();//鏍囩绫诲瀷
                 string msg6 = sArray[4].ToString();//鐢ㄦ埛
+                string OperationType = sArray[5].ToString();//鎿嶄綔绫诲瀷
 
                 DAL.ClsXt_FastICScheme_Ctl oBill = new DAL.ClsXt_FastICScheme_Ctl();
                 //鍙嶅簭鍒楀寲
@@ -92,7 +154,14 @@
                 List<Model.ClsXt_FastICSchemeMain_Model> lsmain = new List<Model.ClsXt_FastICSchemeMain_Model>();
                 msg2 = msg2.Replace("\\", "");
                 msg2 = msg2.Replace("\n", "");  //\n
-                lsmain = oListModels.getObjectByJson_Xt_FastICSchemeMain(msg2);
+                if (Convert.ToInt32(OperationType) != 3)
+                {
+                    lsmain = oListModels.getObjectByJson_Xt_FastICSchemeMain(msg2);
+                }
+                else
+                {
+                    oBill.omodel.HInterID = Convert.ToInt32(msg2);
+                }
 
                 foreach (Model.ClsXt_FastICSchemeMain_Model oItem in lsmain)
                 {                    
@@ -115,14 +184,14 @@
                 //淇濆瓨
                 //淇濆瓨瀹屾瘯鍚庡鐞�
                 bool bResult;
-                if (1 == 1)
+                if (Convert.ToInt32(OperationType) == 1)
                 {
                     // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                     bResult = oBill.AddBill(msg3, msg4, msg5, ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 else
                 {
-                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                    bResult = oBill.ModifyBill(Convert.ToInt32(msg2), msg3, msg4, msg5, ref DBUtility.ClsPub.sExeReturnInfo);
                 }
                 if (bResult)
                 {
@@ -153,5 +222,44 @@
             }
         }
         #endregion
+
+        #region 杩囨护鏂规鍒犻櫎鍔熻兘
+        [Route("Xt_FastICScheme/DeltetXt_FastICScheme")]
+        [HttpGet]
+        public object DeltetXt_FastICScheme(string HInterID, string user)
+        {
+            try
+            {               
+                if (string.IsNullOrWhiteSpace(HInterID))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                oCN.BeginTran();//寮�濮嬩簨鍔�
+                             
+                oCN.RunProc("delete from xt_FastICSchemeMain where HInterID in (" + HInterID + ")");
+                oCN.RunProc("delete from xt_FastICSchemeSub  where HInterID in (" + HInterID + ")");
+
+                oCN.Commit();//鎻愪氦浜嬪姟
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "* 鏁版嵁鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍒犻櫎澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
     }
 }

--
Gitblit v1.9.1