库存优化
This commit is contained in:
@@ -748,9 +748,18 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
//5.即时库存:变更
|
//5.即时库存:变更
|
||||||
if (InventoryDetailsGenerateDto.Count != 0)
|
//5.1先合并相同的数据
|
||||||
|
var invDetGenDtos = InventoryDetailsGenerateDto.GroupBy(x => new { x.OrgCode, x.MaterialId, x.StockCode, x.SubStockId }).Select(x => new InventoryDetailsGenerateDto()
|
||||||
{
|
{
|
||||||
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(InventoryDetailsGenerateDto, isTransaction);
|
OrgCode = x.Key.OrgCode,
|
||||||
|
StockCode = x.Key.StockCode,
|
||||||
|
MaterialId = x.Key.MaterialId,
|
||||||
|
SubStockId = x.Key.SubStockId,
|
||||||
|
Qty = x.Sum(t => t.Qty)
|
||||||
|
}).ToList();
|
||||||
|
if (invDetGenDtos.Count != 0)
|
||||||
|
{
|
||||||
|
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(invDetGenDtos, isTransaction);
|
||||||
if (!InventoryDetailsGenerate_result.IsSuccess)
|
if (!InventoryDetailsGenerate_result.IsSuccess)
|
||||||
return InventoryDetailsGenerate_result;
|
return InventoryDetailsGenerate_result;
|
||||||
}
|
}
|
||||||
@@ -870,9 +879,18 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
//5.即时库存:处理
|
//5.即时库存:处理
|
||||||
if (InventoryDetailsGenerateDto.Count != 0)
|
//5.1先合并相同的数据
|
||||||
|
var invDetGenDtos = InventoryDetailsGenerateDto.GroupBy(x => new { x.OrgCode, x.MaterialId, x.StockCode, x.SubStockId }).Select(x => new InventoryDetailsGenerateDto()
|
||||||
{
|
{
|
||||||
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(InventoryDetailsGenerateDto, isTransaction);
|
OrgCode = x.Key.OrgCode,
|
||||||
|
StockCode = x.Key.StockCode,
|
||||||
|
MaterialId = x.Key.MaterialId,
|
||||||
|
SubStockId = x.Key.SubStockId,
|
||||||
|
Qty = x.Sum(t => t.Qty)
|
||||||
|
}).ToList();
|
||||||
|
if (invDetGenDtos.Count != 0)
|
||||||
|
{
|
||||||
|
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(invDetGenDtos, isTransaction);
|
||||||
if (!InventoryDetailsGenerate_result.IsSuccess)
|
if (!InventoryDetailsGenerate_result.IsSuccess)
|
||||||
return InventoryDetailsGenerate_result;
|
return InventoryDetailsGenerate_result;
|
||||||
}
|
}
|
||||||
@@ -1011,9 +1029,18 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
//5.即时库存:处理
|
//5.即时库存:处理
|
||||||
if (InventoryDetailsGenerateDto.Count != 0)
|
//5.1先合并相同的数据
|
||||||
|
var invDetGenDtos = InventoryDetailsGenerateDto.GroupBy(x => new { x.OrgCode, x.MaterialId, x.StockCode, x.SubStockId }).Select(x => new InventoryDetailsGenerateDto()
|
||||||
{
|
{
|
||||||
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(InventoryDetailsGenerateDto, isTransaction);
|
OrgCode = x.Key.OrgCode,
|
||||||
|
StockCode = x.Key.StockCode,
|
||||||
|
MaterialId = x.Key.MaterialId,
|
||||||
|
SubStockId = x.Key.SubStockId,
|
||||||
|
Qty = x.Sum(t => t.Qty)
|
||||||
|
}).ToList();
|
||||||
|
if (invDetGenDtos.Count != 0)
|
||||||
|
{
|
||||||
|
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(invDetGenDtos, isTransaction);
|
||||||
if (!InventoryDetailsGenerate_result.IsSuccess)
|
if (!InventoryDetailsGenerate_result.IsSuccess)
|
||||||
return InventoryDetailsGenerate_result;
|
return InventoryDetailsGenerate_result;
|
||||||
}
|
}
|
||||||
@@ -1138,9 +1165,18 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
//5.即时库存:处理
|
//5.即时库存:处理
|
||||||
if (InventoryDetailsGenerateDto.Count != 0)
|
//5.1先合并相同的数据
|
||||||
|
var invDetGenDtos = InventoryDetailsGenerateDto.GroupBy(x => new { x.OrgCode, x.MaterialId, x.StockCode, x.SubStockId }).Select(x => new InventoryDetailsGenerateDto()
|
||||||
{
|
{
|
||||||
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(InventoryDetailsGenerateDto, isTransaction);
|
OrgCode = x.Key.OrgCode,
|
||||||
|
StockCode = x.Key.StockCode,
|
||||||
|
MaterialId = x.Key.MaterialId,
|
||||||
|
SubStockId = x.Key.SubStockId,
|
||||||
|
Qty = x.Sum(t => t.Qty)
|
||||||
|
}).ToList();
|
||||||
|
if (invDetGenDtos.Count != 0)
|
||||||
|
{
|
||||||
|
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(invDetGenDtos, isTransaction);
|
||||||
if (!InventoryDetailsGenerate_result.IsSuccess)
|
if (!InventoryDetailsGenerate_result.IsSuccess)
|
||||||
return InventoryDetailsGenerate_result;
|
return InventoryDetailsGenerate_result;
|
||||||
}
|
}
|
||||||
@@ -1263,9 +1299,18 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
//5.即时库存:处理
|
//5.即时库存:处理
|
||||||
if (InventoryDetailsGenerateDto.Count != 0)
|
//5.1先合并相同的数据
|
||||||
|
var invDetGenDtos= InventoryDetailsGenerateDto.GroupBy(x => new { x.OrgCode, x.MaterialId, x.StockCode, x.SubStockId }).Select(x => new InventoryDetailsGenerateDto()
|
||||||
{
|
{
|
||||||
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(InventoryDetailsGenerateDto, isTransaction);
|
OrgCode=x.Key.OrgCode,
|
||||||
|
StockCode=x.Key.StockCode,
|
||||||
|
MaterialId=x.Key.MaterialId,
|
||||||
|
SubStockId=x.Key.SubStockId,
|
||||||
|
Qty=x.Sum(t=>t.Qty)
|
||||||
|
}).ToList();
|
||||||
|
if (invDetGenDtos.Count != 0)
|
||||||
|
{
|
||||||
|
var InventoryDetailsGenerate_result = await _inventoryDetailsService.GenerateInventoryDetails(invDetGenDtos, isTransaction);
|
||||||
if (!InventoryDetailsGenerate_result.IsSuccess)
|
if (!InventoryDetailsGenerate_result.IsSuccess)
|
||||||
return InventoryDetailsGenerate_result;
|
return InventoryDetailsGenerate_result;
|
||||||
}
|
}
|
||||||
@@ -1381,9 +1426,18 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
//5.即时库存:变更处理
|
//5.即时库存:变更处理
|
||||||
if (InventoryDetailsGenerateDto.Count != 0)
|
//5.1先合并相同的数据
|
||||||
|
var invDetGenDtos = InventoryDetailsGenerateDto.GroupBy(x => new { x.OrgCode, x.MaterialId, x.StockCode, x.SubStockId }).Select(x => new InventoryDetailsGenerateDto()
|
||||||
{
|
{
|
||||||
var inventoryDetails_result = await _inventoryDetailsService.GenerateInventoryDetails(InventoryDetailsGenerateDto, isTransaction);
|
OrgCode = x.Key.OrgCode,
|
||||||
|
StockCode = x.Key.StockCode,
|
||||||
|
MaterialId = x.Key.MaterialId,
|
||||||
|
SubStockId = x.Key.SubStockId,
|
||||||
|
Qty = x.Sum(t => t.Qty)
|
||||||
|
}).ToList();
|
||||||
|
if (invDetGenDtos.Count != 0)
|
||||||
|
{
|
||||||
|
var inventoryDetails_result = await _inventoryDetailsService.GenerateInventoryDetails(invDetGenDtos, isTransaction);
|
||||||
if (!inventoryDetails_result.IsSuccess)
|
if (!inventoryDetails_result.IsSuccess)
|
||||||
return inventoryDetails_result;
|
return inventoryDetails_result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -167,6 +167,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
result.BoxId = box.Id;
|
result.BoxId = box.Id;
|
||||||
foreach (var item in box.Details)
|
foreach (var item in box.Details)
|
||||||
{
|
{
|
||||||
|
//这里找任务单的物料条件:物料ID和应入库数量大于收货数量,防止有同样的物料数据,收货的时候 会有收货数量,只要找到没有收完的就行了
|
||||||
var current_task_Det= tast.Details.Where(x => x.MaterialId == item.MaterialId && x.AccruedQty>x.ReceiveQty).FirstOrDefault();
|
var current_task_Det= tast.Details.Where(x => x.MaterialId == item.MaterialId && x.AccruedQty>x.ReceiveQty).FirstOrDefault();
|
||||||
//3.2映射返回明细对象
|
//3.2映射返回明细对象
|
||||||
var box_task_detail = new BoxDetailsInStockTaskDto();
|
var box_task_detail = new BoxDetailsInStockTaskDto();
|
||||||
|
|||||||
Reference in New Issue
Block a user