From 282233a35c8c4d5dbf9eaac9aeb7dee9bed183eb Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期三, 14 九月 2022 17:47:26 +0800
Subject: [PATCH] 优化

---
 WebAPI/Models/其它/ReciveBill_FastModel.cs      |   16 +++++
 WebAPI/WebAPI.csproj                          |    1 
 WebAPI/Controllers/POStockInBillController.cs |   99 +++++++++++++++++++++++++++++---
 WebAPI/Models/动态列/OptionListModel.cs          |   13 ++-
 4 files changed, 113 insertions(+), 16 deletions(-)

diff --git a/WebAPI/Controllers/POStockInBillController.cs b/WebAPI/Controllers/POStockInBillController.cs
index e0deca2..3619b9b 100644
--- a/WebAPI/Controllers/POStockInBillController.cs
+++ b/WebAPI/Controllers/POStockInBillController.cs
@@ -1461,17 +1461,94 @@
             }
         }
 
-        //[Route("POStockInBillList/AuditPOInStockBillPost")]
-        //[HttpGet]
-        //public object AuditPOInStockBill([FromBody] JObject msg) {
-        //    string _msg = msg.ToString();
+        [Route("POStockInBillList/AuditPOInStockBillPost")]
+        [HttpPost]
+        public object AuditPOInStockBill([FromBody] JObject msg)
+        {
+            try
+            {
+                string _msg = msg["msg"].ToString();
+                _msg = _msg.Replace("\\", "");
+                _msg = _msg.Replace("\n", "");
+                List<Models.ReciveBill_FastModel> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.ReciveBill_FastModel>>(_msg);
+                DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill();
+                var hinterID = list[0].HInterID;
+                var FID = list[0].FID;
+                oCn.BeginTran();
+                string sql = string.Empty;
+                foreach (var item in list)
+                {
+                    if (item.HSQty == 0)
+                        continue;
+                    sql = $"update Cg_POInStockBillSub set Hqty = {item.HSQty} where HInterID ={item.HInterID} and HEntryID = {item.HEntryID}";
+                    oCn.RunProc(sql);
+                }
+                oCn.RunProc("exec h_p_Cg_UpDatePOOrderRelation_Del " + hinterID);//鍒犻櫎鍏宠仈鍏崇郴
 
-        //    objJsonResult.code = "0";
-        //    objJsonResult.count = 0;
-        //    objJsonResult.Message = s;
-        //    objJsonResult.data = null;
-        //    return objJsonResult;
-        //}
+                JObject jsonRoot = new JObject();
+                jsonRoot.Add("Creator", "");
+                jsonRoot.Add("NeedUpDateFields", new JArray());
+                jsonRoot.Add("NeedReturnFields", new JArray());
+                jsonRoot.Add("IsDeleteEntry", "false");
+                jsonRoot.Add("SubSystemId", "");
+                jsonRoot.Add("IsVerifyBaseDataField", "");
+
+                JObject jsonModel = new JObject();
+                jsonModel.Add("FID", FID);
+                JArray Entry = new JArray();
+
+                foreach (var item in list)
+                {
+                    if (item.HSQty == 0)
+                        continue;
+                    JObject jsonFPOOrderEntry = new JObject();
+                    jsonFPOOrderEntry.Add("FEntryID", item.FEntryID);
+                    jsonFPOOrderEntry.Add("FHQty ", item.HSQty); ;
+                    Entry.Add(jsonFPOOrderEntry);
+                }
+                jsonModel.Add("FEntity", Entry);
+                jsonRoot.Add("Model", jsonModel);
+                var loginRet = InvokeHelper.Login();
+                var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
+                if (isSuccess <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = loginRet;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //LogService.Write("jsonRoot:" + jsonRoot.ToString());
+                var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString());
+                //LogService.Write(result);
+                if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "閲戣澏鏀舵枡閫氱煡鍗曟洿鏂板け璐�" + result;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //鏇存柊鎴愬姛鍚� 鍚屾鏇存柊閲戣澏
+                oCn.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎿嶄綔鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "寮傚父锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
 
         /// <summary>
         /// 鍒拌揣纭 鎵潯鐮� 鏍¢獙
@@ -1487,7 +1564,7 @@
             {
                 //鏍¢獙鏉$爜鏄惁瀛樺湪
                 string sql = $"select* from  Gy_BarCodeBill where HSourceInterID ={HInterID} and HBarCode = '{HBarcode}'";
-                DataSet ds = oCn.RunProcReturn(sql, "H_v_SRM_POOrderBillList") ; 
+                DataSet ds = oCn.RunProcReturn(sql, "H_v_SRM_POOrderBillList");
                 if (ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";
diff --git "a/WebAPI/Models/\345\205\266\345\256\203/ReciveBill_FastModel.cs" "b/WebAPI/Models/\345\205\266\345\256\203/ReciveBill_FastModel.cs"
new file mode 100644
index 0000000..6723b97
--- /dev/null
+++ "b/WebAPI/Models/\345\205\266\345\256\203/ReciveBill_FastModel.cs"
@@ -0,0 +1,16 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace WebAPI.Models
+{
+    public class OptionListModel
+    {
+        public string field { get; set; }
+        public string title { get; set; }
+        public bool sort { get; set; }
+        public bool hide { get; set; }
+
+    }
+}
\ No newline at end of file
diff --git "a/WebAPI/Models/\345\212\250\346\200\201\345\210\227/OptionListModel.cs" "b/WebAPI/Models/\345\212\250\346\200\201\345\210\227/OptionListModel.cs"
index 6723b97..8137209 100644
--- "a/WebAPI/Models/\345\212\250\346\200\201\345\210\227/OptionListModel.cs"
+++ "b/WebAPI/Models/\345\212\250\346\200\201\345\210\227/OptionListModel.cs"
@@ -5,12 +5,15 @@
 
 namespace WebAPI.Models
 {
-    public class OptionListModel
+    public class ReciveBill_FastModel
     {
-        public string field { get; set; }
-        public string title { get; set; }
-        public bool sort { get; set; }
-        public bool hide { get; set; }
+        public string HInterID { get; set; }
+        public string HEntryID { get; set; }
+        public decimal HQty { get; set; }
+        public decimal HSQty { get; set; }
+        public string FID { get; set; }
+        public string FEntryID { get; set; }
+
 
     }
 }
\ No newline at end of file
diff --git a/WebAPI/WebAPI.csproj b/WebAPI/WebAPI.csproj
index 0138426..7a9497b 100644
--- a/WebAPI/WebAPI.csproj
+++ b/WebAPI/WebAPI.csproj
@@ -580,6 +580,7 @@
     <Compile Include="Models\Sc_WorkBillSortBillSub.cs" />
     <Compile Include="Models\Sc_WorkDemandPlanBillMain.cs" />
     <Compile Include="Models\Sc_WorkDemandPlanBillSub.cs" />
+    <Compile Include="Models\鍏跺畠\ReciveBill_FastModel.cs" />
     <Compile Include="Models\鍔ㄦ�佸垪\OptionListModel.cs" />
     <Compile Include="Models\鍩虹璧勬枡\Gy_ClassTimePrj.cs" />
     <Compile Include="Models\宸ヨ祫绠$悊\ClsGy_ClassTimePrj_Model.cs" />

--
Gitblit v1.9.1