package cn.com.poc.ai_dialogues.constant;

import java.util.ArrayList;
import java.util.List;

/**
 * @author alex.yao
 */
public enum AiDialoguesTypeEnum {

    PORTAL("portal", "门户页对话", DialoguesPlatformEnum.ModelLink),

    LONG_TEXT_DOCUMENT("long_text_document", "长文本文档", DialoguesPlatformEnum.ModelLink),

    AI_WRITING("ai_writing", "AI写作", DialoguesPlatformEnum.ModelLink),

    AI_BI("ai_bi", "智能问数", DialoguesPlatformEnum.ModelLink),

    AI_FINANCE("ai_finance", "AI财务", DialoguesPlatformEnum.ModelLink),

    LEGAL_AFFAIRS("legal_affairs", "法务问答", DialoguesPlatformEnum.ModelLink),

    LEGAL_DOCUMENT_WRITING("legal_document_writing", "智写-法律文书写作", DialoguesPlatformEnum.ModelLink),

    AI_LEGAL_DOCUMENT_WRITING("ai_legal_document_writing", "智写-法律文书ai写作", DialoguesPlatformEnum.ModelLink),

    TEMPLATE_LEGAL_DOCUMENT_WRITING("template_legal_document_writing", "智写-法律文书模板写作",
            DialoguesPlatformEnum.ModelLink),

    TRAVEL_BUSINESS("travel_business", "旅游业务", DialoguesPlatformEnum.ModelLink),

    MEETING_ASSISTANT("meeting_assistant", "会议助手", DialoguesPlatformEnum.ModelLink),

    LEGISLATIVE_DOCUMENT_WRITING("legislative_document_writing", "立案调查", DialoguesPlatformEnum.ModelLink),

    CAR_INSURANCE("car_insurance", "车辆保险", DialoguesPlatformEnum.AppBuilder),


    CAR_RECOMMEND("car_recommend", "车辆推荐", DialoguesPlatformEnum.AppBuilder),


    DATA_AUDIT("data_audit", "数据校验", DialoguesPlatformEnum.ModelLink),


    AI_SOFTWARE_COPYRIGHT("ai_software_copyright", "AI软著", DialoguesPlatformEnum.Dify),

    ;

    private final String type;

    private final String desc;

    private final DialoguesPlatformEnum platform;
// DialoguesPlatformEnum.ModelLink: modellink DialoguesPlatformEnum.AppBuilder: appbuilder DialoguesPlatformEnum.Dify: dify

    AiDialoguesTypeEnum(String type, String desc, DialoguesPlatformEnum platform) {
        this.type = type;
        this.desc = desc;
        this.platform = platform;
    }

    public String getType() {
        return type;
    }

    public String getDesc() {
        return desc;
    }

    public DialoguesPlatformEnum getPlatform() {
        return platform;
    }

    public static AiDialoguesTypeEnum getByType(String type) {
        for (AiDialoguesTypeEnum aiDialoguesTypeEnum : AiDialoguesTypeEnum.values()) {
            if (aiDialoguesTypeEnum.getType().equals(type)) {
                return aiDialoguesTypeEnum;
            }
        }
        return null;
    }

}
