修复bug
This commit is contained in:
Binary file not shown.
@@ -73,8 +73,8 @@ namespace WMS.Web.Api.Controllers
|
||||
//var entity=await _takeStockRepositories.GetEntityList(new List<int>() {2 });
|
||||
//var r= await _takeStockService.Loss_Profit(entity.First());
|
||||
//var list = await GetList();
|
||||
List<(string materialNumber, string orgCode, string stockCode)> request = new List<(string materialNumber, string orgCode, string stockCode)>();
|
||||
request.Add(("G01-17-556547", "101", "CK003"));
|
||||
List<(string materialNumber, string orgCode, string stockCode, int subStockId)> request = new List<(string materialNumber, string orgCode, string stockCode, int subStockId)>();
|
||||
request.Add(("G01-17-556547", "101", "CK003",0));
|
||||
var c = await _erpService.BillQueryForInventory(request);
|
||||
//var c = await _erpService.BillQueryForAssembledAppOutStock_Assembly(new List<string>() { "ZZCX003061" }, DateTime.Now.AddDays(-10));
|
||||
//var bc2 = await _erpService.BillQueryForDeliveryNoticeOutStock(new List<string>() { "FHTZD8022232" }, DateTime.Now.AddDays(-10));
|
||||
|
||||
@@ -760,6 +760,11 @@
|
||||
仓库
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.ErpInventoryDto.Erp_SubStockId">
|
||||
<summary>
|
||||
子仓库(跟金蝶交互字段)
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.ErpInventoryDto.Qty">
|
||||
<summary>
|
||||
数量
|
||||
@@ -1268,7 +1273,7 @@
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.TakeStock.ErpTakeStockDetailsSaveDto.FStockStatusId">
|
||||
<summary>
|
||||
库存状态 KCZT001
|
||||
库存状态 KCZT01_SYS
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.TakeStock.ErpTakeStockDetailsSaveDto.FOwnerTypeId">
|
||||
|
||||
@@ -3095,7 +3095,7 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.IService.Public.IErpService.BillQueryForInventory(System.Collections.Generic.List{System.ValueTuple{System.String,System.String,System.String}})">
|
||||
<member name="M:WMS.Web.Domain.IService.Public.IErpService.BillQueryForInventory(System.Collections.Generic.List{System.ValueTuple{System.String,System.String,System.String,System.Int32}})">
|
||||
<summary>
|
||||
及时库存
|
||||
</summary>
|
||||
|
||||
@@ -19,6 +19,10 @@ namespace WMS.Web.Core.Dto.Erp
|
||||
/// </summary>
|
||||
public string StockCode { get; set; }
|
||||
/// <summary>
|
||||
/// 子仓库(跟金蝶交互字段)
|
||||
/// </summary>
|
||||
public int Erp_SubStockId { get; set; }
|
||||
/// <summary>
|
||||
/// 数量
|
||||
/// </summary>
|
||||
public decimal Qty { get; set; }
|
||||
|
||||
@@ -65,10 +65,10 @@ namespace WMS.Web.Core.Dto.Erp.TakeStock
|
||||
public class ErpTakeStockDetailsSaveDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 库存状态 KCZT001
|
||||
/// 库存状态 KCZT01_SYS
|
||||
/// </summary>
|
||||
[JsonProperty("FStockStatusId")]
|
||||
public ErpNumberDto FStockStatusId { get; set; } = new ErpNumberDto("KCZT001");
|
||||
public ErpNumberDto FStockStatusId { get; set; } = new ErpNumberDto("KCZT01_SYS");
|
||||
/// <summary>
|
||||
/// 货主类型: 默认为业务组织 BD_OwnerOrg
|
||||
/// </summary>
|
||||
|
||||
@@ -147,7 +147,7 @@ namespace WMS.Web.Domain.IService.Public
|
||||
/// 及时库存
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode)> request);
|
||||
Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode, int subStockId)> request);
|
||||
//同步数据(保存提交审核)
|
||||
Task<Result<string>> Save<T>(T dto, string formId);
|
||||
//提交
|
||||
|
||||
@@ -2133,7 +2133,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
}
|
||||
}
|
||||
|
||||
public async Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode)> request)
|
||||
public async Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode,int subStockId)> request)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -2146,16 +2146,22 @@ 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.FNumber,FSTOCKORGID.FNumber,FSTOCKID.FNumber";
|
||||
param.FieldKeys = "FBASEQTY,FMATERIALID.FNumber,FSTOCKORGID.FNumber,FSTOCKID.FNumber,FSTOCKLOCID";
|
||||
param.Limit = 100;
|
||||
//param.FilterString = $"FSTOCKORGID.FNumber='{request[0].orgCode}' and FSTOCKID.FNumber='{request[0].stockCode}'";
|
||||
//param.FilterString = $"FMATERIALID.FNumber='G01-17-556547'";
|
||||
//param.FilterString = $"";
|
||||
for (int i = 0; i < request.Count(); i++)
|
||||
{
|
||||
if (i == 0)
|
||||
param.FilterString = $"(FMATERIALID.FNumber='{request[0].materialNumber}' 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}'";
|
||||
param.FilterString += request[0].subStockId == 0 ? ")" : $" and FSTOCKLOCID={request[0].subStockId})";
|
||||
}
|
||||
else
|
||||
param.FilterString += $" or (FMATERIALID.FNumber='{request[i].materialNumber}' 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}'";
|
||||
param.FilterString += request[i].subStockId == 0 ? ")" : $" and FSTOCKLOCID={request[i].subStockId})";
|
||||
}
|
||||
}
|
||||
query.Data = JsonConvert.SerializeObject(param);
|
||||
var json = JsonConvert.SerializeObject(query);
|
||||
@@ -2178,6 +2184,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.MaterialNumber = item[1];
|
||||
lis.OrgCode = item[2];
|
||||
lis.StockCode = item[3];
|
||||
lis.Erp_SubStockId =Convert.ToInt32(item[4]);
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -204,10 +204,12 @@ namespace WMS.Web.Domain.Services
|
||||
if (!materials_result.IsSuccess) return Result.ReFailure(ResultCodes.ErpMaterialError);
|
||||
var materials = materials_result.Data.ToList();
|
||||
|
||||
List<(string materialNumber, string orgCode, string stockCode)> requestInventory = new List<(string materialNumber, string orgCode, string stockCode)>();
|
||||
var subs = await _erpService.BillQueryForSubStock();
|
||||
List<(string materialNumber, string orgCode, string stockCode, int subStockId)> requestInventory = new List<(string materialNumber, string orgCode, string stockCode, int subStockId)>();
|
||||
foreach (var d in entity.Details)
|
||||
{
|
||||
requestInventory.Add((_erpBasicDataExtendService.GetMaterialNumber(materials, d.MaterialId), d.OrgCode, d.StockCode));
|
||||
int subStockId = subs.Data.FirstOrDefault(w => w.OrgCode.Equals(d.OrgCode) && w.StockCode.Equals(d.Erp_SubStockCode))?.Id ?? 0;
|
||||
requestInventory.Add((_erpBasicDataExtendService.GetMaterialNumber(materials, d.MaterialId), d.OrgCode, d.StockCode, subStockId));
|
||||
};
|
||||
var res_s = await sc_erpService.BillQueryForInventory(requestInventory);
|
||||
if (!res_s.IsSuccess)
|
||||
@@ -221,8 +223,10 @@ namespace WMS.Web.Domain.Services
|
||||
List<ErpTakeStockDetailsSaveDto> detils = new List<ErpTakeStockDetailsSaveDto>();
|
||||
foreach (var d in entity.Details)
|
||||
{
|
||||
int subStockId = subs.Data.FirstOrDefault(w => w.OrgCode.Equals(d.OrgCode) && w.StockCode.Equals(d.Erp_SubStockCode))?.Id ?? 0;
|
||||
var number = _erpBasicDataExtendService.GetMaterialNumber(materials, d.MaterialId);
|
||||
var erpInventory = res_s.Data.FirstOrDefault(f => f.MaterialNumber == number && f.StockCode == d.StockCode && f.OrgCode == d.OrgCode);
|
||||
var erpInventory = res_s.Data.FirstOrDefault(f => f.MaterialNumber == number && f.StockCode == d.StockCode
|
||||
&& f.OrgCode == d.OrgCode && f.Erp_SubStockId == subStockId);
|
||||
decimal qty = erpInventory?.Qty ?? 0;
|
||||
var unitNumber = _erpBasicDataExtendService.GetMaterialUnitNumber(materials, d.MaterialId);
|
||||
detils.Add(new ErpTakeStockDetailsSaveDto()
|
||||
|
||||
Reference in New Issue
Block a user