package com.njcn.rdms.module.project.controller.admin.product.vo.requirement;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

/**
 * 管理后台 - 产品需求生命周期 Response VO
 */
@Schema(description = "管理后台 - 产品需求生命周期 Response VO")
@Data
public class ProductRequirementLifecycleRespVO {

    @Schema(description = "当前状态编码", example = "pending_dispatch")
    private String statusCode;

    @Schema(description = "当前状态名称", example = "待分流")
    private String statusName;

    @Schema(description = "最近一次状态动作原因", example = "评审通过")
    private String lastStatusReason;

    @Schema(description = "是否终态", example = "false")
    private Boolean terminal;

    @Schema(description = "是否允许编辑", example = "true")
    private Boolean allowEdit;

    @Schema(description = "当前状态可执行动作列表")
    private List<ProductRequirementStatusTransitionRespVO> availableActions;

}
