修复bug
This commit is contained in:
@@ -73,7 +73,9 @@ namespace WMS.Web.Api.Controllers
|
|||||||
//var entity=await _takeStockRepositories.GetEntityList(new List<int>() {2 });
|
//var entity=await _takeStockRepositories.GetEntityList(new List<int>() {2 });
|
||||||
//var r= await _takeStockService.Loss_Profit(entity.First());
|
//var r= await _takeStockService.Loss_Profit(entity.First());
|
||||||
//var list = await GetList();
|
//var list = await GetList();
|
||||||
//var c = await _erpService.BillQueryForInventory("G03-60-551495", "101", "12485666");
|
List<(string materialNumber, string orgCode, string stockCode)> request = new List<(string materialNumber, string orgCode, string stockCode)>();
|
||||||
|
request.Add(("G01-17-556547", "101", "CK003"));
|
||||||
|
var c = await _erpService.BillQueryForInventory(request);
|
||||||
//var c = await _erpService.BillQueryForAssembledAppOutStock_Assembly(new List<string>() { "ZZCX003061" }, DateTime.Now.AddDays(-10));
|
//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));
|
//var bc2 = await _erpService.BillQueryForDeliveryNoticeOutStock(new List<string>() { "FHTZD8022232" }, DateTime.Now.AddDays(-10));
|
||||||
//var bc = await _erpService.BillQueryForTransferOutOutStock(null, DateTime.Now.AddDays(-10));
|
//var bc = await _erpService.BillQueryForTransferOutOutStock(null, DateTime.Now.AddDays(-10));
|
||||||
|
|||||||
@@ -3095,7 +3095,7 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:WMS.Web.Domain.IService.Public.IErpService.BillQueryForInventory(System.Collections.Generic.List{System.ValueTuple{System.Int32,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}})">
|
||||||
<summary>
|
<summary>
|
||||||
及时库存
|
及时库存
|
||||||
</summary>
|
</summary>
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ namespace WMS.Web.Core.Dto.Erp
|
|||||||
public class ErpInventoryDto
|
public class ErpInventoryDto
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 物料ID
|
/// 物料编码
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int MaterialId { get; set; }
|
public string MaterialNumber { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 组织编码
|
/// 组织编码
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ namespace WMS.Web.Domain.IService.Public
|
|||||||
/// 及时库存
|
/// 及时库存
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(int materialId, string orgCode, string stockCode)> request);
|
Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode)> request);
|
||||||
//同步数据(保存提交审核)
|
//同步数据(保存提交审核)
|
||||||
Task<Result<string>> Save<T>(T dto, string formId);
|
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<(int materialId, string orgCode, string stockCode)> request)
|
public async Task<ResultList<ErpInventoryDto>> BillQueryForInventory(List<(string materialNumber, string orgCode, string stockCode)> request)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@@ -2146,15 +2146,16 @@ namespace WMS.Web.Domain.Services.Public
|
|||||||
//3.获取金蝶采购订单:拼接参数和条件
|
//3.获取金蝶采购订单:拼接参数和条件
|
||||||
var query = new ErpBillQueryDto(token_result.Data);
|
var query = new ErpBillQueryDto(token_result.Data);
|
||||||
var param = new ErpBillQueryParamDto(FormIdParam.STK_Inventory.ToString());
|
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.Limit = 100;
|
||||||
//param.FilterString = $"FSTOCKORGID.FNumber='{request[0].orgCode}' and FSTOCKID.FNumber='{request[0].stockCode}'";
|
//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++)
|
for (int i = 0; i < request.Count(); i++)
|
||||||
{
|
{
|
||||||
if (i == 0)
|
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
|
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);
|
query.Data = JsonConvert.SerializeObject(param);
|
||||||
var json = JsonConvert.SerializeObject(query);
|
var json = JsonConvert.SerializeObject(query);
|
||||||
@@ -2167,14 +2168,14 @@ namespace WMS.Web.Domain.Services.Public
|
|||||||
foreach (var item in result)
|
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.OrgCode.Equals(item[2])
|
||||||
&& f.StockCode.Equals(item[3]));
|
&& f.StockCode.Equals(item[3]));
|
||||||
|
|
||||||
if (lis == null)
|
if (lis == null)
|
||||||
{
|
{
|
||||||
lis.Qty = Convert.ToInt32(item[0]);
|
lis.Qty = Convert.ToDecimal(item[0]);
|
||||||
lis.MaterialId = Convert.ToInt32(item[1]);
|
lis.MaterialNumber = item[1];
|
||||||
lis.OrgCode = item[2];
|
lis.OrgCode = item[2];
|
||||||
lis.StockCode = item[3];
|
lis.StockCode = item[3];
|
||||||
erp_list.Add(lis);
|
erp_list.Add(lis);
|
||||||
|
|||||||
@@ -204,8 +204,11 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!materials_result.IsSuccess) return Result.ReFailure(ResultCodes.ErpMaterialError);
|
if (!materials_result.IsSuccess) return Result.ReFailure(ResultCodes.ErpMaterialError);
|
||||||
var materials = materials_result.Data.ToList();
|
var materials = materials_result.Data.ToList();
|
||||||
|
|
||||||
List<(int materialId, string orgCode, string stockCode)> requestInventory = new List<(int materialId, string orgCode, string stockCode)>();
|
List<(string materialNumber, string orgCode, string stockCode)> requestInventory = new List<(string materialNumber, string orgCode, string stockCode)>();
|
||||||
entity.Details.ForEach(f => requestInventory.Add((f.MaterialId, f.OrgCode, f.StockCode)));
|
foreach (var d in entity.Details)
|
||||||
|
{
|
||||||
|
requestInventory.Add((_erpBasicDataExtendService.GetMaterialNumber(materials, d.MaterialId), d.OrgCode, d.StockCode));
|
||||||
|
};
|
||||||
var res_s = await sc_erpService.BillQueryForInventory(requestInventory);
|
var res_s = await sc_erpService.BillQueryForInventory(requestInventory);
|
||||||
if (!res_s.IsSuccess)
|
if (!res_s.IsSuccess)
|
||||||
{
|
{
|
||||||
@@ -218,7 +221,8 @@ namespace WMS.Web.Domain.Services
|
|||||||
List<ErpTakeStockDetailsSaveDto> detils = new List<ErpTakeStockDetailsSaveDto>();
|
List<ErpTakeStockDetailsSaveDto> detils = new List<ErpTakeStockDetailsSaveDto>();
|
||||||
foreach (var d in entity.Details)
|
foreach (var d in entity.Details)
|
||||||
{
|
{
|
||||||
var erpInventory = res_s.Data.FirstOrDefault(f => f.MaterialId == d.MaterialId && f.StockCode == d.StockCode && f.OrgCode == d.OrgCode);
|
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);
|
||||||
decimal qty = erpInventory?.Qty ?? 0;
|
decimal qty = erpInventory?.Qty ?? 0;
|
||||||
var unitNumber = _erpBasicDataExtendService.GetMaterialUnitNumber(materials, d.MaterialId);
|
var unitNumber = _erpBasicDataExtendService.GetMaterialUnitNumber(materials, d.MaterialId);
|
||||||
detils.Add(new ErpTakeStockDetailsSaveDto()
|
detils.Add(new ErpTakeStockDetailsSaveDto()
|
||||||
@@ -235,7 +239,6 @@ namespace WMS.Web.Domain.Services
|
|||||||
LossQty = entity.ResultType == TakeStockType.Loss ? d.FinalQty : 0,
|
LossQty = entity.ResultType == TakeStockType.Loss ? d.FinalQty : 0,
|
||||||
Fnote = d.Remark
|
Fnote = d.Remark
|
||||||
});
|
});
|
||||||
requestInventory.Add((d.MaterialId, d.OrgCode, d.StockCode));
|
|
||||||
}
|
}
|
||||||
ErpTakeStockSaveDto dto = new ErpTakeStockSaveDto()
|
ErpTakeStockSaveDto dto = new ErpTakeStockSaveDto()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user