改箱修改参数

This commit is contained in:
18942506660
2023-11-22 15:57:45 +08:00
parent c33f2282e7
commit 7b26518dfe
2 changed files with 12 additions and 23 deletions

View File

@@ -20,24 +20,10 @@ namespace WMS.Web.Core.Dto.ChangeBoxRecord
[Required(ErrorMessage = "目标箱子不能为空")]
public int DestBoxId { get; set; }
/// <summary>
/// 目标箱的仓库或重新上架选择仓位对应的仓库
/// </summary>
[Required(ErrorMessage = "仓库不能为空")]
public string StockCode { get; set; }
/// <summary>
/// 目标箱仓位或重新上架选择仓位
///</summary>
[Required(ErrorMessage = "仓位不能为空")]
public string SubStockId { get; set; }
/// <summary>
/// 原箱组织编码
/// </summary>
public string SrcBoxOrgCode { get; set; }
/// <summary>
/// 目标箱组织编码
/// </summary>
[Required(ErrorMessage = "目标箱组织不能为空")]
public string DestBoxOrgCode { get; set; }
public int SubStockId { get; set; }
/// <summary>
/// 明细
/// </summary>

View File

@@ -24,20 +24,20 @@ namespace WMS.Web.Domain.Services
private readonly IMapper _mapper;
private readonly ILoginService _loginService;
private readonly IChangeBoxRecordRepositories _changeBoxRecordRepositories;
public readonly IBasicsRepositories _transactionRepositories;
public readonly IBasicsRepositories _basbicsRepositories;
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,
IChangeBoxRecordRepositories changeBoxRecordRepositories, IBasicsRepositories basbicsRepositories,
IMoveBoxRecordRepositories moveBoxRecordRepositories, IBoxRepositories boxRepositories,
ISerialNumberService serialNumberService, IBoxInventoryService boxInventoryService)
{
_mapper = mapper;
_loginService = loginService;
_changeBoxRecordRepositories = changeBoxRecordRepositories;
_transactionRepositories = transactionRepositories;
_basbicsRepositories = basbicsRepositories;
_moveBoxRecordRepositories = moveBoxRecordRepositories;
_boxRepositories = boxRepositories;
_serialNumberService = serialNumberService;
@@ -76,13 +76,16 @@ namespace WMS.Web.Domain.Services
boxList.Add(destBox);
//2.修改库存时需要区别 有原箱和没有原箱的情况
var subStock= await _basbicsRepositories.GetSubUcStockAsync(dto.SubStockId, loginInfo.UserInfo.CompanyId);
//var entity = _mapper.Map<ChangeBoxRecord>(dto);\
List<ChangeBoxRecord> list = new List<ChangeBoxRecord>();
foreach (var d in dto.Details)
{
ChangeBoxRecord entity = new ChangeBoxRecord();
entity.Create(loginInfo.UserInfo.StaffId, d.Qty, d.MaterialId, d.SerialNumbers, dto.SrcBoxId, dto.DestBoxId);
entity.DestSubStockId = dto.SubStockId;
entity.DestBoxOrgCode = subStock.ErpOrgCode;
entity.DestStockCode = subStock.StockCode;
list.Add(entity);
}
var inventoryList = new List<BoxInventoryChangeGenerateDto>();
@@ -92,7 +95,7 @@ namespace WMS.Web.Domain.Services
//需要修改库存
IDbContextTransaction _transaction = null;
if (isTransaction)
_transaction = _transactionRepositories.GetTransaction();
_transaction = _basbicsRepositories.GetTransaction();
Result res_Rollback = Result.ReSuccess();
bool isSuccess = true;
var res_Inventory = await _boxInventoryService.GenerateChangeBox(inventoryList, false);
@@ -115,7 +118,7 @@ namespace WMS.Web.Domain.Services
//提交事务
if (isTransaction)
{
isSuccess = _transactionRepositories.CommitTransaction(res_Rollback.IsSuccess ? false : true, _transaction);
isSuccess = _basbicsRepositories.CommitTransaction(res_Rollback.IsSuccess ? false : true, _transaction);
if (!res_Rollback.IsSuccess) return res_Rollback;
if (!isSuccess)
return Result.ReFailure(ResultCodes.DateWriteError);
@@ -142,7 +145,7 @@ namespace WMS.Web.Domain.Services
var inventoryList = _mapper.Map<List<BoxInventoryMoveGenerateDto>>(dto);
inventoryList.ForEach(f => f.InventoryInOutType = IsUp == true ? 1 : 2);
IDbContextTransaction _transaction = _transactionRepositories.GetTransaction();
IDbContextTransaction _transaction = _basbicsRepositories.GetTransaction();
bool isSuccess = true;
Result res_Rollback = Result.ReSuccess();
var res_Inventory = await _boxInventoryService.GenerateMoveBox(inventoryList, false);
@@ -159,7 +162,7 @@ namespace WMS.Web.Domain.Services
if (!res_change.IsSuccess) res_Rollback = res_change;
}
//提交事务
isSuccess = _transactionRepositories.CommitTransaction(res_Rollback.IsSuccess ? false : true, _transaction);
isSuccess = _basbicsRepositories.CommitTransaction(res_Rollback.IsSuccess ? false : true, _transaction);
if (!res_Rollback.IsSuccess) return res_Rollback;
if (!isSuccess)
return Result.ReFailure(ResultCodes.DateWriteError);