From 9b60cc31382cda6f5448039e79769c35948cfe68 Mon Sep 17 00:00:00 2001
From: yxj <yxj@hz-kingdee.com>
Date: 星期四, 16 十月 2025 09:13:24 +0800
Subject: [PATCH] 销售出库扫描源单调用方法修改,增加通过WEBAPI同步金蝶云发货通知单至本地数据库功能

---
 CLOUDWEB/WebService1.asmx.cs |  303 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 303 insertions(+), 0 deletions(-)

diff --git a/CLOUDWEB/WebService1.asmx.cs b/CLOUDWEB/WebService1.asmx.cs
index 7de0423..35cc223 100644
--- a/CLOUDWEB/WebService1.asmx.cs
+++ b/CLOUDWEB/WebService1.asmx.cs
@@ -299,6 +299,279 @@
 
         #endregion
 
+        #region 鍙戣揣閫氱煡鍗曞悓姝�     鏍规嵁鍗曟嵁鍙峰悓姝�
+
+        [WebMethod]
+        public bool GetWebAPIToLocal_SeOutStock(string HBillNo, string HBillType, string HMaker, ref string sErrMsg)
+        {
+            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+            //浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
+            if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
+            {
+                sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
+                return false;
+            }
+
+            //鑾峰彇CLOUD璐﹀彿瀵嗙爜
+            string HReturn;
+            string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName;
+            string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd;
+            string dbId = Pub_Class.ClsPub.sCLOUDAcc;
+            ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
+            bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052);
+
+            if (bLogin)
+            {
+                //鏌ョ湅鍗曟嵁
+                string sJson = "{\"CreateOrgId\":0,\"Number\":\"" + HBillNo + "\"}";
+                var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View",
+                new object[] { "SAL_DELIVERYNOTICE", sJson });
+                var _saveObj = JObject.Parse(result);
+
+                //鍒ゆ柇鏁版嵁鏄惁鑾峰彇鎴愬姛
+                if (_saveObj.SelectToken("Result.ResponseStatus.IsSuccess")?.ToString().ToUpper() != "TRUE")
+                {
+                    HReturn = result.ToString();
+                    //鍙嶅簭鍒楀寲json鏁版嵁
+                    var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+                    //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+                    var strErrorMsg = string.Empty;
+                    //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+                    foreach (var item in retModel.Result.ResponseStatus.Errors)
+                    {
+                        strErrorMsg += item.Message + "\r\n";
+                    };
+                    sErrMsg = "鍚屾鍗曟嵁澶辫触锛�" + strErrorMsg;
+                    return false;
+                }
+                else
+                {
+                    //涓昏〃鏁版嵁璧嬪��
+                    var MainData = new
+                    {
+                        HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
+                        HYear = DateTime.Now.Year,
+                        HPeriod = DateTime.Now.Month,
+                        HBillType = HBillType,
+                        HBillSubType = HBillType,
+                        HDate = _saveObj.SelectToken("Result.Result.Date")?.ToString(),
+                        HBillNo = _saveObj.SelectToken("Result.Result.BillNo")?.ToString() ?? "",
+                        HBillStatus = _saveObj.SelectToken("Result.Result.ApproverID_Id")?.ToString() == "0" ? 1 : 2,
+                        HCusID = _saveObj.SelectToken("Result.Result.CustomerID_Id")?.ToString() ?? "0",
+                        HManagerID = _saveObj.SelectToken("Result.Result.StockerID_Id")?.ToString() ?? "0",
+                        HSTOCKERNumber = _saveObj.SelectToken("Result.Result.Stocker.Number")?.ToString() ?? "0",
+                        HDeptID = _saveObj.SelectToken("Result.Result.DeliveryDeptID_Id")?.ToString() ?? "0",
+                        HRemark = _saveObj.SelectToken("Result.Result.Note")?.ToString() ?? "",
+                        HAddress = _saveObj.SelectToken("Result.Result.ReceiveAddress")?.ToString() ?? "",
+                        HSSID = 0,
+                        HCurID = 0,
+                        HWHID = 0,
+                        HExRate = 1,
+                        HEmpID = _saveObj.SelectToken("Result.Result.SalesManID_Id")?.ToString() ?? "0",
+                        HSALESMANNumber = _saveObj.SelectToken("Result.Result.SalesManID.Number")?.ToString() ?? "",
+                        HExplanation = "WebAPI瀵煎叆",
+                        HInnerBillNo = "",
+                        HSALEORGID = _saveObj.SelectToken("Result.Result.SaleOrgId_Id")?.ToString() ?? "0",
+                        HDELIVERYORGID = _saveObj.SelectToken("Result.Result.DeliveryOrgID_Id")?.ToString() ?? "0",
+                        HOWNERID = _saveObj.SelectToken("Result.Result.OwnerIdHead_Id")?.ToString() ?? "0",
+                        HOWNERTYPEID = _saveObj.SelectToken("Result.Result.OwnerTypeIdHead")?.ToString() ?? "",
+                        HERPInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
+                        HERPBillType = _saveObj.SelectToken("Result.Result.BillTypeID_Id")?.ToString() ?? "",
+                        HMaker = _saveObj.SelectToken("Result.Result.CreatorId.Name")?.ToString() ?? "",
+                        HMakeDate = _saveObj.SelectToken("Result.Result.CreateDate")?.ToString(),
+                        HChecker = _saveObj.SelectToken("Result.Result.ApproverID.Name")?.ToString() ?? "",
+                        HCheckDate = _saveObj.SelectToken("Result.Result.ApproveDate")?.ToString(),
+                        HUpDater = _saveObj.SelectToken("Result.Result.ModifierId.Name")?.ToString() ?? "",
+                        HUpDateDate = _saveObj.SelectToken("Result.Result.ModifyDate")?.ToString(),
+                        HDeleteMan = _saveObj.SelectToken("Result.Result.CancellerID.Name")?.ToString() ?? "",
+                        HDeleteDate = _saveObj.SelectToken("Result.Result.CancelDate")?.ToString(),
+                        HCloseMan = _saveObj.SelectToken("Result.Result.CLOSERID.Name")?.ToString() ?? "",
+                        HCloseDate = _saveObj.SelectToken("Result.Result.CLOSEDATE")?.ToString(),
+                        HCloseType = _saveObj.SelectToken("Result.Result.CLOSESTATUS")?.ToString() == "A" ? 0 : 1,
+                        HSTOCKERGROUPID = _saveObj.SelectToken("Result.Result.StockerGroupID_Id")?.ToString() ?? "0",
+                        HSTOCKERGROUPNumber = _saveObj.SelectToken("Result.Result.StockerGroupID.Number")?.ToString() ?? "",
+                        HSALEGROUPID = _saveObj.SelectToken("Result.Result.SaleGroupID_Id")?.ToString() ?? "0",
+                        HSALEGROUPNumber = _saveObj.SelectToken("Result.Result.SaleGroupID.Number")?.ToString() ?? "",
+                        HSALEDEPTID = _saveObj.SelectToken("Result.Result.SaleDeptID_Id")?.ToString() ?? "0",
+                        HBUSINESSTYPE = _saveObj.SelectToken("Result.Result.BussinessType")?.ToString() ?? "",
+                        HCARRIERID = _saveObj.SelectToken("Result.Result.CarrierID_Id")?.ToString() ?? "0",
+                        HRECEIVERID = _saveObj.SelectToken("Result.Result.ReceiverID_Id")?.ToString() ?? "0",
+                        HSETTLEID = _saveObj.SelectToken("Result.Result.SettleID_Id")?.ToString() ?? "0",
+                        HPAYERID = _saveObj.SelectToken("Result.Result.PayerID_Id")?.ToString() ?? "0",
+                        HHEADLOCID = _saveObj.SelectToken("Result.Result.HeadLocId_Id")?.ToString() ?? "0",
+                        HHEADLOCNumber = _saveObj.SelectToken("Result.Result.HeadLocId.Number")?.ToString() ?? "",
+                        HRECCONTACTID = _saveObj.SelectToken("Result.Result.ReceiverContactID_Id")?.ToString() ?? "0",
+                        HRECCONTACTNumber = _saveObj.SelectToken("Result.Result.ReceiverContactID.Number")?.ToString() ?? "",
+                        HRECCONTACTName = _saveObj.SelectToken("Result.Result.ReceiverContactID.Name[0].Value")?.ToString() ?? "",
+                        HRECEIPTCONDITIONID = _saveObj.SelectToken("Result.Result.FRECEIPTCONDITIONID_Id")?.ToString() ?? "0",
+                        HRECEIPTCONDITIONNumber = _saveObj.SelectToken("Result.Result.FRECEIPTCONDITIONID.Number")?.ToString() ?? "",
+                        HCORRESPONDORGID = _saveObj.SelectToken("Result.Result.CorrespondOrgId_Id")?.ToString() ?? "0",
+                        HCARRIAGENO = _saveObj.SelectToken("Result.Result.CarriageNO")?.ToString() ?? "",
+                        HSETTLEORGID = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].SettleOrgID_Id")?.ToString() ?? "0",
+                        HLOCALCURRID = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].LocalCurrID_Id")?.ToString() ?? "0",
+                        HLOCALCURRNumber = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].LocalCurrID.Number")?.ToString() ?? "",
+                        HSETTLECURRID = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].SettleCurrID_Id")?.ToString() ?? "0",
+                        HSETTLECURRNumber = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].SettleCurrID.Number")?.ToString() ?? "",
+                        HEXCHANGETYPEID = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].ExchangeTypeID_Id")?.ToString() ?? "0",
+                        HEXCHANGETYPENumber = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].ExchangeTypeID.Number")?.ToString() ?? "",
+                        HSETTLETYPEID = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].SettleTypeID_Id")?.ToString() ?? "0",
+                        HSETTLETYPENumber = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].SettleTypeID.Number")?.ToString() ?? "",
+                        HEXCHANGERATE = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].ExchangeRate")?.ToString() ?? "0",
+                        HISINCLUDEDTAX = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].IsIncludedTax")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                        HISPRICEEXCLUDETAX = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEFIN[0].IsPriceExcludeTax")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                    };
+
+                    //鏍规嵁鍗曟嵁ID锛屽垹闄ゆ湰鍦版暟鎹�
+                    oCn.RunProc("Delete from Xs_SeOutStockbillMain where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCn.RunProc("Delete from Xs_SeOutStockbillSub where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo);
+
+                    //鎻掑叆涓昏〃
+                    oCn.RunProc("Insert Into Xs_SeOutStockbillMain " +
+                    "(HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate" +
+                    ",HBillNo,HBillStatus" +
+                    ",HCusID,HManagerID,HDeptID,HRemark,HAddress,HSSID" +
+                    ",HCurID,HWHID,HExRate,HEmpID,HExplanation,HInnerBillNo" +
+                    ",HSALEORGID,HDELIVERYORGID,HOWNERID,HOWNERTYPEID,HERPInterID,HERPBillType" +
+                    ",HMaker,HMakeDate,HChecker,HCheckDate" +
+                    ",HUpDater,HUpDateDate,HDeleteMan,HDeleteDate" +
+                    ",HCloseMan,HCloseDate,HCloseType" +
+                    ",HSTOCKERGROUPID,HSTOCKERGROUPNumber,HSALEGROUPID,HSALEGROUPNumber,HSALEDEPTID,HBUSINESSTYPE" +
+                    ",HCARRIERID,HRECEIVERID,HSETTLEID,HPAYERID,HHEADLOCID,HHEADLOCNumber" +
+                    ",HRECCONTACTID,HRECCONTACTNumber,HRECCONTACTName,HRECEIPTCONDITIONID,HRECEIPTCONDITIONNumber,HCORRESPONDORGID" +
+                    ",HCARRIAGENO,HSTOCKERNumber,HSALESMANNumber,HLOCALCURRNumber,HSETTLECURRNumber,HEXCHANGETYPENumber" +
+                    ",HSETTLETYPENumber" +
+                    ") " +
+                    " values(" + MainData.HInterID.ToString() + "," + MainData.HYear.ToString() + "," + MainData.HPeriod.ToString() + ",'" + MainData.HBillType + "','" + MainData.HBillSubType + "','" + MainData.HDate + "'" +
+                    ",'" + MainData.HBillNo + "'," + MainData.HBillStatus.ToString() +
+                    ", " + MainData.HCusID.ToString() + "," + MainData.HManagerID.ToString() + "," + MainData.HDeptID.ToString() + ",'" + MainData.HRemark + "','" + MainData.HAddress + "'," + MainData.HSSID.ToString() +
+                    ", " + MainData.HCurID.ToString() + "," + MainData.HWHID.ToString() + "," + MainData.HExRate.ToString() + "," + MainData.HEmpID.ToString() + ",'" + MainData.HExplanation + "','" + MainData.HInnerBillNo + "'" +
+                    ", " + MainData.HSALEORGID.ToString() + "," + MainData.HDELIVERYORGID.ToString() + "," + MainData.HOWNERID.ToString() + ",'" + MainData.HOWNERTYPEID + "'," + MainData.HERPInterID.ToString() + ",'" + MainData.HERPBillType + "'" +
+                    ",'" + MainData.HMaker + "','" + MainData.HMakeDate + "','" + MainData.HChecker + "'," + (MainData.HCheckDate == "" ? "NULL" : "'" + MainData.HCheckDate + "'") +
+                    ",'" + MainData.HUpDater + "'," + (MainData.HUpDateDate == "" ? "NULL" : "'" + MainData.HUpDateDate + "'") + ",'" + MainData.HDeleteMan + "'," + (MainData.HDeleteDate == "" ? "NULL" : "'" + MainData.HDeleteDate + "'") +
+                    ",'" + MainData.HCloseMan + "'," + (MainData.HCloseDate == "" ? "NULL" : "'" + MainData.HCloseDate + "'") + "," + DBUtility.ClsPub.BoolToString(MainData.HCloseType) +
+                    ", " + MainData.HSTOCKERGROUPID.ToString() + ",'" + MainData.HSTOCKERGROUPNumber + "'," + MainData.HSALEGROUPID.ToString() + ",'" + MainData.HSALEGROUPNumber + "'," + MainData.HSALEDEPTID.ToString() + ",'" + MainData.HBUSINESSTYPE + "'" +
+                    ", " + MainData.HCARRIERID.ToString() + "," + MainData.HRECEIVERID.ToString() + "," + MainData.HSETTLEID.ToString() + "," + MainData.HPAYERID.ToString() + "," + MainData.HHEADLOCID.ToString() + ",'" + MainData.HHEADLOCNumber + "'" +
+                    ", " + MainData.HRECCONTACTID.ToString() + ",'" + MainData.HRECCONTACTNumber + "','" + MainData.HRECCONTACTName + "'," + MainData.HRECEIPTCONDITIONID.ToString() + ",'" + MainData.HRECEIPTCONDITIONNumber + "'," + MainData.HCORRESPONDORGID.ToString() +
+                    ",'" + MainData.HCARRIAGENO + "','" + MainData.HSTOCKERNumber + "','" + MainData.HSALESMANNumber + "','" + MainData.HLOCALCURRNumber + "','" + MainData.HSETTLECURRNumber + "','" + MainData.HEXCHANGETYPENumber + "'" +
+                    ",'" + MainData.HSETTLETYPENumber + "'" +
+                    ") ");
+
+                    //瀛愯〃鏁版嵁璧嬪��
+                    var dataArr = _saveObj.SelectToken("Result.Result.SAL_DELIVERYNOTICEENTRY") as JArray;
+
+                    if (dataArr != null)
+                    {
+                        foreach (var oSub in dataArr)
+                        {
+                            var SubData = new
+                            {
+                                HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
+                                HEntryID = oSub.SelectToken("Id")?.ToString() ?? "0",
+                                HMaterID = oSub.SelectToken("MaterialID_Id")?.ToString() ?? "0",
+                                HUnitID = oSub.SelectToken("UnitID_Id")?.ToString() ?? "0",
+                                HQty = oSub.SelectToken("Qty")?.ToString() ?? "0",
+                                HPrice = oSub.SelectToken("Price")?.ToString() ?? "0",
+                                HMoney = 0,
+                                HWHID = oSub.SelectToken("StockID_Id")?.ToString() ?? "0",
+                                HSPID = oSub.SelectToken("StockLocID_Id")?.ToString() ?? "0",
+                                HRemark = oSub.SelectToken("NoteEntry")?.ToString() ?? "",
+                                HSourceInterID = oSub.SelectToken("FEntity_Link[0].SBillId")?.ToString() ?? "0",
+                                HSourceEntryID = oSub.SelectToken("FEntity_Link[0].SId")?.ToString() ?? "0",
+                                HSourceBillNo = oSub.SelectToken("SrcBillNo")?.ToString() ?? "",
+                                HSourceBillType = oSub.SelectToken("SrcType")?.ToString() ?? "",
+                                HSeOrderInterID = 0,
+                                HSeOrderEntryID = oSub.SelectToken("SOEntryId")?.ToString() ?? "0",
+                                HSeORderBillNo = oSub.SelectToken("OrderNo")?.ToString() ?? "",
+                                HProduceDate = oSub.SelectToken("PRODUCEDATE")?.ToString(),
+                                HExpiryDate = oSub.SelectToken("FEXPIRYDATE")?.ToString(),
+                                HOWNERID = oSub.SelectToken("OwnerID_Id")?.ToString() ?? "0",
+                                HOWNERTYPEID = oSub.SelectToken("OwnerTypeID")?.ToString() ?? "",
+                                HMoveStockQty = oSub.SelectToken("StockBaseTransQty")?.ToString() ?? "0",
+                                HRelationQty = oSub.SelectToken("StockBaseJoinOutQty")?.ToString() ?? "0",
+                                HAuxPropID = oSub.SelectToken("AuxpropID_Id")?.ToString() ?? "0",
+                                HBatchNO = oSub.SelectToken("Lot_Text")?.ToString() ?? "",
+                                HMTONo = oSub.SelectToken("MTONO")?.ToString() ?? "",
+                                HERPInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0",
+                                HERPEntryID = oSub.SelectToken("Id")?.ToString() ?? "0",
+                                HCUSTMATID = oSub.SelectToken("CustMatID_Id")?.ToString() ?? "",
+                                HCUSTMATNumber = oSub.SelectToken("CustMatID.Number")?.ToString() ?? "",
+                                HBASEUNITID = oSub.SelectToken("BaseUnitID_Id")?.ToString() ?? "0",
+                                HBFLOWID = oSub.SelectToken("FBFLowId_Id")?.ToString() ?? "",
+                                HOUTCONTROL = oSub.SelectToken("OutContROL")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                                HSTOCKUNITID = oSub.SelectToken("StockUnitID_Id")?.ToString() ?? "0",
+                                HROWTYPE = oSub.SelectToken("RowType")?.ToString() ?? "",
+                                HROWID = oSub.SelectToken("RowId")?.ToString() ?? "",
+                                HPARENTROWID = oSub.SelectToken("ParentRowId")?.ToString() ?? "",
+                                HPARENTMATID = oSub.SelectToken("ParentMatId_Id")?.ToString() ?? "0",
+                                HTAXCOMBINATION = oSub.SelectToken("TaxCombination_Id")?.ToString() ?? "0",
+                                HTAXCOMBINATIONNumber = oSub.SelectToken("TaxCombination.Number")?.ToString() ?? "",
+                                HPRICECOEFFICIENT = oSub.SelectToken("PriceCoefficient")?.ToString() ?? "0",
+                                HSYSPRICE = oSub.SelectToken("SysPrice")?.ToString() ?? "0",
+                                HLIMITDOWNPRICE = oSub.SelectToken("LimitDownPrice")?.ToString() ?? "0",
+                                HPRICEUNITID = oSub.SelectToken("PriceUnitId_Id")?.ToString() ?? "0",
+                                HTAXPRICE = oSub.SelectToken("TaxPrice")?.ToString() ?? "0",
+                                HTAXRATE = oSub.SelectToken("TaxRate")?.ToString() ?? "0",
+                                HTAXNETPRICE = oSub.SelectToken("TaxNetPrice")?.ToString() ?? "0",
+                                HDISCOUNTRATE = oSub.SelectToken("DiscountRate")?.ToString() ?? "0",
+                                HISFREE = oSub.SelectToken("IsFree")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                                HTAXRATEID = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].TaxRateId_Id")?.ToString() ?? "0",
+                                HTAXRATENumber = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].TaxRateId.Number")?.ToString() ?? "",
+                                HTaxRate_TAX = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].TaxRate")?.ToString() ?? "0",
+                                HCOSTPERCENT = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].CostPercent")?.ToString() ?? "0",
+                                HVAT = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].VAT")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                                HSELLERWITHHOLDING = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].SellerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                                HBUYERWITHHOLDING = oSub.SelectToken("SAL_DELIVERYNOTICEENTRYTAX[0].BuyerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0,
+                            };
+
+                            //鎻掑叆瀛愯〃
+                            oCn.RunProc("Insert Into Xs_SeOutStockbillSub " +
+                            "(HInterID,HEntryID,HMaterID,HUnitID,HQty" +
+                            ",HPrice,HMoney,HWHID,HSPID,HRemark" +
+                            ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" +
+                            ",HSeOrderInterID,HSeOrderEntryID,HSeORderBillNo" +
+                            ",HProduceDate,HExpiryDate" +
+                            ",HOWNERID,HOWNERTYPEID,HSETTLEORGID,HMoveStockQty,HRelationQty" +
+                            ",HAuxPropID,HBatchNO,HMTONo,HERPInterID,HERPEntryID" +
+                            ",HCUSTMATID,HCUSTMATNumber,HBASEUNITID,HBFLOWID,HOUTCONTROL" +
+                            ",HSTOCKUNITID,HROWTYPE,HROWID,HPARENTROWID,HPARENTMATID" +
+                            ",HTAXCOMBINATION,HTAXCOMBINATIONNumber,HPRICECOEFFICIENT,HSYSPRICE,HLIMITDOWNPRICE" +
+                            ",HPRICEUNITID,HTAXPRICE,HTAXRATE,HTAXNETPRICE,HDISCOUNTRATE" +
+                            ",HISFREE,HLOCALCURRID,HSETTLECURRID,HEXCHANGETYPEID,HSETTLETYPEID" +
+                            ",HRECEIPTCONDITIONID,HEXCHANGERATE,HISINCLUDEDTAX,HISPRICEEXCLUDETAX,HTAXRATEID" +
+                            ",HTAXRATENumber,HTaxRate_TAX,HCOSTPERCENT,HVAT,HSELLERWITHHOLDING" +
+                            ",HBUYERWITHHOLDING" +
+                            ") " +
+                            " values(" + SubData.HInterID.ToString() + "," + SubData.HEntryID.ToString() + "," + SubData.HMaterID.ToString() + "," + SubData.HUnitID.ToString() + "," + SubData.HQty.ToString() +
+                            ", " + SubData.HPrice.ToString() + "," + SubData.HMoney.ToString() + "," + SubData.HWHID.ToString() + "," + SubData.HSPID.ToString() + ",'" + SubData.HRemark + "'" +
+                            ", " + SubData.HSourceInterID.ToString() + "," + SubData.HSourceEntryID.ToString() + ",'" + SubData.HSourceBillNo + "','" + SubData.HSourceBillType + "'" +
+                            ", " + SubData.HSeOrderInterID.ToString() + "," + SubData.HSeOrderEntryID.ToString() + ",'" + SubData.HSeORderBillNo + "'" +
+                            ", " + (SubData.HProduceDate == "" ? "NULL" : "'" + SubData.HProduceDate + "'") + "," + (SubData.HExpiryDate == "" ? "NULL" : "'" + SubData.HExpiryDate + "'") +
+                            ", " + SubData.HOWNERID.ToString() + ",'" + SubData.HOWNERTYPEID + "'," + MainData.HSETTLEORGID.ToString() + "," + SubData.HMoveStockQty.ToString() + "," + SubData.HRelationQty.ToString() +
+                            ", " + SubData.HAuxPropID.ToString() + ",'" + SubData.HBatchNO + "','" + SubData.HMTONo + "'," + SubData.HERPInterID.ToString() + "," + SubData.HERPEntryID.ToString() +
+                            ",'" + SubData.HCUSTMATID + "','" + SubData.HCUSTMATNumber + "'," + SubData.HBASEUNITID.ToString() + ",'" + SubData.HBFLOWID + "'," + DBUtility.ClsPub.BoolToString(SubData.HOUTCONTROL) +
+                            ", " + SubData.HSTOCKUNITID.ToString() + ",'" + SubData.HROWTYPE + "','" + SubData.HROWID + "','" + SubData.HPARENTROWID + "'," + SubData.HPARENTMATID.ToString() +
+                            ", " + SubData.HTAXCOMBINATION.ToString() + ",'" + SubData.HTAXCOMBINATIONNumber + "'," + SubData.HPRICECOEFFICIENT.ToString() + "," + SubData.HSYSPRICE.ToString() + "," + SubData.HLIMITDOWNPRICE.ToString() +
+                            ", " + SubData.HPRICEUNITID.ToString() + "," + SubData.HTAXPRICE.ToString() + "," + SubData.HTAXRATE.ToString() + "," + SubData.HTAXNETPRICE.ToString() + "," + SubData.HDISCOUNTRATE.ToString() +
+                            ", " + DBUtility.ClsPub.BoolToString(SubData.HISFREE) + "," + MainData.HLOCALCURRID.ToString() + "," + MainData.HSETTLECURRID.ToString() + "," + MainData.HEXCHANGETYPEID.ToString() + "," + MainData.HSETTLETYPEID.ToString() +
+                            ", " + MainData.HRECEIPTCONDITIONID.ToString() + "," + MainData.HEXCHANGERATE.ToString() + "," + DBUtility.ClsPub.BoolToString(MainData.HISINCLUDEDTAX) + "," + DBUtility.ClsPub.BoolToString(MainData.HISPRICEEXCLUDETAX) + "," + SubData.HTAXRATEID.ToString() +
+                            ",'" + SubData.HTAXRATENumber + "'," + SubData.HTaxRate_TAX.ToString() + "," + SubData.HCOSTPERCENT.ToString() + "," + DBUtility.ClsPub.BoolToString(SubData.HVAT) + "," + DBUtility.ClsPub.BoolToString(SubData.HSELLERWITHHOLDING) +
+                            ", " + DBUtility.ClsPub.BoolToString(SubData.HBUYERWITHHOLDING) +
+                            ") ");
+                        }
+                    }
+                    return true;
+                }
+            }
+            else
+            {
+                sErrMsg = "鍚屾鍗曟嵁澶辫触锛侀噾铦朵簯鐧诲綍澶辫触锛�";
+                return false;
+            }
+        }
+
+        #endregion
+
         #region 閲囪喘鍏ュ簱鍗曞悓姝�     鏍规嵁鍗曟嵁鍙峰悓姝�
 
         [WebMethod]
