吉安感知网项目-后端
xiebin
2026-01-06 d207a86cdf1ab52ef8cb7cd83bad8fceab8038cf
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
package org.sxkj.common.enums;
 
 
import java.util.Arrays;
import java.util.Optional;
 
/**
 * 航线类型
 * 0马上智飞
 * 1自动举证和手动举证
 * 2面状采集(老大屏使用)-- 对应生成正射tif
 * 3航线规划航点
 * 4面状采集 -- 对应生成正射tif
 * 5倾斜采集 -- 对应生成倾斜实景 tiles
 * 6白膜采集 -- 对应生成白膜 tiles
 * 7倾斜采集(智能摆动拍摄) -- 对应生成倾斜实景 tiles
 * 8斜面航线 -- 对应生成倾斜实景 tiles
 * 9几何航线 -- 对应生成倾斜实景 tiles
 * 10圆面航线 -- 对应生成正射tif
 *
 * @author zhongrj
 * @date 2025-12-08
 */
public enum WaylineTypeEnum {
 
    SVN(0, "马上智飞", 0),
 
    PROOF(1, "自动举证",2),
 
    PLANAR_COL_HIS(2, "面状采集", 9),
 
    ROUTE_PLAN(3, "航线规划航点", 3),
 
    PLANAR_COL(4, "正射举证", 10),
 
    TILT_COL(5, "倾斜采集", 1),
 
    ALB_COL(6, "白膜采集", 8),
 
    TILT_COL_SMART(7, "倾斜采集(智能摆动拍摄)", 4),
 
    TILT_WAY(8, "斜面航线", 5),
 
    GEO_WAY(9, "几何航线", 6),
 
    DISC_WAY(10, "圆面航线", 7),
 
    PROOF_MANUAL(11, "手动举证", 11);
 
    /**
     *     数据库存储字段的值
     */
    private Integer type;
 
    /**
     * 描述
     */
    private String name;
 
    /**
     * 前端入参
     */
    private Integer code;
 
    WaylineTypeEnum(Integer type, String name, Integer code) {
        this.type = type;
        this.name = name;
        this.code = code;
    }
 
    public Integer getType() {
        return type;
    }
 
    public String getName() {
        return name;
    }
 
    public Integer getCode() { return code; }
 
    /**
     * 根据类型获取对应的航线类型值
     * @param code 类型
     *             0:面状航线正射采集,
     *             1:面状航线倾斜采集
     *             2:自动采集
     *             3:白膜采集
     *             4:面状航线-倾斜采集(智能摆动拍摄)
     *             5:斜面航线
     *             6:几何线航线
     *             7:圆形航线
     * @return 航线类型值
     */
    public static String getWaylineTypeValue(int code) {
        Optional<WaylineTypeEnum> matchedEnum = Arrays.stream(WaylineTypeEnum.values())
            .filter(e -> e.getCode() == code)
            .findFirst();
 
        Integer type = matchedEnum.map(WaylineTypeEnum::getType)
            .orElse(0);
        return type.toString();
    }
}