liujie
2026-01-22 a8c5e3a00e6654b7cd2d92aa67fdb05404b32f21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package com.ruoyi.system.enums;
 
 
import com.ruoyi.system.service.IOptionVo;
import lombok.Getter;
 
@Getter
public enum DeviceType implements IOptionVo {
    TOWER_CRANE("塔式起重机"),
    CONSTRUCTION_LIFT("施工升降机"),
    MATERIAL_HOIST("物料提升机"),
    BRIDGE_CRANE("桥式起重机"),
    SUSPENDED_SCAFFOLDING("附着式升降脚手架"),
    MOBILE_CRANE("流动式起重机"),
    HIGH_ALTITUDE_BASKET("高处作业吊篮"),
    GANTRY_CRANE("门式起重机"),
    GANTRY_TROLLEY_CRANE("架桥机"),
    OTHER("其他类型");
 
    private final String desc;
 
    DeviceType(String desc) {
        this.desc = desc;
    }
 
    public static DeviceType getByDescription(String description) {
        for (DeviceType deviceType : DeviceType.values()) {
            if (deviceType.desc.equals(description)) {
                return deviceType;
            }
        }
        return null;
    }
 
    @Override
    public String getOptionCode() {
        return name();
    }
 
    @Override
    public String getOptionName() {
        return desc;
    }
 
    public String hierarchyPath() {
        switch (this) {
            case TOWER_CRANE:
                return "/0";
            case CONSTRUCTION_LIFT:
                return "/1";
            case MATERIAL_HOIST:
                return "/5";
            case BRIDGE_CRANE:
                return "/3";
            case SUSPENDED_SCAFFOLDING:
                return "/7";
            case MOBILE_CRANE:
                return "/4";
            case HIGH_ALTITUDE_BASKET:
                return "/8";
            case GANTRY_CRANE:
                return "/6";
            case GANTRY_TROLLEY_CRANE:
                return "/2";
            case OTHER:
            default:
                return "/";
        }
    }
}