package cn.axzo.workflow.common.code;

import cn.axzo.framework.domain.web.code.IModuleRespCode;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 流程模型响应码
 *
 * @author wangli
 * @since 2023/12/14 16:25
 */
@Getter
@AllArgsConstructor
public enum OtherRespCode implements IModuleRespCode {
    MES_PUSH_OBJECT_BUILD_ERROR("001", "构建消息推送对象异常"),
    REPEAT_SUBMIT_TIME_ERROR_TIPS("002", "重复提交间隔时间不能小于{}秒"),
    REPEAT_SUBMIT_ERROR_TIPS("003", "{}"),
    CLIENT_VERSION_SUPPORT("004", "客户端 JAR 包版本不支持,请升级到 {} 版本, 当前版本 {}"),
    MICRO_SERVER_NEED_REBUILD("005", "微服务 {} 需要重新编译发布, 如果是本地调用，请访问 WebApi 接口，在现有的接口地址前加上“web/v1/”即可"),
    MESSAGE_PUSH_EVENT_BUILD_ERROR("006", "不能使用 createEvent 函数创建`发送待办`的事件, 请调用 createPendingPushEvent 函数"),
    ASYNC_JOB_EXECUTION_ERROR("007", "获取指定实例 ID【{}】的锁失败"),
    ILLEGAL_PARAM_ERROR("008", "非法的参数：【{}】"),
    MESSAGE_IM_EVENT_BUILD_ERROR("009", "不能使用 createEvent 函数创建`IM 消息`的事件, 请调用 createIMEvent 函数"),
    ASSIGNEE_NODE_ID_NOT_EXISTS("010", "【{}】 nodeId 不存在, 请检查参数是否正确")
    ;

    private final String code;
    private final String message;

    @Override
    public String getModuleCode() {
        return "99";
    }

    @Override
    public String getProjectCode() {
        return "998";
    }

}
