This commit is contained in:
tongfei
2024-03-18 11:03:51 +08:00
parent c0520b5cd3
commit 896450fd23
49 changed files with 394 additions and 536 deletions

View File

@@ -67,11 +67,13 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
{
//materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
if (materials.Count != 0)
{
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
}
}
//组织集合
@@ -96,19 +98,17 @@ namespace WMS.Web.Repositories
query = query.Where(w => w.order.StockCode == splitStrs[0] && w.order.OrgCode == splitStrs[1]);
}
if (dto.SubStockId.HasValue)
query = query.Where(w => w.order.SubStockId == dto.SubStockId.Value);
if (!string.IsNullOrEmpty(dto.SubStockCode))
query = query.Where(w => w.order.SubStockCode == dto.SubStockCode);
//物料ID在模糊后的物料
if (!string.IsNullOrEmpty(dto.MaterialNumber))
{
if (materials != null && materials.Count != 0)
{
var mids = materials.Select(x => x.MaterialId).ToList();
query = query.Where(w => mids.Contains(w.detail.MaterialId));
var mids = materials.Select(x => x.MaterialNumber).ToList();
query = query.Where(w => mids.Contains(w.detail.MaterialNumber));
}
else
query = query.Where(w => w.detail.MaterialId == 0);
}
@@ -118,11 +118,11 @@ namespace WMS.Web.Repositories
Id = s.order.Id,
DetailsId = s.detail.Id,
BoxBillNo = s.box.BoxBillNo,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.detail.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialNumber),
MaterialNumber = s.detail.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialNumber),
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, companyId, s.order.StockCode+s.order.OrgCode),
SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, companyId, s.order.SubStockId),
SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, companyId, s.order.SubStockCode),
SerialNumbers=(string.Join(",",s.detail.SerialNumbers)).TrimEnd(','),
Org = _erpBasicDataExtendService.GetOrgName(orgs, s.order.OrgCode),
Qty = s.detail.Qty,
@@ -154,13 +154,13 @@ namespace WMS.Web.Repositories
if (response != null)
{
response.Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, response.StockCode + response.OrgCode);
response.SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, response.SubStockId);
response.SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, response.SubStockCode);
response.Details = _mapper.Map<List<BoxInventoryDetailsResponse>>(entity.Details);
response.Details.ForEach(x =>
{
x.MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, x.MaterialId);
x.MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, x.MaterialId);
x.Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, x.MaterialId);
x.MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, x.MaterialNumber);
x.MaterialNumber = x.MaterialNumber;
x.Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, x.MaterialNumber);
});
response.TotalQty = response.Details.Sum(x=>x.Qty);
}
@@ -240,7 +240,6 @@ namespace WMS.Web.Repositories
List<int> list = entitys.Select(s => s.Id).ToList();
var res = await _context.BoxInventory.Include(x => x.Details).Where(f => list.Contains(f.Id)).ToListAsync();
_mapper.Map(entitys, res);
//_mapper.ToMapList(entitys.SelectMany(x=>x.Details).ToList(), res.SelectMany(x=>x.Details).ToList());
var tt= await _context.SaveChangesAsync();
if (_transaction != null)
_transaction.Commit();

View File

@@ -284,11 +284,13 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
{
//materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
if (materials.Count != 0)
{
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
}
}
if (companyId == 0)
@@ -314,11 +316,9 @@ namespace WMS.Web.Repositories
{
if (materials != null && materials.Count != 0)
{
var mids = materials.Select(x => x.MaterialId).ToList();
query = query.Where(w => mids.Contains(w.detail.MaterialId));
var mids = materials.Select(x => x.MaterialNumber).ToList();
query = query.Where(w => mids.Contains(w.detail.MaterialNumber));
}
else
query = query.Where(w => w.detail.MaterialId == 0);
}
if (!string.IsNullOrEmpty(dto.Creator))
@@ -365,12 +365,11 @@ namespace WMS.Web.Repositories
BillNo = s.order.BillNo,
Type = s.order.Type.GetRemark(),
SourceBillNo = s.detail.SourceBillNo,
MaterialId=s.detail.MaterialId,
Supplier = _erpBasicDataExtendService.GetSupplierName(suppliers, s.detail.SupplierId),
Org = _erpBasicDataExtendService.GetOrgName(orgs, s.order.OrgId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.detail.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialNumber),
MaterialNumber = s.detail.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialNumber),
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, companyId, s.order.StockCode + s.order.OrgCode),
Qty = s.detail.Qty,
Creator = _singleDataService.GetSingleData(SingleAction.Staffs, companyId, s.order.CreatorId),
@@ -387,7 +386,7 @@ namespace WMS.Web.Repositories
var taskDetailsList= taskList.SelectMany(x => x.Details).Where(x=>x.AccruedQty<=0).ToList();
list.ForEach(x =>
{
var isHave= taskDetailsList.Where(t => t.MaterialId == x.MaterialId && t.Fid == x.TaskId).Any();
var isHave= taskDetailsList.Where(t => t.MaterialNumber == x.MaterialNumber && t.Fid == x.TaskId).Any();
if (isHave)
x.SuccessSync = "--";
});