@@ -55912,6 +56185,7 @@
             SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
             Model.ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS();
             Int64 sMulSourceFlag = 0;   //澶氭簮鍗曟爣蹇楋紙0涓洪潪澶氭簮鍗曟ā寮忥紝1涓哄婧愬崟妯″紡锛�
+            Int64 sHSourceFlag = 1;     //鏄惁閲嶆柊鍚屾婧愬崟淇℃伅锛�1涓哄悓姝ワ紝0涓轰笉鍚屾锛�
 
             //鑾峰彇绯荤粺鍙傛暟
             Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
@@ -55924,6 +56198,35 @@
             if (oSystemParameter.omodel.Kf_SellOutBill_MulSourceBill.ToUpper() == "Y") //绯荤粺鍙傛暟  閿�鍞嚭搴撳崟-澶氭簮鍗曟ā寮�
             {
                 sMulSourceFlag = 1;
+
+                //鍒ゆ柇婧愬崟鏄惁宸插瓨鍦ㄧ紦瀛樺垪琛ㄤ腑
+                DataSet dsSource = oCn.RunProcReturn(" select 1 from KF_PonderationBillMain_Temp with(nolock) where HInterID= " + HInterID.ToString() + " and HBillType= '" + HBillType + "' and HSourceBillNo= '" + HSourceBillNo + "' and HQtyMust<>0 ", "KF_PonderationBillMain_Temp");
+                if (dsSource == null || dsSource.Tables[0].Rows.Count == 0)
+                {
+                    sHSourceFlag = 1;
+                }
+                else
+                {
+                    sHSourceFlag = 0;
+                }
+            }
+
+            //閲嶆柊鍚屾婧愬崟淇℃伅
+            if (sHSourceFlag == 1)
+            {
+                if (oSystemParameter.omodel.WMS_CloudMode.ToUpper() == "N") //绯荤粺鍙傛暟  鏄惁涓虹鏈変簯妯″紡(N涓哄叕鏈変簯妯″紡锛孻涓虹鏈変簯妯″紡)
+                {
+                    if (HSourceBillType == "1402")
+                    {
+                        //鍙戣揣閫氱煡鍗�
+                        GetWebAPIToLocal_SeOutStock(HSourceBillNo, HSourceBillType, HMaker, ref sErrMsg);
+                    }
+                }
+                else
+                {
+                    //绉佹湁浜戞ā寮�
+                    oCn.RunProc("exec h_p_WMS_ERPSourceBillToLocal '" + HSourceBillNo + "','" + HSourceBillType + "'");
+                }
             }
 
             //灏嗘簮鍗曚俊鎭瓨鍏ユ潯鐮佸嚭鍏ュ簱涓存椂琛�

--
Gitblit v1.9.1