This commit is contained in:
tongfei
2024-03-16 16:11:21 +08:00
parent 755fbb674a
commit a802b6e29c
11 changed files with 98 additions and 165 deletions

View File

@@ -105,9 +105,9 @@
仓库code
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.BackRecord.BackRecordOnOffRequest.SubStockId">
<member name="P:WMS.Web.Core.Dto.BackRecord.BackRecordOnOffRequest.SubStockCode">
<summary>
仓位ID
仓位编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.BackRecord.BackRecordOnOffRequest.Details">
@@ -130,9 +130,9 @@
序列号所属箱不能为空
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.BackRecord.SaveBackRecordDetailsRequest.MaterialId">
<member name="P:WMS.Web.Core.Dto.BackRecord.SaveBackRecordDetailsRequest.MaterialNumber">
<summary>
物料ID
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.BackRecord.SaveBackRecordDetailsRequest.Qty">
@@ -170,9 +170,9 @@
操作类型1为入库回退下架2为出库回退上架
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.BackRecordQueryRequest.SubStockId">
<member name="P:WMS.Web.Core.Dto.BackRecordQueryRequest.SubStockCode">
<summary>
仓位ID
仓位编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.BackRecordQueryRequest.Creator">
@@ -461,9 +461,9 @@
</summary>
</member>
<!-- Badly formed XML comment ignored for member "P:WMS.Web.Core.Dto.GenerateBoxMarkDto.OrderBillNo" -->
<member name="P:WMS.Web.Core.Dto.GenerateBoxMarkDto.MaterialId">
<member name="P:WMS.Web.Core.Dto.GenerateBoxMarkDto.MaterialNumber">
<summary>
物料ID
物料
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.GenerateBoxMarkDto.ProductQty">
@@ -691,7 +691,7 @@
目标箱号
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.SubStockId">
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordRequest.SubStockCode">
<summary>
目标箱仓位或重新上架选择仓位
</summary>
@@ -706,9 +706,9 @@
明细
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordDetailsRequest.MaterialId">
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordDetailsRequest.MaterialNumber">
<summary>
物料ID
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordDetailsRequest.Qty">
@@ -3668,9 +3668,9 @@
序列号
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.MaterialId">
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.MaterialNumber">
<summary>
物料ID
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.BoxId">
@@ -4343,9 +4343,9 @@
箱号ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordRequest.SubStockId">
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordRequest.SubStockCode">
<summary>
仓位ID
仓位
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordRequest.Qty">
@@ -4363,10 +4363,10 @@
移箱明细
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordDetailsRequest.MaterialId">
<summary>
物料Id
</summary>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordDetailsRequest.MaterialNumber">
<summary>
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.MoveBoxRecord.SaveMoveBoxRecordDetailsRequest.Qty">
<summary>
@@ -4468,6 +4468,11 @@
物料ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.OpsBoxDetailsResponse.MaterialNumber">
<summary>
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.OpsBoxDetailsResponse.Qty">
<summary>
数量(装箱数量)
@@ -4933,10 +4938,10 @@
出库方式 必填1-box按箱2-product按产品
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.MaterialId">
<summary>
物料Id
</summary>
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.MaterialNumber">
<summary>
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.Qty">
<summary>
@@ -4948,9 +4953,9 @@
箱Id
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.SubStockId">
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.SubStockCode">
<summary>
箱对应仓位不能为空
仓位
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.SerialNumbers">
@@ -5233,14 +5238,14 @@
箱Id
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.MaterialId">
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.MaterialNumber">
<summary>
物料ID
物料编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.SubStockId">
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.SubStockCode">
<summary>
仓位ID
仓位
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.Erp_SubStockCode">

View File

@@ -29,10 +29,10 @@ namespace WMS.Web.Core.Dto.BackRecord
public string StockCode { get; set; }
/// <summary>
/// 仓位ID
/// 仓位编码
/// </summary>
[Required(ErrorMessage = "仓位不能为空")]
public int SubStockId { get; set; }
public string SubStockCode { get; set; }
/// <summary>
/// 明细

View File

