| | |
| | | using WebAPI.Models; |
| | | using WebAPI.Service; |
| | | using WebAPI.Utility; |
| | | using Kingdee.BOS.WebApi.Client; |
| | | |
| | | namespace WebAPI.Controllers |
| | | { |
| | |
| | | { |
| | | //sCloudModeï¼ç³»ç»åæ° æ¯å¦ä¸ºç§æäºæ¨¡å¼(N为å
¬æäºæ¨¡å¼ï¼Yä¸ºç§æäºæ¨¡å¼)ï¼ |
| | | //sERPModeï¼ç³»ç»åæ° åºåæ§å¶-WMSåºåæ§å¶ERPæ¨¡å¼ (WISEãCLOUDãMES)ï¼ |
| | | //sHTypeï¼å¼ 1 对åºç¼åå表å é¤ï¼å¼ 2 对åºå·²ä¸ä¼ æ¤éï¼ |
| | | //sHTypeï¼å¼ 1 对åºç¼åå表å é¤ï¼å¼ 2 对åºå·²ä¸ä¼ æ¤éï¼å¼ 3 å¯¹åºæ ¡éªæ¨¡åå·²ä¸ä¼ æ¤éï¼ |
| | | |
| | | //å
¬æäºæ¨¡å¼ |
| | | if (sCloudMode == "N") |
| | |
| | | var sJson = new |
| | | { |
| | | FormId = sFormId, |
| | | FieldKeys = "FBillNo", |
| | | FieldKeys = "FBillNo,FAPPROVERID", |
| | | FilterString = $@"FBillNo='{HBillNo}'", |
| | | OrderString = "", |
| | | TopRowCount = 0, |
| | |
| | | } |
| | | } |
| | | //sHType = 2对åºå·²ä¸ä¼ æ¤é |
| | | else |
| | | else if(sHType == 2) |
| | | { |
| | | //夿è¿åçæ°ç»æ°æ®ä¸æ¯å¦åå¨"false"ï¼åå¨ä»£è¡¨éå
¥çä¸å¡å¯¹è±¡è¡¨åId䏿£ç¡® |
| | | if (_saveObj[0][0].ToString().Contains("false") == true) |
| | |
| | | return false; |
| | | } |
| | | } |
| | | //sHType = 3å¯¹åºæ ¡éªæ¨¡åå·²ä¸ä¼ æ¤é |
| | | else if (sHType == 3) |
| | | { |
| | | //夿è¿åçæ°ç»æ°æ®ä¸æ¯å¦åå¨"false"ï¼åå¨ä»£è¡¨éå
¥çä¸å¡å¯¹è±¡è¡¨åId䏿£ç¡® |
| | | if (_saveObj[0][0].ToString().Contains("false") == true) |
| | | { |
| | | sErrMsg = "æ¤æ¨¡åæä¸æ¯ææ¤éåè½ï¼"; |
| | | return false; |
| | | } |
| | | else if (_saveObj[0][1].ToString() != "0") |
| | | { |
| | | sErrMsg = "æ ¡éªæ¤éåæ®å¤±è´¥ï¼åæ®å·ï¼" + HBillNo + "ï¼éè¶äºéå·²å®¡æ ¸ï¼ä¸å
许æ¤éï¼"; |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | return true; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | sErrMsg = "sHTypeå¼éå
¥é误ï¼"; |
| | | return false; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //ç§æäºæ¨¡å¼ |
| | | else |
| | | { |
| | | //sHType = 3 æ«ç æ ¡éªæ¨¡å |
| | | if (sHType == 3) |
| | | { |
| | | ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery_BillCheck " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'", "h_p_WMS_BillQuery_BillCheck"); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sErrMsg = "åæ®æ¥è¯¢åçé误ï¼"; |
| | | return false; |
| | | } |
| | | else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1) |
| | | { |
| | | sErrMsg = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]); |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | return true; |
| | | } |
| | | } |
| | | //sHType = 1 æ sHType = 2 æ«ç æ°å¢æ¨¡å |
| | | else |
| | | { |
| | | ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'," + sHType.ToString(), "h_p_WMS_BillQuery"); |
| | |
| | | else |
| | | { |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | #endregion |
| | | |
| | | //æ¤éå夿éè¶äºä¸åæ®æ¯å¦åå¨ |
| | | if (!GetBillQuery_WMS(HInterID, HBillNo, HBillType, HMaker, oSystemParameter.omodel.WMS_CloudMode, sERPMode, 3, ref sErrMsg)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = sErrMsg; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | try |
| | | { |
| | | oCn.BeginTran(); |
| | |
| | | #endregion |
| | | |
| | | #endregion |
| | | |
| | | #region è°ç¨éè¶webapiæ¥å£åæ¥åºç¡èµææ¹æ³ |
| | | |
| | | #region ç©æåºç¡èµæåæ¥ |
| | | [Route("WEBSController/MaterialDataToLocalByKDWebApi")] |
| | | [HttpGet] |
| | | public object MaterialDataToLocalByKDWebApi(string HDate) |
| | | { |
| | | try |
| | | { |
| | | //访é®éè¶ |
| | | ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl); |
| | | var loginRet = InvokeHelper.Login(); |
| | | var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); |
| | | string HReturn; |
| | | |
| | | if (isSuccess == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "忥åºç¡èµæå¤±è´¥,éè¶è´¦å·ç»å½å¼å¸¸ã" + loginRet; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //è°ç¨åæ®æ¥è¯¢webapi |
| | | string sJson = $"{{\"FormId\":\"BD_MATERIAL\",\"FieldKeys\":\"FMATERIALID,FNumber,FName,FSpecification,FApproveDate,FCreateDate,FDocumentStatus\",\"FilterString\":\"FApproveDate >= '2025-04-01T00:00:00' AND FApproveDate <= '2025-04-30T23:59:59'\",\"Limit\":100,\"StartRow\":0,\"TopRowCount\":0}}"; |
| | | |
| | | var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc", new object[] { "BD_MATERIAL", 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"; |
| | | }; |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢ç©æä¿¡æ¯å¤±è´¥ï¼" + strErrorMsg; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | //ä¸»è¡¨æ°æ®èµå¼ |
| | | var MainData = new |
| | | { |
| | | HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0", |
| | | 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, |
| | | HPURCHASERNumber = _saveObj.SelectToken("Result.Result.PurchaserId.Number")?.ToString() ?? "", |
| | | HMaker = _saveObj.SelectToken("Result.Result.CreatorId.Name")?.ToString() ?? "", |
| | | HChecker = _saveObj.SelectToken("Result.Result.ApproverId.Name")?.ToString() ?? "", |
| | | HUpDater = _saveObj.SelectToken("Result.Result.ModifierId.Name")?.ToString() ?? "", |
| | | HDeleteMan = _saveObj.SelectToken("Result.Result.CancellerId.Name")?.ToString() ?? "", |
| | | HCloseMan = _saveObj.SelectToken("Result.Result.CloserId.Name")?.ToString() ?? "", |
| | | HPURCHASERGROUPNumber = _saveObj.SelectToken("Result.Result.PurchaserGroupId.Number")?.ToString() ?? "", |
| | | HPROVIDERCONTACTNumber = _saveObj.SelectToken("Result.Result.ProviderContactId.CONTACTNUMBER")?.ToString() ?? "", |
| | | HSETTLEMODEID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleModeId_Id")?.ToString() ?? "0", |
| | | HSETTLEMODENumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleModeId.Number")?.ToString() ?? "", |
| | | HSETTLECURRID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleCurrId_Id")?.ToString() ?? "0", |
| | | HSETTLECURRNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleCurrId.Number")?.ToString() ?? "", |
| | | HEXCHANGETYPEID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeTypeId_Id")?.ToString() ?? "0", |
| | | HEXCHANGETYPENumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeTypeId.Number")?.ToString() ?? "", |
| | | HPAYCONDITIONID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].PayConditionId_Id")?.ToString() ?? "0", |
| | | HPAYCONDITIONNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].PayConditionId.Number")?.ToString() ?? "", |
| | | HEXCHANGERATE = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeRate")?.ToString() ?? "0", |
| | | HLOCALCURRID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].LocalCurrId_Id")?.ToString() ?? "0", |
| | | HLOCALCURRNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].LocalCurrId.Number")?.ToString() ?? "", |
| | | HISINCLUDEDTAX = _saveObj.SelectToken("Result.Result.POOrderFinance[0].IsIncludedTax")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HISPRICEEXCLUDETAX = _saveObj.SelectToken("Result.Result.POOrderFinance[0].FISPRICEEXCLUDETAX")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | }; |
| | | |
| | | //æ ¹æ®åæ®å·ãåæ®IDï¼å 餿¬å°æ°æ® |
| | | oCn.RunProc("Delete from Cg_POOrderBillMain where HBillNo='" + MainData.HBillNo + "'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | oCn.RunProc("Delete from Cg_POOrderBillMain where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo); |
| | | oCn.RunProc("Delete from Cg_POOrderBillSub where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | //åè¡¨æ°æ®èµå¼ |
| | | var dataArr = _saveObj.SelectToken("Result.Result.POOrderEntry") 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", |
| | | HTaxPrice = oSub.SelectToken("TaxPrice")?.ToString() ?? "0", |
| | | HDiscountRate = oSub.SelectToken("DiscountRate")?.ToString() ?? "0", |
| | | HMoney = oSub.SelectToken("Amount")?.ToString() ?? "0", |
| | | HTaxRate = oSub.SelectToken("TaxRate")?.ToString() ?? "0", |
| | | HTaxMoney = oSub.SelectToken("TaxAmount")?.ToString() ?? "0", |
| | | HDate = oSub.SelectToken("DeliveryDate")?.ToString() ?? "", |
| | | HRemark = oSub.SelectToken("Note")?.ToString() ?? "", |
| | | HRelationQty = oSub.SelectToken("JOINQTY")?.ToString() ?? "0", |
| | | HBackRelationQty = oSub.SelectToken("STOCKRETQTY")?.ToString() ?? "0", |
| | | HPropertyID = oSub.SelectToken("AuxPropId_Id")?.ToString() ?? "0", |
| | | HBatChNo = oSub.SelectToken("FLot_Text")?.ToString() ?? "", |
| | | HAuxPropID = oSub.SelectToken("AuxPropId_Id")?.ToString() ?? "0", |
| | | HMTONo = oSub.SelectToken("MtoNo")?.ToString() ?? "", |
| | | HERPInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0", |
| | | HERPEntryID = oSub.SelectToken("Id")?.ToString() ?? "0", |
| | | HSEQ = oSub.SelectToken("Seq")?.ToString() ?? "0", |
| | | HRECEIVEDEPTID = oSub.SelectToken("ReceiveDeptId_Id")?.ToString() ?? "0", |
| | | HSUPPLIERLOT = oSub.SelectToken("SupplierLot")?.ToString() ?? "", |
| | | HBOMID = oSub.SelectToken("BomId_Id")?.ToString() ?? "0", |
| | | HBomNumber = oSub.SelectToken("BomId.Number")?.ToString() ?? "", |
| | | HSTOCKUNITID = oSub.SelectToken("StockUnitID_Id")?.ToString() ?? "0", |
| | | HBASEUNITID = oSub.SelectToken("BaseUnitId_Id")?.ToString() ?? "0", |
| | | HBFLOWID = oSub.SelectToken("FBFLowId_Id")?.ToString() ?? "", |
| | | HGIVEAWAY = oSub.SelectToken("GiveAway")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HROWTYPE = oSub.SelectToken("RowType")?.ToString() ?? "", |
| | | HBASEUNITQTY = oSub.SelectToken("BaseUnitQty")?.ToString() ?? "0", |
| | | HSTOCKBASEQTY = oSub.SelectToken("StockBaseQty")?.ToString() ?? "0", |
| | | HREQTRACENO = oSub.SelectToken("ReqTraceNo")?.ToString() ?? "", |
| | | HMATERIALDESC = oSub.SelectToken("MaterialDesc[0].Value")?.ToString() ?? "", |
| | | HRECEIVEORGID = oSub.SelectToken("ReceiveOrgId_Id")?.ToString() ?? "0", |
| | | HREQUIREORGID = oSub.SelectToken("RequireOrgId_Id")?.ToString() ?? "0", |
| | | HTAXNETPRICE = oSub.SelectToken("TaxNetPrice")?.ToString() ?? "0", |
| | | HPRICECOEFFICIENT = oSub.SelectToken("PriceCoefficient")?.ToString() ?? "0", |
| | | HTAXCOMBINATION = oSub.SelectToken("FTaxCombination_Id")?.ToString() ?? "0", |
| | | HTAXCOMBINATIONNumber = oSub.SelectToken("FTaxCombination.Number")?.ToString() ?? "", |
| | | HPRICEUNITID = oSub.SelectToken("PriceUnitId_Id")?.ToString() ?? "0", |
| | | HPRICELISTENTRY = oSub.SelectToken("PriceListEntry_Id")?.ToString() ?? "0", |
| | | HPRICELISTENTRYNumber = oSub.SelectToken("PriceListEntry.Number")?.ToString() ?? "", |
| | | HPAYORGID = oSub.SelectToken("PayOrgId_Id")?.ToString() ?? "0", |
| | | HSETTLEORGID = oSub.SelectToken("SettleOrgId_Id")?.ToString() ?? "0", |
| | | HTaxRate_TAX = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRate")?.ToString() ?? "0", |
| | | HTaxMoney_TAX = oSub.SelectToken("POORDERENTRY_TAX[0].TaxAmount")?.ToString() ?? "0", |
| | | HTAXRATEID = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRateId_Id")?.ToString() ?? "0", |
| | | HTAXRATENumber = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRateId.Number")?.ToString() ?? "", |
| | | HCOSTPERCENT = oSub.SelectToken("POORDERENTRY_TAX[0].CostPercent")?.ToString() ?? "0", |
| | | HCOSTAMOUNT = oSub.SelectToken("POORDERENTRY_TAX[0].CostAmount")?.ToString() ?? "0", |
| | | HVAT = oSub.SelectToken("POORDERENTRY_TAX[0].VAT")?.ToString() ?? "", |
| | | HSELLERWITHHOLDING = oSub.SelectToken("POORDERENTRY_TAX[0].SellerWithholding")?.ToString() ?? "", |
| | | HBUYERWITHHOLDING = oSub.SelectToken("POORDERENTRY_TAX[0].BuyerWithholding")?.ToString() ?? "", |
| | | }; |
| | | |
| | | } |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "æå"; |
| | | objJsonResult.data = WebSoBar; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "åæ®æ¥è¯¢ç©æä¿¡æ¯åçå¼å¸¸ï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #endregion |
| | | } |
| | | } |