From 81bb23d6d09943a41bac424ae284e659dae13dfc Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期二, 28 二月 2023 10:25:12 +0800
Subject: [PATCH] 瑞琪 同步删除 工序出站单

---
 WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs |  421 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 420 insertions(+), 1 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
index fd02fef..899f3c7 100644
--- a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
@@ -1,4 +1,5 @@
-锘縰sing Newtonsoft.Json.Linq;
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
 using Pub_Class;
 using System;
 using System.Collections;
@@ -372,6 +373,171 @@
         //}
         #endregion
 
+        #region[鎵归噺鏂板鍗曟嵁-淇濆瓨鎸夐挳]
+        /// <summary>
+        /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Sc_ProcessExchangeBill/AddBill_pl")]
+        [HttpPost]
+        public object AddBill_pl([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();//涓昏〃
+            string msg3 = sArray[1].ToString();//鍗曟嵁鍙峰強鏁伴噺
+            string msg4 = sArray[2].ToString();//宸ヨ壓璺嚎
+            string msg5 = sArray[3].ToString();//绫诲瀷
+            string msg6 = sArray[4].ToString();//鐢ㄦ埛
+
+            ListModels oListModels = new ListModels();
+
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, msg6))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //鍗曟嵁鍙� 鍙婃暟閲�
+                DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill();
+                List<Model.ClsSc_ProcessExchangeBillMain> ListHbillNo = new List<Model.ClsSc_ProcessExchangeBillMain>();
+                msg3 = msg3.Replace("\\", "");
+                msg3 = msg3.Replace("\n", "");  //\n
+                ListHbillNo = JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillMain>>(msg3);
+
+                //涓昏〃淇℃伅
+                Model.ClsSc_ProcessExchangeBillMain Main = new Model.ClsSc_ProcessExchangeBillMain();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                Main = JsonConvert.DeserializeObject<Model.ClsSc_ProcessExchangeBillMain>(msg2);
+
+                DBUtility.ClsPub.CurUserName = msg6;
+                Main.HMaker = msg6;  //鍒跺崟浜�
+                Main.HBillType = "3772";
+                Main.HBillSubType = "3772";
+                Main.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                Main.HMaterID = Main.HMaterID2;
+                if (DBUtility.ClsPub.isStrNull(Main.HDate) == "")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+
+                //琛ㄤ綋鏁版嵁
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                msg4 = msg4.Substring(1, msg4.Length - 2);
+                msg4 = msg4.Replace("\\", "");
+                msg4 = msg4.Replace("\n", "");  //\n
+                List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>();
+                ls = oListModels.getObjectByJson_Sc_ProcessExchangeBillSub(msg4);
+
+                //寰幆鏂板鍗曟嵁
+                for (int i = 0; i < ListHbillNo.Count; i++)
+                {
+                    Main.HBillNo = ListHbillNo[i].HBillNo;
+                    Main.HQty = ListHbillNo[i].HQty;
+                    oBill.omodel = Main;
+
+                    int j = 0;
+                    foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in ls)
+                    {
+                        j++;
+                        oItemSub.HEntryID = j;
+                        oItemSub.HQty = Main.HQty;
+                        oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
+                        oBill.DetailColl.Add(oItemSub);
+                    }
+                    //淇濆瓨
+                    //淇濆瓨瀹屾瘯鍚庡鐞�
+                    bool bResult=false;
+                    if (msg5 == "2")
+                    {
+                        bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                    oBill.DetailColl.Clear();
+                    if (!bResult)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
+        #region 宸ュ簭娴佽浆鍗″垪琛ㄦ樉绀哄櫒鍏锋竻鍗曚俊鎭�
+        [Route("Sc_ProcessExchangeBillList/QJQD")]
+        [HttpGet]
+        public object QJQD(Int64 HProcExchHinteID)
+        {
+            try
+            {
+
+                //寰楀埌淇℃伅
+                ds = oCN.RunProcReturn("select  * from h_v_Sc_ProcessExchangeBillQuerySub_Mould  where hmainid= " + HProcExchHinteID , "h_v_Sc_ProcessExchangeBillQuerySub_Mould");
+                //鍐欏叆淇℃伅
+                //if (ds == null || ds.Tables[0].Rows.Count == 0)
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏈煡璇㈠埌鍑虹珯鍗曟槑缁嗕俊鎭紒";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+
+                List<object> listCol = new List<object>();
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    listCol.Add(JsonConvert.DeserializeObject(str));
+                }
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = listCol;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region[杩斿洖鐢熶骇浠诲姟鍗曟槑缁嗚]
         /// <summary>
         /// 杩斿洖鐢熶骇浠诲姟鍗曟槑缁嗚
@@ -621,5 +787,258 @@
             }
         }
         #endregion