@@ -20,9 +20,9 @@ namespace WMS.Web.Core.Dto
public int? Type { get; set; }
/// <summary>
/// 仓位ID
/// 仓位编码
/// </summary>
public int? SubStockId { get; set; }
public string SubStockCode { get; set; }
/// <summary>
/// 操作人

View File

@@ -23,10 +23,11 @@ namespace WMS.Web.Core.Dto.BackRecord
public int SerialNumberBoxId { get; set; }
/// <summary>
/// 物料ID
/// 物料编码
/// </summary>
[Required(ErrorMessage = "物料不能为空")]
public int MaterialId { get; set; }
public string MaterialNumber { get; set; }
/// <summary>
/// 数量
/// </summary>

View File

@@ -19,11 +19,10 @@ namespace WMS.Web.Core.Dto
public string OrderBillNo { get; set; }
/// <summary>
/// 物料ID
/// 物料
/// </summary>
[Required(ErrorMessage = "物料不能为空")]
[Range(1,int.MaxValue,ErrorMessage ="物料不能为空")]
public int MaterialId { get; set; }
public string MaterialNumber { get; set; }
/// <summary>
/// 产品数量

View File

@@ -67,6 +67,14 @@ namespace WMS.Web.Domain.IService.Public
/// <returns></returns>
string GetMaterialBarCode(List<ErpMaterialDto> erpMaterials, int materialId);
/// <summary>
/// 获取物料的条码
/// </summary>
/// <param name="erpMaterials"></param>
/// <param name="materialNumber"></param>
/// <returns></returns>
string GetMaterialBarCode(List<ErpMaterialDto> erpMaterials, string materialNumber);
/// <summary>
/// 获取物料基本单位id
/// </summary>

View File

@@ -88,7 +88,7 @@ namespace WMS.Web.Domain.Services
entity.Method = (InventoryInOutMethod)dto.Method;
entity.OrgCode = dto.OrgCode;
entity.StockCode = dto.StockCode;
entity.SubStockId = dto.SubStockId;
entity.SubStockCode = dto.SubStockCode;
entity.Type = type;
entity.Details = _mapper.Map<List<BackRecordDetails>>(dto.Details);
entity.Create(loginInfo.UserInfo.StaffId);
@@ -102,57 +102,6 @@ namespace WMS.Web.Domain.Services
if (!serialNumber_result.IsSuccess)
return serialNumber_result;
//#region 需要改箱操作
////获取目标箱和原箱信息
//var current_box_about = dto.Details.GroupBy(x => new { x.BoxId }).Select(x => new { x.Key.BoxId }).ToList();
//var current_sernub_box = dto.Details.GroupBy(x => x.SerialNumberBoxId).Select(x => x.Key).ToList();
////要改箱的数据集合
//var ganenrateChangeBoxs = new List<SaveChangeBoxRecordRequest>();
////遍历组装改箱dto的头部集合
//foreach (var boxAbout in current_box_about)
//{
// foreach (var serBoxId in current_sernub_box)
// {
// if (boxAbout.BoxId != serBoxId)
// {
// var changeBox = new SaveChangeBoxRecordRequest();
// changeBox.SrcBoxId = serBoxId;
// changeBox.DestBoxId = boxAbout.BoxId;
// changeBox.SubStockId = entity.SubStockId;
// ganenrateChangeBoxs.Add(changeBox);
// }
// }
//}
////遍历组装明细改箱dto的明细集合
//foreach (var detItem in dto.Details)
//{
// ganenrateChangeBoxs.ForEach(x =>
// {
// if (x.SrcBoxId == detItem.SerialNumberBoxId && x.DestBoxId == detItem.BoxId)
// {
// var changeBoxRD = new SaveChangeBoxRecordDetailsRequest();
// changeBoxRD.MaterialId = detItem.MaterialId;
// changeBoxRD.Qty = detItem.Qty;
// changeBoxRD.SerialNumbers = detItem.SerialNumbers;
// x.Details.Add(changeBoxRD);
// }
// });
//}
////改箱保存操作:这里不需要在改箱的操作-进行库存的变更(因为会有问题),下面会去更新库存的
//var changeBoxSave_Result = await _changeMoveBoxService.ChangeBoxSave(ganenrateChangeBoxs, loginInfo, isTransaction,false);
//if (!changeBoxSave_Result.IsSuccess)
// return changeBoxSave_Result;
//#endregion
////改箱保存操作--弃用
//var changeBoxSave_Result = await _changeMoveBoxService.ChangeBox_BackRecord(entity, loginInfo, isTransaction);
//if (!changeBoxSave_Result.IsSuccess)
// return changeBoxSave_Result;
//保存成功后:变更库存
var boxInventoryResult = await _boxInventoryService.GenerateBackBox(entity, isTransaction);
if (!boxInventoryResult.IsSuccess)

