吉安感知网项目-前端
shuishen
2026-02-03 89380e6260a75d1d3b94de687ebcc2f50d50659d
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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
import { getStore, setStore } from '@/utils/store'
import EventBus from '@/utils/eventBus'
import { getDateRange } from '@/utils/date'
import getBaseConfig from '@/buildConfig/config'
 
const { timeTypeConfig, timeRangConfig } = getBaseConfig()
 
const home = {
    state: {
        machineNestDetail: false, // 机巢长列表
        // 用户行政区划中心点
        userAreaPosition: getStore({ name: 'userAreaPosition' }) || {},
        // 用户切换后行政区划中心点
        currentAreaPosition: getStore({ name: 'currentAreaPosition' }) || {},
        // 首页viewer的相机姿态
        cameraPosition: getStore({ name: 'cameraPosition' }) || {},
        singleUavHome: {}, //单机巢页面共享数据
        footActiveIndex: 0, // 底部菜单选中
        eventTimeType: timeTypeConfig, // 事件概况详情时间回显缓存
        eventTimeRang: timeRangConfig, // 事件概况详情时间回显缓存
        eventStatus: '', // 事件概况详情状态回显缓存
 
        eventWordOrderType: '',
        eventSelectAiTypes: [],
        eventSelectStatus: '',
 
        flySuggest: {}, //飞行建议
        aiFly: { dockSn: '' }, // aiNowFly 共享数据
        aiFlyButtonShow: true, // aiNowFly 按钮显示
        aiFlySelectWayLine: {}, // aiNowFly 航线库选择航线
        aiFlyClearMap: { airWayLine: false, moreWayLine: false }, // 清除航线
        aiFlyCheckedTable: [], // 选择表格数据表
        aiClickMoreLine: false, // 点击更多航线
        activeModules: 'home', // 首页激活模块页面
        baseLayerKeys: ['1'], // 首页基础图层key
        userAreaTree: [], //用户行政区划树
        singleDockRefreshSn: getStore({ name: 'singleDockRefreshSn' }) || '', //单机巢刷新继续进入单机巢
        measurementEnabled: false, //量算工具启动
    },
    actions: {},
    mutations: {
        setMeasurementEnabled: (state, val) => {
            state.measurementEnabled = val
        },
        setSingleDockRefreshSn: (state, sn) => {
            setStore({ name: 'singleDockRefreshSn', content: sn })
            state.singleDockRefreshSn = sn
        },
        setUserAreaTree: (state, arr) => {
            state.userAreaTree = arr
        },
        setBaseLayerKeys: (state, arr) => {
            state.baseLayerKeys = arr
        },
        setActiveModules: (state, str) => {
            state.activeModules = str
        },
        setAiFlyButtonShow: (state, val) => {
            state.aiFlyButtonShow = val
        },
        setAiFlySelectWayLine: (state, val) => {
            state.aiFlySelectWayLine = val
        },
        setAiFlyCheckedTable: (state, val) => {
            state.aiFlyCheckedTable = val
        },
        setAiClickMoreLine: (state, val) => {
            state.aiClickMoreLine = val
        },
        setAiFlyClearMap: (state, val) => {
            state.aiFlyClearMap = val
            state.aiFlyCheckedTable = []
            state.aiFlySelectWayLine = {}
        },
        setAiFly: (state, data) => {
            state.aiFly = data
        },
        setFlySuggest: (state, data) => {
            state.flySuggest = data
        },
        setUserAreaPosition: (state, data) => {
            setStore({ name: 'userAreaPosition', content: data })
            state.userAreaPosition = data
        },
        setCurrentAreaPosition: (state, data) => {
            setStore({ name: 'currentAreaPosition', content: data })
            state.currentAreaPosition = data
        },
        setCameraPosition: (state, data) => {
            setStore({ name: 'cameraPosition', content: data })
            state.cameraPosition = data
        },
        setFootActiveIndex: (state, data) => {
            //index 仅仅控制按钮高亮  , action 控制功能跳转
            state.footActiveIndex = data.index
            if (data.action) {
                EventBus.emit('Footer-buttonTrigger', data)
            }
            state.machineNestDetail = false
        },
        setMachineNestDetail: (state, data) => {
            state.machineNestDetail = data
        },
        setSingleUavHome: (state, data) => {
            state.singleUavHome = data
            if (data?.device_sn && state.activeModules !== 'singleDock') {
                state.activeModules = 'singleDock'
                state.footActiveIndex = 0
            }
        },
        setEventTimeType: (state, timeType) => {
            state.eventTimeType = timeType
        },
        setEventTimeRang: (state, time) => {
            state.eventTimeRang = time
        },
        setEventStatus: (state, status) => {
            state.eventStatus = status
            state.eventSelectStatus = status
        },
        setEventWordOrderType: (state, str) => {
            state.eventWordOrderType = str
        },
 
        setEventSelectAiTypes: (state, arr = []) => {
            state.eventSelectAiTypes = arr
        },
 
        setEventSelectStatus: (state, status = '') => {
            state.eventSelectStatus = status
        },
    },
    getters: {
        test(state) {
            return state.singleUavHome.id.toString() + '65'
        },
    },
}
 
export default home