namespace Admin.NET.Plugin.AiDOP.Manufacturing.Dto;
/// Phase 1D 审核流状态(只读,供前端按钮控制)。所有判定/状态由后端拥有,前端不得回传状态。
public class S6ReviewStateOutput
{
public long BillId { get; set; }
public long? InstanceId { get; set; }
/// Phase 1C 质量结果(PASS/FAIL/PENDING/INVALID)—— 只读回显,审批不改写。
public string? OverallResult { get; set; }
/// Phase 1C 结果状态(NOT_STARTED/IN_PROGRESS/COMPLETED)。
public string? ResultStatus { get; set; }
/// 流程状态:NotStarted / Running / Approved / Rejected / Cancelled / Terminated。
public string? FlowStatus { get; set; }
public string? CurrentNodeCode { get; set; }
public string? CurrentNodeName { get; set; }
public string? CurrentAssigneeRole { get; set; }
public bool IsCompleted { get; set; }
public bool HasDisposition { get; set; }
/// 网关判据(FAIL→1)。
public int DispositionRequired { get; set; }
// 按钮门控(后端计算)
public bool CanSubmitReview { get; set; }
public bool CanSupervisorApprove { get; set; }
public bool CanSupervisorReturn { get; set; }
public bool CanSubmitDisposition { get; set; }
public string? Message { get; set; }
}
/// 提交审核入参:仅单据 id;租户/发起人后端自解析。
public class S6SubmitReviewInput
{
public long BillId { get; set; }
public string? Comment { get; set; }
}
/// 主管审核通过入参(路由自动按 overall_result 决定去向)。
public class S6ReviewApproveInput
{
public long BillId { get; set; }
public string? Comment { get; set; }
}
/// 主管退回入参(意见必填)。
public class S6ReviewReturnInput
{
public long BillId { get; set; }
public string? Comment { get; set; }
}
/// QE 质量处置入参(不改写 Phase 1C 质量结果)。
public class S6QeDispositionInput
{
public long BillId { get; set; }
/// REWORK / CONCESSION / SCRAP / OTHER。
public string DispositionType { get; set; } = string.Empty;
public decimal? DispositionQty { get; set; }
public decimal? ReworkQty { get; set; }
public decimal? ConcessionQty { get; set; }
public decimal? ScrapQty { get; set; }
public string? DispositionOpinion { get; set; }
public string? ResponsibilityDept { get; set; }
public string? ResponsibleUser { get; set; }
public string? Comment { get; set; }
}