vue2-client 1.2.81 → 1.2.84
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/CHANGELOG.md +223 -219
- package/package.json +1 -1
- package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +3 -3
- package/src/base-client/components/common/AmapMarker/index.js +3 -3
- package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1 -1
- package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +1 -1
- package/src/base-client/components/common/ScrollList/SrcollList.vue +113 -113
- package/src/base-client/components/common/ScrollList/index.js +3 -3
- package/src/base-client/components/common/XForm/XFormItem.vue +1 -1
- package/src/base-client/components/common/XTable/XTable.vue +269 -269
- package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +232 -232
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsCount.vue +678 -678
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +57 -57
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +131 -131
- package/src/base-client/components/iot/DeviceTypeDetailsView/DeviceTypeDetailsView.vue +300 -300
- package/src/base-client/components/iot/WebmeterAnalysisView/WebmeterAnalysisView.vue +770 -770
- package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
- package/src/base-client/plugins/AppData.js +81 -70
- package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
- package/src/pages/login/Login.vue +39 -1
- package/src/pages/resourceManage/orgListManage.vue +98 -98
- package/src/router/async/config.async.js +26 -26
- package/src/router/index.js +27 -27
- package/src/services/api/WebmeterAnalysisViewApi.js +20 -20
- package/src/services/api/index.js +39 -39
- package/src/services/api/iot/DeviceDetailsView/DeviceDetailsCountApi.js +18 -18
- package/src/services/apiService.js +1 -0
- package/src/services/user.js +8 -1
- package/src/theme/default/style.less +47 -47
- package/src/utils/map-utils.js +5 -2
- package/src/utils/request.js +53 -2
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { commonApi, getColumnsJson, query, addOrModify, remove } from '@vue2-client/services/api/common'
|
|
2
|
-
import { CustomerDetailsViewApi } from '@vue2-client/services/api/CustomerDetailsViewApi'
|
|
3
|
-
import { DeviceBrandDetailsViewApi } from '@vue2-client/services/api/DeviceBrandDetailsViewApi'
|
|
4
|
-
import { DeviceDetailsViewApi } from '@vue2-client/services/api/DeviceDetailsViewApi'
|
|
5
|
-
import { DeviceTypeDetailsViewApi } from '@vue2-client/services/api/DeviceTypeDetailsViewApi'
|
|
6
|
-
import { DictionaryDetailsViewApi } from '@vue2-client/services/api/DictionaryDetailsViewApi'
|
|
7
|
-
import { EmployeeDetailsViewApi } from '@vue2-client/services/api/EmployeeDetailsViewApi'
|
|
8
|
-
import { FormGroupEditApi } from '@vue2-client/services/api/FormGroupEditApi'
|
|
9
|
-
import { InstructDetailsViewApi } from '@vue2-client/services/api/InstructDetailsViewApi'
|
|
10
|
-
import { iotApi } from '@vue2-client/services/api/iot'
|
|
11
|
-
import { LogDetailsViewApi } from '@vue2-client/services/api/LogDetailsViewApi'
|
|
12
|
-
import { manageApi } from '@vue2-client/services/api/manage'
|
|
13
|
-
import { MeterDetailsViewApi } from '@vue2-client/services/api/MeterDetailsViewApi'
|
|
14
|
-
import { QueryParamsDetailsViewApi } from '@vue2-client/services/api/QueryParamsDetailsViewApi'
|
|
15
|
-
import { get, post } from '@vue2-client/services/api/restTools'
|
|
16
|
-
import { serviceApi } from '@vue2-client/services/api/service'
|
|
17
|
-
import { TicketDetailsViewApi } from '@vue2-client/services/api/TicketDetailsViewApi'
|
|
18
|
-
import { WebmeterAnalysisViewApi } from '@vue2-client/services/api/WebmeterAnalysisViewApi'
|
|
19
|
-
|
|
20
|
-
export {
|
|
21
|
-
commonApi, getColumnsJson, query, addOrModify, remove,
|
|
22
|
-
CustomerDetailsViewApi,
|
|
23
|
-
DeviceBrandDetailsViewApi,
|
|
24
|
-
DeviceDetailsViewApi,
|
|
25
|
-
DeviceTypeDetailsViewApi,
|
|
26
|
-
DictionaryDetailsViewApi,
|
|
27
|
-
EmployeeDetailsViewApi,
|
|
28
|
-
FormGroupEditApi,
|
|
29
|
-
InstructDetailsViewApi,
|
|
30
|
-
iotApi,
|
|
31
|
-
LogDetailsViewApi,
|
|
32
|
-
manageApi,
|
|
33
|
-
MeterDetailsViewApi,
|
|
34
|
-
QueryParamsDetailsViewApi,
|
|
35
|
-
get, post,
|
|
36
|
-
serviceApi,
|
|
37
|
-
TicketDetailsViewApi,
|
|
38
|
-
WebmeterAnalysisViewApi
|
|
39
|
-
}
|
|
1
|
+
import { commonApi, getColumnsJson, query, addOrModify, remove } from '@vue2-client/services/api/common'
|
|
2
|
+
import { CustomerDetailsViewApi } from '@vue2-client/services/api/CustomerDetailsViewApi'
|
|
3
|
+
import { DeviceBrandDetailsViewApi } from '@vue2-client/services/api/DeviceBrandDetailsViewApi'
|
|
4
|
+
import { DeviceDetailsViewApi } from '@vue2-client/services/api/DeviceDetailsViewApi'
|
|
5
|
+
import { DeviceTypeDetailsViewApi } from '@vue2-client/services/api/DeviceTypeDetailsViewApi'
|
|
6
|
+
import { DictionaryDetailsViewApi } from '@vue2-client/services/api/DictionaryDetailsViewApi'
|
|
7
|
+
import { EmployeeDetailsViewApi } from '@vue2-client/services/api/EmployeeDetailsViewApi'
|
|
8
|
+
import { FormGroupEditApi } from '@vue2-client/services/api/FormGroupEditApi'
|
|
9
|
+
import { InstructDetailsViewApi } from '@vue2-client/services/api/InstructDetailsViewApi'
|
|
10
|
+
import { iotApi } from '@vue2-client/services/api/iot'
|
|
11
|
+
import { LogDetailsViewApi } from '@vue2-client/services/api/LogDetailsViewApi'
|
|
12
|
+
import { manageApi } from '@vue2-client/services/api/manage'
|
|
13
|
+
import { MeterDetailsViewApi } from '@vue2-client/services/api/MeterDetailsViewApi'
|
|
14
|
+
import { QueryParamsDetailsViewApi } from '@vue2-client/services/api/QueryParamsDetailsViewApi'
|
|
15
|
+
import { get, post } from '@vue2-client/services/api/restTools'
|
|
16
|
+
import { serviceApi } from '@vue2-client/services/api/service'
|
|
17
|
+
import { TicketDetailsViewApi } from '@vue2-client/services/api/TicketDetailsViewApi'
|
|
18
|
+
import { WebmeterAnalysisViewApi } from '@vue2-client/services/api/WebmeterAnalysisViewApi'
|
|
19
|
+
|
|
20
|
+
export {
|
|
21
|
+
commonApi, getColumnsJson, query, addOrModify, remove,
|
|
22
|
+
CustomerDetailsViewApi,
|
|
23
|
+
DeviceBrandDetailsViewApi,
|
|
24
|
+
DeviceDetailsViewApi,
|
|
25
|
+
DeviceTypeDetailsViewApi,
|
|
26
|
+
DictionaryDetailsViewApi,
|
|
27
|
+
EmployeeDetailsViewApi,
|
|
28
|
+
FormGroupEditApi,
|
|
29
|
+
InstructDetailsViewApi,
|
|
30
|
+
iotApi,
|
|
31
|
+
LogDetailsViewApi,
|
|
32
|
+
manageApi,
|
|
33
|
+
MeterDetailsViewApi,
|
|
34
|
+
QueryParamsDetailsViewApi,
|
|
35
|
+
get, post,
|
|
36
|
+
serviceApi,
|
|
37
|
+
TicketDetailsViewApi,
|
|
38
|
+
WebmeterAnalysisViewApi
|
|
39
|
+
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
const DeviceDetailsCountApi = {
|
|
2
|
-
// 获取设备使用天数
|
|
3
|
-
getDeviceUsedDaySum: '/webmeterapi/getDeviceUsedDaySum',
|
|
4
|
-
// 获取设备累计上报次数和近七天上报情况
|
|
5
|
-
getDeviceUploadTimesCount: '/webmeterapi/getDeviceUploadTimesCount',
|
|
6
|
-
// 获取设备累计失联次数和近三个月失联情况
|
|
7
|
-
getDeviceLostContactCount: '/webmeterapi/getDeviceLostContactCount',
|
|
8
|
-
// 获取设备指令下发成功率
|
|
9
|
-
getInstructRateOfSuccess: '/webmeterapi/getInstructRateOfSuccess',
|
|
10
|
-
// 获取设备上报情况
|
|
11
|
-
getDeviceUploadCountData: '/webmeterapi/getDeviceUploadCountData',
|
|
12
|
-
// 获取设备失联情况
|
|
13
|
-
getDeviceLostContactCountData: '/webmeterapi/getDeviceLostContactCountData',
|
|
14
|
-
// 获取设备失联排行榜
|
|
15
|
-
getDeviceLostContactRankData: '/webmeterapi/getDeviceLostContactRankData'
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export { DeviceDetailsCountApi }
|
|
1
|
+
const DeviceDetailsCountApi = {
|
|
2
|
+
// 获取设备使用天数
|
|
3
|
+
getDeviceUsedDaySum: '/webmeterapi/getDeviceUsedDaySum',
|
|
4
|
+
// 获取设备累计上报次数和近七天上报情况
|
|
5
|
+
getDeviceUploadTimesCount: '/webmeterapi/getDeviceUploadTimesCount',
|
|
6
|
+
// 获取设备累计失联次数和近三个月失联情况
|
|
7
|
+
getDeviceLostContactCount: '/webmeterapi/getDeviceLostContactCount',
|
|
8
|
+
// 获取设备指令下发成功率
|
|
9
|
+
getInstructRateOfSuccess: '/webmeterapi/getInstructRateOfSuccess',
|
|
10
|
+
// 获取设备上报情况
|
|
11
|
+
getDeviceUploadCountData: '/webmeterapi/getDeviceUploadCountData',
|
|
12
|
+
// 获取设备失联情况
|
|
13
|
+
getDeviceLostContactCountData: '/webmeterapi/getDeviceLostContactCountData',
|
|
14
|
+
// 获取设备失联排行榜
|
|
15
|
+
getDeviceLostContactRankData: '/webmeterapi/getDeviceLostContactRankData'
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { DeviceDetailsCountApi }
|
package/src/services/user.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LOGIN, ROUTES } from '@vue2-client/services/apiService'
|
|
1
|
+
import { LOGIN, ROUTES, V4_LOGIN } from '@vue2-client/services/apiService'
|
|
2
2
|
import { request, METHOD, removeAuthorization } from '@vue2-client/utils/request'
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -18,6 +18,13 @@ export async function getRoutesConfig (value) {
|
|
|
18
18
|
return request(ROUTES, METHOD.POST, value)
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
+
export async function V4Login (name, password) {
|
|
22
|
+
return request(V4_LOGIN, METHOD.POST, {
|
|
23
|
+
username: name,
|
|
24
|
+
password: password
|
|
25
|
+
})
|
|
26
|
+
}
|
|
27
|
+
|
|
21
28
|
/**
|
|
22
29
|
* 退出登录
|
|
23
30
|
*/
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
.week-mode{
|
|
2
|
-
overflow: hidden;
|
|
3
|
-
filter: invert(80%);
|
|
4
|
-
}
|
|
5
|
-
.beauty-scroll{
|
|
6
|
-
scrollbar-color: @primary-color @primary-2;
|
|
7
|
-
scrollbar-width: thin;
|
|
8
|
-
-ms-overflow-style:none;
|
|
9
|
-
position: relative;
|
|
10
|
-
&::-webkit-scrollbar{
|
|
11
|
-
width: 3px;
|
|
12
|
-
height: 1px;
|
|
13
|
-
}
|
|
14
|
-
&::-webkit-scrollbar-thumb {
|
|
15
|
-
border-radius: 3px;
|
|
16
|
-
background: @primary-color;
|
|
17
|
-
}
|
|
18
|
-
&::-webkit-scrollbar-track {
|
|
19
|
-
-webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
|
|
20
|
-
border-radius: 3px;
|
|
21
|
-
background: @primary-3;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
.split-right{
|
|
25
|
-
&:not(:last-child) {
|
|
26
|
-
border-right: 1px solid rgba(98, 98, 98, 0.2);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
.disabled{
|
|
30
|
-
cursor: not-allowed;
|
|
31
|
-
color: @disabled-color;
|
|
32
|
-
pointer-events: none;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
::-webkit-scrollbar{
|
|
36
|
-
width: 5px;
|
|
37
|
-
height: 5px;
|
|
38
|
-
}
|
|
39
|
-
::-webkit-scrollbar-thumb {
|
|
40
|
-
border-radius: 3px;
|
|
41
|
-
background: @primary-3;
|
|
42
|
-
}
|
|
43
|
-
::-webkit-scrollbar-track {
|
|
44
|
-
-webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
|
|
45
|
-
border-radius: 3px;
|
|
46
|
-
background: @primary-1;
|
|
47
|
-
}
|
|
1
|
+
.week-mode{
|
|
2
|
+
overflow: hidden;
|
|
3
|
+
filter: invert(80%);
|
|
4
|
+
}
|
|
5
|
+
.beauty-scroll{
|
|
6
|
+
scrollbar-color: @primary-color @primary-2;
|
|
7
|
+
scrollbar-width: thin;
|
|
8
|
+
-ms-overflow-style:none;
|
|
9
|
+
position: relative;
|
|
10
|
+
&::-webkit-scrollbar{
|
|
11
|
+
width: 3px;
|
|
12
|
+
height: 1px;
|
|
13
|
+
}
|
|
14
|
+
&::-webkit-scrollbar-thumb {
|
|
15
|
+
border-radius: 3px;
|
|
16
|
+
background: @primary-color;
|
|
17
|
+
}
|
|
18
|
+
&::-webkit-scrollbar-track {
|
|
19
|
+
-webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
|
|
20
|
+
border-radius: 3px;
|
|
21
|
+
background: @primary-3;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
.split-right{
|
|
25
|
+
&:not(:last-child) {
|
|
26
|
+
border-right: 1px solid rgba(98, 98, 98, 0.2);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
.disabled{
|
|
30
|
+
cursor: not-allowed;
|
|
31
|
+
color: @disabled-color;
|
|
32
|
+
pointer-events: none;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
::-webkit-scrollbar{
|
|
36
|
+
width: 5px;
|
|
37
|
+
height: 5px;
|
|
38
|
+
}
|
|
39
|
+
::-webkit-scrollbar-thumb {
|
|
40
|
+
border-radius: 3px;
|
|
41
|
+
background: @primary-3;
|
|
42
|
+
}
|
|
43
|
+
::-webkit-scrollbar-track {
|
|
44
|
+
-webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
|
|
45
|
+
border-radius: 3px;
|
|
46
|
+
background: @primary-1;
|
|
47
|
+
}
|
package/src/utils/map-utils.js
CHANGED
|
@@ -2,10 +2,13 @@ import AMapLoader from '@amap/amap-jsapi-loader'
|
|
|
2
2
|
let Amap
|
|
3
3
|
async function GetGDMap () {
|
|
4
4
|
if (!Amap) {
|
|
5
|
+
window._AMapSecurityConfig = {
|
|
6
|
+
securityJsCode:'275e59edb26ab1f917cfe7f05bea7979'
|
|
7
|
+
}
|
|
5
8
|
Amap = await AMapLoader.load({
|
|
6
|
-
key: '
|
|
9
|
+
key: '55a4807a6fc3adca5510f69578b1ae4a', // 申请好的Web端开发者Key,首次调用 load 时必填
|
|
7
10
|
version: '1.4.2', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
|
|
8
|
-
plugins: ['AMap.ToolBar', 'AMap.Geolocation', 'AMap.Geocoder', 'AMap.MarkerClusterer', 'AMap.Autocomplete'] // 需要使用的的插件列表,如比例尺'AMap.Scale'等
|
|
11
|
+
plugins: ['AMap.ToolBar', 'AMap.Geolocation', 'AMap.Geocoder', 'AMap.MarkerClusterer', 'AMap.Autocomplete'], // 需要使用的的插件列表,如比例尺'AMap.Scale'等
|
|
9
12
|
})
|
|
10
13
|
}
|
|
11
14
|
return Amap
|
package/src/utils/request.js
CHANGED
|
@@ -4,8 +4,13 @@ import Vue from 'vue'
|
|
|
4
4
|
import { ACCESS_TOKEN } from '@vue2-client/store/mutation-types'
|
|
5
5
|
import notification from 'ant-design-vue/es/notification'
|
|
6
6
|
|
|
7
|
+
const setting = require('../config/default/setting.config')
|
|
8
|
+
|
|
7
9
|
// 跨域认证信息 header 名
|
|
8
10
|
const xsrfHeaderName = 'Authorization'
|
|
11
|
+
// V4系统请求头名
|
|
12
|
+
const v4TokenName = 'ACCESS_TOKEN'
|
|
13
|
+
const v4TokenExpire = 'ACCESS_TOKEN_EXPIRES'
|
|
9
14
|
|
|
10
15
|
axios.defaults.timeout = 5000
|
|
11
16
|
axios.defaults.withCredentials = true
|
|
@@ -45,6 +50,43 @@ async function request (url, method, params, config) {
|
|
|
45
50
|
}
|
|
46
51
|
}
|
|
47
52
|
|
|
53
|
+
/**
|
|
54
|
+
* 设置V4认证信息
|
|
55
|
+
* @param auth {Object}
|
|
56
|
+
* @param authType {AUTH_TYPE} 认证类型,默认:{AUTH_TYPE.BEARER}
|
|
57
|
+
*/
|
|
58
|
+
function setAuthorizationV4 (auth, authType = AUTH_TYPE.BEARER) {
|
|
59
|
+
switch (authType) {
|
|
60
|
+
case AUTH_TYPE.BEARER:
|
|
61
|
+
Cookie.set(v4TokenName, 'Bearer ' + auth.token)
|
|
62
|
+
Cookie.set(v4TokenExpire, 'Bearer ' + auth.expire)
|
|
63
|
+
break
|
|
64
|
+
case AUTH_TYPE.BASIC:
|
|
65
|
+
case AUTH_TYPE.AUTH1:
|
|
66
|
+
case AUTH_TYPE.AUTH2:
|
|
67
|
+
default:
|
|
68
|
+
break
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* 移出V4认证信息
|
|
74
|
+
* @param authType {AUTH_TYPE} 认证类型
|
|
75
|
+
*/
|
|
76
|
+
function removeAuthorizationV4 (authType = AUTH_TYPE.BEARER) {
|
|
77
|
+
switch (authType) {
|
|
78
|
+
case AUTH_TYPE.BEARER:
|
|
79
|
+
Cookie.remove(v4TokenName)
|
|
80
|
+
Cookie.remove(v4TokenExpire)
|
|
81
|
+
break
|
|
82
|
+
case AUTH_TYPE.BASIC:
|
|
83
|
+
case AUTH_TYPE.AUTH1:
|
|
84
|
+
case AUTH_TYPE.AUTH2:
|
|
85
|
+
default:
|
|
86
|
+
break
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
48
90
|
/**
|
|
49
91
|
* 设置认证信息
|
|
50
92
|
* @param auth {Object}
|
|
@@ -113,7 +155,14 @@ function loadInterceptors () {
|
|
|
113
155
|
// 如果 token 存在
|
|
114
156
|
// 让每个请求携带自定义 token 请根据实际情况自行修改
|
|
115
157
|
if (token) {
|
|
116
|
-
|
|
158
|
+
// 判断是否为V4环境
|
|
159
|
+
if (setting.compatible === 'V4') {
|
|
160
|
+
// V4 环境则添加 V4请求头
|
|
161
|
+
config.headers['ACCESS_TOKEN'] = localStorage.getItem('ACCESS_TOKEN')
|
|
162
|
+
config.headers['ACCESS_TOKEN_EXPIRES'] = localStorage.getItem('ACCESS_TOKEN_EXPIRES')
|
|
163
|
+
} else {
|
|
164
|
+
config.headers['Access-Token'] = token
|
|
165
|
+
}
|
|
117
166
|
}
|
|
118
167
|
if (!config.headers['Content-Type']) {
|
|
119
168
|
config.headers['Content-Type'] = 'application/json;charset=UTF-8'
|
|
@@ -194,5 +243,7 @@ export {
|
|
|
194
243
|
removeAuthorization,
|
|
195
244
|
checkAuthorization,
|
|
196
245
|
loadInterceptors,
|
|
197
|
-
parseUrlParams
|
|
246
|
+
parseUrlParams,
|
|
247
|
+
setAuthorizationV4,
|
|
248
|
+
removeAuthorizationV4
|
|
198
249
|
}
|