修改了同步领料出库

This commit is contained in:
2025-07-02 14:28:05 +08:00
parent 8f7e3d3160
commit 3691cda997
3 changed files with 33 additions and 15 deletions

View File

@@ -2103,7 +2103,13 @@ namespace WMS.Web.Domain.Services.Public
}
}
/// <summary>
/// 领料出库单
/// </summary>
/// <param name="sourceBillNos"></param>
/// <param name="beginTime"></param>
/// <param name="isCheck"></param>
/// <returns></returns>
public async Task<ResultList<ErpDeliveryNoticeOutStockResultDto>> BillQueryForPickingOutStock(List<string> sourceBillNos = null, DateTime? beginTime = null, bool isCheck = true)
{
string result_json = "";
@@ -2130,7 +2136,7 @@ namespace WMS.Web.Domain.Services.Public
//3.获取金蝶采购订单:拼接参数和条件
var query = new ErpBillQueryDto(token_result.Data);
var param = new ErpBillQueryParamDto(FormIdParam.PRD_PickMtrl.ToString());
param.FieldKeys = "FBillNo,FOrderNo,FDeliveryOrgID,FCustomerID,FMaterialID.FNumber,FStockID.FNumber,FStockLocID,FQty,F_ENTRYREMARKS,FCreateDate,FEntity_FEntryID,FDeliveryOrgID.FNumber";//FEntryID
param.FieldKeys = "FBillNo,FUnitID,FStockOrgId,FUnitID.FName,FMaterialID.FNumber,FStockID.FNumber,FStockLocID,FActualQty,FEntrtyMemo,FCreateDate,FEntity_FEntryID,FStockOrgId.FNumber";//FEntryID
param.Limit = 10000;
//查询条件:备注其中的条件值以金蝶的值为准!!!
//1.创建时间在两天前和当天时间之间
@@ -2141,8 +2147,9 @@ namespace WMS.Web.Domain.Services.Public
//6.物料 物料属性=费用或资产或服务的排除 不拉取
param.FilterString = " 1=1";
if (isCheck) param.FilterString += " and FDocumentStatus='C'";
param.FilterString += " and FRemainOutQty>=0";
param.FilterString += " and FActualQty>=0";
param.FilterString += " and FMaterialID.FERPCLSID not in (10,11,6)";
param.FilterString += "and FBillType='f4f46eb78a7149b1b7e4de98586acb67'";
//param.FilterString += " and FStockID.FNumber in (" + stocks_codes + ")";
//param.FilterString += " and FDeliveryOrgID.FNumber in (" + stocks_orgs + ")";
for (int i = 0; i < stocks.Count(); i++)
@@ -2150,10 +2157,10 @@ namespace WMS.Web.Domain.Services.Public
if (i == 0)
{
param.FilterString += " and (";
param.FilterString += $"(FStockID.FNumber='{stocks[i].Code}' and FDeliveryOrgID.FNumber='{stocks[i].ErpOrgCode}')";
param.FilterString += $"(FStockID.FNumber='{stocks[i].Code}' and FStockOrgId.FNumber='{stocks[i].ErpOrgCode}')";
}
else
param.FilterString += $" or (FStockID.FNumber='{stocks[i].Code}' and FDeliveryOrgID.FNumber='{stocks[i].ErpOrgCode}')";
param.FilterString += $" or (FStockID.FNumber='{stocks[i].Code}' and FStockOrgId.FNumber='{stocks[i].ErpOrgCode}')";
if (i == stocks.Count() - 1) param.FilterString += ")";
}
@@ -2180,16 +2187,16 @@ namespace WMS.Web.Domain.Services.Public
{
var lis = new ErpDeliveryNoticeOutStockResultDto();
lis.SourceBillNo = item[0];
lis.SaleBillNo = item[1];
//lis.SaleBillNo = item[1];
lis.DeliveryOrgId = Convert.ToInt32(item[2]);
lis.ReceiptCustomerId = Convert.ToInt32(item[3]);
//lis.ReceiptCustomerId = Convert.ToInt32(item[3]);
lis.MaterialNumber = item[4];
lis.StockCode = item[5];
lis.SubStockId = Convert.ToInt32(item[6]);
lis.AccruedQty = Convert.ToDecimal(item[7]);
lis.Remark = item[8];
lis.CreateTime = Convert.ToDateTime(item[9]);
lis.Type = (int)OutStockType.Sal;
lis.Type = (int)OutStockType.PickingOut;
lis.Erp_DetailId = Convert.ToInt32(item[10]);
lis.OrgCode = item[11];
erp_list.Add(lis);