vue2-client 1.19.20 → 1.19.21
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/.claude/settings.local.json +30 -30
- package/.eslintrc.js +74 -74
- package/Components.md +60 -60
- package/docs/index.md +30 -30
- package/index.js +31 -31
- package/jest-transform-stub.js +8 -8
- package/jest.setup.js +7 -7
- package/package.json +1 -1
- package/src/assets/img/querySlotDemo.svg +15 -15
- package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
- package/src/base-client/components/common/CitySelect/index.js +3 -3
- package/src/base-client/components/common/CitySelect/index.md +109 -109
- package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
- package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
- package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
- package/src/base-client/components/common/PersonSetting/index.js +3 -3
- package/src/base-client/components/common/Tree/Tree.vue +149 -149
- package/src/base-client/components/common/Tree/index.js +2 -2
- package/src/base-client/components/common/Upload/index.js +3 -3
- package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +10 -1
- package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
- package/src/base-client/components/common/XCard/XCard.vue +64 -64
- package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
- package/src/base-client/components/common/XDataDrawer/index.js +3 -3
- package/src/base-client/components/common/XDataDrawer/index.md +41 -41
- package/src/base-client/components/common/XDescriptions/index.js +3 -3
- package/src/base-client/components/common/XForm/XFormItem.vue +11 -0
- package/src/base-client/components/common/XForm/index.md +178 -178
- package/src/base-client/components/common/XFormGroup/XFormGroup.vue +6 -3
- package/src/base-client/components/common/XFormGroup/demo.vue +5 -1
- package/src/base-client/components/common/XFormTable/demo.vue +2 -2
- package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
- package/src/base-client/components/common/XStepView/index.js +3 -3
- package/src/base-client/components/common/XStepView/index.md +31 -31
- package/src/base-client/components/common/XTable/XTableWrapper.vue +1 -6
- package/src/base-client/components/common/XTable/index.md +255 -255
- package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
- package/src/base-client/plugins/Config.js +19 -19
- package/src/base-client/plugins/tabs-page-plugin.js +39 -39
- package/src/components/Charts/Bar.vue +62 -62
- package/src/components/Charts/ChartCard.vue +134 -134
- package/src/components/Charts/Liquid.vue +67 -67
- package/src/components/Charts/MiniArea.vue +39 -39
- package/src/components/Charts/MiniBar.vue +39 -39
- package/src/components/Charts/MiniProgress.vue +75 -75
- package/src/components/Charts/MiniSmoothArea.vue +40 -40
- package/src/components/Charts/Radar.vue +68 -68
- package/src/components/Charts/RankList.vue +77 -77
- package/src/components/Charts/TagCloud.vue +113 -113
- package/src/components/Charts/TransferBar.vue +64 -64
- package/src/components/Charts/Trend.vue +82 -82
- package/src/components/Charts/chart.less +12 -12
- package/src/components/Charts/smooth.area.less +13 -13
- package/src/components/NumberInfo/NumberInfo.vue +54 -54
- package/src/components/NumberInfo/index.js +3 -3
- package/src/components/NumberInfo/index.less +54 -54
- package/src/components/NumberInfo/index.md +43 -43
- package/src/components/card/ChartCard.vue +79 -79
- package/src/components/chart/Bar.vue +60 -60
- package/src/components/chart/MiniArea.vue +67 -67
- package/src/components/chart/MiniBar.vue +59 -59
- package/src/components/chart/MiniProgress.vue +57 -57
- package/src/components/chart/Radar.vue +80 -80
- package/src/components/chart/RankingList.vue +60 -60
- package/src/components/chart/Trend.vue +79 -79
- package/src/components/chart/index.less +9 -9
- package/src/components/checkbox/ColorCheckbox.vue +157 -157
- package/src/components/input/IInput.vue +66 -66
- package/src/components/menu/SideMenu.vue +75 -75
- package/src/components/menu/menu.js +273 -273
- package/src/components/tool/AStepItem.vue +60 -60
- package/src/layouts/CommonLayout.vue +56 -56
- package/src/layouts/header/HeaderNotice.vue +177 -177
- package/src/lib.js +1 -1
- package/src/mock/extend/index.js +84 -84
- package/src/mock/goods/index.js +108 -108
- package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
- package/src/pages/system/dictionary/index.vue +44 -44
- package/src/pages/system/monitor/loginInfor/index.vue +37 -37
- package/src/pages/system/monitor/operLog/index.vue +37 -37
- package/src/services/api/cas.js +79 -79
- package/src/store/modules/setting.js +119 -119
- package/src/utils/authority-utils.js +85 -85
- package/src/utils/errorCode.js +6 -6
- package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
|
@@ -1,178 +1,178 @@
|
|
|
1
|
-
# XForm
|
|
2
|
-
|
|
3
|
-
动态表单控件,根据JSON配置生成一个完整的动态表单
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
## 何时使用
|
|
7
|
-
|
|
8
|
-
当需要一个动态生成的表单时
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
引用方式:
|
|
12
|
-
|
|
13
|
-
```javascript
|
|
14
|
-
import XForm from '@vue2-client/base-client/components/XForm/XForm'
|
|
15
|
-
|
|
16
|
-
export default {
|
|
17
|
-
components: {
|
|
18
|
-
XForm
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
## 代码演示
|
|
26
|
-
|
|
27
|
-
```html
|
|
28
|
-
<x-form
|
|
29
|
-
:json-data="json"
|
|
30
|
-
:isExports="true"
|
|
31
|
-
@onSubmit="onSubmit">
|
|
32
|
-
</x-form>
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## API
|
|
36
|
-
|
|
37
|
-
| 参数 | 说明 | 类型 | 默认值 |
|
|
38
|
-
|-----------|--------------------------|---------|------|
|
|
39
|
-
| jsonData | JSON配置,根据[工具>查询配置生成]功能生成 | Object | {} |
|
|
40
|
-
| isExports | 是否显示导出按钮 | Boolean | true |
|
|
41
|
-
| getDataParams | 调用logic获取数据源的追加参数 | Object | - |
|
|
42
|
-
| @onSubmit | 表单的提交事件 | event | - |
|
|
43
|
-
|
|
44
|
-
## 例子1
|
|
45
|
-
----
|
|
46
|
-
(基础使用)
|
|
47
|
-
|
|
48
|
-
```vue
|
|
49
|
-
<template>
|
|
50
|
-
<x-form
|
|
51
|
-
v-if="loaded"
|
|
52
|
-
:json-data="formItemJson"
|
|
53
|
-
:isExports="false"
|
|
54
|
-
@onSubmit="onSubmit">
|
|
55
|
-
</x-form>
|
|
56
|
-
</template>
|
|
57
|
-
|
|
58
|
-
<script>
|
|
59
|
-
import XForm from '@vue2-client/base-client/components/XForm/XForm'
|
|
60
|
-
|
|
61
|
-
export default {
|
|
62
|
-
components: {
|
|
63
|
-
XForm
|
|
64
|
-
},
|
|
65
|
-
data () {
|
|
66
|
-
return {
|
|
67
|
-
// 加载查询参数JSON配置文件是否完成
|
|
68
|
-
loaded: false,
|
|
69
|
-
// 从查询参数JSON配置中得到的生成表单的JSON
|
|
70
|
-
formItemJson: undefined,
|
|
71
|
-
// 表单
|
|
72
|
-
form: {}
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
created () {
|
|
76
|
-
this.getQueryJson()
|
|
77
|
-
},
|
|
78
|
-
methods: {
|
|
79
|
-
// 加载查询参数JSON配置文件
|
|
80
|
-
getQueryJson () {
|
|
81
|
-
this.formItemJson = [
|
|
82
|
-
{
|
|
83
|
-
"name":"燃气公司",
|
|
84
|
-
"keyName":"orgList",
|
|
85
|
-
"model":"orgName",
|
|
86
|
-
"placeholder":"请选择",
|
|
87
|
-
"type":"select"
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
"name":"用户地址",
|
|
91
|
-
"model":"f_address",
|
|
92
|
-
"type":"input"
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
"name":"指令类型",
|
|
96
|
-
"keyName":"指令类型",
|
|
97
|
-
"model":"f_instruct_type",
|
|
98
|
-
"placeholder":"请选择",
|
|
99
|
-
"type":"select"
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
"name":"指令说明",
|
|
103
|
-
"model":"f_instruct_title",
|
|
104
|
-
"placeholder":"请输入指令说明",
|
|
105
|
-
"type":"input"
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
"name":"指令状态",
|
|
109
|
-
"keyName":"指令状态",
|
|
110
|
-
"model":"f_instruct_state",
|
|
111
|
-
"placeholder":"请选择",
|
|
112
|
-
"type":"select"
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
"name":"响应结果",
|
|
116
|
-
"model":"f_receive_state",
|
|
117
|
-
"placeholder":"请输入响应结果",
|
|
118
|
-
"type":"input"
|
|
119
|
-
},
|
|
120
|
-
{
|
|
121
|
-
"name":"生成时间",
|
|
122
|
-
"model":"f_instruct_date",
|
|
123
|
-
"type":"rangePicker"
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
"name":"操作人",
|
|
127
|
-
"model":"f_inputtor",
|
|
128
|
-
"placeholder":"请输入操作人员",
|
|
129
|
-
"type":"input"
|
|
130
|
-
}
|
|
131
|
-
]
|
|
132
|
-
this.loaded = true
|
|
133
|
-
},
|
|
134
|
-
// 表单提交方法
|
|
135
|
-
onSubmit (res) {
|
|
136
|
-
// 如果通过校验
|
|
137
|
-
if (res.valid) {
|
|
138
|
-
// 表单赋值
|
|
139
|
-
this.form = res.form
|
|
140
|
-
} else {
|
|
141
|
-
return false
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
</script>
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
注意事项
|
|
150
|
-
----
|
|
151
|
-
|
|
152
|
-
> 本组件已经实现了自适应布局,在不同分辨率下的设备均可得到基本理想的展示效果
|
|
153
|
-
>
|
|
154
|
-
> 以上示例查询参数配置为后台生成后的结果,此处为了方便调试,所以直接写在了代码中,实际使用请通过发起请求获取查询参数配置,如下:
|
|
155
|
-
```vue
|
|
156
|
-
<script>
|
|
157
|
-
import { commonApi } from '@vue2-client/base-client/api/common'
|
|
158
|
-
import Vue from 'vue'
|
|
159
|
-
|
|
160
|
-
export default {
|
|
161
|
-
data () {
|
|
162
|
-
return {
|
|
163
|
-
// 查询配置文件名
|
|
164
|
-
queryParamsName: 'instructQueryParams'
|
|
165
|
-
}
|
|
166
|
-
},
|
|
167
|
-
methods: {
|
|
168
|
-
getConfig () {
|
|
169
|
-
Vue.resetpost(commonApi.getConfig, {str: this.queryParamsName}).then((res) => {
|
|
170
|
-
this.formItemJson = res.formJson
|
|
171
|
-
this.columnItemJson = res.columnJson
|
|
172
|
-
this.loaded = true
|
|
173
|
-
})
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
</script>
|
|
178
|
-
```
|
|
1
|
+
# XForm
|
|
2
|
+
|
|
3
|
+
动态表单控件,根据JSON配置生成一个完整的动态表单
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
## 何时使用
|
|
7
|
+
|
|
8
|
+
当需要一个动态生成的表单时
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
引用方式:
|
|
12
|
+
|
|
13
|
+
```javascript
|
|
14
|
+
import XForm from '@vue2-client/base-client/components/XForm/XForm'
|
|
15
|
+
|
|
16
|
+
export default {
|
|
17
|
+
components: {
|
|
18
|
+
XForm
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## 代码演示
|
|
26
|
+
|
|
27
|
+
```html
|
|
28
|
+
<x-form
|
|
29
|
+
:json-data="json"
|
|
30
|
+
:isExports="true"
|
|
31
|
+
@onSubmit="onSubmit">
|
|
32
|
+
</x-form>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## API
|
|
36
|
+
|
|
37
|
+
| 参数 | 说明 | 类型 | 默认值 |
|
|
38
|
+
|-----------|--------------------------|---------|------|
|
|
39
|
+
| jsonData | JSON配置,根据[工具>查询配置生成]功能生成 | Object | {} |
|
|
40
|
+
| isExports | 是否显示导出按钮 | Boolean | true |
|
|
41
|
+
| getDataParams | 调用logic获取数据源的追加参数 | Object | - |
|
|
42
|
+
| @onSubmit | 表单的提交事件 | event | - |
|
|
43
|
+
|
|
44
|
+
## 例子1
|
|
45
|
+
----
|
|
46
|
+
(基础使用)
|
|
47
|
+
|
|
48
|
+
```vue
|
|
49
|
+
<template>
|
|
50
|
+
<x-form
|
|
51
|
+
v-if="loaded"
|
|
52
|
+
:json-data="formItemJson"
|
|
53
|
+
:isExports="false"
|
|
54
|
+
@onSubmit="onSubmit">
|
|
55
|
+
</x-form>
|
|
56
|
+
</template>
|
|
57
|
+
|
|
58
|
+
<script>
|
|
59
|
+
import XForm from '@vue2-client/base-client/components/XForm/XForm'
|
|
60
|
+
|
|
61
|
+
export default {
|
|
62
|
+
components: {
|
|
63
|
+
XForm
|
|
64
|
+
},
|
|
65
|
+
data () {
|
|
66
|
+
return {
|
|
67
|
+
// 加载查询参数JSON配置文件是否完成
|
|
68
|
+
loaded: false,
|
|
69
|
+
// 从查询参数JSON配置中得到的生成表单的JSON
|
|
70
|
+
formItemJson: undefined,
|
|
71
|
+
// 表单
|
|
72
|
+
form: {}
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
created () {
|
|
76
|
+
this.getQueryJson()
|
|
77
|
+
},
|
|
78
|
+
methods: {
|
|
79
|
+
// 加载查询参数JSON配置文件
|
|
80
|
+
getQueryJson () {
|
|
81
|
+
this.formItemJson = [
|
|
82
|
+
{
|
|
83
|
+
"name":"燃气公司",
|
|
84
|
+
"keyName":"orgList",
|
|
85
|
+
"model":"orgName",
|
|
86
|
+
"placeholder":"请选择",
|
|
87
|
+
"type":"select"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"name":"用户地址",
|
|
91
|
+
"model":"f_address",
|
|
92
|
+
"type":"input"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"name":"指令类型",
|
|
96
|
+
"keyName":"指令类型",
|
|
97
|
+
"model":"f_instruct_type",
|
|
98
|
+
"placeholder":"请选择",
|
|
99
|
+
"type":"select"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"name":"指令说明",
|
|
103
|
+
"model":"f_instruct_title",
|
|
104
|
+
"placeholder":"请输入指令说明",
|
|
105
|
+
"type":"input"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"name":"指令状态",
|
|
109
|
+
"keyName":"指令状态",
|
|
110
|
+
"model":"f_instruct_state",
|
|
111
|
+
"placeholder":"请选择",
|
|
112
|
+
"type":"select"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"name":"响应结果",
|
|
116
|
+
"model":"f_receive_state",
|
|
117
|
+
"placeholder":"请输入响应结果",
|
|
118
|
+
"type":"input"
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"name":"生成时间",
|
|
122
|
+
"model":"f_instruct_date",
|
|
123
|
+
"type":"rangePicker"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"name":"操作人",
|
|
127
|
+
"model":"f_inputtor",
|
|
128
|
+
"placeholder":"请输入操作人员",
|
|
129
|
+
"type":"input"
|
|
130
|
+
}
|
|
131
|
+
]
|
|
132
|
+
this.loaded = true
|
|
133
|
+
},
|
|
134
|
+
// 表单提交方法
|
|
135
|
+
onSubmit (res) {
|
|
136
|
+
// 如果通过校验
|
|
137
|
+
if (res.valid) {
|
|
138
|
+
// 表单赋值
|
|
139
|
+
this.form = res.form
|
|
140
|
+
} else {
|
|
141
|
+
return false
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
</script>
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
注意事项
|
|
150
|
+
----
|
|
151
|
+
|
|
152
|
+
> 本组件已经实现了自适应布局,在不同分辨率下的设备均可得到基本理想的展示效果
|
|
153
|
+
>
|
|
154
|
+
> 以上示例查询参数配置为后台生成后的结果,此处为了方便调试,所以直接写在了代码中,实际使用请通过发起请求获取查询参数配置,如下:
|
|
155
|
+
```vue
|
|
156
|
+
<script>
|
|
157
|
+
import { commonApi } from '@vue2-client/base-client/api/common'
|
|
158
|
+
import Vue from 'vue'
|
|
159
|
+
|
|
160
|
+
export default {
|
|
161
|
+
data () {
|
|
162
|
+
return {
|
|
163
|
+
// 查询配置文件名
|
|
164
|
+
queryParamsName: 'instructQueryParams'
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
methods: {
|
|
168
|
+
getConfig () {
|
|
169
|
+
Vue.resetpost(commonApi.getConfig, {str: this.queryParamsName}).then((res) => {
|
|
170
|
+
this.formItemJson = res.formJson
|
|
171
|
+
this.columnItemJson = res.columnJson
|
|
172
|
+
this.loaded = true
|
|
173
|
+
})
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
</script>
|
|
178
|
+
```
|
|
@@ -77,7 +77,8 @@ export default {
|
|
|
77
77
|
env: 'dev',
|
|
78
78
|
spinning: true,
|
|
79
79
|
loadingErr: false,
|
|
80
|
-
activeTab: 0
|
|
80
|
+
activeTab: 0,
|
|
81
|
+
externalData: {}
|
|
81
82
|
}
|
|
82
83
|
},
|
|
83
84
|
mounted() {},
|
|
@@ -117,10 +118,12 @@ export default {
|
|
|
117
118
|
env = 'prod',
|
|
118
119
|
showLeftTab = false,
|
|
119
120
|
businessType = '新增',
|
|
120
|
-
formShow = {}
|
|
121
|
+
formShow = {},
|
|
122
|
+
externalData = {}
|
|
121
123
|
}) {
|
|
122
124
|
Object.assign(this, { groups, modifyModelData, serviceName, env, showLeftTab, businessType })
|
|
123
125
|
this.formShow = { ...formShow }
|
|
126
|
+
this.externalData = externalData
|
|
124
127
|
this.initView()
|
|
125
128
|
this.$nextTick(() => {
|
|
126
129
|
const formGroupContext = this.$refs.formGroupContext?.$el
|
|
@@ -206,6 +209,7 @@ export default {
|
|
|
206
209
|
businessType: this.businessType,
|
|
207
210
|
env: this.env,
|
|
208
211
|
groupName: res.groupName,
|
|
212
|
+
externalData: this.externalData,
|
|
209
213
|
...res
|
|
210
214
|
}
|
|
211
215
|
params.showSubmitBtn = false
|
|
@@ -316,7 +320,6 @@ export default {
|
|
|
316
320
|
}
|
|
317
321
|
// 更新 allFormData
|
|
318
322
|
this.$set(this.allFormData, groupName, formData)
|
|
319
|
-
console.warn('handleFormDataChange allFormData', this.allFormData)
|
|
320
323
|
// 触发其他表单的刷新
|
|
321
324
|
this.$nextTick(() => {
|
|
322
325
|
this.groups.forEach((item, index) => {
|
|
@@ -14,7 +14,11 @@ export default {
|
|
|
14
14
|
getConfigByNameAsync('changeMeterFormGroup', 'af-revenue').then(res => {
|
|
15
15
|
this.$refs.xFormGroupDemo.init({
|
|
16
16
|
...res,
|
|
17
|
-
serviceName: 'af-revenue'
|
|
17
|
+
serviceName: 'af-revenue',
|
|
18
|
+
externalData: {
|
|
19
|
+
a:1,
|
|
20
|
+
v:2
|
|
21
|
+
}
|
|
18
22
|
})
|
|
19
23
|
})
|
|
20
24
|
},
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
@rowDblClick="rowDblClick"
|
|
16
16
|
:defaultPageSize="5"
|
|
17
17
|
:defaultQueryForm="{
|
|
18
|
-
|
|
18
|
+
s_id: '21985716'
|
|
19
19
|
}"
|
|
20
20
|
serviceName="af-revenue"
|
|
21
21
|
ref="xFormTable"
|
|
@@ -34,7 +34,7 @@ export default {
|
|
|
34
34
|
data() {
|
|
35
35
|
return {
|
|
36
36
|
// 查询配置文件名
|
|
37
|
-
queryParamsName: '
|
|
37
|
+
queryParamsName: 'ceshiCRUD',
|
|
38
38
|
// 查询配置左侧tree
|
|
39
39
|
xTreeConfigName: 'addressType',
|
|
40
40
|
// 新增表单固定值
|