+
+        #region[缂栬緫鏃惰幏鍙栬〃浣撴暟鎹�(宸ヨ壓鍙傛暟)]
+        [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillSubTech")]
+        [HttpGet]
+        public object GetProcessExchangeBillSubTech(string HInterID)
+        {
+            DataSet ds;
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                string sql = string.Format(@"exec h_p_Sc_GetProcessExchangeBillSubTech ");
+                ds = oCN.RunProcReturn(sql +  HInterID, "h_p_Sc_GetProcessExchangeBillSubTech");
+
+                //娣诲姞鍒楀悕
+                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.list = columnNameList;
+                objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鎷嗗垎 缂栬緫鑾峰彇娴佽浆鍗℃暟鎹�
+        /// <summary>
+        /// 缂栬緫鑾峰彇琛ㄥご淇℃伅
+        /// </summary>
+        /// <param name="HInterID">涓籌D</param>
+        /// <returns></returns>
+        [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_cf")]
+        [HttpGet]
+        public object GetProcessExchangeBillMain_cf(string HInterID)
+        {
+            DataSet ds;
+            try
+            {
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillQuery  where hmainid= " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery");
+
+                DataSet Ds  = oCN.RunProcReturn("select  top 1 HNo  from Sc_ProcessExchangeBillmain where HBillNo like '%" + ds.Tables[0].Rows[0]["鍗曟嵁鍙�"].ToString() + "-%'   order by LEN(HBillno) , HbillNo desc ", "Sc_ProcessExchangeBillmain");
+
+                char c = '1';
+                string sNo = "01";
+                int sCount = 0;
+
+                if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+                {
+                }
+                else
+                {
+                    sCount = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HNo"]);
+                    if (sCount >= 1)
+                    {
+                        sNo = Convert.ToChar(sCount + (int)c).ToString();
+                        sNo = "00" + sNo;
+                        sNo = sNo.Substring(sNo.Length - 2, 2);
+                    }
+                }
+
+                string sBillNo = ds.Tables[0].Rows[0]["鍗曟嵁鍙�"].ToString();
+                sBillNo = sBillNo.Replace("WORKX", "");
+                sBillNo = sBillNo.Replace("WORK", "");
+                sBillNo = sBillNo.Replace("_", "-");
+                sBillNo = sBillNo + "-" + sNo;
+                ds.Tables[0].Rows[0]["鍗曟嵁鍙�"] = sBillNo;
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+            }
+            return objJsonResult;
+        }
+
+
+        /// <summary>
+        /// 鑾峰彇琛ㄤ綋鏁版嵁淇℃伅
+        /// </summary>
+        /// <param name="HInterID"></param>
+        /// <returns></returns>
+        [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillSub_cf")]
+        [HttpGet]
+        public object GetProcessExchangeBillSub_cf(string HInterID)
+        {
+            DataSet ds;
+            try
+            {
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                string sql = string.Format(@"select * from h_v_Sc_ProcessExchangeBillQuerySub");
+                ds = oCN.RunProcReturn(sql + " where hmainid=" + HInterID, "h_v_Sc_ProcessExchangeBillQuerySub");
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+            }
+            return objJsonResult;
+        }
+
+        /// <summary>
+        /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Sc_ProcessExchangeBill/AddBill_cf")]
+        [HttpPost]
+        public object AddBill_cf([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString();
+            string msg4 = sArray[2].ToString();
+            string msg5 = sArray[3].ToString();
+
+            string UserName = "";
+            ListModels oListModels = new ListModels();
+
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_CF", 1, false, msg5))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳媶鍒嗘潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill();
+                List<Model.ClsSc_ProcessExchangeBillMain> lsmain = new List<Model.ClsSc_ProcessExchangeBillMain>();
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_Sc_ProcessExchangeBillMain(msg2);
+                foreach (Model.ClsSc_ProcessExchangeBillMain oItem in lsmain)
+                {
+                    oItem.HMaker = msg5;  //鍒跺崟浜�
+                    oItem.HBillType = "3772";
+                    oBill.HBillSubType = "Split";
+                    oItem.HNo = DBUtility.ClsPub.isLong(oItem.HBillNo.Split('-')[1]);
+                    oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --鏃ユ湡
+                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                    oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                    oItem.HMaterID2 = oItem.HMaterID;
+                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oBill.omodel = oItem;
+                }
+
+                //琛ㄤ綋鏁版嵁
+                //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆�
+                msg3 = msg3.Substring(1, msg3.Length - 2);
+                msg3 = msg3.Replace("\\", "");
+                msg3 = msg3.Replace("\n", "");  //\n
+                //msg2 = msg2.Replace("'", "鈥�");
+                List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>();
+                ls = oListModels.getObjectByJson_Sc_ProcessExchangeBillSub(msg3);
+                int i = 0;
+                foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in ls)
+                {
+
+                    i++;
+                    if (oItemSub.HSplitQty > oItemSub.HLeftQty)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "绗�"+i+ "琛岋紝鎷嗗垎鏁伴噺涓嶈兘澶т簬鍙媶鍒嗘暟閲忥紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    oItemSub.HEntryID = i;
+                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
+                    oBill.DetailColl.Add(oItemSub);
+
+                }
+
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                bool bResult = false;
+                if (msg4 == "1")
+                {
+                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                //else
+                //{
+                //    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                //}
+                if (bResult)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1