盘点添加箱信息
This commit is contained in:
@@ -78,8 +78,9 @@ namespace WMS.Web.Domain.Services
|
||||
//V01.05.00如果扫的内容不是CTN开头则提示"请扫描箱码作为箱号"
|
||||
if (string.IsNullOrEmpty(d.DestBoxBillNo) || d.DestBoxBillNo.Length <= 3)
|
||||
return Result.ReFailure(ResultCodes.BoxBillNoError);
|
||||
if (d.DestBoxBillNo.Substring(0, 3) != "CTN")
|
||||
return Result.ReFailure(ResultCodes.BoxBillNoError);
|
||||
//v1.0.6取消限制
|
||||
//if (d.DestBoxBillNo.Substring(0, 3) != "CTN")
|
||||
// return Result.ReFailure(ResultCodes.BoxBillNoError);
|
||||
|
||||
var res = await CreateBox(d);
|
||||
if (!res.IsSuccess) return res;
|
||||
|
||||
@@ -43,13 +43,14 @@ namespace WMS.Web.Domain.Services
|
||||
private readonly ISerialNumberService _serialNumberService;
|
||||
private readonly IServiceScopeFactory _serviceScopeFactory;
|
||||
private readonly ISerialNumbersRepositories _serialNumberRepositories;
|
||||
private readonly IBoxRepositories _boxRepositories;
|
||||
public TakeStockService(IMapper mapper, ILoginService loginService,
|
||||
IBasicsRepositories transactionRepositories,
|
||||
ITakeStockRepositories takeStockRepositories, ILoginRepositories loginRepositories,
|
||||
ISingleDataService singleDataService, IErpService erpService, ILogger<TakeStockService> logger,
|
||||
IBoxInventoryService boxInventoryService, IErpBasicDataExtendService erpBasicDataExtendService,
|
||||
ISerialNumberService serialNumberService, IServiceScopeFactory serviceScopeFactory,
|
||||
ISerialNumbersRepositories serialNumberRepositories)
|
||||
ISerialNumbersRepositories serialNumberRepositories, IBoxRepositories boxRepositories)
|
||||
{
|
||||
_mapper = mapper;
|
||||
_loginService = loginService;
|
||||
@@ -64,6 +65,7 @@ namespace WMS.Web.Domain.Services
|
||||
_serialNumberService = serialNumberService;
|
||||
_serviceScopeFactory = serviceScopeFactory;
|
||||
_serialNumberRepositories = serialNumberRepositories;
|
||||
_boxRepositories = boxRepositories;
|
||||
}
|
||||
/// <summary>
|
||||
/// 保存
|
||||
@@ -78,6 +80,25 @@ namespace WMS.Web.Domain.Services
|
||||
if (dto.Count() == 0) return Result.ReSuccess();
|
||||
if (dto.GroupBy(g => g.BoxId).Count() > 1)
|
||||
return Result.ReFailure(ResultCodes.TakeStockBoxError);
|
||||
//v1.0.6 如果箱子不存在则添加箱信息
|
||||
var dto_f = dto.First();
|
||||
if (dto_f.BoxId == 0)
|
||||
{
|
||||
var dBox = await _boxRepositories.GetByNo(dto_f.BoxBillNo);
|
||||
if (dBox != null) return Result.ReFailure(ResultCodes.TakeStockBoxIdError);
|
||||
dBox = new Box()
|
||||
{
|
||||
BoxBillNo = dto_f.BoxBillNo,
|
||||
CompleteCartonTime = DateTime.Now,
|
||||
CreateUser = loginInfo.UserInfo.Nickname,
|
||||
CompleteCartonUser = loginInfo.UserInfo.Nickname,
|
||||
CreateTime = DateTime.Now
|
||||
};
|
||||
dBox = await _boxRepositories.Add(dBox);
|
||||
if(dBox==null)return Result.ReFailure(ResultCodes.DateWriteError);
|
||||
dto.ForEach(f => f.BoxId = dBox.Id);
|
||||
}
|
||||
|
||||
var serialNumbersBoxInventoryList = await GetSerialNumbersBoxInventory(dto);
|
||||
|
||||
List<TakeStock> list = new List<TakeStock>();
|
||||
|
||||
Reference in New Issue
Block a user