S6ProcessInspectionDto.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. namespace Admin.NET.Plugin.AiDOP.Manufacturing.Dto;
  2. /// <summary>prepare 入参:仅工单号;租户/检规均后端解析,前端不得传 tenantId/specId。</summary>
  3. public class S6ProcessInspectionPrepareInput
  4. {
  5. public string? WorkOrderNo { get; set; }
  6. }
  7. /// <summary>prepare 结果。只有 Status==MATCHED 才有 BillId。</summary>
  8. public class S6ProcessInspectionPrepareResult
  9. {
  10. public string Status { get; set; } = string.Empty;
  11. public string Message { get; set; } = string.Empty;
  12. public long? BillId { get; set; }
  13. /// <summary>是否复用既有 active 检验单(幂等)。</summary>
  14. public bool Reused { get; set; }
  15. public string? SpecCode { get; set; }
  16. public string? SpecVersion { get; set; }
  17. public int CandidateCount { get; set; }
  18. }
  19. /// <summary>过程检验单详情(只读:单据 + 快照头 + 快照明细)。</summary>
  20. public class S6ProcessInspectionDetailDto
  21. {
  22. public long BillId { get; set; }
  23. public string? WorkOrderNo { get; set; }
  24. public string? LotSerial { get; set; }
  25. public string? ItemCode { get; set; }
  26. public string? ItemName { get; set; }
  27. public string? Specification { get; set; }
  28. public long? SpecId { get; set; }
  29. public string? SpecCode { get; set; }
  30. public string? SpecVersion { get; set; }
  31. public string? EffectiveDate { get; set; }
  32. public string? InspectionStatus { get; set; }
  33. public string? CreatedByName { get; set; }
  34. public DateTime? CreateTime { get; set; }
  35. /// <summary>结果头状态:NOT_STARTED/IN_PROGRESS/COMPLETED(后端计算)。</summary>
  36. public string? OverallStatus { get; set; }
  37. /// <summary>整单判定:PASS/FAIL/PENDING/INVALID(后端聚合)。</summary>
  38. public string? OverallResult { get; set; }
  39. public List<S6ProcessInspectionSnapshotLineDto> Lines { get; set; } = new();
  40. }
  41. /// <summary>快照明细行(只读,Phase 1B 冻结自 S0 检规明细)。</summary>
  42. public class S6ProcessInspectionSnapshotLineDto
  43. {
  44. public long Id { get; set; }
  45. public string? InspectionItem { get; set; }
  46. public string? ProcessCode { get; set; }
  47. public string? ProcessName { get; set; }
  48. public string? Method { get; set; }
  49. public string? SpecValue { get; set; }
  50. public string? TechStandard { get; set; }
  51. public string? LowerLimit { get; set; }
  52. public string? UpperLimit { get; set; }
  53. public string? InspectionFrequency { get; set; }
  54. public string? ResultType { get; set; }
  55. public int? SortNo { get; set; }
  56. /// <summary>要求样本量(冻结自快照)。</summary>
  57. public int? SampleCount { get; set; }
  58. /// <summary>单项完成状态:NOT_STARTED/IN_PROGRESS/COMPLETED(后端计算)。</summary>
  59. public string? ItemStatus { get; set; }
  60. /// <summary>单项结果:PASS/FAIL/PENDING/INVALID(后端计算)。</summary>
  61. public string? ItemResult { get; set; }
  62. /// <summary>已录样本(后端持久化,刷新可恢复)。</summary>
  63. public List<S6ProcessInspectionResultSampleDto> Samples { get; set; } = new();
  64. }
  65. /// <summary>已录样本行(含后端判定,只读回显)。</summary>
  66. public class S6ProcessInspectionResultSampleDto
  67. {
  68. public int SampleIndex { get; set; }
  69. public decimal? ActualNumeric { get; set; }
  70. public string? ActualNonNumeric { get; set; }
  71. public string? Judgement { get; set; }
  72. public string? Remark { get; set; }
  73. }
  74. /// <summary>保存检验结果入参:只接收工单/快照行/样本序号/实测值/备注;判定/租户/限值后端自取快照计算。</summary>
  75. public class S6SaveResultInput
  76. {
  77. public long BillId { get; set; }
  78. public List<S6SaveResultSample> Samples { get; set; } = new();
  79. }
  80. public class S6SaveResultSample
  81. {
  82. public long SnapshotLineId { get; set; }
  83. public int SampleIndex { get; set; }
  84. /// <summary>NUMERIC:数值字符串;NON_NUMERIC:OK/NG。空/清除该样本。</summary>
  85. public string? ActualValue { get; set; }
  86. public string? Remark { get; set; }
  87. }
  88. /// <summary>保存/完成结果返回(判定为后端计算真值)。</summary>
  89. public class S6SaveResultOutput
  90. {
  91. public bool Ok { get; set; }
  92. public string? Message { get; set; }
  93. public string? OverallStatus { get; set; }
  94. public string? OverallResult { get; set; }
  95. }
  96. /// <summary>完成检验入参。</summary>
  97. public class S6CompleteInput
  98. {
  99. public long BillId { get; set; }
  100. }