From 82de67c48acaf472a6f8bb8b53f3f4feec9f5e54 Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期五, 17 十月 2025 10:42:18 +0800
Subject: [PATCH] 1
---
WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs | 160 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 160 insertions(+), 0 deletions(-)
diff --git a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
index c9f22a9..e5006c0 100644
--- a/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
+++ b/WebAPI/Controllers/CGGL/Kf_POStockInBillController.cs
@@ -2095,5 +2095,165 @@
}
#endregion
+
+ #region 閲囪喘鍏ュ簱鍗� 瀹℃牳鍚屾 璋冪敤API
+ [Route("Kf_POStockInBill/Kf_POStockInBillSaveApi")]
+ [HttpPost]
+ public object Kf_POStockInBillSaveApi([FromBody] JObject sMainSub)
+ {
+ try
+ {
+ oCN.BeginTran();
+ LogService.Write("閲囪喘鍏ュ簱鍗曞悓姝�,淇濆瓨鏂规硶鎵ц锛�" + sMainSub.ToString());
+
+ var model = sMainSub["model"].ToString();
+ var entry = sMainSub["model"]["HENTRY"].ToString();
+
+ model = "[" + model.ToString() + "]";
+ List<ClsKf_ICStockBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsKf_ICStockBillMain>>(model);
+ List<ClsKf_ICStockBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsKf_ICStockBillSub>>(entry);
+
+ // 鍒ゆ柇 鏁版嵁搴撲腑鏄惁瀛樺湪id鍜屽崟鎹彿鐩哥瓑鐨勫崟鎹紝瀛樺湪锛屽垯閲嶅缓锛屽彧鏈塱d鍙风浉绛夛紝鍒欑敵璇锋柊鐨刬d鍙�
+ var ds1 = oCN.RunProcReturn($@"
+ select hmainid HInterID, 鍗曟嵁鍙� HBillNO from h_v_Kf_POStockInBillList where hmainid = {mainList[0].HInterID}
+ ", "h_v_Kf_POStockInBillList");
+
+ if (ds1.Tables[0].Rows.Count > 0 && ds1.Tables[0].Rows[0]["HInterID"] != null)
+ {
+ if (string.Equals(ds1.Tables[0].Rows[0]["HBillNo"].ToString(), mainList[0].HBillNo, StringComparison.OrdinalIgnoreCase))
+ {
+ string sql = string.Empty;
+ sql = $"delete Kf_ICStockBillMain where HinterID = {mainList[0].HInterID}";
+ oCN.RunProc(sql);
+ sql = $"delete Kf_ICStockBillSub where HinterID = {mainList[0].HInterID}";
+ oCN.RunProc(sql);
+ }
+ else
+ {
+ // 閲嶆柊鐢宠HInterID
+ var HInterID_Exch = DBUtility.ClsPub.CreateBillID("1201", ref DBUtility.ClsPub.sExeReturnInfo);
+ mainList[0].HInterID = HInterID_Exch;
+
+ foreach (var oSub in subList)
+ {
+ oSub.HInterID = HInterID_Exch;
+ }
+
+ }
+ }
+
+ // 涓昏〃
+ // 涓昏〃鎻掑叆
+ oCN.RunProc($@"Insert Into Kf_ICStockBillMain
+ (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate,HBillNo,HBillStatus
+ ,HAddress,HSupID,HCurID,HWHID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID,HExplanation,HRemark
+ ,HInnerBillNo,HSTOCKORGID,HOWNERID,HMaker,HMakeDate,HProjectID,HInvoiceBillNo
+ ,HChecker, HCheckDate)
+ values(
+ '{mainList[0].HInterID}',
+ '{mainList[0].HYear}',
+ '{mainList[0].HPeriod}',
+ '{mainList[0].HBillType}',
+ '{mainList[0].HBillSubType}',
+ '{mainList[0].HDate}',
+ '{mainList[0].HBillNo}',
+ {mainList[0].HBillStatus},
+ '{mainList[0].HAddress}',
+ '{mainList[0].HSupID}',
+ '{mainList[0].HCurID}',
+ '{mainList[0].HWHID}',
+ '{mainList[0].HEmpID}',
+ '{mainList[0].HManagerID}',
+ '{mainList[0].HSecManagerID}',
+ '{mainList[0].HKeeperID}',
+ '{mainList[0].HDeptID}',
+ '{mainList[0].HExplanation}',
+ '{mainList[0].HRemark}',
+ '{mainList[0].HInnerBillNo}',
+ {mainList[0].HSTOCKORGID},
+ '{mainList[0].HOWNERID}',
+ '{mainList[0].HMaker}',
+ '{mainList[0].HMakeDate}',
+ '{mainList[0].HProjectID}',
+ '{mainList[0].HInvoiceBillNo}',
+ '{mainList[0].HChecker}',
+ '{mainList[0].HCheckDate}'
+ )
+ ");
+
+ // 瀛愯〃鎻掑叆
+ foreach (var osub in subList)
+ {
+
+ oCN.RunProc($@"Insert into Kf_ICStockBillSub
+ (HInterID,HEntryID,HMaterID,HUnitID,HQtyMust,HQty,HPrice
+ ,HMoney,HOrderPrice,HWHID,HSPID,HRelationQty,HBatchNo
+ ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType
+ ,HPOOrderInterID,HPOOrderEntryID ,HPOOrderBillNo
+ ,HPropertyID,HSecUnitID,HSecUnitRate,HPlanMode,HRemark,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo
+ ,HTaxRate,HTaxPrice,HlineTotal)
+ values (
+ '{osub.HInterID}',
+ '{osub.HEntryID}',
+ '{osub.HMaterID}',
+ '{osub.HUnitID}',
+ '{osub.HQtyMust}',
+ '{osub.HQty}',
+ '{osub.HPrice}',
+ '{osub.HMoney}',
+ '{osub.HOrderPrice}',
+ '{osub.HWHID}',
+ '{osub.HSPID}',
+ '{osub.HRelationQty}',
+ '{osub.HBatchNo}',
+ '{osub.HSourceInterID}',
+ '{osub.HSourceEntryID}',
+ '{osub.HSourceBillNo}',
+ '{osub.HSourceBillType}',
+ '{osub.HPOOrderInterID}',
+ '{osub.HPOOrderEntryID}',
+ '{osub.HPOOrderBillNo}',
+ '{osub.HPropertyID}',
+ '{osub.HSecUnitID}',
+ '{osub.HSecUnitRate}',
+ '{osub.HPlanMode}',
+ '{osub.HRemark}',
+ '{osub.HSeOrderInterID}',
+ '{osub.HSeOrderEntryID}',
+ '{osub.HSeOrderBillNo}',
+ '{osub.HTaxRate}',
+ '{osub.HTaxPrice}',
+ '{osub.HlineTotal}'
+ )
+ ");
+ }
+
+ //閲囪喘鍏ュ簱鍗曟柊澧炲洖濉噰璐叆搴撳叧鑱旀暟閲�
+ oCN.RunProc("exec h_p_Cg_UpDateRelation_POOrderToPOStockIn_Add " + mainList[0].HInterID);
+
+ //閲囪喘鍏ュ簱鍗曟柊澧炲洖濉敹鏂欓�氱煡鍗曞叧鑱旀暟閲�
+ oCN.RunProc("exec h_p_Cg_UpDateRelation_POInStockToPOStockIn_Add " + mainList[0].HInterID);
+
+
+ oCN.Commit();
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鍗曟嵁淇濆瓨鎴愬姛锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ LogService.Write("閲囪喘鍏ュ簱鍗曞悓姝ュ紓甯�,淇濆瓨鏂规硶鎵ц瀹屾垚寮傚父锛�" + e.Message.ToString());
+
+ oCN.RollBack();
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
}
}
\ No newline at end of file
--
Gitblit v1.9.1