IqcInspBillFlowDto.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. namespace Admin.NET.Plugin.AiDOP.MaterialWarehouse.Dto;
  2. /// <summary>
  3. /// 检验员提交检验结果入参。写 qms_qcp_inspbill.pd/dhsl/bhgsl/clfs,并推进 ApprovalFlow N1→N2。
  4. /// </summary>
  5. public class IqcSubmitResultInput
  6. {
  7. /// <summary>检验单 id(qms_qcp_inspbill.id,BizId)</summary>
  8. public long Id { get; set; }
  9. /// <summary>判定:0=合格 1=不合格</summary>
  10. public int Pd { get; set; }
  11. /// <summary>合格数量</summary>
  12. public decimal Dhsl { get; set; }
  13. /// <summary>不合格数量</summary>
  14. public decimal Bhgsl { get; set; }
  15. /// <summary>处理方式:0=让步接收 1=挑选 2=报废(pd=1 时必填)</summary>
  16. public int? Clfs { get; set; }
  17. /// <summary>提交说明(可选)</summary>
  18. public string? Comment { get; set; }
  19. }
  20. /// <summary>检验主管通过入参。</summary>
  21. public class IqcSupervisorApproveInput
  22. {
  23. /// <summary>检验单 id</summary>
  24. public long Id { get; set; }
  25. /// <summary>审批意见(可选)</summary>
  26. public string? Comment { get; set; }
  27. }
  28. /// <summary>检验主管退回入参(回 N1,意见必填)。</summary>
  29. public class IqcSupervisorRejectInput
  30. {
  31. /// <summary>检验单 id</summary>
  32. public long Id { get; set; }
  33. /// <summary>退回意见(必填)</summary>
  34. public string? Comment { get; set; }
  35. }
  36. /// <summary>
  37. /// 检验单流程状态输出(只读,供前端按钮控制)。
  38. /// </summary>
  39. public class IqcFlowStateOutput
  40. {
  41. /// <summary>BizType(S5_IQC_INSPBILL)</summary>
  42. public string BizType { get; set; } = IqcInspBillFlowConst.BizType;
  43. /// <summary>BizId(=检验单 id)</summary>
  44. public long BizId { get; set; }
  45. /// <summary>流程实例 id(未启动为 null)</summary>
  46. public long? InstanceId { get; set; }
  47. /// <summary>流程状态(NotStarted / Running / Approved / Rejected / Cancelled / Terminated)</summary>
  48. public string FlowStatus { get; set; } = "NotStarted";
  49. /// <summary>当前节点码(N1_INSPECT / N2_SUP_REVIEW,未启动/已结束为 null)</summary>
  50. public string? CurrentNodeCode { get; set; }
  51. /// <summary>当前节点名</summary>
  52. public string? CurrentNodeName { get; set; }
  53. /// <summary>当前节点角色</summary>
  54. public string? CurrentAssigneeRole { get; set; }
  55. /// <summary>当前用户是否可提交检验结果</summary>
  56. public bool CanSubmitResult { get; set; }
  57. /// <summary>当前用户是否可主管通过</summary>
  58. public bool CanSupervisorApprove { get; set; }
  59. /// <summary>当前用户是否可主管退回</summary>
  60. public bool CanSupervisorReject { get; set; }
  61. /// <summary>流程是否已完成/终态</summary>
  62. public bool IsCompleted { get; set; }
  63. /// <summary>当前用户是否可提交 SQE 处置(当前节点 N3 且当前用户有 N3 待办)</summary>
  64. public bool CanSqeSubmit { get; set; }
  65. /// <summary>是否停留在 SQE 处置节点</summary>
  66. public bool IsWaitingSqe { get; set; }
  67. /// <summary>是否已有 SQE 处置记录</summary>
  68. public bool HasSqeDisposition { get; set; }
  69. /// <summary>SQE 处置记录 id</summary>
  70. public long? SqeDispositionId { get; set; }
  71. /// <summary>SQE 处置记录状态(1=已提交)</summary>
  72. public int? SqeDispositionStatus { get; set; }
  73. /// <summary>SQE 处置方式(0 让步接收 / 1 挑选 / 2 报废)</summary>
  74. public int? SqeDispositionType { get; set; }
  75. /// <summary>更新时间</summary>
  76. public DateTime? UpdatedAt { get; set; }
  77. /// <summary>提示信息</summary>
  78. public string? Message { get; set; }
  79. }
  80. /// <summary>SQE 提交处置方案入参。写 ado_s5_iqc_sqe_disposition 并推进 N3→end。</summary>
  81. public class IqcSqeSubmitDispositionInput
  82. {
  83. /// <summary>检验单 id</summary>
  84. public long Id { get; set; }
  85. /// <summary>处置方式:0 让步接收 / 1 挑选 / 2 报废</summary>
  86. public int DispositionType { get; set; }
  87. /// <summary>处置数量</summary>
  88. public decimal? DispositionQty { get; set; }
  89. /// <summary>让步接收数量</summary>
  90. public decimal? ConcessionQty { get; set; }
  91. /// <summary>挑选数量</summary>
  92. public decimal? SelectionQty { get; set; }
  93. /// <summary>报废数量</summary>
  94. public decimal? ScrapQty { get; set; }
  95. /// <summary>处置意见(必填)</summary>
  96. public string? DispositionOpinion { get; set; }
  97. /// <summary>供应商回复</summary>
  98. public string? SupplierResponse { get; set; }
  99. /// <summary>附件 JSON(预留,本批不做上传)</summary>
  100. public string? AttachmentJson { get; set; }
  101. /// <summary>流程意见(可选)</summary>
  102. public string? Comment { get; set; }
  103. }