对比接口-也要加仓库编码-去筛选对应明细
This commit is contained in:
@@ -435,11 +435,26 @@
|
|||||||
目标箱子ID
|
目标箱子ID
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.StockCode">
|
||||||
|
<summary>
|
||||||
|
目标箱的仓库(可为空:当目标箱不需要上架时候)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.SubStockId">
|
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.SubStockId">
|
||||||
<summary>
|
<summary>
|
||||||
仓位
|
仓位
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.SrcBoxOrgCode">
|
||||||
|
<summary>
|
||||||
|
原箱组织编码
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.DestBoxOrgCode">
|
||||||
|
<summary>
|
||||||
|
目标箱组织编码
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.Details">
|
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.Details">
|
||||||
<summary>
|
<summary>
|
||||||
明细
|
明细
|
||||||
@@ -1215,6 +1230,11 @@
|
|||||||
单据ID(等同-入库任务单ID)
|
单据ID(等同-入库任务单ID)
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.InStockTask.ContrastMaterialsRequest.StockCode">
|
||||||
|
<summary>
|
||||||
|
仓库编码
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="P:WMS.Web.Core.Dto.InStockTask.ContrastMaterialsRequest.BoxBillNos">
|
<member name="P:WMS.Web.Core.Dto.InStockTask.ContrastMaterialsRequest.BoxBillNos">
|
||||||
<summary>
|
<summary>
|
||||||
箱号集合
|
箱号集合
|
||||||
|
|||||||
@@ -17,6 +17,12 @@ namespace WMS.Web.Core.Dto.InStockTask
|
|||||||
[Required(ErrorMessage = "单据不能为空")]
|
[Required(ErrorMessage = "单据不能为空")]
|
||||||
public int TaskId { get; set; }
|
public int TaskId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 仓库编码
|
||||||
|
/// </summary>
|
||||||
|
[Required(ErrorMessage = "仓库不能为空")]
|
||||||
|
public string StockCode { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 箱号集合
|
/// 箱号集合
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -434,10 +434,10 @@ namespace WMS.Web.Domain.Services
|
|||||||
var task = await _inStockTaskRepositories.Get(dto.TaskId);
|
var task = await _inStockTaskRepositories.Get(dto.TaskId);
|
||||||
if (task == null)
|
if (task == null)
|
||||||
return Result<ContrastMaterialsResponse>.ReFailure(ResultCodes.OrderNoData);
|
return Result<ContrastMaterialsResponse>.ReFailure(ResultCodes.OrderNoData);
|
||||||
////2.找到箱对应的物料信息--弃用(这个是单个箱)
|
|
||||||
//var box = await _boxRepositories.GetByNo(dto.BoxBillNo);
|
|
||||||
//if (box == null)
|
//1.1筛选出对应仓库的明细
|
||||||
// return Result<ContrastMaterialsResponse>.ReFailure(ResultCodes.BoxNoData);
|
var task_details = task.Details.Where(x => x.StockCode == dto.StockCode).ToList();
|
||||||
|
|
||||||
//2.找到箱对应的物料信息:多个箱
|
//2.找到箱对应的物料信息:多个箱
|
||||||
var boxs = await _boxRepositories.GetEntityListByNos(dto.BoxBillNos);
|
var boxs = await _boxRepositories.GetEntityListByNos(dto.BoxBillNos);
|
||||||
@@ -448,7 +448,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
var boxDetails = boxs.SelectMany(x => x.Details).GroupBy(x => x.MaterialId).Select(x => new { MaterialId = x.Key, Qty = x.Sum(t => t.Qty) }).ToList();
|
var boxDetails = boxs.SelectMany(x => x.Details).GroupBy(x => x.MaterialId).Select(x => new { MaterialId = x.Key, Qty = x.Sum(t => t.Qty) }).ToList();
|
||||||
|
|
||||||
//3.比对:false为比对失败;
|
//3.比对:false为比对失败;
|
||||||
bool isRight = boxDetails.All(x => task.Details.Any(t => t.MaterialId == x.MaterialId && t.AccruedQty >= x.Qty)) && boxDetails.Count <= task.Details.Count;
|
bool isRight = boxDetails.All(x => task_details.Any(t => t.MaterialId == x.MaterialId && t.AccruedQty >= x.Qty)) && boxDetails.Count <= task_details.Count;
|
||||||
if (!isRight)
|
if (!isRight)
|
||||||
return Result<ContrastMaterialsResponse>.ReFailure(ResultCodes.ContrastError);
|
return Result<ContrastMaterialsResponse>.ReFailure(ResultCodes.ContrastError);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user