vue2-client 1.2.23 → 1.2.26
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 +48 -35
- package/package.json +1 -1
- package/src/base-client/components/common/CreateQuery/CreateQuery.vue +11 -1
- package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +10 -1
- package/src/base-client/components/common/XAddForm/XAddForm.vue +14 -0
- package/src/base-client/components/common/XForm/XFormItem.vue +2 -2
- package/src/base-client/components/iot/DataAnalysisViewGD/DataAnalysisViewGD.vue +1 -0
- package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +2 -2
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +4 -4
- package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +3 -7
- package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +2 -2
- package/src/services/api.js +6 -6
- package/src/utils/request.js +2 -1
- package/src/utils/routerUtil.js +6 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,35 +1,48 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
> 所有关于本项目的变化都在该文档里。
|
|
3
|
-
|
|
4
|
-
**##1.2.
|
|
5
|
-
-
|
|
6
|
-
- [
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
- [
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
- [
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
- [查询配置生成]
|
|
27
|
-
|
|
28
|
-
**##1.2.
|
|
29
|
-
- 功能新增:
|
|
30
|
-
- [
|
|
31
|
-
- [
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
-
|
|
35
|
-
|
|
1
|
+
# Change Log
|
|
2
|
+
> 所有关于本项目的变化都在该文档里。
|
|
3
|
+
|
|
4
|
+
**##1.2.25 -2022-03-26 @江超**
|
|
5
|
+
- 功能修改:
|
|
6
|
+
- [查询配置生成]:表单[新增/修改场景]增加[version(版本号)]类型
|
|
7
|
+
- [api.js]:移除[跨域代理前缀]
|
|
8
|
+
- 问题修复:
|
|
9
|
+
- [查询配置生成]:修复修改已有查询配置时,部分数据显示状态不一致的问题
|
|
10
|
+
- [设备详情页]:修复设备抄表记录,异常记录查询报错的问题
|
|
11
|
+
- [XFormItem]:修复非懒加载搜索的下拉框显示问题
|
|
12
|
+
|
|
13
|
+
**##1.2.20 - 1.2.24 -2022-03-25 @朱子峰**
|
|
14
|
+
- 功能修改:
|
|
15
|
+
- [工单关闭/开始处理]:工单关闭和开始处理时,不由id来进行判断,改由姓名进行判断是否为同一个人
|
|
16
|
+
|
|
17
|
+
**##1.2.17 - 1.2.19 -2022-03-25 @朱子峰**
|
|
18
|
+
- 问题修复:
|
|
19
|
+
- [钉钉消息推送]:将类别字段从int修改为String,直接传字典中的值
|
|
20
|
+
- 功能修改:
|
|
21
|
+
- [问题描述]:如果用户没有填写描述,新增默认值:“该用户没有填写描述信息”
|
|
22
|
+
- [问题描述]:展示问题描述时,按时间倒序展示,最新的信息显示在最上面
|
|
23
|
+
|
|
24
|
+
**##1.2.16 -2022-03-25 @张振宇**
|
|
25
|
+
- 功能修改:
|
|
26
|
+
- [查询配置生成]:逻辑修改,取消选择组和顺序,用户新增数组字段时需要选择是否为根节点,根节点index为1,不是根节点得数据字段index默认为父节点index+1
|
|
27
|
+
|
|
28
|
+
**##1.2.9 - 1.2.15 -2022-03-24 @江超**
|
|
29
|
+
- 功能新增:
|
|
30
|
+
- [查询配置生成]:下拉框表单选择业务逻辑作为数据源时,可以选择数据源加载方式
|
|
31
|
+
- [XFormItem]:当数据源加载方式为懒加载搜索时,将渲染一个可以根据关键词实时查询的选择框
|
|
32
|
+
- 问题修复:
|
|
33
|
+
- [查询配置生成]:修复修改已有查询配置时,显示状态不一致的问题
|
|
34
|
+
- [指令详情页]:修复操作记录查询报错的问题
|
|
35
|
+
|
|
36
|
+
**##1.2.8 -2022-03-24 @江超**
|
|
37
|
+
- 问题修复:
|
|
38
|
+
- [登录页面]:修复登录后欢迎提示出现undefined的问题
|
|
39
|
+
- [查询配置生成]:修复修改表单查询方式下拉框报错的问题
|
|
40
|
+
|
|
41
|
+
**##1.2.7 -2022-03-24 @江超**
|
|
42
|
+
- 功能新增:
|
|
43
|
+
- [系统设置]:新增 [工单提交] 功能(submitTicket),用户在操作业务时如发现系统异常,可使用该功能反馈问题
|
|
44
|
+
- [登录页面]:登陆人部门为 [用户工单登记] 时会直接跳转到[工单提交]页面(在基于新架构的营收全面使用时,会取消该限制,并将[工单提交]作为常驻功能)
|
|
45
|
+
|
|
46
|
+
**##1.0.0 - 1.2.6 -2022-03-23 @陈栋扬**
|
|
47
|
+
- 初始化:
|
|
48
|
+
- 公共组件和配置抽取完成
|
package/package.json
CHANGED
|
@@ -440,6 +440,7 @@
|
|
|
440
440
|
<a-select-option key="add">仅支持新增</a-select-option>
|
|
441
441
|
<a-select-option key="edit">仅支持修改</a-select-option>
|
|
442
442
|
<a-select-option key="silenceAdd">静默新增(不生成表单)</a-select-option>
|
|
443
|
+
<a-select-option key="version">版本号</a-select-option>
|
|
443
444
|
<a-popover
|
|
444
445
|
slot="suffixIcon"
|
|
445
446
|
title="关于新增/修改场景选择"
|
|
@@ -807,7 +808,7 @@ export default {
|
|
|
807
808
|
}
|
|
808
809
|
}
|
|
809
810
|
// 必选项兼容处理
|
|
810
|
-
if (columnItem.rule &&
|
|
811
|
+
if (columnItem.rule && columnItem.rule.required && columnItem.rule.required !== 'false') {
|
|
811
812
|
columnItem.rule.required = columnItem.rule.required.toString()
|
|
812
813
|
} else {
|
|
813
814
|
if (!columnItem.rule) {
|
|
@@ -815,6 +816,12 @@ export default {
|
|
|
815
816
|
}
|
|
816
817
|
columnItem.rule.required = 'false'
|
|
817
818
|
}
|
|
819
|
+
// 数据源加载方式兼容处理
|
|
820
|
+
if (columnItem.lazyLoad && columnItem.lazyLoad !== 'false') {
|
|
821
|
+
columnItem.lazyLoad = columnItem.lazyLoad.toString()
|
|
822
|
+
} else {
|
|
823
|
+
columnItem.lazyLoad = 'false'
|
|
824
|
+
}
|
|
818
825
|
// 下拉框数据源兼容处理
|
|
819
826
|
if ((columnItem.formType === 'select' || columnItem.formType === 'cascader') && columnItem.selectKey) {
|
|
820
827
|
// 数据源为logic
|
|
@@ -1015,6 +1022,9 @@ export default {
|
|
|
1015
1022
|
if (item.selectKey.substring(0, 6) !== 'logic@') {
|
|
1016
1023
|
item.selectKey = 'logic@' + item.selectKey
|
|
1017
1024
|
}
|
|
1025
|
+
if (!item.lazyLoad) {
|
|
1026
|
+
delete item.lazyLoad
|
|
1027
|
+
}
|
|
1018
1028
|
} else if (item.selectType === 'fixArray') {
|
|
1019
1029
|
// 数据源为固定json集合
|
|
1020
1030
|
if (!this.isJSON(item.selectKey)) {
|
|
@@ -492,7 +492,7 @@ export default {
|
|
|
492
492
|
)
|
|
493
493
|
for (const columnItem of this.form.column) {
|
|
494
494
|
// 必选项兼容处理
|
|
495
|
-
if (columnItem.rule &&
|
|
495
|
+
if (columnItem.rule && columnItem.rule.required && columnItem.rule.required !== 'false') {
|
|
496
496
|
columnItem.rule.required = columnItem.rule.required.toString()
|
|
497
497
|
} else {
|
|
498
498
|
if (!columnItem.rule) {
|
|
@@ -500,6 +500,12 @@ export default {
|
|
|
500
500
|
}
|
|
501
501
|
columnItem.rule.required = 'false'
|
|
502
502
|
}
|
|
503
|
+
// 数据源加载方式兼容处理
|
|
504
|
+
if (columnItem.lazyLoad && columnItem.lazyLoad !== 'false') {
|
|
505
|
+
columnItem.lazyLoad = columnItem.lazyLoad.toString()
|
|
506
|
+
} else {
|
|
507
|
+
columnItem.lazyLoad = 'false'
|
|
508
|
+
}
|
|
503
509
|
// 下拉框数据源兼容处理
|
|
504
510
|
if ((columnItem.formType === 'select' || columnItem.formType === 'cascader') && columnItem.selectKey) {
|
|
505
511
|
// 数据源为logic
|
|
@@ -623,6 +629,9 @@ export default {
|
|
|
623
629
|
if (item.selectKey.substring(0, 6) !== 'logic@') {
|
|
624
630
|
item.selectKey = 'logic@' + item.selectKey
|
|
625
631
|
}
|
|
632
|
+
if (!item.lazyLoad) {
|
|
633
|
+
delete item.lazyLoad
|
|
634
|
+
}
|
|
626
635
|
} else if (item.selectType === 'fixArray') {
|
|
627
636
|
// 数据源为固定json集合
|
|
628
637
|
if (!this.isJSON(item.selectKey)) {
|
|
@@ -113,6 +113,12 @@ export default {
|
|
|
113
113
|
return item.addOrEdit === 'silenceAdd'
|
|
114
114
|
})
|
|
115
115
|
},
|
|
116
|
+
// 过滤出版本号表单项
|
|
117
|
+
versionJsonData: function () {
|
|
118
|
+
return this.jsonData.filter(function (item) {
|
|
119
|
+
return item.addOrEdit === 'version'
|
|
120
|
+
})
|
|
121
|
+
},
|
|
116
122
|
...mapState('account', { currUser: 'user' })
|
|
117
123
|
},
|
|
118
124
|
props: {
|
|
@@ -314,6 +320,14 @@ export default {
|
|
|
314
320
|
this.form[item.model] = undefined
|
|
315
321
|
}
|
|
316
322
|
}
|
|
323
|
+
// 追加版本号信息
|
|
324
|
+
for (const item of this.versionJsonData) {
|
|
325
|
+
if (!this.modifyModelData[item.model]) {
|
|
326
|
+
this.form[item.model] = 0
|
|
327
|
+
} else {
|
|
328
|
+
this.form[item.model] = this.modifyModelData[item.model] + ''
|
|
329
|
+
}
|
|
330
|
+
}
|
|
317
331
|
},
|
|
318
332
|
onClose () {
|
|
319
333
|
this.$emit('update:visible', false)
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
:label="attr.name"
|
|
45
45
|
:prop="attr.model">
|
|
46
46
|
<a-select
|
|
47
|
-
v-if="!attr.lazyLoad"
|
|
47
|
+
v-if="!attr.lazyLoad || attr.lazyLoad === 'false'"
|
|
48
48
|
v-model="form[attr.model]"
|
|
49
49
|
:disabled="disabled"
|
|
50
50
|
show-search
|
|
@@ -216,7 +216,7 @@ export default {
|
|
|
216
216
|
}
|
|
217
217
|
},
|
|
218
218
|
created () {
|
|
219
|
-
if (!this.attr.lazyLoad && this.attr.keyName && this.attr.keyName.indexOf('logic@') !== -1) {
|
|
219
|
+
if ((!this.attr.lazyLoad || this.attr.lazyLoad === 'false') && this.attr.keyName && this.attr.keyName.indexOf('logic@') !== -1) {
|
|
220
220
|
this.getData({}, res => {
|
|
221
221
|
this.option = res
|
|
222
222
|
})
|
|
@@ -45,9 +45,9 @@
|
|
|
45
45
|
</a-tabs>
|
|
46
46
|
<div v-if="!loadDeviceDetails">
|
|
47
47
|
<device-details-main :details="details" v-if="tabActiveKey === '1'"/>
|
|
48
|
-
<device-details-read :device-
|
|
48
|
+
<device-details-read :device-id="details.id" v-if="tabActiveKey === '2'"/>
|
|
49
49
|
<device-details-instruct :device-no="details.f_device_no" v-if="tabActiveKey === '3'"/>
|
|
50
|
-
<device-details-singular :device-
|
|
50
|
+
<device-details-singular :device-id="details.id" v-if="tabActiveKey === '4'"/>
|
|
51
51
|
<device-details-instruct-operate :device="details" v-if="tabActiveKey === '5'"/>
|
|
52
52
|
</div>
|
|
53
53
|
</template>
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
props: {
|
|
34
|
-
|
|
35
|
-
type:
|
|
34
|
+
deviceId: {
|
|
35
|
+
type: Number,
|
|
36
36
|
required: true
|
|
37
37
|
}
|
|
38
38
|
},
|
|
@@ -42,10 +42,10 @@
|
|
|
42
42
|
methods: {
|
|
43
43
|
initView () {
|
|
44
44
|
this.tabActiveKey = '1'
|
|
45
|
-
this.fixedQueryForm['e_f_device_id'] = this.
|
|
45
|
+
this.fixedQueryForm['e_f_device_id'] = this.deviceId
|
|
46
46
|
},
|
|
47
47
|
onSubmit (res) {
|
|
48
|
-
res.form['e_f_device_id'] = this.
|
|
48
|
+
res.form['e_f_device_id'] = this.deviceId
|
|
49
49
|
this.$emit('onSubmit', res)
|
|
50
50
|
},
|
|
51
51
|
toDetail (record, id) {
|
|
@@ -23,10 +23,6 @@
|
|
|
23
23
|
XFormTable
|
|
24
24
|
},
|
|
25
25
|
props: {
|
|
26
|
-
deviceNo: {
|
|
27
|
-
type: String,
|
|
28
|
-
required: true
|
|
29
|
-
},
|
|
30
26
|
deviceId: {
|
|
31
27
|
type: Number,
|
|
32
28
|
required: true
|
|
@@ -68,12 +64,12 @@
|
|
|
68
64
|
methods: {
|
|
69
65
|
initView () {
|
|
70
66
|
this.logicParam = {
|
|
71
|
-
id: this.
|
|
67
|
+
id: this.deviceId
|
|
72
68
|
}
|
|
73
|
-
this.fixedQueryForm['
|
|
69
|
+
this.fixedQueryForm['d_id'] = this.deviceId
|
|
74
70
|
},
|
|
75
71
|
onSubmit (res) {
|
|
76
|
-
res.form['
|
|
72
|
+
res.form['d_id'] = this.deviceId
|
|
77
73
|
this.$emit('onSubmit', res)
|
|
78
74
|
},
|
|
79
75
|
refresh () {
|
|
@@ -497,8 +497,8 @@
|
|
|
497
497
|
this.getCurrentEmpId()
|
|
498
498
|
return post(TicketDetailsViewApi.confirmTicket, {
|
|
499
499
|
ticketId: this.ticketId,
|
|
500
|
-
|
|
501
|
-
|
|
500
|
+
time: new Date(),
|
|
501
|
+
empId: this.empIdInDataBase
|
|
502
502
|
})
|
|
503
503
|
.then(res => {
|
|
504
504
|
if (res !== 0) {
|
package/src/services/api.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// 跨域代理前缀
|
|
2
2
|
// const API_PROXY_PREFIX='/api'
|
|
3
3
|
// const BASE_URL = process.env.NODE_ENV === 'production' ? process.env.VUE_APP_API_BASE_URL : API_PROXY_PREFIX
|
|
4
|
-
|
|
4
|
+
|
|
5
5
|
module.exports = {
|
|
6
|
-
LOGIN:
|
|
7
|
-
ROUTES:
|
|
8
|
-
SEARCH:
|
|
9
|
-
GOODS:
|
|
10
|
-
GOODS_COLUMNS:
|
|
6
|
+
LOGIN: `/rs/logic/getLogin`,
|
|
7
|
+
ROUTES: `/rs/user/userLogin/智慧燃气`,
|
|
8
|
+
SEARCH: `/rs/search`,
|
|
9
|
+
GOODS: `/goods`,
|
|
10
|
+
GOODS_COLUMNS: `/columns`
|
|
11
11
|
}
|
package/src/utils/request.js
CHANGED
|
@@ -113,9 +113,10 @@ function loadInterceptors () {
|
|
|
113
113
|
// 让每个请求携带自定义 token 请根据实际情况自行修改
|
|
114
114
|
if (token) {
|
|
115
115
|
config.headers['Access-Token'] = token
|
|
116
|
+
config.headers['Cookie'] = Cookie
|
|
116
117
|
}
|
|
117
118
|
if (!config.headers['Content-Type']) {
|
|
118
|
-
config.headers['Content-Type'] = 'application/json;charset=UTF-8'
|
|
119
|
+
config.headers['Content-Type'] = 'application/json/x-www-form-urlencoded;charset=UTF-8'
|
|
119
120
|
}
|
|
120
121
|
return config
|
|
121
122
|
}, errorHandler)
|
package/src/utils/routerUtil.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import Vue from 'vue'
|
|
1
2
|
import routerMap from '@vue2-client/router/async/router.map'
|
|
2
3
|
import { mergeI18nFromRoutes } from '@vue2-client/utils/i18n'
|
|
3
4
|
import Router from 'vue-router'
|
|
@@ -135,6 +136,11 @@ function loadRoutes (routesConfig) {
|
|
|
135
136
|
// 应用配置
|
|
136
137
|
const { router, store, i18n } = appOptions
|
|
137
138
|
|
|
139
|
+
// 刷新页面时,有些全局状态丢失,在此处从本地缓存拿出来赋值
|
|
140
|
+
if (JSON.stringify(Vue.$login.f) == '{}') {
|
|
141
|
+
const login = store.getters['account/login']
|
|
142
|
+
Object.assign(Vue.$login, login)
|
|
143
|
+
}
|
|
138
144
|
// 如果 routesConfig 有值,则更新到本地,否则从本地获取
|
|
139
145
|
if (routesConfig) {
|
|
140
146
|
store.commit('account/setRoutesConfig', routesConfig)
|