修复bug

This commit is contained in:
18942506660
2024-01-02 16:55:21 +08:00
parent 6d30e1d63e
commit 578ff51137
6 changed files with 22 additions and 16 deletions

View File

@@ -2133,7 +2133,7 @@ namespace WMS.Web.Domain.Services.Public
}
}
public async Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(int materialId, string orgCode, string stockCode)> request)
public async Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode)> request)
{
try
{
@@ -2146,15 +2146,16 @@ namespace WMS.Web.Domain.Services.Public
//3.获取金蝶采购订单:拼接参数和条件
var query = new ErpBillQueryDto(token_result.Data);
var param = new ErpBillQueryParamDto(FormIdParam.STK_Inventory.ToString());
param.FieldKeys = "FBASEQTY,FMATERIALID,FSTOCKORGID.FNumber,FSTOCKID.FNumber";
param.FieldKeys = "FBASEQTY,FMATERIALID.FNumber,FSTOCKORGID.FNumber,FSTOCKID.FNumber";
param.Limit = 100;
//param.FilterString = $"FSTOCKORGID.FNumber='{request[0].orgCode}' and FSTOCKID.FNumber='{request[0].stockCode}'";
//param.FilterString = $"FMATERIALID.FNumber='G01-17-556547'";
for (int i = 0; i < request.Count(); i++)
{
if (i == 0)
param.FilterString = $"(FMATERIALID={request[0].materialId} and FSTOCKORGID.FNumber='{request[0].orgCode}' and FSTOCKID.FNumber='{request[0].stockCode}')";
param.FilterString = $"(FMATERIALID.FNumber='{request[0].materialNumber}' and FSTOCKORGID.FNumber='{request[0].orgCode}' and FSTOCKID.FNumber='{request[0].stockCode}')";
else
param.FilterString += $" or (FMATERIALID={request[i].materialId} and FSTOCKORGID.FNumber='{request[i].orgCode}' and FSTOCKID.FNumber='{request[i].stockCode}')";
param.FilterString += $" or (FMATERIALID.FNumber='{request[i].materialNumber}' and FSTOCKORGID.FNumber='{request[i].orgCode}' and FSTOCKID.FNumber='{request[i].stockCode}')";
}
query.Data = JsonConvert.SerializeObject(param);
var json = JsonConvert.SerializeObject(query);
@@ -2167,14 +2168,14 @@ namespace WMS.Web.Domain.Services.Public
foreach (var item in result)
{
var lis = erp_list.FirstOrDefault(f => f.MaterialId == Convert.ToInt32(item[1])
var lis = erp_list.FirstOrDefault(f => f.MaterialNumber.Equals(item[1])
&& f.OrgCode.Equals(item[2])
&& f.StockCode.Equals(item[3]));
if (lis == null)
{
lis.Qty = Convert.ToInt32(item[0]);
lis.MaterialId = Convert.ToInt32(item[1]);
lis.Qty = Convert.ToDecimal(item[0]);
lis.MaterialNumber = item[1];
lis.OrgCode = item[2];
lis.StockCode = item[3];
erp_list.Add(lis);