采购上架优化
This commit is contained in:
@@ -1295,6 +1295,11 @@
|
|||||||
数量
|
数量
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.InStockTask.ContrastBoxDetailsResponse.SerialNumbers">
|
||||||
|
<summary>
|
||||||
|
序列号
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="T:WMS.Web.Core.Dto.InStockTask.InStockTaskBillNoQueryRequest">
|
<member name="T:WMS.Web.Core.Dto.InStockTask.InStockTaskBillNoQueryRequest">
|
||||||
<summary>
|
<summary>
|
||||||
模糊查询来源单据-请求对象
|
模糊查询来源单据-请求对象
|
||||||
|
|||||||
@@ -55,5 +55,10 @@ namespace WMS.Web.Core.Dto.InStockTask
|
|||||||
/// 数量
|
/// 数量
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public decimal Qty { get; set; }
|
public decimal Qty { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 序列号
|
||||||
|
/// </summary>
|
||||||
|
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -475,7 +475,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
|
|
||||||
#region 按产品
|
#region 按产品
|
||||||
//3.组装-按产品入库
|
//3.组装-按产品入库
|
||||||
var dtoDatas_details_Method_Product = dtoDatas.Where(x => x.Method == InventoryInOutMethod.Box).SelectMany(x => x.Details).ToList();
|
var dtoDatas_details_Method_Product = dtoDatas.Where(x => x.Method == InventoryInOutMethod.Product).SelectMany(x => x.Details).ToList();
|
||||||
var generateDtoList_Metod_Product = dtoDatas_details_Method_Product.GroupBy(x => new { x.BoxId, x.OrgCode, x.StockCode, x.SubStockId })
|
var generateDtoList_Metod_Product = dtoDatas_details_Method_Product.GroupBy(x => new { x.BoxId, x.OrgCode, x.StockCode, x.SubStockId })
|
||||||
.Select(x => new BoxInventoryGenerateDto()
|
.Select(x => new BoxInventoryGenerateDto()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
private readonly IErpService _erpService;
|
private readonly IErpService _erpService;
|
||||||
private readonly ILoginService _loginService;
|
private readonly ILoginService _loginService;
|
||||||
private readonly ISerialNumberService _serialNumberService;
|
private readonly ISerialNumberService _serialNumberService;
|
||||||
|
private readonly ISerialNumbersRepositories _serialNumbersRepositories;
|
||||||
private readonly IChangeMoveBoxService _changeMoveBoxService;
|
private readonly IChangeMoveBoxService _changeMoveBoxService;
|
||||||
private readonly IBoxRepositories _boxRepositories;
|
private readonly IBoxRepositories _boxRepositories;
|
||||||
private readonly IBoxInventoryService _boxInventoryService;
|
private readonly IBoxInventoryService _boxInventoryService;
|
||||||
@@ -38,7 +39,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
private readonly IInStockRepositories _inStockRepositories;
|
private readonly IInStockRepositories _inStockRepositories;
|
||||||
private readonly IInStockTaskRepositories _inStockTaskRepositories;
|
private readonly IInStockTaskRepositories _inStockTaskRepositories;
|
||||||
private readonly IErpBasicDataExtendService _erpBasicDataExtendService;
|
private readonly IErpBasicDataExtendService _erpBasicDataExtendService;
|
||||||
public InStockService(IMapper mapper, IErpService erpService, IBoxInventoryService boxInventoryService, ISerialNumberService serialNumberService, ILoginService loginService, IBoxRepositories boxRepositories,
|
public InStockService(IMapper mapper, ISerialNumbersRepositories serialNumbersRepositories, IErpService erpService, IBoxInventoryService boxInventoryService, ISerialNumberService serialNumberService, ILoginService loginService, IBoxRepositories boxRepositories,
|
||||||
IBasicsRepositories basicsRepositories, IErpBasicDataExtendService erpBasicDataExtendService, IChangeMoveBoxService changeMoveBoxService,
|
IBasicsRepositories basicsRepositories, IErpBasicDataExtendService erpBasicDataExtendService, IChangeMoveBoxService changeMoveBoxService,
|
||||||
IInStockRepositories inStockRepositories, IInStockTaskRepositories inStockTaskRepositories)
|
IInStockRepositories inStockRepositories, IInStockTaskRepositories inStockTaskRepositories)
|
||||||
{
|
{
|
||||||
@@ -53,6 +54,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
_inStockRepositories = inStockRepositories;
|
_inStockRepositories = inStockRepositories;
|
||||||
_inStockTaskRepositories = inStockTaskRepositories;
|
_inStockTaskRepositories = inStockTaskRepositories;
|
||||||
_erpBasicDataExtendService = erpBasicDataExtendService;
|
_erpBasicDataExtendService = erpBasicDataExtendService;
|
||||||
|
_serialNumbersRepositories = serialNumbersRepositories;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -101,13 +103,6 @@ namespace WMS.Web.Domain.Services
|
|||||||
//1.添加入库单:(同步金蝶在save方法里面进行)
|
//1.添加入库单:(同步金蝶在save方法里面进行)
|
||||||
var save_result = await this.ShelfSave(instock, InstockType.Purchase, loginInfo, isTransaction);
|
var save_result = await this.ShelfSave(instock, InstockType.Purchase, loginInfo, isTransaction);
|
||||||
if (!save_result.IsSuccess) isRollback = true;
|
if (!save_result.IsSuccess) isRollback = true;
|
||||||
{
|
|
||||||
//2.修改入库任务单
|
|
||||||
var ids = instock.Details.GroupBy(x => x.TaskId).Select(x => x.Key).ToList();
|
|
||||||
var result = await this.UpdateRange(ids, loginInfo.UserInfo.StaffId, false, isTransaction);
|
|
||||||
if (!result.IsSuccess) isRollback = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
//提交事务
|
//提交事务
|
||||||
var isSuccess = _basicsRepositories.CommitTransaction(isRollback, _transaction);
|
var isSuccess = _basicsRepositories.CommitTransaction(isRollback, _transaction);
|
||||||
if (!isSuccess)
|
if (!isSuccess)
|
||||||
@@ -200,6 +195,20 @@ namespace WMS.Web.Domain.Services
|
|||||||
entity.Details = _mapper.Map<List<InStockDetails>>(dto.Details);
|
entity.Details = _mapper.Map<List<InStockDetails>>(dto.Details);
|
||||||
entity.Create(loginInfo.UserInfo.StaffId);
|
entity.Create(loginInfo.UserInfo.StaffId);
|
||||||
|
|
||||||
|
|
||||||
|
//序列号集:箱里面的
|
||||||
|
var serialNumbers = await _serialNumbersRepositories.GetEntityListByBoxIds(dto.Details.GroupBy(x=>x.BoxId).Select(x => x.Key).ToList());
|
||||||
|
|
||||||
|
//赋值序列号
|
||||||
|
entity.Details.ForEach(x =>
|
||||||
|
{
|
||||||
|
var current_box_serNums = serialNumbers.Where(t => t.BoxId == x.BoxId).ToList();
|
||||||
|
if (current_box_serNums != null)
|
||||||
|
{
|
||||||
|
var current_box_mat_serNums = current_box_serNums.Where(t => t.MaterialId == x.MaterialId).Select(t => t.SerialNumber).ToList();
|
||||||
|
x.SerialNumbers.AddRange(current_box_mat_serNums);
|
||||||
|
}
|
||||||
|
});
|
||||||
//需要填写序列号
|
//需要填写序列号
|
||||||
//需要修改库存
|
//需要修改库存
|
||||||
//需要同步金蝶
|
//需要同步金蝶
|
||||||
@@ -219,7 +228,8 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (current_dto_det != null)
|
if (current_dto_det != null)
|
||||||
x.DeliveredQty = current_dto_det.Qty;
|
x.DeliveredQty = current_dto_det.Qty;
|
||||||
});
|
});
|
||||||
task=await _inStockTaskRepositories.Update(task,isTransaction);
|
task.Shelf(loginInfo.UserInfo.StaffId);
|
||||||
|
task =await _inStockTaskRepositories.Update(task,isTransaction);
|
||||||
if(task==null)
|
if(task==null)
|
||||||
return Result.ReFailure(ResultCodes.DateWriteError);
|
return Result.ReFailure(ResultCodes.DateWriteError);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user