增加入库箱验证
This commit is contained in:
Binary file not shown.
@@ -32,13 +32,14 @@ namespace WMS.Web.Api.Controllers
|
|||||||
private readonly ILoginService _loginService;
|
private readonly ILoginService _loginService;
|
||||||
private readonly IBoxRepositories _boxRepositories;
|
private readonly IBoxRepositories _boxRepositories;
|
||||||
private readonly IInStockTaskBoxRepositories _inStockTaskBoxRepositories;
|
private readonly IInStockTaskBoxRepositories _inStockTaskBoxRepositories;
|
||||||
|
private readonly IInStockRepositories _inStockRepositories;
|
||||||
private readonly ISerialNumbersRepositories _serialNumbersRepositories;
|
private readonly ISerialNumbersRepositories _serialNumbersRepositories;
|
||||||
private IBasicsRepositories _transactionRepositories;
|
private IBasicsRepositories _transactionRepositories;
|
||||||
private readonly ILogger<TakeStockController> _logger;
|
private readonly ILogger<TakeStockController> _logger;
|
||||||
public BarCodeController(IMapper mapper, ILoginService loginService,
|
public BarCodeController(IMapper mapper, ILoginService loginService,
|
||||||
IBoxRepositories boxRepositories, IInStockTaskBoxRepositories inStockTaskBoxRepositories,
|
IBoxRepositories boxRepositories, IInStockTaskBoxRepositories inStockTaskBoxRepositories,
|
||||||
ILogger<TakeStockController> logger, ISerialNumbersRepositories serialNumbersRepositorie,
|
ILogger<TakeStockController> logger, ISerialNumbersRepositories serialNumbersRepositorie,
|
||||||
IBasicsRepositories transactionRepositories)
|
IBasicsRepositories transactionRepositories, IInStockRepositories inStockRepositories)
|
||||||
{
|
{
|
||||||
_mapper = mapper;
|
_mapper = mapper;
|
||||||
_loginService = loginService;
|
_loginService = loginService;
|
||||||
@@ -47,10 +48,11 @@ namespace WMS.Web.Api.Controllers
|
|||||||
_serialNumbersRepositories = serialNumbersRepositorie;
|
_serialNumbersRepositories = serialNumbersRepositorie;
|
||||||
_transactionRepositories = transactionRepositories;
|
_transactionRepositories = transactionRepositories;
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
|
_inStockRepositories = inStockRepositories;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 导出
|
/// 重置箱信息
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="dto"></param>
|
/// <param name="dto"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
@@ -61,10 +63,16 @@ namespace WMS.Web.Api.Controllers
|
|||||||
_logger.LogInformation($"重置箱信息:{JsonConvert.SerializeObject(dto)}");
|
_logger.LogInformation($"重置箱信息:{JsonConvert.SerializeObject(dto)}");
|
||||||
var boxs = await _boxRepositories.GetEntityListByNos(dto.Ids);
|
var boxs = await _boxRepositories.GetEntityListByNos(dto.Ids);
|
||||||
var boxIds = boxs.Select(s => s.Id).ToList();
|
var boxIds = boxs.Select(s => s.Id).ToList();
|
||||||
//查出已经入库的箱子
|
//查出已经收货的箱子
|
||||||
var inStockList = await _inStockTaskBoxRepositories.GetListBy(boxIds);
|
var inStockList = await _inStockTaskBoxRepositories.GetListBy(boxIds);
|
||||||
//已经入库的箱子
|
//已经收货的箱子
|
||||||
var inBoxBillNo = inStockList.Select(s => s.BoxBillNo).ToList();
|
var inBoxBillNo = inStockList.Select(s => s.BoxBillNo).ToList();
|
||||||
|
//已经入库的箱子
|
||||||
|
var ids = await _inStockRepositories.GetInstockBoxIds(boxIds);
|
||||||
|
var nos = boxs.Where(w => ids.Contains(w.Id)).Select(s => s.BoxBillNo).ToList();
|
||||||
|
inBoxBillNo.AddRange(nos);
|
||||||
|
inBoxBillNo = inBoxBillNo.Distinct().ToList();//去重
|
||||||
|
|
||||||
//找到需要删除的箱子
|
//找到需要删除的箱子
|
||||||
var deleteBoxIds = boxs.Where(w => !inBoxBillNo.Contains(w.BoxBillNo)).Select(s => s.Id).ToList();
|
var deleteBoxIds = boxs.Where(w => !inBoxBillNo.Contains(w.BoxBillNo)).Select(s => s.Id).ToList();
|
||||||
if (deleteBoxIds.Count() == 0) return Result<List<string>>.ReSuccess(inBoxBillNo);
|
if (deleteBoxIds.Count() == 0) return Result<List<string>>.ReSuccess(inBoxBillNo);
|
||||||
|
|||||||
@@ -44,7 +44,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="M:WMS.Web.Api.Controllers.BarCodeController.Restart(WMS.Web.Core.Dto.OperateStrRequest)">
|
<member name="M:WMS.Web.Api.Controllers.BarCodeController.Restart(WMS.Web.Core.Dto.OperateStrRequest)">
|
||||||
<summary>
|
<summary>
|
||||||
导出
|
重置箱信息
|
||||||
</summary>
|
</summary>
|
||||||
<param name="dto"></param>
|
<param name="dto"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
|
|||||||
@@ -2892,6 +2892,13 @@
|
|||||||
<param name="isTransaction"></param>
|
<param name="isTransaction"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:WMS.Web.Domain.Infrastructure.IInStockRepositories.GetInstockBoxIds(System.Collections.Generic.List{System.Int32})">
|
||||||
|
<summary>
|
||||||
|
获取-已入库的箱
|
||||||
|
</summary>
|
||||||
|
<param name="boxIds"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="T:WMS.Web.Domain.Infrastructure.IInStockTaskBoxRepositories">
|
<member name="T:WMS.Web.Domain.Infrastructure.IInStockTaskBoxRepositories">
|
||||||
<summary>
|
<summary>
|
||||||
箱与任务单绑定(收货)关系表-仓储接口
|
箱与任务单绑定(收货)关系表-仓储接口
|
||||||
|
|||||||
@@ -123,5 +123,11 @@ namespace WMS.Web.Domain.Infrastructure
|
|||||||
/// <param name="isTransaction"></param>
|
/// <param name="isTransaction"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
Task<bool> UpdateRange(List<InStockDetails> entitys, bool isTransaction = true);
|
Task<bool> UpdateRange(List<InStockDetails> entitys, bool isTransaction = true);
|
||||||
|
/// <summary>
|
||||||
|
/// 获取-已入库的箱
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="boxIds"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<List<int>> GetInstockBoxIds(List<int> boxIds);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -410,7 +410,7 @@ namespace WMS.Web.Repositories
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public async Task<InStockErpDetails> GetLastBillNo()
|
public async Task<InStockErpDetails> GetLastBillNo()
|
||||||
{
|
{
|
||||||
var entity = await _context.InStockErpDetails.Where(x=>!string.IsNullOrEmpty(x.BatchBillNo)).OrderByDescending(x => x.Id).FirstOrDefaultAsync();
|
var entity = await _context.InStockErpDetails.Where(x => !string.IsNullOrEmpty(x.BatchBillNo)).OrderByDescending(x => x.Id).FirstOrDefaultAsync();
|
||||||
return entity;
|
return entity;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -422,7 +422,7 @@ namespace WMS.Web.Repositories
|
|||||||
public async Task<List<InStockErpDetails>> GetErpDetails(List<string> sourceBillNos)
|
public async Task<List<InStockErpDetails>> GetErpDetails(List<string> sourceBillNos)
|
||||||
{
|
{
|
||||||
var entity = await _context.InStockErpDetails.Where(x => sourceBillNos.Contains(x.SourceBillNo) && x.SuccessSync == SyncStatus.Success).ToListAsync();
|
var entity = await _context.InStockErpDetails.Where(x => sourceBillNos.Contains(x.SourceBillNo) && x.SuccessSync == SyncStatus.Success).ToListAsync();
|
||||||
return entity.Clone() ;
|
return entity.Clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -441,7 +441,7 @@ namespace WMS.Web.Repositories
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public async Task<List<InStockDetails>> GetNotSendDetails()
|
public async Task<List<InStockDetails>> GetNotSendDetails()
|
||||||
{
|
{
|
||||||
var result= await _context.InStockDetails.Where(x =>x.IsHasSend != null && x.IsHasSend == false && !string.IsNullOrEmpty(x.CustomerCode)).ToListAsync();
|
var result = await _context.InStockDetails.Where(x => x.IsHasSend != null && x.IsHasSend == false && !string.IsNullOrEmpty(x.CustomerCode)).ToListAsync();
|
||||||
return result.Clone();
|
return result.Clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -487,5 +487,14 @@ namespace WMS.Web.Repositories
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 获取已入库的箱
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="boxIds"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<List<int>> GetInstockBoxIds(List<int> boxIds)
|
||||||
|
{
|
||||||
|
return await _context.InStockDetails.Where(x => boxIds.Contains(x.BoxId)).Select(s => s.BoxId).ToListAsync();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user