package com.zm.order.tool.server.stream.enums;

import com.zm.order.enums.PerformancePlatform;
import com.zm.order.tool.server.enums.BizTypeEnum;

/**
 * 订单履约平台映射
 *
 * <p>
 *
 * </p>
 *
 * @author nianchang
 * @date 2023/03/28 10:07 上午
 */
public enum PerformancePlatformMapping {

    /**
     * 烘焙商家配送
     */
    BAKERY_ELE(BizTypeEnum.BAKING.getType(), "-1", PerformancePlatform.SELLER.getType()),

    /**
     * 户尚冷链
     */
    CATERING_HS(BizTypeEnum.CATERING.getType(), "7", PerformancePlatform.DWD.getType()),

    /**
     * 餐道配送
     */
    CATERING_CD(BizTypeEnum.CATERING.getType(), "8", PerformancePlatform.CD.getType()),

    /**
     * 三方平台配送
     */
    CATERING_OTHER_FACADE(BizTypeEnum.CATERING.getType(), "20", PerformancePlatform.OTHER_FACADE.getType()),


    /** 正餐 */

    /**
     * 户尚冷链
     */
    MEAL_MATE_HS(BizTypeEnum.MEAL_MATE.getType(), "7", PerformancePlatform.DWD.getType()),

    /**
     * 餐道配送
     */
    MEAL_MATE_CD(BizTypeEnum.MEAL_MATE.getType(), "8", PerformancePlatform.CD.getType()),

    /**
     * 闪送配送
     */
    MEAL_MATE_SS(BizTypeEnum.MEAL_MATE.getType(), "9", PerformancePlatform.SS.getType()),

    /**
     * 三方平台配送
     */
    MEAL_MATE_OTHER_FACADE(BizTypeEnum.MEAL_MATE.getType(), "20", PerformancePlatform.OTHER_FACADE.getType()),

    /** 正餐 */

    /** 门店助手 */
    /**
     * 餐饮商家配送
     */

    /**
     * 户尚冷链
     */
    ASSISTANT_HS(BizTypeEnum.ASSISTANT.getType(), "7", PerformancePlatform.DWD.getType()),

    /**
     * 餐道配送
     */
    ASSISTANT_CD(BizTypeEnum.ASSISTANT.getType(), "8", PerformancePlatform.CD.getType()),

    /**
     * 闪送配送
     */
    ASSISTANT_SS(BizTypeEnum.ASSISTANT.getType(), "9", PerformancePlatform.SS.getType()),

    /**
     * 三方平台配送
     */
    ASSISTANT_OTHER_FACADE(BizTypeEnum.ASSISTANT.getType(), "20", PerformancePlatform.OTHER_FACADE.getType()),
    /** 门店助手 */
    ;

    /**
     * 业务类型
     *
     * {@link BizTypeEnum}
     */
    private Integer bizType;

    /**
     * 旧枚举值
     */
    private String oldCode;

    /**
     * 新枚举值
     */
    private String newCode;

    public Integer getBizType() {
        return bizType;
    }

    public String getOldCode() {
        return oldCode;
    }

    public String getNewCode() {
        return newCode;
    }

    PerformancePlatformMapping(Integer bizType, String oldCode, String newCode) {
        this.bizType = bizType;
        this.oldCode = oldCode;
        this.newCode = newCode;
    }
}