View File

@@ -46,7 +46,6 @@ namespace WMS.Web.Domain.Services
{
_logger.LogInformation($"箱唛生成:{JsonConvert.SerializeObject(dto)} 操作人:{loginInfo.UserInfo.StaffId + loginInfo.UserInfo.Nickname}");
//1.获取最新的箱唛信息
//var entity_new = await _boxMarkRepositories.GetBy();
var billNo_new = await _boxMarkRepositories.GetLastBillNo();
//2.dto映射实体
@@ -66,8 +65,6 @@ namespace WMS.Web.Domain.Services
//返回列表-对应刚刚生成的数据和编号集合
var list= await _boxMarkRepositories.GetListInfoBy(model.Id, loginInfo.UserInfo.CompanyId);
//var resultList = new List<BoxMarkQueryResponse>();
if (list != null && list.Count != 0)
{
//处理-总数量
@@ -76,29 +73,6 @@ namespace WMS.Web.Domain.Services
x.BoxSortCount = this.GetSortCount(x.ProductQty, x.CratingQty);
});
//var ids = list.GroupBy(x => x.Id).Select(x => x.Key).ToList();
//foreach (var id in ids)
//{
// var itemDetailId = 0;
// foreach (var item in list)
// {
// if (id == item.Id)
// {
// var current = resultList.Where(x => x.DetailId == itemDetailId).FirstOrDefault();
// var newItem = item;
// if (current == null)
// newItem.Sort = 1;
// else
// newItem.Sort = current.Sort + 1;
// resultList.Add(newItem);
// itemDetailId = item.DetailId;
// }
// }
//}
}
return ResultList<BoxMarkQueryResponse>.ReSuccess(list);
@@ -114,35 +88,12 @@ namespace WMS.Web.Domain.Services
{
var (list, count) = await _boxMarkRepositories.GetPagedList(dto, companyId);
//var resultList = new List<BoxMarkQueryResponse>();
if (list != null && list.Count != 0)
{
list.ForEach(x =>
{
x.BoxSortCount = this.GetSortCount(x.ProductQty, x.CratingQty);
});
//var ids = list.GroupBy(x => x.Id).Select(x => x.Key).ToList();
//foreach (var id in ids)
//{
// var itemDetailId = 0;
// foreach (var item in list)
// {
// if (id == item.Id)
// {
// var current = resultList.Where(x => x.DetailId == itemDetailId).FirstOrDefault();
// var newItem = item;
// if (current == null)
// newItem.Sort = 1;
// else
// newItem.Sort = current.Sort + 1;
// resultList.Add(newItem);
// itemDetailId = item.DetailId;
// }
// }
//}
}
return (list, count);

View File

@@ -183,6 +183,27 @@ namespace WMS.Web.Domain.Services.Public
return mat.BarCode;
}
/// <summary>
/// 获取物料的条码
/// </summary>
/// <param name="erpMaterials"></param>
/// <param name="materialNumber"></param>
/// <returns></returns>
public string GetMaterialBarCode(List<ErpMaterialDto> erpMaterials, string materialNumber)
{
if (erpMaterials == null || erpMaterials.Count == 0)
return "";
var mat = erpMaterials.Where(x => x.MaterialNumber == materialNumber).FirstOrDefault();
if (mat == null)
{
var result = _erpService.BillQueryForMaterial(materialNumber).GetAwaiter().GetResult();
if (!result.IsSuccess)
return "";
return result.Data == null ? "" : result.Data.BarCode;
}
return mat.BarCode;
}
/// <summary>
/// 获取物料基本单位Id
/// </summary>

