package com.gci.boot.modules.vehicles.enums;

import lombok.Getter;

public enum UpkeepStatusEnumRepair {

    //            2         3         4        6        7          8        9
    //流程状态：   待委派     待报价    待审核     保养中    待确认      结束     作废
    //流程节点：  运营维保部   维修厂   运营维保部   维修厂   运营维保部   结束     结束
    //             1         2                                     4       4

    //待委派     待报价    待审核     保养中    待确认      结束
    //    派单->   报价->      审核->    完成保养->  结果完成
    //                       审核不通过           结果未完成

    // 审核状态   1-》通过， 2-》不通过  checkFlag

    //维修厂按钮
    /**
     * 待报价
     */
    WAIT_OFFER(3,"报价",2),

    /**
     * 待审核报价
     */
    WAIT_CHECK_OFFER(4,"查看",2),


    /**
     * 保养中
     */
    REPAIRING(6,"保养",2),

    /**
     * 待确认结果
     */
    WAIT_CONFIRM_RESULT(7,"查看",2),

    /**
     * 已归档
     */
    FINISH(8,"查看",2),
    /**
     * 已作废
     */
    CANCEL(9,"查看",2)
    ;
    /**
     * 维修状态
     */
    @Getter
    private Integer flowStatus;

    @Getter
    private String checkButton;

    @Getter
    private Integer deleteButton;


    UpkeepStatusEnumRepair(Integer flowStatus, String checkButton, Integer deleteButton) {
        this.flowStatus = flowStatus;
        this.checkButton = checkButton;
        this.deleteButton = deleteButton;
    }

    public static UpkeepStatusEnumRepair getEnum(Integer flowStatus){
        for (UpkeepStatusEnumRepair statusEnum : UpkeepStatusEnumRepair.values()) {
            if (statusEnum.getFlowStatus().equals(flowStatus)) {
                return statusEnum;
            }
        }
        return null;
    }

}