View File

@@ -93,11 +93,6 @@ namespace WMS.Web.Repositories
/// <returns></returns>
public async Task<List<InStockTask>> GetList(List<int> ids)
{
//var entitys = await _context.InStockTask
// .Include(s => s.Details.Where(x=>x.AccruedQty>0))
// .Where(f => ids.Contains(f.Id) && f.Details.Where(x=>x.AccruedQty>0).Count()>0)
// .ToListAsync();
//return entitys;
var entitys = await _context.InStockTask
.Include(s => s.Details)
.Where(f => ids.Contains(f.Id))
@@ -165,17 +160,15 @@ namespace WMS.Web.Repositories
SupplierId = s.detail.SupplierId,
OrgId = s.detail.OrgId,
SourceBillNo = s.order.SourceBillNo,
MaterialId = s.detail.MaterialId,
StockCode = s.detail.StockCode,
StockName = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, s.detail.StockCode + s.detail.OrgCode),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.detail.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialNumber),
MaterialNumber = s.detail.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialNumber),
Qty = s.detail.AccruedQty,
DeliveredQty = s.detail.DeliveredQty,
ReceiveQty = s.detail.ReceiveQty,
//采购:可入库数量=应入库数量-收货数量-已交数量+该明细的入库数量之和;
//AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty- s.detail.DeliveredQty+s.detail.RealityQty,
AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty - (s.detail.DeliveredQty> s.detail.RealityQty? s.detail.DeliveredQty : s.detail.RealityQty),
Remark = s.detail.Remark,
ErpDetailId=s.detail.ErpDetailId
@@ -189,7 +182,7 @@ namespace WMS.Web.Repositories
{
list.ForEach(x =>
{
var current_instock_dets = instockDets.Where(t => t.ErpDetailId == x.ErpDetailId && t.MaterialId == x.MaterialId && t.Qty != 0).ToList();
var current_instock_dets = instockDets.Where(t => t.ErpDetailId == x.ErpDetailId && t.MaterialNumber == x.MaterialNumber && t.Qty != 0).ToList();
if (current_instock_dets != null && current_instock_dets.Count != 0 && x.ErpDetailId == current_instock_dets.FirstOrDefault().ErpDetailId)
{
//+该明细的入库数量之和;在这里处理
@@ -200,7 +193,6 @@ namespace WMS.Web.Repositories
}
return list;
}
/// <summary>
@@ -244,12 +236,11 @@ namespace WMS.Web.Repositories
SupplierId = s.SupplierId,
OrgId = s.OrgId,
OrgCode=s.OrgCode,
MaterialId = s.MaterialId,
StockCode = s.StockCode,
StockName = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, s.StockCode+s.OrgCode),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialNumber),
MaterialNumber = s.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialNumber),
Qty = s.AccruedQty,
DeliveredQty = s.DeliveredQty,
//非采购:可入库数量=应入库数量-收货数量;
@@ -479,11 +470,13 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
{
//materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
if (materials.Count != 0)
{
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
}
}
var query = _context.InStockTaskDetails
@@ -499,11 +492,9 @@ namespace WMS.Web.Repositories
{
if (materials != null && materials.Count != 0)
{
var mids = materials.Select(x => x.MaterialId).ToList();
query = query.Where(w => mids.Contains(w.detail.MaterialId));
var mids = materials.Select(x => x.MaterialNumber).ToList();
query = query.Where(w => mids.Contains(w.detail.MaterialNumber));
}
else
query = query.Where(w => w.detail.MaterialId == 0);
}
if (!string.IsNullOrEmpty(dto.Receiver))
@@ -547,9 +538,9 @@ namespace WMS.Web.Repositories
SourceBillNo = s.order.SourceBillNo,
Supplier = _erpBasicDataExtendService.GetSupplierName(suppliers, s.detail.SupplierId),
Org = _erpBasicDataExtendService.GetOrgName(orgs, s.detail.OrgId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.detail.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail.MaterialNumber),
MaterialNumber = s.detail.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialNumber),
FactoryPrice = s.detail.FactoryPrice,
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, companyId, s.detail.StockCode + s.detail.OrgCode),
AccruedQty = s.detail.AccruedQty,

View File

