| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- namespace Admin.NET.Plugin.AiDOP.Dto.S8.OrderFlow;
- /// <summary>S8 Stage-1「订单评审」耗时列表查询条件。注意:不含 tenantId —— 租户只从 JWT 解析。</summary>
- public class AdoS8OrderReviewKpiQueryDto
- {
- /// <summary>订单号模糊过滤。</summary>
- public string? OrderNo { get; set; }
- /// <summary>按计算状态过滤:OK / IN_PROGRESS / NO_START / INVALID / INVALID_TIME_SEQUENCE。</summary>
- public string? CalculationStatus { get; set; }
- public int Page { get; set; } = 1;
- public int PageSize { get; set; } = 20;
- }
- /// <summary>单张订单的 Stage-1 评审耗时事实(全部来自 dwd_order_review_kpi)。</summary>
- public class AdoS8OrderReviewKpiRowDto
- {
- /// <summary>销售订单头ID(crm_seorder.Id),归因权威。</summary>
- public long SalesOrderId { get; set; }
- /// <summary>销售订单号(展示用)。</summary>
- public string? SalesOrderNo { get; set; }
- /// <summary>评审开始时刻。</summary>
- public DateTime? ReviewStartTime { get; set; }
- /// <summary>评审结束时刻。</summary>
- public DateTime? ReviewEndTime { get; set; }
- /// <summary>实际耗时(自然 elapsed 小时,2 位小数)。未闭环时为 null —— 不伪造 0。</summary>
- public decimal? ActualHours { get; set; }
- /// <summary>OK / IN_PROGRESS / NO_START / INVALID / INVALID_TIME_SEQUENCE。</summary>
- public string CalculationStatus { get; set; } = "";
- public int ReviewSuccessCount { get; set; }
- public int ConfirmSuccessCount { get; set; }
- public int ReviewFailedCount { get; set; }
- public int ConfirmFailedCount { get; set; }
- /// <summary>被采纳的评审事件ID(可追溯到 mdp_std_action_event)。</summary>
- public long? ReviewActionRunId { get; set; }
- /// <summary>被采纳的交期确认事件ID。</summary>
- public long? ConfirmActionRunId { get; set; }
- /// <summary>最近一次重算时刻。</summary>
- public DateTime? CalcTime { get; set; }
- }
- /// <summary>分页结果。</summary>
- public class AdoS8OrderReviewKpiListDto
- {
- public List<AdoS8OrderReviewKpiRowDto> List { get; set; } = [];
- public int Total { get; set; }
- public int Page { get; set; }
- public int PageSize { get; set; }
- }
- /// <summary>Stage-1 评审耗时汇总。本批不含 TargetHours / 达成率 / 红黄绿。</summary>
- public class AdoS8OrderReviewKpiSummaryDto
- {
- /// <summary>有评审动作记录的订单总数。</summary>
- public int TotalOrders { get; set; }
- /// <summary>已闭环(OK)订单数 —— 只有这些有 ActualHours。</summary>
- public int OkCount { get; set; }
- public int InProgressCount { get; set; }
- public int NoStartCount { get; set; }
- public int InvalidCount { get; set; }
- public int InvalidTimeSequenceCount { get; set; }
- /// <summary>OK 订单的平均实际耗时(小时)。OkCount=0 时为 null,不返回 0。</summary>
- public decimal? AvgActualHours { get; set; }
- /// <summary>OK 订单的最短 / 最长实际耗时(小时)。</summary>
- public decimal? MinActualHours { get; set; }
- public decimal? MaxActualHours { get; set; }
- /// <summary>KPI 表最近一次重算时刻。null 表示该租户从未跑过链路。</summary>
- public DateTime? LastCalcTime { get; set; }
- }
- /// <summary>手动刷新链路的返回。</summary>
- public class AdoS8OrderReviewKpiRefreshResultDto
- {
- public string BatchId { get; set; } = "";
- public int StageRows { get; set; }
- public int StageRepulledRunning { get; set; }
- public int StandardRows { get; set; }
- public int KpiRows { get; set; }
- }
|