库存-添加-组织维度
This commit is contained in:
@@ -2616,6 +2616,11 @@
|
||||
物料ID
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Inventory.InventoryDetailsGenerateDto.OrgCode">
|
||||
<summary>
|
||||
组织编码
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Inventory.InventoryDetailsGenerateDto.StockCode">
|
||||
<summary>
|
||||
仓库
|
||||
@@ -2706,6 +2711,11 @@
|
||||
物料收发明细-生成dto
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Inventory.InventoryInOutDetailsGenerateDto.OrgCode">
|
||||
<summary>
|
||||
组织编码
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Inventory.InventoryInOutDetailsGenerateDto.StockCode">
|
||||
<summary>
|
||||
仓库编码
|
||||
|
||||
@@ -1953,13 +1953,14 @@
|
||||
<param name="isTransaction"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Infrastructure.IInventoryDetailsRepositories.GetListBy(System.Collections.Generic.List{System.Int32},System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.Int32})">
|
||||
<member name="M:WMS.Web.Domain.Infrastructure.IInventoryDetailsRepositories.GetListBy(System.Collections.Generic.List{System.Int32},System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.Int32},System.Collections.Generic.List{System.String})">
|
||||
<summary>
|
||||
列表-根据物料和仓库和仓位
|
||||
</summary>
|
||||
<param name="materialIds"></param>
|
||||
<param name="stockCodes"></param>
|
||||
<param name="subStockIds"></param>
|
||||
<param name="orgCodes"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:WMS.Web.Domain.Infrastructure.IInventoryInOutDetailsRepositories">
|
||||
|
||||
@@ -14,6 +14,11 @@ namespace WMS.Web.Core.Dto.Inventory
|
||||
/// </summary>
|
||||
public int MaterialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组织编码
|
||||
/// </summary>
|
||||
public string OrgCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 仓库
|
||||
/// </summary>
|
||||
|
||||
@@ -9,6 +9,11 @@ namespace WMS.Web.Core.Dto.Inventory
|
||||
/// </summary>
|
||||
public class InventoryInOutDetailsGenerateDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 组织编码
|
||||
/// </summary>
|
||||
public string OrgCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 仓库编码
|
||||
/// </summary>
|
||||
|
||||
@@ -42,7 +42,8 @@ namespace WMS.Web.Domain.Infrastructure
|
||||
/// <param name="materialIds"></param>
|
||||
/// <param name="stockCodes"></param>
|
||||
/// <param name="subStockIds"></param>
|
||||
/// <param name="orgCodes"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<InventoryDetails>> GetListBy(List<int> materialIds, List<string> stockCodes, List<int> subStockIds);
|
||||
Task<List<InventoryDetails>> GetListBy(List<int> materialIds, List<string> stockCodes, List<int> subStockIds, List<string> orgCodes);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -630,7 +630,7 @@ namespace WMS.Web.Domain.Services
|
||||
/// <param name="delete_ids"></param>
|
||||
/// <param name="update_entitys"></param>
|
||||
/// <returns></returns>
|
||||
public Result GenerateOutStockBox(BoxInventoryGenerateDto dto,List<BoxInventory> boxInventorys,List<int> delete_ids, List<BoxInventory> update_entitys)
|
||||
private Result GenerateOutStockBox(BoxInventoryGenerateDto dto,List<BoxInventory> boxInventorys,List<int> delete_ids, List<BoxInventory> update_entitys)
|
||||
{
|
||||
//3.1出库的时候:箱一定是存在于箱库存当中的,没有则返回提示“箱库存数据不存在,请稍候再试!”
|
||||
// 获取箱库存
|
||||
@@ -688,7 +688,7 @@ namespace WMS.Web.Domain.Services
|
||||
/// <param name="add_entitys"></param>
|
||||
/// <param name="update_entitys"></param>
|
||||
/// <returns></returns>
|
||||
public Result GenerateInStockBox(BoxInventoryGenerateDto dto, List<BoxInventory> boxInventorys, List<BoxInventory> add_entitys, List<BoxInventory> update_entitys)
|
||||
private Result GenerateInStockBox(BoxInventoryGenerateDto dto, List<BoxInventory> boxInventorys, List<BoxInventory> add_entitys, List<BoxInventory> update_entitys)
|
||||
{
|
||||
//按箱上架入库
|
||||
if (dto.InventoryInOutMethod == (int)InventoryInOutMethod.Box)
|
||||
@@ -756,6 +756,7 @@ namespace WMS.Web.Domain.Services
|
||||
foreach (var dtoDet in dto.Details)
|
||||
{
|
||||
var invDto = new InventoryDetailsGenerateDto();
|
||||
invDto.OrgCode = dto.OrgCode;
|
||||
invDto.InventoryInOutType = dto.InventoryInOutType;
|
||||
invDto.StockCode = dto.StockCode;
|
||||
invDto.SubStockId = dto.SubStockId ?? 0;
|
||||
|
||||
@@ -41,10 +41,11 @@ namespace WMS.Web.Domain.Services
|
||||
public async Task<Result> GenerateInventoryDetails(List<InventoryDetailsGenerateDto> dtos,bool isTransaction)
|
||||
{
|
||||
//找到物料对应的即时库存明细
|
||||
var orgCodes = dtos.Select(x => x.OrgCode).ToList();
|
||||
var materialIds = dtos.Select(x => x.MaterialId).ToList();
|
||||
var stockCodes = dtos.GroupBy(x => x.StockCode).Select(x => x.Key).ToList();
|
||||
var subStockIds = dtos.GroupBy(x => x.SubStockId).Select(x => x.Key).ToList();
|
||||
var inventoryDetails = await _inventoryDetailsRepositories.GetListBy(materialIds, stockCodes, subStockIds);
|
||||
var inventoryDetails = await _inventoryDetailsRepositories.GetListBy(materialIds, stockCodes, subStockIds, orgCodes);
|
||||
|
||||
|
||||
var add_entitys = new List<InventoryDetails>();
|
||||
@@ -54,7 +55,11 @@ namespace WMS.Web.Domain.Services
|
||||
foreach (var dto in dtos)
|
||||
{
|
||||
//2.1当前的即时库存明细
|
||||
var currentDetail = inventoryDetails.Where(x => x.MaterialId == dto.MaterialId && x.StockCode == dto.StockCode && x.SubStockId == dto.SubStockId).FirstOrDefault();
|
||||
var currentDetail = inventoryDetails.Where(x =>
|
||||
x.MaterialId == dto.MaterialId &&
|
||||
x.StockCode == dto.StockCode &&
|
||||
x.SubStockId == dto.SubStockId &&
|
||||
x.OrgCode==dto.OrgCode).FirstOrDefault();
|
||||
if (currentDetail == null)
|
||||
{
|
||||
//出库的时候,判断是否有库存,没有就返回错误
|
||||
|
||||
@@ -44,10 +44,11 @@ namespace WMS.Web.Domain.Services
|
||||
public async Task<Result> GenerateInOrOutDetails(List<InventoryInOutDetailsGenerateDto> dtos,bool isTransaction)
|
||||
{
|
||||
//找到物料对应的即时库存明细
|
||||
var orgCodes = dtos.Select(x => x.OrgCode).ToList();
|
||||
var materialIds = dtos.Select(x => x.MaterialId).ToList();
|
||||
var stockCodes = dtos.GroupBy(x => x.StockCode).Select(x => x.Key).ToList();
|
||||
var subStockIds = dtos.GroupBy(x => x.SubStockId).Select(x => x.Key).ToList();
|
||||
var inventoryDetails=await _inventoryDetailsRepositories.GetListBy(materialIds, stockCodes, subStockIds);
|
||||
var inventoryDetails=await _inventoryDetailsRepositories.GetListBy(materialIds, stockCodes, subStockIds, orgCodes);
|
||||
|
||||
//1.创建要新增的对象
|
||||
var add_entitys = new List<InventoryInOutDetails>();
|
||||
@@ -56,7 +57,11 @@ namespace WMS.Web.Domain.Services
|
||||
foreach (var dto in dtos)
|
||||
{
|
||||
//2.1当前的即时库存明细
|
||||
var currentDetail= inventoryDetails.Where(x => x.MaterialId == dto.MaterialId && x.StockCode == dto.StockCode && x.SubStockId == dto.SubStockId).FirstOrDefault();
|
||||
var currentDetail= inventoryDetails.Where(x =>
|
||||
x.MaterialId == dto.MaterialId &&
|
||||
x.StockCode == dto.StockCode &&
|
||||
x.SubStockId == dto.SubStockId &&
|
||||
x.OrgCode==dto.OrgCode).FirstOrDefault();
|
||||
|
||||
//2.2组装物料收发明细实体
|
||||
var entity = _mapper.Map<InventoryInOutDetails>(dto);
|
||||
|
||||
@@ -175,11 +175,13 @@ namespace WMS.Web.Repositories
|
||||
/// <param name="materialIds"></param>
|
||||
/// <param name="stockCodes"></param>
|
||||
/// <param name="subStockIds"></param>
|
||||
/// <param name="orgCodes"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<List<InventoryDetails>> GetListBy(List<int> materialIds, List<string> stockCodes, List<int> subStockIds)
|
||||
public async Task<List<InventoryDetails>> GetListBy(List<int> materialIds, List<string> stockCodes, List<int> subStockIds, List<string> orgCodes)
|
||||
{
|
||||
return await _context.InventoryDetails.Where(x => materialIds.Contains(x.MaterialId) &&
|
||||
stockCodes.Contains(x.StockCode) &&
|
||||
orgCodes.Contains(x.OrgCode) &&
|
||||
subStockIds.Contains(x.SubStockId) ).ToListAsync();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user