@@ -65,11 +65,13 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
{
//materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
if (materials.Count != 0)
{
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
}
}
//组织集合
@@ -86,10 +88,9 @@ namespace WMS.Web.Repositories
{
if (materials != null && materials.Count != 0)
{
var mids = materials.Select(x => x.MaterialId).ToList();
query = query.Where(w => mids.Contains(w.MaterialId));
}else
query = query.Where(w => w.MaterialId==0);
var mids = materials.Select(x => x.MaterialNumber).ToList();
query = query.Where(w => mids.Contains(w.MaterialNumber));
}
}
if (!string.IsNullOrEmpty(dto.StockCode))
@@ -98,8 +99,8 @@ namespace WMS.Web.Repositories
query = query.Where(w => w.StockCode == splitStrs[0] && w.OrgCode == splitStrs[1]);
}
if (dto.SubStockId.HasValue)
query = query.Where(w => w.SubStockId == dto.SubStockId.Value);
if (!string.IsNullOrEmpty(dto.SubStockCode))
query = query.Where(w => w.SubStockCode == dto.SubStockCode);
if (dto.Qty.HasValue)
query = query.Where(w => w.Qty == dto.Qty);
@@ -110,14 +111,14 @@ namespace WMS.Web.Repositories
var list = await query.Select(s => new InventoryDetailsQueryResponse()
{
Id=s.Id,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialNumber),
MaterialNumber = s.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialNumber),
Org= _erpBasicDataExtendService.GetOrgName(orgs, s.OrgCode),
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, companyId, s.StockCode + s.OrgCode),
Qty = s.Qty,
SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, companyId, s.SubStockId),
Unit = _erpBasicDataExtendService.GetMaterialUnitName(materials, s.MaterialId),
SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, companyId, s.SubStockCode),
Unit = _erpBasicDataExtendService.GetMaterialUnitName(materials, s.MaterialNumber),
}).OrderByDescending(x => x.Id).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();
return (list,total);
@@ -197,30 +198,30 @@ namespace WMS.Web.Repositories
/// <summary>
/// 列表-根据物料和仓库和仓位
/// </summary>
/// <param name="materialIds"></param>
/// <param name="materialNumbers"></param>
/// <param name="stockCodes"></param>
/// <param name="subStockIds"></param>
/// <param name="subStockCodes"></param>
/// <param name="orgCodes"></param>
/// <returns></returns>
public async Task<List<InventoryDetails>> GetListBy(List<int> materialIds, List<string> stockCodes, List<int> subStockIds, List<string> orgCodes)
public async Task<List<InventoryDetails>> GetListBy(List<string> materialNumbers, List<string> stockCodes, List<string> subStockCodes, List<string> orgCodes)
{
return await _context.InventoryDetails.Where(x => materialIds.Contains(x.MaterialId) &&
return await _context.InventoryDetails.Where(x => materialNumbers.Contains(x.MaterialNumber) &&
stockCodes.Contains(x.StockCode) &&
orgCodes.Contains(x.OrgCode) &&
subStockIds.Contains(x.SubStockId) ).ToListAsync();
subStockCodes.Contains(x.SubStockCode) ).ToListAsync();
}
/// <summary>
/// 列表-根据物料和仓库和仓位
/// </summary>
/// <param name="materialIds"></param>
/// <param name="materialNumbers"></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<string> orgCodes)
public async Task<List<InventoryDetails>> GetListBy(List<string> materialNumbers, List<string> stockCodes,List<string> orgCodes)
{
return await _context.InventoryDetails.Where(x => materialIds.Contains(x.MaterialId) &&
return await _context.InventoryDetails.Where(x => materialNumbers.Contains(x.MaterialNumber) &&
stockCodes.Contains(x.StockCode) &&
orgCodes.Contains(x.OrgCode)).ToListAsync();
}

View File

@@ -72,11 +72,13 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
{
//materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
if (materials.Count != 0)
{
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)
|| w.MaterialName.Contains(dto.MaterialNumber)
|| w.Specifications.Contains(dto.MaterialNumber)
).ToList();
}
}
var query = _context.InventoryInOutDetails
@@ -87,11 +89,9 @@ namespace WMS.Web.Repositories
{
if (materials != null && materials.Count != 0)
{
var mids = materials.Select(x => x.MaterialId).ToList();
query = query.Where(w => mids.Contains(w.MaterialId));
var mids = materials.Select(x => x.MaterialNumber).ToList();
query = query.Where(w => mids.Contains(w.MaterialNumber));
}
else
query = query.Where(w => w.MaterialId == 0);
}
if (!string.IsNullOrEmpty(dto.StockCode))
@@ -113,9 +113,9 @@ namespace WMS.Web.Repositories
var list = await query.Select(s => new InventoryInOutDetailsQueryResponse()
{
Id = s.Id,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialNumber),
MaterialNumber = s.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialNumber),
Type =s.Type.GetRemark(),
OrderType=s.OrderType.GetRemark(),
OrderBillNo=s.OrderBillNo,