From 599aeb0d380f9b194e1dc363364779f3b498969e Mon Sep 17 00:00:00 2001
From: llj <132905093+newwwwwwtree@users.noreply.github.com>
Date: 星期四, 30 四月 2026 10:58:03 +0800
Subject: [PATCH] 1
---
WebAPI/Controllers/条码管理/WEBSController.cs | 262 +++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 249 insertions(+), 13 deletions(-)
diff --git "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs" "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs"
index 1760065..6f1d5d5 100644
--- "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs"
+++ "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs"
@@ -17,6 +17,7 @@
using WebAPI.Models;
using WebAPI.Service;
using WebAPI.Utility;
+using Kingdee.BOS.WebApi.Client;
namespace WebAPI.Controllers
{
@@ -2600,7 +2601,7 @@
{
//sCloudMode锛氱郴缁熷弬鏁� 鏄惁涓虹鏈変簯妯″紡(N涓哄叕鏈変簯妯″紡锛孻涓虹鏈変簯妯″紡)锛�
//sERPMode锛氱郴缁熷弬鏁� 搴撳瓨鎺у埗-WMS搴撳瓨鎺у埗ERP妯″紡 (WISE銆丆LOUD銆丮ES)锛�
- //sHType锛氬�� 1 瀵瑰簲缂撳瓨鍒楄〃鍒犻櫎锛涘�� 2 瀵瑰簲宸蹭笂浼犳挙閿�锛�
+ //sHType锛氬�� 1 瀵瑰簲缂撳瓨鍒楄〃鍒犻櫎锛涘�� 2 瀵瑰簲宸蹭笂浼犳挙閿�锛涘�� 3 瀵瑰簲鏍¢獙妯″潡宸蹭笂浼犳挙閿�锛�
//鍏湁浜戞ā寮�
if (sCloudMode == "N")
@@ -2738,7 +2739,7 @@
var sJson = new
{
FormId = sFormId,
- FieldKeys = "FBillNo",
+ FieldKeys = "FBillNo,FAPPROVERID",
FilterString = $@"FBillNo='{HBillNo}'",
OrderString = "",
TopRowCount = 0,
@@ -2770,7 +2771,7 @@
}
}
//sHType = 2瀵瑰簲宸蹭笂浼犳挙閿�
- else
+ else if(sHType == 2)
{
//鍒ゆ柇杩斿洖鐨勬暟缁勬暟鎹腑鏄惁瀛樺湪"false"锛屽瓨鍦ㄤ唬琛ㄩ�掑叆鐨勪笟鍔″璞¤〃鍗旾d涓嶆纭�
if (_saveObj[0][0].ToString().Contains("false") == true)
@@ -2784,26 +2785,73 @@
return false;
}
}
+ //sHType = 3瀵瑰簲鏍¢獙妯″潡宸蹭笂浼犳挙閿�
+ else if (sHType == 3)
+ {
+ //鍒ゆ柇杩斿洖鐨勬暟缁勬暟鎹腑鏄惁瀛樺湪"false"锛屽瓨鍦ㄤ唬琛ㄩ�掑叆鐨勪笟鍔″璞¤〃鍗旾d涓嶆纭�
+ 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
{
- ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'," + sHType.ToString(), "h_p_WMS_BillQuery");
- if (ds == null || ds.Tables[0].Rows.Count == 0)
+ //sHType = 3 鎵爜鏍¢獙妯″潡
+ if (sHType == 3)
{
- sErrMsg = "鍗曟嵁鏌ヨ鍙戠敓閿欒锛�";
- return false;
+ 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;
+ }
}
- else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
- {
- sErrMsg = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
- return false;
- }
+ //sHType = 1 鎴� sHType = 2 鎵爜鏂板妯″潡
else
{
- return true;
+ ds = oCn.RunProcReturn("exec h_p_WMS_BillQuery " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + sERPMode + "'," + sHType.ToString(), "h_p_WMS_BillQuery");
+ 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;
+ }
}
}
}
@@ -9456,6 +9504,16 @@
}
#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();
@@ -15521,5 +15579,183 @@
#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,
+ };
+
+ //鏍规嵁鍗曟嵁鍙枫�佸崟鎹甀D锛屽垹闄ゆ湰鍦版暟鎹�
+ 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
}
}
--
Gitblit v1.9.1