统一单据类型

This commit is contained in:
tongfei
2023-11-24 14:05:19 +08:00
parent 7939a82557
commit 9ab4575f19
10 changed files with 115 additions and 34 deletions

View File

@@ -221,6 +221,8 @@ namespace WMS.Web.Domain.Services
return Result.ReFailure(ResultCodes.InventoryNoSourceError);
var generateDtoList = new List<BoxInventoryBackGenerateDto>();
//物料收发明细dtos
var InventoryInOutDetailsGenerateDtoList = new List<InventoryInOutDetailsGenerateDto>();
#region
//入库的明细
@@ -294,7 +296,33 @@ namespace WMS.Web.Domain.Services
generateDtoList.AddRange(generateDtoList_in);
generateDtoList.AddRange(generateDtoList_out);
//4.提交处理
return await this.ExeBackBox(generateDtoList, isTransaction);
var result= await this.ExeBackBox(generateDtoList, isTransaction);
if (!result.IsSuccess)
return result;
//5.组装物料收发明细dto
foreach (var item in dtoDatas.SelectMany(x=>x.Details).ToList())
{
var entity = dtoDatas.Where(x => x.Id == item.Fid).FirstOrDefault();
if (entity != null)
{
var inventoryInOutDet = _inventoryInOutDetailsService.GenerateDto(
item.BoxId, item.MaterialId,
item.OrgCode, item.StockCode,
item.SubStockId, OrderType.Back,
entity.BillNo, item.Qty, (entity.Type== BackRecordType.InstockOff?InventoryInOutType.Out:InventoryInOutType.In));
InventoryInOutDetailsGenerateDtoList.Add(inventoryInOutDet);
}
}
//5.提交物料收发明细:新增
if (InventoryInOutDetailsGenerateDtoList.Count != 0)
{
var inout_result = await _inventoryInOutDetailsService.GenerateInOrOutDetails(InventoryInOutDetailsGenerateDtoList, isTransaction);
if (!inout_result.IsSuccess)
return inout_result;
}
return Result.ReSuccess();
}
/// <summary>
@@ -309,6 +337,9 @@ namespace WMS.Web.Domain.Services
if (dtoDatas == null || dtoDatas.Count == 0)
return Result.ReFailure(ResultCodes.InventoryNoSourceError);
//物料收发明细dtos
var InventoryInOutDetailsGenerateDtoList = new List<InventoryInOutDetailsGenerateDto>();
//2.组装:入库数据
var generateDtoList_in = dtoDatas.Where(x => x.ResultType == TakeStockType.Profit).GroupBy(x => new { x.BoxId, x.OrgCode, x.StockCode, x.SubStockId }).Select(x => new BoxInventoryTakeGenerateDto()
{
@@ -370,7 +401,28 @@ namespace WMS.Web.Domain.Services
generateDtoList.AddRange(generateDtoList_in);
generateDtoList.AddRange(generateDtoList_out);
//提交处理
return await this.ExeTakeBox(generateDtoList, isTransaction);
var result= await this.ExeTakeBox(generateDtoList, isTransaction);
if (!result.IsSuccess)
return result;
//5.组装物料收发明细
foreach (var item in dtoDatas)
{
var inventoryInOutDet = _inventoryInOutDetailsService.GenerateDto(
item.BoxId, item.MaterialId,
item.OrgCode, item.StockCode,
item.SubStockId, OrderType.Take,
item.BillNo, item.FinalQty, (item.ResultType == TakeStockType.Loss ? InventoryInOutType.Out : InventoryInOutType.In));
InventoryInOutDetailsGenerateDtoList.Add(inventoryInOutDet);
}
//5.提交物料收发明细:新增
if (InventoryInOutDetailsGenerateDtoList.Count != 0)
{
var inout_result = await _inventoryInOutDetailsService.GenerateInOrOutDetails(InventoryInOutDetailsGenerateDtoList, isTransaction);
if (!inout_result.IsSuccess)
return inout_result;
}
return Result.ReSuccess();
}
/// <summary>
@@ -385,6 +437,9 @@ namespace WMS.Web.Domain.Services
if (dtoDatas == null || dtoDatas.Count == 0)
return Result.ReFailure(ResultCodes.InventoryNoSourceError);
//物料收发明细dtos
var InventoryInOutDetailsGenerateDtoList = new List<InventoryInOutDetailsGenerateDto>();
#region
//2.组装-按箱入库
var dtoDatas_details_Method_box = dtoDatas.Where(x => x.Method == InventoryInOutMethod.Box).SelectMany(x => x.Details).ToList();
@@ -456,7 +511,33 @@ namespace WMS.Web.Domain.Services
generateDtoList.AddRange(generateDtoList_Metod_Box);
generateDtoList.AddRange(generateDtoList_Metod_Product);
//提交处理
return await this.ExeInStockBox(generateDtoList, isTransaction);
var result= await this.ExeInStockBox(generateDtoList, isTransaction);
if (!result.IsSuccess)
return result;
//5.组装物料收发明细dto
foreach (var item in dtoDatas.SelectMany(x => x.Details).ToList())
{
var entity = dtoDatas.Where(x => x.Id == item.Fid).FirstOrDefault();
if (entity != null)
{
var inventoryInOutDet = _inventoryInOutDetailsService.GenerateDto(
item.BoxId, item.MaterialId,
item.OrgCode, item.StockCode,
item.SubStockId, entity.Type,
item.SourceBillNo, item.Qty, InventoryInOutType.In);
InventoryInOutDetailsGenerateDtoList.Add(inventoryInOutDet);
}
}
//5.提交物料收发明细:新增
if (InventoryInOutDetailsGenerateDtoList.Count != 0)
{
var inout_result = await _inventoryInOutDetailsService.GenerateInOrOutDetails(InventoryInOutDetailsGenerateDtoList, isTransaction);
if (!inout_result.IsSuccess)
return inout_result;
}
return Result.ReSuccess();
}
/// <summary>