openatc-components 0.4.88 → 0.4.89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/index.js +137 -137
- package/package/kisscomps/components/BoardCard/BoardCard.vue +4 -0
- package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +2 -2
- package/package/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +9 -6
- package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +49 -16
- package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +0 -16
- package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +0 -16
- package/package/kisscomps/components/IntersectionMap/intersectionmap.vue +5 -0
- package/package/kisscomps/components/IntersectionMapDirSelect/customCrossDiagram.vue +5 -0
- package/package/kisscomps/components/OverLap/OverLap.vue +1 -22
- package/package/kisscomps/components/OverviewComponent/index.vue +33 -7
- package/package/kisscomps/components/PatternStatus/PatternStatus.vue +84 -46
- package/package/kisscomps/components/SchemeConfig/SchemeConfig.vue +30 -7
- package/package/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +1 -5
- package/package/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +19 -0
- package/package/kisscomps/components/overView/index.vue +30 -7
- package/package/kisscomps/components/patternList/patternList.vue +4 -0
- package/package/kisscomps/index.js +2 -6
- package/package/kissui.min.js +1 -1
- package/package.json +1 -1
- package/src/App.vue +24 -20
- package/src/i18n/language/en.js +0 -78
- package/src/i18n/language/index.js +25 -31
- package/src/i18n/language/zh.js +0 -78
- package/src/kisscomps/components/BoardCard/BoardCard.vue +4 -0
- package/src/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +2 -2
- package/src/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +9 -6
- package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +49 -16
- package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +0 -16
- package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/sidePos.json +0 -16
- package/src/kisscomps/components/IntersectionMap/intersectionmap.vue +5 -0
- package/src/kisscomps/components/IntersectionMapDirSelect/customCrossDiagram.vue +5 -0
- package/src/kisscomps/components/OverLap/OverLap.vue +1 -22
- package/src/kisscomps/components/OverviewComponent/index.vue +33 -7
- package/src/kisscomps/components/PatternStatus/PatternStatus.vue +84 -46
- package/src/kisscomps/components/SchemeConfig/SchemeConfig.vue +30 -7
- package/src/kisscomps/components/SchemeConfig/manualControlModalNew/icon.vue +1 -5
- package/src/kisscomps/components/SchemeConfig/tentativeplancontrolmodal/index.vue +19 -0
- package/src/kisscomps/components/overView/index.vue +30 -7
- package/src/kisscomps/components/patternList/patternList.vue +4 -0
- package/src/kisscomps/index.js +2 -6
- package/src/utils/ControlFormat.js +36 -14
- package/src/utils/auth.js +199 -199
- package/src/utils/conflct.js +268 -266
- package/src/utils/fault.js +72 -20
- package/src/utils/faultcode.js +182 -130
- package/src/utils/responseMessage.js +21 -24
- package/src/views/intersection.vue +8 -7
- package/src/views/patternConfig.vue +2 -2
- package/src/views/schemeconfig.vue +1 -1
- package/src/i18n/language/ru.js +0 -1555
package/config/index.js
CHANGED
|
@@ -1,137 +1,137 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2020 kedacom
|
|
3
|
-
* OpenATC is licensed under Mulan PSL v2.
|
|
4
|
-
* You can use this software according to the terms and conditions of the Mulan PSL v2.
|
|
5
|
-
* You may obtain a copy of Mulan PSL v2 at:
|
|
6
|
-
* http://license.coscl.org.cn/MulanPSL2
|
|
7
|
-
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
|
8
|
-
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
|
9
|
-
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
|
10
|
-
* See the Mulan PSL v2 for more details.
|
|
11
|
-
**/
|
|
12
|
-
'use strict'
|
|
13
|
-
// Template version: 1.2.6
|
|
14
|
-
// see http://vuejs-templates.github.io/webpack for documentation.
|
|
15
|
-
const fs = require('fs');
|
|
16
|
-
const path = require('path')
|
|
17
|
-
let VUE_APP_PROXY_API_TARGET = "http://127.0.0.1:8080"
|
|
18
|
-
let VUE_APP_PROXY_MAIN_TARGET = "http://
|
|
19
|
-
let VUE_APP_PROXY_SOCKET_TARGET = "http://127.0.0.1:8080"
|
|
20
|
-
const localFile = path.resolve(__dirname, 'dev.local.js');
|
|
21
|
-
if (fs.existsSync(localFile)) {
|
|
22
|
-
let local = require(localFile)
|
|
23
|
-
if (local) {
|
|
24
|
-
VUE_APP_PROXY_API_TARGET = local.VUE_APP_PROXY_API_TARGET
|
|
25
|
-
VUE_APP_PROXY_MAIN_TARGET = local.VUE_APP_PROXY_MAIN_TARGET
|
|
26
|
-
VUE_APP_PROXY_SOCKET_TARGET = local.VUE_APP_PROXY_SOCKET_TARGET
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
module.exports = {
|
|
30
|
-
dev: {
|
|
31
|
-
// Paths
|
|
32
|
-
assetsSubDirectory: 'static',
|
|
33
|
-
assetsPublicPath: '/',
|
|
34
|
-
proxyTable: {
|
|
35
|
-
'/api': {
|
|
36
|
-
target: VUE_APP_PROXY_API_TARGET,
|
|
37
|
-
changeOrigin: true,
|
|
38
|
-
ws: true,
|
|
39
|
-
secure: false,
|
|
40
|
-
pathRewrite: {
|
|
41
|
-
'^/api': '/api'
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
'/socket': {
|
|
45
|
-
target: VUE_APP_PROXY_SOCKET_TARGET,
|
|
46
|
-
changeOrigin: true,
|
|
47
|
-
ws: true,
|
|
48
|
-
secure: false,
|
|
49
|
-
pathRewrite: {
|
|
50
|
-
'^/socket': '/'
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
'/': {
|
|
54
|
-
target: VUE_APP_PROXY_MAIN_TARGET,
|
|
55
|
-
changeOrigin: true, //跨域
|
|
56
|
-
pathRewrite: {
|
|
57
|
-
'^/': '/'//这里理解成用‘/api’代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://10.1.5.11:8080/xxx/duty?time=2017-07-07 14:57:22',直接写‘/api/xxx/duty?time=2017-07-07 14:57:22’即可
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
|
|
62
|
-
// Various Dev Server settings
|
|
63
|
-
// host: '0.0.0.0',
|
|
64
|
-
host: 'localhost', // can be overwritten by process.env.HOST
|
|
65
|
-
port: 9528, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
|
|
66
|
-
autoOpenBrowser: true,
|
|
67
|
-
errorOverlay: true,
|
|
68
|
-
notifyOnErrors: false,
|
|
69
|
-
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
|
|
70
|
-
|
|
71
|
-
// Use Eslint Loader?
|
|
72
|
-
// If true, your code will be linted during bundling and
|
|
73
|
-
// linting errors and warnings will be shown in the console.
|
|
74
|
-
useEslint: true,
|
|
75
|
-
// If true, eslint errors and warnings will also be shown in the error overlay
|
|
76
|
-
// in the browser.
|
|
77
|
-
showEslintErrorsInOverlay: true,
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* Source Maps
|
|
81
|
-
*/
|
|
82
|
-
|
|
83
|
-
// https://webpack.js.org/configuration/devtool/#development
|
|
84
|
-
devtool: 'source-map',
|
|
85
|
-
|
|
86
|
-
// If you have problems debugging vue-files in devtools,
|
|
87
|
-
// set this to false - it *may* help
|
|
88
|
-
// https://vue-loader.vuejs.org/en/options.html#cachebusting
|
|
89
|
-
cacheBusting: false,
|
|
90
|
-
|
|
91
|
-
// CSS Sourcemaps off by default because relative paths are "buggy"
|
|
92
|
-
// with this option, according to the CSS-Loader README
|
|
93
|
-
// (https://github.com/webpack/css-loader#sourcemaps)
|
|
94
|
-
// In our experience, they generally work as expected,
|
|
95
|
-
// just be aware of this issue when enabling this option.
|
|
96
|
-
cssSourceMap: false,
|
|
97
|
-
},
|
|
98
|
-
|
|
99
|
-
build: {
|
|
100
|
-
// Template for index.html
|
|
101
|
-
index: path.resolve(__dirname, '../dist/index.html'),
|
|
102
|
-
|
|
103
|
-
// Paths
|
|
104
|
-
assetsRoot: path.resolve(__dirname, '../dist'),
|
|
105
|
-
assetsSubDirectory: './',
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* You can set by youself according to actual condition
|
|
109
|
-
* You will need to set this if you plan to deploy your site under a sub path,
|
|
110
|
-
* for example GitHub pages. If you plan to deploy your site to https://foo.github.io/bar/,
|
|
111
|
-
* then assetsPublicPath should be set to "/bar/".
|
|
112
|
-
* In most cases please use '/' !!!
|
|
113
|
-
*/
|
|
114
|
-
assetsPublicPath: './', // If you are deployed on the root path, please use '/'
|
|
115
|
-
|
|
116
|
-
/**
|
|
117
|
-
* Source Maps
|
|
118
|
-
*/
|
|
119
|
-
|
|
120
|
-
productionSourceMap: false,
|
|
121
|
-
// https://webpack.js.org/configuration/devtool/#production
|
|
122
|
-
devtool: '#source-map',
|
|
123
|
-
|
|
124
|
-
// Gzip off by default as many popular static hosts such as
|
|
125
|
-
// Surge or Netlify already gzip all static assets for you.
|
|
126
|
-
// Before setting to `true`, make sure to:
|
|
127
|
-
// npm install --save-dev compression-webpack-plugin
|
|
128
|
-
productionGzip: false,
|
|
129
|
-
productionGzipExtensions: ['js', 'css'],
|
|
130
|
-
|
|
131
|
-
// Run the build command with an extra argument to
|
|
132
|
-
// View the bundle analyzer report after build finishes:
|
|
133
|
-
// `npm run build --report`
|
|
134
|
-
// Set to `true` or `false` to always turn it on or off
|
|
135
|
-
bundleAnalyzerReport: process.env.npm_config_report
|
|
136
|
-
}
|
|
137
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020 kedacom
|
|
3
|
+
* OpenATC is licensed under Mulan PSL v2.
|
|
4
|
+
* You can use this software according to the terms and conditions of the Mulan PSL v2.
|
|
5
|
+
* You may obtain a copy of Mulan PSL v2 at:
|
|
6
|
+
* http://license.coscl.org.cn/MulanPSL2
|
|
7
|
+
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
|
8
|
+
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
|
9
|
+
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
|
10
|
+
* See the Mulan PSL v2 for more details.
|
|
11
|
+
**/
|
|
12
|
+
'use strict'
|
|
13
|
+
// Template version: 1.2.6
|
|
14
|
+
// see http://vuejs-templates.github.io/webpack for documentation.
|
|
15
|
+
const fs = require('fs');
|
|
16
|
+
const path = require('path')
|
|
17
|
+
let VUE_APP_PROXY_API_TARGET = "http://127.0.0.1:8080"
|
|
18
|
+
let VUE_APP_PROXY_MAIN_TARGET = "http://192.168.14.122:10003/openatc"
|
|
19
|
+
let VUE_APP_PROXY_SOCKET_TARGET = "http://127.0.0.1:8080"
|
|
20
|
+
const localFile = path.resolve(__dirname, 'dev.local.js');
|
|
21
|
+
if (fs.existsSync(localFile)) {
|
|
22
|
+
let local = require(localFile)
|
|
23
|
+
if (local) {
|
|
24
|
+
VUE_APP_PROXY_API_TARGET = local.VUE_APP_PROXY_API_TARGET
|
|
25
|
+
VUE_APP_PROXY_MAIN_TARGET = local.VUE_APP_PROXY_MAIN_TARGET
|
|
26
|
+
VUE_APP_PROXY_SOCKET_TARGET = local.VUE_APP_PROXY_SOCKET_TARGET
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
module.exports = {
|
|
30
|
+
dev: {
|
|
31
|
+
// Paths
|
|
32
|
+
assetsSubDirectory: 'static',
|
|
33
|
+
assetsPublicPath: '/',
|
|
34
|
+
proxyTable: {
|
|
35
|
+
'/api': {
|
|
36
|
+
target: VUE_APP_PROXY_API_TARGET,
|
|
37
|
+
changeOrigin: true,
|
|
38
|
+
ws: true,
|
|
39
|
+
secure: false,
|
|
40
|
+
pathRewrite: {
|
|
41
|
+
'^/api': '/api'
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
'/socket': {
|
|
45
|
+
target: VUE_APP_PROXY_SOCKET_TARGET,
|
|
46
|
+
changeOrigin: true,
|
|
47
|
+
ws: true,
|
|
48
|
+
secure: false,
|
|
49
|
+
pathRewrite: {
|
|
50
|
+
'^/socket': '/'
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
'/': {
|
|
54
|
+
target: VUE_APP_PROXY_MAIN_TARGET,
|
|
55
|
+
changeOrigin: true, //跨域
|
|
56
|
+
pathRewrite: {
|
|
57
|
+
'^/': '/'//这里理解成用‘/api’代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://10.1.5.11:8080/xxx/duty?time=2017-07-07 14:57:22',直接写‘/api/xxx/duty?time=2017-07-07 14:57:22’即可
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
|
|
62
|
+
// Various Dev Server settings
|
|
63
|
+
// host: '0.0.0.0',
|
|
64
|
+
host: 'localhost', // can be overwritten by process.env.HOST
|
|
65
|
+
port: 9528, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
|
|
66
|
+
autoOpenBrowser: true,
|
|
67
|
+
errorOverlay: true,
|
|
68
|
+
notifyOnErrors: false,
|
|
69
|
+
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
|
|
70
|
+
|
|
71
|
+
// Use Eslint Loader?
|
|
72
|
+
// If true, your code will be linted during bundling and
|
|
73
|
+
// linting errors and warnings will be shown in the console.
|
|
74
|
+
useEslint: true,
|
|
75
|
+
// If true, eslint errors and warnings will also be shown in the error overlay
|
|
76
|
+
// in the browser.
|
|
77
|
+
showEslintErrorsInOverlay: true,
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Source Maps
|
|
81
|
+
*/
|
|
82
|
+
|
|
83
|
+
// https://webpack.js.org/configuration/devtool/#development
|
|
84
|
+
devtool: 'source-map',
|
|
85
|
+
|
|
86
|
+
// If you have problems debugging vue-files in devtools,
|
|
87
|
+
// set this to false - it *may* help
|
|
88
|
+
// https://vue-loader.vuejs.org/en/options.html#cachebusting
|
|
89
|
+
cacheBusting: false,
|
|
90
|
+
|
|
91
|
+
// CSS Sourcemaps off by default because relative paths are "buggy"
|
|
92
|
+
// with this option, according to the CSS-Loader README
|
|
93
|
+
// (https://github.com/webpack/css-loader#sourcemaps)
|
|
94
|
+
// In our experience, they generally work as expected,
|
|
95
|
+
// just be aware of this issue when enabling this option.
|
|
96
|
+
cssSourceMap: false,
|
|
97
|
+
},
|
|
98
|
+
|
|
99
|
+
build: {
|
|
100
|
+
// Template for index.html
|
|
101
|
+
index: path.resolve(__dirname, '../dist/index.html'),
|
|
102
|
+
|
|
103
|
+
// Paths
|
|
104
|
+
assetsRoot: path.resolve(__dirname, '../dist'),
|
|
105
|
+
assetsSubDirectory: './',
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* You can set by youself according to actual condition
|
|
109
|
+
* You will need to set this if you plan to deploy your site under a sub path,
|
|
110
|
+
* for example GitHub pages. If you plan to deploy your site to https://foo.github.io/bar/,
|
|
111
|
+
* then assetsPublicPath should be set to "/bar/".
|
|
112
|
+
* In most cases please use '/' !!!
|
|
113
|
+
*/
|
|
114
|
+
assetsPublicPath: './', // If you are deployed on the root path, please use '/'
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Source Maps
|
|
118
|
+
*/
|
|
119
|
+
|
|
120
|
+
productionSourceMap: false,
|
|
121
|
+
// https://webpack.js.org/configuration/devtool/#production
|
|
122
|
+
devtool: '#source-map',
|
|
123
|
+
|
|
124
|
+
// Gzip off by default as many popular static hosts such as
|
|
125
|
+
// Surge or Netlify already gzip all static assets for you.
|
|
126
|
+
// Before setting to `true`, make sure to:
|
|
127
|
+
// npm install --save-dev compression-webpack-plugin
|
|
128
|
+
productionGzip: false,
|
|
129
|
+
productionGzipExtensions: ['js', 'css'],
|
|
130
|
+
|
|
131
|
+
// Run the build command with an extra argument to
|
|
132
|
+
// View the bundle analyzer report after build finishes:
|
|
133
|
+
// `npm run build --report`
|
|
134
|
+
// Set to `true` or `false` to always turn it on or off
|
|
135
|
+
bundleAnalyzerReport: process.env.npm_config_report
|
|
136
|
+
}
|
|
137
|
+
}
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
:isMove="isMove"
|
|
16
16
|
:localPatternList="localPatternList"
|
|
17
17
|
:showCondition="showCondition"
|
|
18
|
+
:patternType="patternType"
|
|
18
19
|
:contrloType="contrloType"
|
|
19
20
|
:allPatternList="allPatternList"
|
|
20
21
|
:stagesChange="stagesChange"
|
|
@@ -103,6 +104,9 @@ export default {
|
|
|
103
104
|
patternId: {
|
|
104
105
|
type: Number
|
|
105
106
|
},
|
|
107
|
+
patternType: {
|
|
108
|
+
type: String
|
|
109
|
+
},
|
|
106
110
|
agentId: {
|
|
107
111
|
type: String
|
|
108
112
|
},
|
package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue
CHANGED
|
@@ -288,7 +288,7 @@ export default {
|
|
|
288
288
|
key: this.CrossDiagramMgr.getUniqueKey('phase'),
|
|
289
289
|
channelid: ele.id, // 通道id
|
|
290
290
|
id: dir, // 接口返回的dir字段,对应前端定义的相位方向id,唯一标识
|
|
291
|
-
name: this.$
|
|
291
|
+
name: this.$i18n.locale === 'en' ? phaseinfo.ename : phaseinfo.name
|
|
292
292
|
})
|
|
293
293
|
})
|
|
294
294
|
realphasedirarr = Array.from(new Set(realphasedirarr.concat(ele.realdir)))
|
|
@@ -304,7 +304,7 @@ export default {
|
|
|
304
304
|
key: this.CrossDiagramMgr.getUniqueKey('pedphase'),
|
|
305
305
|
channelid: ele.id, // 通道id
|
|
306
306
|
id: dir,
|
|
307
|
-
name: this.$
|
|
307
|
+
name: this.$i18n.locale === 'en' ? pedinfo.ename : pedinfo.desc
|
|
308
308
|
})
|
|
309
309
|
}
|
|
310
310
|
})
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
isVipRoute
|
|
9
9
|
:clickMode="clickMode"
|
|
10
10
|
:isThirdSignal="isThirdSignal"
|
|
11
|
+
:isRcp="isRcp"
|
|
11
12
|
:choosedDirection="choosedDirection"
|
|
12
13
|
:choosedPedDirection="choosedPedDirection"
|
|
13
14
|
:roadDirection="roadDirection"
|
|
@@ -36,7 +37,8 @@ export default {
|
|
|
36
37
|
return {
|
|
37
38
|
crossStatusData: {},
|
|
38
39
|
isSpecialIntersection: undefined,
|
|
39
|
-
isThirdSignal: false,
|
|
40
|
+
isThirdSignal: false, // 是否是第三方平台(可以直接传,也可以内部接口判断),特勤、分组管控下,非第三方设备,按通道显示相位方向;第三方设备还是按路口相位配置显示相位方向
|
|
41
|
+
isRcp: false, // 特勤模式下兼容20999 rcp协议,能显示路口图及相位
|
|
40
42
|
reset: true
|
|
41
43
|
}
|
|
42
44
|
},
|
|
@@ -104,6 +106,7 @@ export default {
|
|
|
104
106
|
}
|
|
105
107
|
this.tempType = res.data.data.type
|
|
106
108
|
this.mainType = this.tempType.split('-')[0]
|
|
109
|
+
this.isSpecialIntersection = false
|
|
107
110
|
if (this.mainType === '999') {
|
|
108
111
|
this.isSpecialIntersection = true
|
|
109
112
|
if (this.clickMode) {
|
|
@@ -111,8 +114,6 @@ export default {
|
|
|
111
114
|
this.$refs.listConfiguration.init(res)
|
|
112
115
|
})
|
|
113
116
|
}
|
|
114
|
-
} else {
|
|
115
|
-
this.isSpecialIntersection = false
|
|
116
117
|
}
|
|
117
118
|
})
|
|
118
119
|
},
|
|
@@ -124,15 +125,17 @@ export default {
|
|
|
124
125
|
return
|
|
125
126
|
}
|
|
126
127
|
this.platform = res.data.data.platform
|
|
127
|
-
|
|
128
|
+
this.isThirdSignal = false
|
|
129
|
+
this.isRcp = false
|
|
128
130
|
if (this.platform !== '' && this.platform !== 'OpenATC') {
|
|
129
131
|
this.isThirdSignal = true
|
|
130
|
-
} else {
|
|
131
|
-
this.isThirdSignal = false
|
|
132
132
|
}
|
|
133
133
|
if (this.thirdSignal) {
|
|
134
134
|
this.isThirdSignal = this.thirdSignal
|
|
135
135
|
}
|
|
136
|
+
if (res.data.data.protocol === 'rcp') {
|
|
137
|
+
this.isRcp = true
|
|
138
|
+
}
|
|
136
139
|
})
|
|
137
140
|
},
|
|
138
141
|
handleClickCrossIcon (allChoosedDir, curClickedPhase) {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
<!-- 右行道路 B-->
|
|
32
32
|
<div class="right-dir-road" v-if="roadDir === 'right'">
|
|
33
33
|
<div class="centerText" v-if="crossType !== 'Customroads' && isHasPhase">
|
|
34
|
-
<div
|
|
34
|
+
<div class="merge-direction-icon">
|
|
35
35
|
<xdr-dir-selector
|
|
36
36
|
:Data="xdrMData"
|
|
37
37
|
Width="80px"
|
|
@@ -307,6 +307,10 @@ export default {
|
|
|
307
307
|
channelType: {
|
|
308
308
|
type: Boolean,
|
|
309
309
|
default: false
|
|
310
|
+
},
|
|
311
|
+
isRcp: {
|
|
312
|
+
type: Boolean,
|
|
313
|
+
default: false
|
|
310
314
|
}
|
|
311
315
|
},
|
|
312
316
|
// computed: {
|
|
@@ -883,8 +887,8 @@ export default {
|
|
|
883
887
|
this.getValidDirections()
|
|
884
888
|
this.getMergeDirections()
|
|
885
889
|
}
|
|
886
|
-
if (this.isVipRoute && !this.isThirdSignal) {
|
|
887
|
-
//
|
|
890
|
+
if (this.isVipRoute && !this.isThirdSignal && !this.isRcp) {
|
|
891
|
+
// 特勤、分组管控下,非第三方设备且不是rcp协议,按通道显示相位方向;第三方设备和rcp协议还是按路口相位配置显示相位方向
|
|
888
892
|
this.getChannelInfo()
|
|
889
893
|
return
|
|
890
894
|
}
|
|
@@ -892,15 +896,22 @@ export default {
|
|
|
892
896
|
this.getChannelInfo()
|
|
893
897
|
return
|
|
894
898
|
}
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
this.
|
|
899
|
+
let CrossInfo = res
|
|
900
|
+
if (this.isRcp) {
|
|
901
|
+
// rcp协议数据格式不一样,需要转换成原路口信息数据结构
|
|
902
|
+
CrossInfo = this.transRcpPhaseData(res)
|
|
903
|
+
}
|
|
904
|
+
this.getTempCrossInfo(CrossInfo)
|
|
905
|
+
if (!this.isRcp) {
|
|
906
|
+
// 显示阶段的判断条件
|
|
907
|
+
this.allPatternList = res.data.data.param.patternList
|
|
908
|
+
if (this.allPatternList[0].rings === undefined || this.allPatternList[0].rings.length === 0) {
|
|
909
|
+
this.contrloType = 'stage'
|
|
910
|
+
} else if (this.allPatternList[0].contrloType === 'stage') {
|
|
911
|
+
this.contrloType = 'stage'
|
|
912
|
+
} else {
|
|
913
|
+
this.contrloType = 'ring'
|
|
914
|
+
}
|
|
904
915
|
}
|
|
905
916
|
})
|
|
906
917
|
},
|
|
@@ -924,7 +935,7 @@ export default {
|
|
|
924
935
|
if (!this.isVipRoute) {
|
|
925
936
|
this.drawDefaultPhaseIcon()
|
|
926
937
|
}
|
|
927
|
-
if (this.isVipRoute && this.isThirdSignal) {
|
|
938
|
+
if ((this.isVipRoute && this.isThirdSignal) || (this.isVipRoute && this.isRcp)) {
|
|
928
939
|
this.LanePhaseData = this.CrossDiagramMgr.compare(this.LanePhaseData, this.overlapLanePhaseData, 'type', 'nostatus')
|
|
929
940
|
// console.log(this.LanePhaseData)
|
|
930
941
|
this.sidewalkPhaseData = this.CrossDiagramMgr.compare(this.sidewalkPhaseData, this.overlapsidewalkPhaseData, 'pedtype', 'nostatus')
|
|
@@ -935,6 +946,28 @@ export default {
|
|
|
935
946
|
this.drawPhaseIcon()
|
|
936
947
|
}
|
|
937
948
|
},
|
|
949
|
+
transRcpPhaseData (rcpCrossInfo) {
|
|
950
|
+
const phaseConfigs = rcpCrossInfo.data.data.param.Phase.PhaseConfig
|
|
951
|
+
const phaseList = phaseConfigs.map(phase => {
|
|
952
|
+
return {
|
|
953
|
+
id: phase.Index,
|
|
954
|
+
direction: phase.direction || [],
|
|
955
|
+
peddirection: phase.peddirection || []
|
|
956
|
+
}
|
|
957
|
+
})
|
|
958
|
+
// 返回转换后的数据结构
|
|
959
|
+
const CrossInfo = {
|
|
960
|
+
data: {
|
|
961
|
+
data: {
|
|
962
|
+
type: rcpCrossInfo.data.data.type,
|
|
963
|
+
param: {
|
|
964
|
+
phaseList: phaseList
|
|
965
|
+
}
|
|
966
|
+
}
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
return CrossInfo
|
|
970
|
+
},
|
|
938
971
|
getBusPos () {
|
|
939
972
|
// 公交相位信息
|
|
940
973
|
this.busPhaseData = []
|
|
@@ -1333,14 +1366,14 @@ export default {
|
|
|
1333
1366
|
async drawPhaseIcon () {
|
|
1334
1367
|
const targetIds = [4, 8, 12, 16] // 掉头相位后画
|
|
1335
1368
|
this.LanePhaseData = this.LanePhaseData.filter(item => !targetIds.includes(item.id)).concat(this.LanePhaseData.filter(item => targetIds.includes(item.id)))
|
|
1336
|
-
if (!this.isThirdSignal && this.isVipRoute) {
|
|
1369
|
+
if (!this.isThirdSignal && this.isVipRoute && !this.isRcp) {
|
|
1337
1370
|
await this.getConflictList()
|
|
1338
1371
|
this.handleClickedPhase()
|
|
1339
1372
|
this.compLanePhaseData = JSON.parse(JSON.stringify(this.LanePhaseData))
|
|
1340
1373
|
this.handleClickedPedPhase()
|
|
1341
1374
|
this.compSidewalkPhaseData = JSON.parse(JSON.stringify(this.sidewalkPhaseData))
|
|
1342
1375
|
} else {
|
|
1343
|
-
//
|
|
1376
|
+
// 第三方信号机不需要处理冲突关系/特勤下rcp协议不需要处理冲突
|
|
1344
1377
|
this.handleClickedPhase()
|
|
1345
1378
|
this.compLanePhaseData = JSON.parse(JSON.stringify(this.LanePhaseData))
|
|
1346
1379
|
this.handleClickedPedPhase()
|
|
@@ -1348,7 +1381,7 @@ export default {
|
|
|
1348
1381
|
}
|
|
1349
1382
|
},
|
|
1350
1383
|
handleClickedPhase () {
|
|
1351
|
-
if (!this.isThirdSignal) {
|
|
1384
|
+
if (!this.isThirdSignal && !this.isRcp) {
|
|
1352
1385
|
this.inneChoosedDirection = this.inneChoosedDirection.filter(dir => this.phaseConflictList.indexOf(dir) === -1)
|
|
1353
1386
|
}
|
|
1354
1387
|
for (let index = 0; index < this.LanePhaseData.length; index++) {
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
"id": 1,
|
|
4
4
|
"name": "东直行",
|
|
5
5
|
"ename": "East-Straight",
|
|
6
|
-
"commonname": "openatccomponents.overview.es",
|
|
7
6
|
"x": "588px",
|
|
8
7
|
"y": "267px"
|
|
9
8
|
},
|
|
@@ -11,7 +10,6 @@
|
|
|
11
10
|
"id": 2,
|
|
12
11
|
"name": "东左转",
|
|
13
12
|
"ename": "East-Left",
|
|
14
|
-
"commonname": "openatccomponents.overview.el",
|
|
15
13
|
"x": "588px",
|
|
16
14
|
"y": "297px"
|
|
17
15
|
},
|
|
@@ -19,7 +17,6 @@
|
|
|
19
17
|
"id": 3,
|
|
20
18
|
"name": "东右转",
|
|
21
19
|
"ename": "East-Right",
|
|
22
|
-
"commonname": "openatccomponents.overview.er",
|
|
23
20
|
"x": "588px",
|
|
24
21
|
"y": "238px"
|
|
25
22
|
},
|
|
@@ -27,7 +24,6 @@
|
|
|
27
24
|
"id": 4,
|
|
28
25
|
"name": "东掉头",
|
|
29
26
|
"ename": "East-Back",
|
|
30
|
-
"commonname": "openatccomponents.overview.eb",
|
|
31
27
|
"x": "588px",
|
|
32
28
|
"y": "325px"
|
|
33
29
|
},
|
|
@@ -35,7 +31,6 @@
|
|
|
35
31
|
"id": 5,
|
|
36
32
|
"name": "西直行",
|
|
37
33
|
"ename": "West-Straight",
|
|
38
|
-
"commonname": "openatccomponents.overview.ws",
|
|
39
34
|
"x": "244px",
|
|
40
35
|
"y": "359px"
|
|
41
36
|
},
|
|
@@ -43,7 +38,6 @@
|
|
|
43
38
|
"id": 6,
|
|
44
39
|
"name": "西左转",
|
|
45
40
|
"ename": "West-Left",
|
|
46
|
-
"commonname": "openatccomponents.overview.wl",
|
|
47
41
|
"x": "244px",
|
|
48
42
|
"y": "329px"
|
|
49
43
|
},
|
|
@@ -51,7 +45,6 @@
|
|
|
51
45
|
"id": 7,
|
|
52
46
|
"name": "西右转",
|
|
53
47
|
"ename": "West-Right",
|
|
54
|
-
"commonname": "openatccomponents.overview.wr",
|
|
55
48
|
"x": "244px",
|
|
56
49
|
"y": "388px"
|
|
57
50
|
},
|
|
@@ -59,7 +52,6 @@
|
|
|
59
52
|
"id": 8,
|
|
60
53
|
"name": "西掉头",
|
|
61
54
|
"ename": "West-Back",
|
|
62
|
-
"commonname": "openatccomponents.overview.wb",
|
|
63
55
|
"x": "244px",
|
|
64
56
|
"y": "300px"
|
|
65
57
|
},
|
|
@@ -67,7 +59,6 @@
|
|
|
67
59
|
"id": 9,
|
|
68
60
|
"name": "北直行",
|
|
69
61
|
"ename": "North-Straight",
|
|
70
|
-
"commonname": "openatccomponents.overview.ns",
|
|
71
62
|
"x": "379px",
|
|
72
63
|
"y": "134px"
|
|
73
64
|
},
|
|
@@ -75,7 +66,6 @@
|
|
|
75
66
|
"id": 10,
|
|
76
67
|
"name": "北左转",
|
|
77
68
|
"ename": "North-Left",
|
|
78
|
-
"commonname": "openatccomponents.overview.nl",
|
|
79
69
|
"x": "408px",
|
|
80
70
|
"y": "134px"
|
|
81
71
|
},
|
|
@@ -83,7 +73,6 @@
|
|
|
83
73
|
"id": 11,
|
|
84
74
|
"name": "北右转",
|
|
85
75
|
"ename": "North-Right",
|
|
86
|
-
"commonname": "openatccomponents.overview.nr",
|
|
87
76
|
"x": "348px",
|
|
88
77
|
"y": "134px"
|
|
89
78
|
},
|
|
@@ -91,7 +80,6 @@
|
|
|
91
80
|
"id": 12,
|
|
92
81
|
"name": "北掉头",
|
|
93
82
|
"ename": "North-Back",
|
|
94
|
-
"commonname": "openatccomponents.overview.nb",
|
|
95
83
|
"x": "436px",
|
|
96
84
|
"y": "134px"
|
|
97
85
|
},
|
|
@@ -99,7 +87,6 @@
|
|
|
99
87
|
"id": 13,
|
|
100
88
|
"name": "南直行",
|
|
101
89
|
"ename": "South-Straight",
|
|
102
|
-
"commonname": "openatccomponents.overview.ss",
|
|
103
90
|
"x": "470px",
|
|
104
91
|
"y": "476px"
|
|
105
92
|
},
|
|
@@ -107,7 +94,6 @@
|
|
|
107
94
|
"id": 14,
|
|
108
95
|
"name": "南左转",
|
|
109
96
|
"ename": "South-Left",
|
|
110
|
-
"commonname": "openatccomponents.overview.sl",
|
|
111
97
|
"x": "440px",
|
|
112
98
|
"y": "476px"
|
|
113
99
|
},
|
|
@@ -115,7 +101,6 @@
|
|
|
115
101
|
"id": 15,
|
|
116
102
|
"name": "南右转",
|
|
117
103
|
"ename": "South-Right",
|
|
118
|
-
"commonname": "openatccomponents.overview.sr",
|
|
119
104
|
"x": "500px",
|
|
120
105
|
"y": "476px"
|
|
121
106
|
},
|
|
@@ -123,7 +108,6 @@
|
|
|
123
108
|
"id": 16,
|
|
124
109
|
"name": "南掉头",
|
|
125
110
|
"ename": "South-Back",
|
|
126
|
-
"commonname": "openatccomponents.overview.sb",
|
|
127
111
|
"x": "412px",
|
|
128
112
|
"y": "476px"
|
|
129
113
|
}
|