From 4c7cb8434be52f1de8557c069ebf82dfbfd8d6ee Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期三, 05 十一月 2025 15:29:46 +0800
Subject: [PATCH] 增加凯贝装箱单

---
 WebAPI/Controllers/XSGL/Xs_SeOutStockBackBillController.cs |  142 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 141 insertions(+), 1 deletions(-)

diff --git a/WebAPI/Controllers/XSGL/Xs_SeOutStockBackBillController.cs b/WebAPI/Controllers/XSGL/Xs_SeOutStockBackBillController.cs
index c7c934d..6af0fa2 100644
--- a/WebAPI/Controllers/XSGL/Xs_SeOutStockBackBillController.cs
+++ b/WebAPI/Controllers/XSGL/Xs_SeOutStockBackBillController.cs
@@ -35,7 +35,8 @@
         {
             try
             {
-                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+                List < object > columnNameList = new List<object>()
+;                //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
                 if (!DBUtility.ClsPub.Security_Log("Xs_SeOutStockBackBillQuery", 1, false, user))
                 {
                     objJsonResult.code = "0";
@@ -55,6 +56,12 @@
                     string sql = sql1 + sWhere+ " order by hmainid desc";
                     ds = oCN.RunProcReturn(sql, "h_v_IF_SeOutStockBackBillList");
                 }
+                foreach (DataColumn col in ds.Tables[0].Columns)//閬嶅巻ds涓涓�涓〃锛圱ables[0]锛夌殑鎵�鏈夊垪锛圕olumns锛夋瘡娆″惊鐜腑锛宑ol鍙橀噺浼氭寔鏈夊綋鍓嶅垪鐨勫紩鐢�
+                {
+                    Type dataType = col.DataType; //鑾峰彇褰撳墠鏁版嵁绫诲瀷浼犲叆 鑷畾涔夊彉閲廳atadataType
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //瀛楃涓叉嫾鎺�         // 灏嗗垪鍚嶅拰鏁版嵁绫诲瀷淇℃伅鎷兼帴鎴愪竴涓狫SON鏍煎紡鐨勫瓧绗︿覆
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
 
                 //if (ds.Tables[0].Rows.Count != 0 || ds != null)
                 //{
@@ -62,6 +69,7 @@
                 objJsonResult.count = 1;
                 objJsonResult.Message = "Sucess锛�";
                 objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;//灏哻olumnNameList璧嬪�肩粰objJsonResult鐨刲ist灞炴��
                 return objJsonResult;
                 //}
                 //else
@@ -83,6 +91,7 @@
             }
         }
         #endregion
+
         #region 鍒犻櫎鍔熻兘
         /// <summary>
         ///鍒犻櫎鍔熻兘
@@ -101,6 +110,17 @@
                     objJsonResult.count = 0;
                     objJsonResult.Message = "鏃犳潈闄愬垹闄�!";
                     objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0;
+                DateTime HDate = DateTime.Now;
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.Message = s;
                     return objJsonResult;
                 }
 
@@ -523,6 +543,18 @@
                 }
 
                 ClsPub.CurUserName = user;
+
+                //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0;
+                DateTime HDate = DateTime.Now;
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.Message = s;
+                    return objJsonResult;
+                }
+
                 oCN.BeginTran();//寮�濮嬩簨鍔�
 
                 //Type 1 瀹℃牳  2  鍙嶅鏍�
@@ -864,6 +896,17 @@
 
                 }
 
+                //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0;
+                DateTime HDate = DateTime.Now;
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.Message = s;
+                    return objJsonResult;
+                }
+
                 //淇濆瓨
                 //淇濆瓨瀹屾瘯鍚庡鐞�
                 bool bResult;
@@ -944,5 +987,102 @@
             }
         }
 
