feat(物料管理): 新增物料库存相关功能及接口

- 在MmMaterial类中添加ParentMaterialCode字段支持物料层级关系
- 扩展MmRecordOutbound类增加供应商信息字段
- 重构FeedProcessReportwork方法支持原材料工单领料和库存ID指定
- 新增物料库存查询、领料、成品入库、出货等接口
- 完善库存操作逻辑,支持根据库存ID直接操作
- 添加相关DTO类支持新功能的数据传输
This commit is contained in:
2026-01-31 22:50:21 +08:00
parent cc1fe5f967
commit b018ebc687
10 changed files with 1160 additions and 120 deletions

View File

@@ -7,6 +7,10 @@ namespace DOAN.Model.MES.product.Dto
/// </summary>
public class MaterialTakeDto
{
/// <summary>
/// 主键
/// </summary>
public int Id { get; set; }
/// <summary>
/// 物料编码
/// </summary>
@@ -17,6 +21,16 @@ namespace DOAN.Model.MES.product.Dto
/// </summary>
public string MaterialName { get; set; }
/// <summary>
/// 供应商编码
/// </summary>
public string SupplierCode { get; set; }
/// <summary>
/// 供应商名称
/// </summary>
public string SupplierName { get; set; }
/// <summary>
/// 批次号
/// </summary>
@@ -63,6 +77,10 @@ namespace DOAN.Model.MES.product.Dto
/// </summary>
public class ProductStorageDto
{
/// <summary>
/// 主键
/// </summary>
public int Id { get; set; }
/// <summary>
/// 物料编码
/// </summary>
@@ -125,6 +143,10 @@ namespace DOAN.Model.MES.product.Dto
/// </summary>
public class ShipmentDto
{
/// <summary>
/// 主键
/// </summary>
public int Id { get; set; }
/// <summary>
/// 物料编码
/// </summary>
@@ -180,4 +202,134 @@ namespace DOAN.Model.MES.product.Dto
/// </summary>
public string WorkorderRaw { get; set; }
}
/// <summary>
/// 物料库存信息数据传输对象
/// </summary>
public class MaterialInventoryDto
{
/// <summary>
/// 物料ID
/// </summary>
public int MaterialId { get; set; }
/// <summary>
/// 物料名称
/// </summary>
public string MaterialName { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string MaterialCode { get; set; }
/// <summary>
/// 当前库存数量
/// </summary>
public decimal CurrentQuantity { get; set; }
/// <summary>
/// 供应商编码
/// </summary>
public string SupplierCode { get; set; }
/// <summary>
/// 供应商名称
/// </summary>
public string SupplierName { get; set; }
/// <summary>
/// 单位
/// </summary>
public string Unit { get; set; }
/// <summary>
/// 批次号
/// </summary>
public string BatchNo { get; set; }
}
/// <summary>
/// 领料请求数据传输对象
/// </summary>
public class MaterialTakeRequestDto
{
/// <summary>
/// 工单号
/// </summary>
public string Workorder { get; set; }
/// <summary>
/// 原材料对应工单号
/// </summary>
public string WorkorderRaw { get; set; }
/// <summary>
/// 领料数量
/// </summary>
public decimal Quantity { get; set; }
/// <summary>
/// 物料库存ID
/// </summary>
public int MaterialInventoryId { get; set; }
/// <summary>
/// 炉号(可选)
/// </summary>
public string StoveCode { get; set; }
/// <summary>
/// 操作人
/// </summary>
public string Operator { get; set; }
}
/// <summary>
/// 成品入库请求数据传输对象
/// </summary>
public class ProductStorageRequestDto
{
/// <summary>
/// 工单号
/// </summary>
public string Workorder { get; set; }
/// <summary>
/// 成品数量
/// </summary>
public decimal Quantity { get; set; }
/// <summary>
/// 操作人
/// </summary>
public string Operator { get; set; }
}
/// <summary>
/// 出货请求数据传输对象
/// </summary>
public class ShipmentRequestDto
{
/// <summary>
/// 工单号
/// </summary>
public string Workorder { get; set; }
/// <summary>
/// 出货数量
/// </summary>
public decimal Quantity { get; set; }
/// <summary>
/// 订单ID
/// </summary>
public string OrderId { get; set; }
/// <summary>
/// 操作人
/// </summary>
public string Operator { get; set; }
}
}