View File

@@ -90,10 +90,10 @@ namespace WMS.Web.Repositories
if(!string.IsNullOrEmpty(dto.BoxBillNo))
query = query.Where(w => EF.Functions.Like(w.box.BoxBillNo, "%" + dto.BoxBillNo + "%"));
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);
if(dto.Type.HasValue)
if (dto.Type.HasValue)
query = query.Where(w => (int)w.order.Type == dto.Type.Value);
if (ids.Count() > 0)
@@ -114,13 +114,13 @@ namespace WMS.Web.Repositories
Type = s.order.Type.GetRemark(),
Creator = _singleDataService.GetSingleData(SingleAction.Staffs, companyId, s.order.CreatorId),
CreateTime =s.order.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
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.Qty,
Org= _erpBasicDataExtendService.GetOrgName(orgs, s.order.OrgCode),
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(','),
}).OrderByDescending(x => x.Id).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();

View File

@@ -71,7 +71,6 @@ namespace WMS.Web.Repositories
if (staffList != null)
cr_ids = staffList.Where(w => w.Name.Contains(dto.Creator)).Select(s => s.Id).ToList();
}
//var query = _context.BoxMark.Where(adv => 1 == 1);
var query = _context.BoxMarkBillNo
.GroupJoin(_context.BoxMark, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })
.SelectMany(x => x.orders.DefaultIfEmpty(), (p, order) => new { p.detail, order })
@@ -86,7 +85,6 @@ namespace WMS.Web.Repositories
{
var begYMD = Convert.ToInt32(dto.BeginBillNo.Substring(2, 6));
var endYMD = Convert.ToInt32(dto.EndBillNo.Substring(2, 6));
//if (begYMD <= endYMD)
var begNo = Convert.ToInt32(dto.BeginBillNo.Substring(8));
var endNo = Convert.ToInt32(dto.EndBillNo.Substring(8));
@@ -112,19 +110,20 @@ namespace WMS.Web.Repositories
}
}
List<string> mNumber = new List<string>();
//物料ID在模糊后的物料
if (!string.IsNullOrEmpty(dto.Material))
{
if (materials != null && materials.Count != 0)
{
var mids = materials.Select(x => x.MaterialId).ToList();
query = query.Where(w => mids.Contains(w.order.MaterialId));
}
else
query = query.Where(w => w.order.MaterialId == 0);
}
if (materials != null)
mNumber = materials.Where(w => w.MaterialNumber.Contains(dto.Material)
|| w.MaterialName.Contains(dto.Material)
|| w.Specifications.Contains(dto.Material)
).Select(s => s.MaterialNumber).ToList();
if(!string.IsNullOrEmpty(dto.Creator))
query = query.Where(w => mNumber.Contains(w.order.MaterialNumber));
}
if (!string.IsNullOrEmpty(dto.Creator))
query = query.Where(w => cr_ids.Contains(w.order.CreatorId));
if (dto.BeginDate != null)
query = query.Where(w => w.order.CreateTime.Date >= dto.BeginDate.Value);
@@ -138,10 +137,10 @@ namespace WMS.Web.Repositories
DetailId=s.detail.Id,
BillNo = s.detail.BillNo,
OrderBillNo = s.order.OrderBillNo,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.order.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.order.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.order.MaterialId),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.order.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.order.MaterialNumber),
MaterialNumber = s.order.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.order.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.order.MaterialNumber),
CratingQty = s.order.CratingQty,
CratingNetWeightQty = s.order.CratingNetWeightQty,
@@ -226,10 +225,10 @@ namespace WMS.Web.Repositories
DetailId = s.detail.Id,
BillNo = s.detail.BillNo,
OrderBillNo = s.order.OrderBillNo,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.order.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.order.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.order.MaterialId),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.order.MaterialId),
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.order.MaterialNumber),
MaterialNumber = s.order.MaterialNumber,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.order.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.order.MaterialNumber),
CratingQty = s.order.CratingQty,
CratingNetWeightQty = s.order.CratingNetWeightQty,