Files
kunshan-bzfm-mes-backend/DOAN.Model/MES/Product/Dto/ProWorkorderDto.cs
git_rabbit 424314732c feat(工单管理): 添加工单审批通知和滞留库存查询功能
- 在工单服务中新增获取审批通知列表和滞留库存列表的接口
- 添加对应的DTO定义用于查询和响应
- 在控制器中暴露相关API端点
- 修改物料类型字段注释为快速识别标号
- 在工单查询结果中添加物料标号字段
2026-03-10 18:36:25 +08:00

493 lines
12 KiB
C#

namespace DOAN.Model.MES.product.Dto
{
/// <summary>
/// 工单查询对象
/// </summary>
public class ProWorkorderQueryDto : PagerInfo
{
public string productionName { get; set; }
public string productionCode { get; set; }
public string MaterialCode { get; set; }
public string Workorder { get; set; }
public string RouteCode { get; set; }
public string GroupCode { get; set; }
/// <summary>
/// 进料单号(领料)
/// </summary>
public string FeedOrder { get; set; }
/// <summary>
/// 客户单号(出货)
/// </summary>
public string CustomerOrder { get; set; }
public int Status { get; set; }
public DateTime[] WorkorderDate { get; set; } = new DateTime[2];
}
public class ProWorkorderQueryDto2
{
public DateTime WorkorderDate { get; set; }
}
public class ProWorkorderExportDto
{
public string[] WorkorderArray { get; set; }
public string Path { get; set; }
}
/// <summary>
/// 工单输入输出对象
/// </summary>
public class ProWorkorderDto
{
[Required(ErrorMessage = "雪花不能为空")]
public string Id { get; set; }
[Required(ErrorMessage = "工单号(一旦确定,不可更改)不能为空")]
public string Workorder { get; set; }
public string productionName { get; set; }
public string productionCode { get; set; }
// 成品物料标号
public string Type { get; set; }
// 原材料物料标号
public string SubType { get; set; }
public string Unit { get; set; }
public int PlanNum { get; set; } = 0;
public int ShipmentNum { get; set; } = 0;
// 领料数
public int MaterialNum { get; set; } = 0;
// 成品在库数
public int InInventoryNum { get; set; } = 0;
public int ProductNum { get; set; } = 0;
public int DefectNum { get; set; } = 0;
public int? Sort { get; set; }
public DateTime? WorkorderDate { get; set; }
public int? Priority { get; set; }
public int? Beat { get; set; }
public int? Status { get; set; }
public DateTime? InstructionDate { get; set; }
public string MaterialName { get; set; }
public string MaterialtextureCode { get; set; }
public string MaterialCode { get; set; }
public string DrawingCode { get; set; }
public string Version { get; set; }
public string StoveCode { get; set; }
public string WorkshopCode { get; set; }
public string RouteCode { get; set; }
public string GroupCode { get; set; }
/// <summary>
/// 进料单号(领料)
/// </summary>
public string FeedOrder { get; set; }
/// <summary>
/// 客户单号(出货)
/// </summary>
public string CustomerOrder { get; set; }
public string Remark01 { get; set; }
public string Remark02 { get; set; }
public string Remark03 { get; set; }
public string Remark04 { get; set; }
public string Remark05 { get; set; }
public string CreatedBy { get; set; }
public DateTime? CreatedTime { get; set; }
public string UpdatedBy { get; set; }
public DateTime? UpdatedTime { get; set; }
}
/// <summary>
/// 工单备料进度
/// </summary>
public class MaterialPreparationProgress
{
/// <summary>
/// 工单号
/// </summary>
public string WorkOrder { get; set; }
/// <summary>
/// 0未备料 1备料中 2备料已经完成
/// </summary>
public int PreparationStatus { get; set; }
/// <summary>
/// 已经备料任务数
/// </summary>
public int Preparationed_num { get; set; }
/// <summary>
/// 全部备料任务数
/// </summary>
public int Preparation_all_num { get; set; }
}
/// <summary>
/// 工单 带 完成数量
/// </summary>
public class ProWorkorderDto4 : ProWorkorderDto
{
/// <summary>
/// 完成数量
/// </summary>
public int? FinishNum { get; set; }
public MaterialPreparationProgress progress { get; set; }
}
public class ProWorkorderDto2 : ProWorkorderDto
{
/// <summary>
/// 下一个工单号
/// </summary>
public string next_id { get; set; }
}
/// <summary>
/// 带参数报警
/// </summary>
public class ProWorkorderDto3 : ProWorkorderDto
{
/// <summary>
/// 物料code在物料清单是否存在
/// </summary>
public string IsMatch_material_code { get; set; }
/// <summary>
/// 物料name在物料清单是否存在
/// </summary>
public string IsMatch_material_name { get; set; }
/// <summary>
/// 工艺路线是否存在
/// </summary>
public string IsMatch_line { get; set; }
/// <summary>
/// 组是否存在
/// </summary>
public string IsMatch_group { get; set; }
/// <summary>
/// 单位是否存在
/// </summary>
public string IsMatch_Unit { get; set; }
}
/// <summary>
/// 工单BOM 及其所需数量
/// </summary>
public class WorkOrderBom
{
/// <summary>
/// 子件编码
/// </summary>
public string SubInvCode { get; set; }
/// <summary>
/// 子件名称
/// </summary>
public string SubInvName { get; set; }
/// <summary>
/// 单件数量
/// </summary>
public string Iusequantity_Single { get; set; }
/// <summary>
/// 使用总数量
/// </summary>
public string Iusequantity_All { get; set; }
/// <summary>
/// BOM版本号
/// </summary>
public string BOMVersion { get; set; }
}
/// <summary>
/// 工单批量操作Dto
/// </summary>
public class WorkOrderBatchDto
{
/// <summary>
/// ID号数组
/// </summary>
public List<string> Ids { get; set; }
/// <summary>
/// 批号
/// </summary>
public string BatchNo { get; set; }
/// <summary>
/// 数量
/// </summary>
public decimal Quantity { get; set; }
/// <summary>
/// 操作人
/// </summary>
public string Operator { get; set; }
}
/// <summary>
/// 工单进度追溯
/// </summary>
public class ProWorkorderTranceProgressDto
{
/// <summary>
/// 雪花id
/// </summary>
public string Id { get; set; }
/// <summary>
/// 工单号
/// </summary>
public string Workorder { get; set; }
/// <summary>
/// 存货编码
/// </summary>
public string productionCode { get; set; }
/// <summary>
/// 产品名称
/// </summary>
public string productionName { get; set; }
/// <summary>
/// 规格型号
/// </summary>
public string Specification { get; set; }
/// <summary>
/// 交货数量
/// </summary>
public int? DeliveryNum { get; set; }
/// <summary>
/// 组别
/// </summary>
public string GroupCode { get; set; }
/// <summary>
/// 线别
/// </summary>
public string RouteCode { get; set; }
/// <summary>
/// 序号
/// </summary>
public int? Sort { get; set; }
/// <summary>
/// 工单日期
/// </summary>
public DateTime? WorkorderDate { get; set; }
/// <summary>
/// 优先级 1-100
/// </summary>
public int? Priority { get; set; }
/// <summary>
/// 工单状态
/// </summary>
public int? Status { get; set; }
/// <summary>
/// 工单开始时间
/// </summary>
public DateTime? StartTime { get; set; }
/// <summary>
/// 工单结束时间
public DateTime? EndTime { get; set; }
/// <summary>
/// 计划数量
/// </summary>
public int? PlanNum { get; set; }
/// <summary>
/// 实际数量
/// </summary>
public int? ActualNum { get; set; }
}
/// <summary>
/// 审批通知查询DTO
/// </summary>
public class ProWorkorderApprovalQueryDto : PagerInfo
{
// 可以根据需要添加查询参数
}
/// <summary>
/// 审批通知响应DTO
/// </summary>
public class ProWorkorderApprovalDto
{
/// <summary>
/// 审批ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 工单号
/// </summary>
public string Workorder { get; set; }
/// <summary>
/// 标号
/// </summary>
public string Type { get; set; }
/// <summary>
/// 主体编号
/// </summary>
public string ProductionCode { get; set; }
/// <summary>
/// 主体名称
/// </summary>
public string ProductionName { get; set; }
/// <summary>
/// 批号
/// </summary>
public string BatchNo { get; set; }
/// <summary>
/// 炉号
/// </summary>
public string StoveCode { get; set; }
/// <summary>
/// 审批内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 操作员
/// </summary>
public string Operator { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
}
/// <summary>
/// 滞留库存查询DTO
/// </summary>
public class ProWorkorderStockQueryDto : PagerInfo
{
/// <summary>
/// 主体编号
/// </summary>
public string ProductionCode { get; set; }
/// <summary>
/// 供应商
/// </summary>
public string SupplierCode { get; set; }
}
/// <summary>
/// 滞留库存响应DTO
/// </summary>
public class ProWorkorderStockDto
{
/// <summary>
/// ID
/// </summary>
public string Id { get; set; }
/// <summary>
/// 工单号
/// </summary>
public string Workorder { get; set; }
/// <summary>
/// 标号
/// </summary>
public string Type { get; set; }
/// <summary>
/// 主体编号
/// </summary>
public string ProductionCode { get; set; }
/// <summary>
/// 主体名称
/// </summary>
public string ProductionName { get; set; }
/// <summary>
/// 批号
/// </summary>
public string BatchNo { get; set; }
/// <summary>
/// 炉号
/// </summary>
public string StoveCode { get; set; }
/// <summary>
/// 内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 数量
/// </summary>
public int StockQuantity { get; set; }
/// <summary>
/// 操作员
/// </summary>
public string Operator { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
}
}