+
+        #region [閫�璐ч�氱煡鍗曞悓姝ユ彃浠禲
+        [Route("Xs_SeOutStockBackBill/SaveXs_SeOutStockBackBillApi")]
+        [HttpPost]
+        public object SaveXs_SeOutStockBackBillApi([FromBody] JObject sMainSub)
+        {
+            try
+            {
+                LogService.Write("閫�璐ч�氱煡鍗曞悓姝ワ細" + sMainSub.ToString());
+                var model = sMainSub["model"].ToString();
+                var entry = sMainSub["model"]["HENTRY"].ToString();
+
+                model = "[" + model.ToString() + "]";
+                List<Model.ClsXs_SeOutStockBackBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsXs_SeOutStockBackBillMain>>(model);
+                List<Model.ClsXs_SeOutStockBackBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsXs_SeOutStockBackBillSub>>(entry);
+                string sql = string.Empty;
+
+                oCN.BeginTran();
+                sql = $"delete Xs_SeOutStockBackBillMain where HinterID = {mainList[0].HInterID}";
+                oCN.RunProc(sql);
+                sql = $"delete Xs_SeOutStockBackbillSub where HinterID = {mainList[0].HInterID}";
+                oCN.RunProc(sql);
+                //涓昏〃          
+                sql = "insert into Xs_SeOutStockBackBillMain " +
+                "(HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate," +  
+                "HBillNo,HBillStatus,HCusID,HManagerID,HDeptID,HRemark," +  
+                "HAddress,HSSID,HCurID,HWHID,HExRate,HEmpID,HExplanation,HInnerBillNo," + 
+                "HSALEORGID,HDELIVERYORGID,HOWNERID,HOWNERTYPEID," +  
+                "HMaker,HMakeDate,HChecker,HCheckDate," + 
+                "HUpDater,HUpDateDate,HDeleteMan,HDeleteDate,HERPInterID,HERPBillType," +  
+                "HSETTLECUSID,HPAYCUSID,HRECEIVECUSID,HSALEGROUPID,HHEADLOCID,HRECCONTACTID," + 
+                "HRETURNREASON,HRETDEPTID,HDESCRIPTION,HBUSINESSTYPE" + 
+                ") 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].HCusID + ", " + mainList[0].HManagerID + ", " + mainList[0].HDeptID + ", '" + mainList[0].HRemark + "', " +  
+                "'" + mainList[0].HAddress + "', " + mainList[0].HSSID + ", " + mainList[0].HCurID + ", " + mainList[0].HWHID + ", " + mainList[0].HExRate + ", " + mainList[0].HEmpID + ", '" + mainList[0].HExplanation + "', '" + mainList[0].HInnerBillNo + "'," +
+                " " + mainList[0].HSALEORGID + ", " + mainList[0].HDELIVERYORGID + ", " + mainList[0].HOWNERID + ", '" + mainList[0].HOWNERTYPEID + "', " +  
+                "'" + mainList[0].HMaker + "', '" + mainList[0].HMakeDate + "', '" + mainList[0].HChecker + "', '" + mainList[0].HCheckDate + "', " +  
+                "'" + mainList[0].HUpDater + "', '" + mainList[0].HUpDateDate + "', '" + mainList[0].HDeleteMan + "', '" + mainList[0].HDeleteDate + "', " +mainList[0].HERPInterID + ", '" + mainList[0].HERPBillType + "', " +
+                "" +  mainList[0].HSETTLECUSID + ", " + mainList[0].HPAYCUSID + ", " + mainList[0].HRECEIVECUSID + ", " + mainList[0].HSALEGROUPID + ", " + mainList[0].HHEADLOCID + ", " + mainList[0].HRECCONTACTID + ", " +  
+                "'" + mainList[0].HRETURNREASON + "', " + mainList[0].HRETDEPTID + ", '" + mainList[0].HDESCRIPTION + "', '" + mainList[0].HBUSINESSTYPE + "')";
+                LogService.Write("閫�璐ч�氱煡鍗曚富琛ㄥ悓姝ワ細" + sql);
+                oCN.RunProc(sql);
+                //淇濆瓨瀛愯〃
+                foreach (var oSub in subList)
+                {
+                    sql = $@"insert into Xs_SeOutStockBackbillSub 
+                    (HInterID,HEntryID,HMaterID,HUnitID,HQty,HPrice,
+                     HMoney,HTaxMoney,HTaxPrice,HWHID,HRemark,
+                     HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HSeOrderInterID,HSeOrderEntryID,HSeORderBillNo,
+                     HOWNERID,HOWNERTYPEID,HSETTLEORGID,
+                     HRelationQty,HAuxPropID,HBatchNO,HMTONo,HERPInterID,HERPEntryID,
+                     HSOBILLTYPEID,HRMTYPE,HSTOCKUNITID,HBASEUNITID,HDELIVERYDATE,HDESCRIPTION,
+                     HMAPID,HPARENTMATID,HISRETURNCHECK,HROWTYPE,HROWID,HPARENTROWID,
+                     HTAXCOMBINATION,HPRICEUNITID,HTaxRate,HPRICECOEFFICIENT,HSYSPRICE,HLIMITDOWNPRICE,
+                     HDISCOUNTRATE,HISFREE,HSETTLETYPEID,HCHAGECONDITION,HSETTLECURRID,
+                     HLOCALCURRID,HEXCHANGETYPEID,HISINCLUDEDTAX,HISPRICEEXCLUDETAX,
+                     HTAXRATEID,HTaxRate_TAX,HTAXAMOUNT_TAX,HCOSTPERCENT,HCOSTAMOUNT,
+                     HVAT,HSELLERWITHHOLDING,HBUYERWITHHOLDING,
+                     HEXPUNIT,HEXPPERIOD,HProduceDate,HExpiryDate
+                     ) values ('{oSub.HInterID}', '{oSub.HEntryID}', '{oSub.HMaterID}', '{oSub.HUnitID}', '{oSub.HQty}', '{oSub.HPrice}', 
+                     '{oSub.HMoney}', '{oSub.HTaxMoney}', '{oSub.HTaxPrice}', '{oSub.HWHID}', '{oSub.HRemark}', 
+                     '{oSub.HSourceInterID}', '{oSub.HSourceEntryID}', '{oSub.HSourceBillNo}', '{oSub.HSourceBillType}', '{oSub.HSeOrderInterID}', '{oSub.HSeOrderEntryID}', '{oSub.HSeOrderBillNo}', 
+                     '{oSub.HOWNERID}', '{oSub.HOWNERTYPEID}', '{oSub.HSETTLEORGID}', 
+                     '{oSub.HRelationQty}', '{oSub.HAuxPropID}', '{oSub.HBatchNO}', '{oSub.HMTONo}', '{oSub.HERPInterID}', '{oSub.HERPEntryID}', 
+                     '{oSub.HSOBILLTYPEID}', '{oSub.HRMTYPE}', '{oSub.HSTOCKUNITID}', '{oSub.HBASEUNITID}', '{oSub.HDELIVERYDATE}', '{oSub.HDESCRIPTION}', 
+                     '{oSub.HMAPID}', '{oSub.HPARENTMATID}', '{oSub.HISRETURNCHECK}', '{oSub.HROWTYPE}', '{oSub.HROWID}', '{oSub.HPARENTROWID}', 
+                     '{oSub.HTAXCOMBINATION}', '{oSub.HPRICEUNITID}', '{oSub.HTaxRate}', '{oSub.HPRICECOEFFICIENT}', '{oSub.HSYSPRICE}', '{oSub.HLIMITDOWNPRICE}', 
+                     '{oSub.HDISCOUNTRATE}', '{oSub.HISFREE}', '{oSub.HSETTLETYPEID}', '{oSub.HCHAGECONDITION}', '{oSub.HSETTLECURRID}', 
+                     '{oSub.HLOCALCURRID}', '{oSub.HEXCHANGETYPEID}', '{oSub.HISINCLUDEDTAX}', '{oSub.HISPRICEEXCLUDETAX}', 
+                     '{oSub.HTAXRATEID}', '{oSub.HTaxRate_TAX}', '{oSub.HTAXAMOUNT_TAX}', '{oSub.HCOSTPERCENT}', '{oSub.HCOSTAMOUNT}',
+                     '{oSub.HVAT}', '{oSub.HSELLERWITHHOLDING}', '{oSub.HBUYERWITHHOLDING}',
+                     '{oSub.HEXPUNIT}', '{oSub.HEXPPERIOD}', '{oSub.HProduceDate}', '{oSub.HExpiryDate}')";
+                    LogService.Write("閫�璐ч�氱煡鍗曞瓙琛ㄥ悓姝ワ細" + sql);
+                    oCN.RunProc(sql);
+                }
+                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