package com.boco.nbd.wios.flow.entity;

import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

import java.util.Arrays;
import java.util.List;

/**
 * @author:cao hai
 * @date:2022/6/29 17:49
 * @version:V1.0
 * @description:FlowConstant
 * @modify:
 */
@Configuration
public class FlowConstant implements InitializingBean {

    /**
     * 集中分析流程标识
     */
    public static String FLOW_CODE;

    /**
     * 超级用户组GroupId
     */
    public static Long FLOW_SUPER_GROUP_ID;


    /**
     * 序号
     */
    public static final String NO = "no";

    /**
     * 配置字段
     */
    public static final String TIMING_CONFIG = "timing";

    /**
     * 天粒度配置节点
     */
    public static final List<Integer> DAY_CONFIG = Arrays.asList(106, 107, 111, 112, 115);

    /**
     * 服务商名称
     */
    public static final String SUPPLIER_NAME = "supplierName";
    public static final String SUPPLIER_ID = "supplierId";

    public static final String ATTACH_FILES = "attachFiles";
    public static final String PIC_FILES = "picFiles";
    /**
     * 增项费用 高附加
     */
    public static final String ITEM_FEES_FILED = "itemFees";
    public static final String ITEM_HIGH_FILED = "itemHighAdd";

    public static final String NOT_PASS = "不通过";
    public static final String PASS = "通过";

    public static final String EMPTY_INSTALL_ITEM = " 无有效增项费用明细";
    public static final String EMPTY_HIGH_ADD_INSTALL_ITEM = " 无有效高附加值材料明细";


    /**
     * 流程图:分页签和单元格两种
     */
    public static final String FLOW_CHART = "flowChart";

    @Value("${flow.flowCode:CamsOrder}")
    private String flowCode;

    @Value("${flow.flowSuperGroupId:}")
    private String flowSuperGroupId;


    @Override
    public void afterPropertiesSet() {
        FLOW_CODE = flowCode;
        if (StrUtil.isNotEmpty(flowSuperGroupId)) {
            FLOW_SUPER_GROUP_ID = Convert.toLong(flowSuperGroupId);
        }
    }
}