feiyu02
2025-03-28 7d74f3fd087d4a8192ed556a6c2e3a2ea3c81cff
src/main/kotlin/cn/flightfeather/supervision/common/utils/Constant.kt
@@ -2,8 +2,23 @@
class Constant{
    //用户
    enum class UserType(val text: String){
        ALLUSER("0")//所有用户
    enum class UserType(val value: Int, val des: String){
        ALL_USER(-1,"0"),//所有用户
        ADMIN(0, "管理员"),
        INSIDER(1, "内部人员"),
        GOV(2, "政府部门"),
        ENTERPRISE(3, "企业");
        companion object {
            fun fromValue(value: Int?) = when (value) {
                -1 -> ALL_USER
                0 -> ADMIN
                1 -> INSIDER
                2 -> GOV
                3 -> ENTERPRISE
                else -> ALL_USER
            }
        }
    }
    //规范类别
    enum class RuleType(val value: Byte, val text: String){
@@ -16,7 +31,7 @@
        RUNINGSTATUS3("3","已结束")
    }
    //场景类型
    enum class ScenseType(val value: String,  val text: String){
    enum class SceneType(val value: String, val text: String){
        TYPE1("1","工地"), TYPE2("2","码头"),
        TYPE3("3","水泥搅拌站"), TYPE4("4","工业企业"),
        TYPE5("5","餐饮"), TYPE6("6","汽修"),
@@ -24,6 +39,7 @@
        TYPE9("9","道路扬尘监测点"), TYPE10("10","道路"),
        TYPE11("11","河流断面"), TYPE12("12","工业园区"),
        TYPE13("13","无固定场景"),TYPE14("14","堆场"),
        TYPE15("15","精品小区"),
        TYPE99("99","其他");
        companion object {
@@ -40,8 +56,173 @@
                TYPE14.value -> 4
                else -> sceneTypeId
            }
            fun getDes(value: Int?): String {
                return getByValue(value?.toString()).text
            }
            fun getByValue(value: String?) = when (value.toString()) {
                "1" -> TYPE1
                "2" -> TYPE2
                "3" -> TYPE3
                "4" -> TYPE4
                "5" -> TYPE5
                "6" -> TYPE6
                "7" -> TYPE7
                "8" -> TYPE8
                "9" -> TYPE9
                "10" -> TYPE10
                "11" -> TYPE11
                "12" -> TYPE12
                "13" -> TYPE13
                "14" -> TYPE14
                "99" -> TYPE99
                else -> TYPE99
            }
            fun getByName(name: String?) = when (name) {
                TYPE1.text -> TYPE1
                TYPE2.text -> TYPE2
                TYPE3.text -> TYPE3
                TYPE4.text -> TYPE4
                TYPE5.text -> TYPE5
                TYPE6.text -> TYPE6
                TYPE7.text -> TYPE7
                TYPE8.text -> TYPE8
                TYPE9.text -> TYPE9
                TYPE10.text -> TYPE10
                TYPE11.text -> TYPE11
                TYPE12.text -> TYPE12
                TYPE13.text -> TYPE13
                TYPE14.text -> TYPE14
                TYPE99.text -> TYPE99
                else -> null
            }
        }
    }
    enum class  SceneTypeTZ(val value: Int, val des: String) {
        NoType(0, "无类型"),
        Restaurant(1, "餐饮"),
        Construction(2, "工地"),
        Wharf(3, "码头"),
        StorageYard(4, "堆场"),
        MixingPlant(5, "搅拌站"),
        Industrial(6, "工业企业"),
        VehicleRepair(7, "汽修"),
        Laboratory(8, "实验室"),
        MedicalInstitution(9, "医疗机构");
        companion object {
            fun getNameByValue(value: Int?): String = when (value) {
                0 -> NoType.des
                1 -> Restaurant.des
                2 -> Construction.des
                3 -> Wharf.des
                4 -> StorageYard.des
                5 -> MixingPlant.des
                6 -> Industrial.des
                7 -> VehicleRepair.des
                8 -> Laboratory.des
                9 -> MedicalInstitution.des
                else -> NoType.des
            }
            fun toPairList() = listOf(
                Pair(Restaurant.value.toString(), Restaurant.des),
                Pair(Construction.value.toString(), Construction.des),
                Pair(Wharf.value.toString(), Wharf.des),
                Pair(StorageYard.value.toString(), StorageYard.des),
                Pair(MixingPlant.value.toString(), MixingPlant.des),
                Pair(Industrial.value.toString(), Industrial.des),
                Pair(VehicleRepair.value.toString(), VehicleRepair.des),
                Pair(Laboratory.value.toString(), Laboratory.des),
                Pair(MedicalInstitution.value.toString(), MedicalInstitution.des),
            )
        }
    }
    //设备类型
    enum class DeviceType(val value: Byte, val text: String){
        MONITOR_DEVICE(0, "监控设备"),
        TREATMENT_DEVICE(1, "治理设备"),
        PRODUCTION_DEVICE(2, "生产设备");
        companion object {
            fun fromValue(value: Byte) = when (value.toInt()) {
                0 -> MONITOR_DEVICE
                1 -> TREATMENT_DEVICE
                2 -> PRODUCTION_DEVICE
                else -> MONITOR_DEVICE
            }
        }
    }
    // 多媒体文件
    enum class MediaFileType(val value: Int, val des: String){
        Problem(1, "问题"),
        TechnicalPrevention(2, "技防措施"),
        MonitorDevice(3, "监测设备"),
        TreatmentDevice(4, "治理设备"),
        RoutineRecord(5, "常规记录"),
        Signature(6, "签字"),
        Nameplate(7, "铭牌"),
        TYPE_1(51, "扩展类一"),
        TYPE_2(52, "扩展类二"),
        TYPE_3(53, "扩展类三"),
        TYPE_4(54, "扩展类四"),
        TYPE_5(55, "扩展类五"),
        TYPE_6(56, "扩展类六"),
        TYPE_7(57, "扩展类七"),
        TYPE_8(58, "扩展类八"),
        TYPE_9(59, "扩展类九"),
        TYPE_10(60, "扩展类十");
        companion object {
            fun getList(sceneTypeId: Byte?): List<MediaFileType> {
                val type = SceneType.getByValue(sceneTypeId?.toString())
                return getList(type)
            }
            fun getList(sceneType: SceneType) = when (sceneType) {
                SceneType.TYPE5 -> listOf(RoutineRecord, TYPE_1, TYPE_2, TYPE_3, TYPE_4, TYPE_5,
                    TYPE_6, TYPE_7, TYPE_8, TYPE_9, TYPE_10)
                else -> listOf(RoutineRecord, MonitorDevice, Nameplate)
            }
        }
    }
    // 评分条目类型
    enum class EvaScoreMode(val value: String, val des: String){
        BASIC_SCORE("basic_score", "基础分"),
        ADDITION_SCORE("addition_score", "附加分"),
    }
    // 得分模式
    enum class EvaGradeMode(val value: String, val des: String){
        MINUS_MODE("minus_mode", "减分模式"),
        ADD_MODE("add_mode", "加分模式"),
    }
    // 评估选择模式
    enum class EvaSelectMode(val value: String, val des: String){
        SINGLE_MODE("single_mode", "单选模式"),
        MULTI_MODE("multi_mode", "多选模式"),
    }
    // socket消息类型
    enum class SocketMessageType(val value: Int, val des: String){
        BG_TASK(1, "后台任务"),
        BUSINESS_LOG(2, "业务日志"),
    }
    // socket心跳消息类型
    enum class SocketHeartMessageType(val value: Int, val des: String){
        HEART_MESSAGE_TYPE(0, "心跳机制")
    }
    companion object {
        //问题审核
@@ -75,5 +256,12 @@
        const val RESTAURANT_LOCATION_ID = "bMpvxuqHlB1CTYfh"
        // 汽修问题位置
        const val Vehicle_LOCATION_ID = "PuToYNqdSLFQSSYk"
        // 任务类型
        const val DOMAIN_GUID_TASK_TYPE = "qASRIAjgSfCuvJOi"
        // 任务期限类型
        const val DOMAIN_GUID_TASK_DEADLINE_TYPE = "cS9MAkmXN1S37Tbv"
        // 任务层次
        const val DOMAIN_GUID_TASK_LEVEL = "TzbIi3ckPWMzlsH6"
    }
}