This commit is contained in:
tongfei
2023-11-17 09:39:01 +08:00
3 changed files with 38 additions and 3 deletions

View File

@@ -3086,6 +3086,11 @@
箱号ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordRequest.StockCode">
<summary>
仓库
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordRequest.SubStockId">
<summary>
仓位ID

View File

@@ -16,6 +16,11 @@ namespace WMS.Web.Core.Dto.MoveBoxRecord
[Required(ErrorMessage = "箱号不能为空")]
public int BoxId { get; set; }
/// <summary>
/// 仓库
///</summary>
[Required(ErrorMessage = "仓库不能为空")]
public string StockCode { get; set; }
/// <summary>
/// 仓位ID
/// </summary>
[Required(ErrorMessage = "仓位不能为空")]

View File

@@ -6,6 +6,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WMS.Web.Core.Dto.ChangeBoxRecord;
using WMS.Web.Core.Dto.Inventory;
using WMS.Web.Core.Dto.Login;
using WMS.Web.Core.Dto.MoveBoxRecord;
using WMS.Web.Core.Internal.Results;
@@ -27,10 +28,11 @@ namespace WMS.Web.Domain.Services
private readonly IMoveBoxRecordRepositories _moveBoxRecordRepositories;
private readonly IBoxRepositories _boxRepositories;
private readonly ISerialNumberService _serialNumberService;
private readonly IBoxInventoryService _boxInventoryService;
public ChangeMoveBoxService(IMapper mapper, ILoginService loginService,
IChangeBoxRecordRepositories changeBoxRecordRepositories, IBasicsRepositories transactionRepositories,
IMoveBoxRecordRepositories moveBoxRecordRepositories, IBoxRepositories boxRepositories,
ISerialNumberService serialNumberService)
ISerialNumberService serialNumberService, IBoxInventoryService boxInventoryService)
{
_mapper = mapper;
_loginService = loginService;
@@ -39,6 +41,7 @@ namespace WMS.Web.Domain.Services
_moveBoxRecordRepositories = moveBoxRecordRepositories;
_boxRepositories = boxRepositories;
_serialNumberService = serialNumberService;
_boxInventoryService = boxInventoryService;
}
/// <summary>
/// 改箱保存
@@ -82,6 +85,19 @@ namespace WMS.Web.Domain.Services
entity.Create(loginInfo.UserInfo.StaffId, d.Qty, d.MaterialId, d.SerialNumbers, dto.SrcBoxId, dto.DestBoxId);
list.Add(entity);
}
var inventoryList = new List<BoxInventoryChangeGenerateDto>();
var inventoryDetails = dto.Details.Select(s => new BoxInventoryDetailsChangeGenerateDto()
{
MaterialId = s.MaterialId,
Qty = s.Qty,
SerialNumbers = s.SerialNumbers
}).ToList();
BoxInventoryChangeGenerateDto inventory = new BoxInventoryChangeGenerateDto()
{
BoxId = dto.SrcBoxId,
TargetBoxId = dto.DestBoxId,
Details = inventoryDetails
};
//需要填写序列号
//需要修改库存
@@ -90,6 +106,8 @@ namespace WMS.Web.Domain.Services
_transaction = _transactionRepositories.GetTransaction();
bool isRollback = false;
bool isSuccess = true;
var res_Inventory = await _boxInventoryService.GenerateChangeBox(inventoryList, false);
if (!res_Inventory.IsSuccess) isRollback = true;
isSuccess = await _changeBoxRecordRepositories.AddRange(list, false);
if (!isSuccess) isRollback = true;
var res_change = await _serialNumberService.ChangeBox(list, loginInfo, false);
@@ -124,12 +142,19 @@ namespace WMS.Web.Domain.Services
entity.Create(IsUp == true ? MoveBoxType.Up : MoveBoxType.Down, d.BoxId, d.SubStockId, loginInfo.UserInfo.StaffId);
entityList.Add(entity);
}
//2.需要修改库存
var inventoryList = dto.Select(s => new BoxInventoryMoveGenerateDto()
{
BoxId = s.BoxId,
SubStockId = s.SubStockId,
InventoryInOutType = IsUp == true ? 1 : 2,
StockCode=s.StockCode
}).ToList();
IDbContextTransaction _transaction = _transactionRepositories.GetTransaction();
bool isRollback = false;
bool isSuccess = true;
var res_Inventory = await _boxInventoryService.GenerateMoveBox(inventoryList, false);
if (!res_Inventory.IsSuccess) isRollback = true;
isSuccess = await _moveBoxRecordRepositories.AddRange(entityList, true);
if (!isSuccess) isRollback = true;
var res_change = await _serialNumberService.MoveBox(entityList, loginInfo, false);