diff --git a/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs b/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs
index d8c97553..8295b209 100644
--- a/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs
+++ b/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs
@@ -50,6 +50,26 @@ namespace WMS.Web.Domain.Entitys
[Column("DestBoxId")]
public int DestBoxId { get; set; }
///
+ /// 原箱仓位
+ ///
+ [Column("SrcSubStockId")]
+ public int SrcSubStockId { get; set; }
+ ///
+ /// 目标箱的仓库或重新上架选择仓位对应的仓库
+ ///
+ [Column("DestStockCode")]
+ public string DestStockCode { get; set; }
+ ///
+ /// 目标箱仓位或重新上架选择仓位
+ ///
+ [Column("DestSubStockId")]
+ public string DestSubStockId { get; set; }
+ ///
+ /// 目标箱组织编码
+ ///
+ [Column("DestBoxOrgCode")]
+ public string DestBoxOrgCode { get; set; }
+ ///
/// 操作人
///
[Column("CreatorId")]
diff --git a/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs b/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs
index 6b0c4ed6..1ce60a7c 100644
--- a/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs
+++ b/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs
@@ -31,6 +31,11 @@ namespace WMS.Web.Domain.Entitys
[Column("BoxId")]
public int BoxId { get; set; }
///
+ /// 组织编码
+ ///
+ [Column("OrgCode")]
+ public string OrgCode { get; set; }
+ ///
/// 仓库
///
[Column("StockCode")]
diff --git a/src/WMS.Web.Domain/Entitys/TakeStock.cs b/src/WMS.Web.Domain/Entitys/TakeStock.cs
index 911f0022..aea46b4d 100644
--- a/src/WMS.Web.Domain/Entitys/TakeStock.cs
+++ b/src/WMS.Web.Domain/Entitys/TakeStock.cs
@@ -51,6 +51,11 @@ namespace WMS.Web.Domain.Entitys
[Column("MaterialId")]
public int MaterialId { get; set; }
///
+ /// 组织编码
+ ///
+ [Column("OrgCode")]
+ public string OrgCode { get; set; }
+ ///
/// 仓库
///
[Column("StockCode")]
diff --git a/src/WMS.Web.Domain/Services/OutStockService.cs b/src/WMS.Web.Domain/Services/OutStockService.cs
index f6942c4d..f112035e 100644
--- a/src/WMS.Web.Domain/Services/OutStockService.cs
+++ b/src/WMS.Web.Domain/Services/OutStockService.cs
@@ -36,11 +36,12 @@ namespace WMS.Web.Domain.Services
private readonly IErpService _erpService;
private readonly ISerialNumberService _serialNumberService;
private readonly IBoxInventoryService _boxInventoryService;
+ private readonly IInventoryInOutDetailsService _inventoryInOutDetailsService;
public OutStockService(IMapper mapper, ILoginService loginService,
IBasicsRepositories transactionRepositories,
IOutStockRepositories outStockRepositories, IOutStockTaskRepositories outStockTaskRepositories,
IOutStockTaskService outStockTaskService, IErpService erpService, ISerialNumberService serialNumberService,
- IBoxInventoryService boxInventoryService)
+ IBoxInventoryService boxInventoryService, IInventoryInOutDetailsService inventoryInOutDetailsService)
{
_mapper = mapper;
_loginService = loginService;
@@ -51,6 +52,7 @@ namespace WMS.Web.Domain.Services
_erpService = erpService;
_serialNumberService = serialNumberService;
_boxInventoryService = boxInventoryService;
+ _inventoryInOutDetailsService = inventoryInOutDetailsService;
}
///
/// 出库单
@@ -120,6 +122,19 @@ namespace WMS.Web.Domain.Services
};
inventoryList.Add(inventory);
}
+
+ List generateList = dto.Details.Select(s => new InventoryInOutDetailsGenerateDto()
+ {
+ BoxId = s.BoxId,
+ InventoryInOutType = 2,
+ OrderBillNo = outStockTask.BillNo,
+ Qty = s.Qty,
+ StockCode = outStockTask.StockCode,
+ MaterialId = s.MaterialId,
+ SubStockId = s.SubStockId,
+ OrgCode = outStockTask.OrgCode,
+ OrderType = 1,
+ }).ToList();
#endregion
IDbContextTransaction _transaction = _transactionRepositories.GetTransaction();
@@ -143,6 +158,11 @@ namespace WMS.Web.Domain.Services
var res_change = await _serialNumberService.OutStock(entity, loginInfo, false);
if (!res_change.IsSuccess) res_Rollback = res_change;
}
+ if (res_Rollback.IsSuccess)
+ {
+ res_Inventory = await _inventoryInOutDetailsService.GenerateInOrOutDetails(generateList, false);
+ if (!res_Inventory.IsSuccess) res_Rollback = res_Inventory;
+ }
//提交事务
isSuccess = _transactionRepositories.CommitTransaction(res_Rollback.IsSuccess ? false : true, _transaction);
if (!res_Rollback.IsSuccess) return res_Rollback;