vue2-client 1.20.64 → 1.20.66

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.
Files changed (101) hide show
  1. package/.claude/settings.local.json +30 -30
  2. package/.eslintrc.js +74 -74
  3. package/.idea/af-vue2-client.iml +8 -0
  4. package/.idea/inspectionProfiles/Project_Default.xml +3 -4
  5. package/.idea/modules.xml +1 -1
  6. package/Components.md +60 -60
  7. package/index.js +31 -31
  8. package/jest-transform-stub.js +8 -8
  9. package/jest.setup.js +7 -7
  10. package/logs/afgit.config.log +12 -0
  11. package/logs/afgit.config.log.2026-02-27 +7 -0
  12. package/logs/afgit.config_error.log +6 -0
  13. package/logs/afgit.config_error.log.2026-02-27 +3 -0
  14. package/package.json +1 -1
  15. package/src/assets/img/querySlotDemo.svg +15 -15
  16. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  17. package/src/base-client/components/common/CitySelect/index.js +3 -3
  18. package/src/base-client/components/common/CitySelect/index.md +109 -109
  19. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  20. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  21. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  22. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  23. package/src/base-client/components/common/Tree/index.js +2 -2
  24. package/src/base-client/components/common/Upload/Upload.vue +32 -2
  25. package/src/base-client/components/common/Upload/index.js +3 -3
  26. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +9 -0
  27. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  28. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  29. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  30. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  31. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  32. package/src/base-client/components/common/XDescriptions/XDescriptionsGroup.vue +673 -673
  33. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  34. package/src/base-client/components/common/XDescriptions/index.md +382 -382
  35. package/src/base-client/components/common/XForm/XFormItem.vue +9 -1
  36. package/src/base-client/components/common/XForm/index.md +178 -178
  37. package/src/base-client/components/common/XFormCol/XFormCol.vue +1 -1
  38. package/src/base-client/components/common/XReportGrid/XReport.vue +24 -0
  39. package/src/base-client/components/common/XReportGrid/XReportTrGroup.vue +145 -1
  40. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  41. package/src/base-client/components/common/XStepView/index.js +3 -3
  42. package/src/base-client/components/common/XStepView/index.md +31 -31
  43. package/src/base-client/components/common/XTab/XTab.vue +157 -94
  44. package/src/base-client/components/common/XTable/index.md +255 -255
  45. package/src/base-client/components/his/XSidebar/XSidebar.vue +171 -62
  46. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  47. package/src/base-client/plugins/Config.js +19 -19
  48. package/src/base-client/plugins/shortcutMixin.js +444 -0
  49. package/src/base-client/plugins/shortcutPlugin.js +203 -0
  50. package/src/base-client/plugins/shortcutRouterPlugin.js +55 -0
  51. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  52. package/src/base-client/utils/shortcutManager.js +1086 -0
  53. package/src/components/Charts/Bar.vue +62 -62
  54. package/src/components/Charts/ChartCard.vue +134 -134
  55. package/src/components/Charts/Liquid.vue +67 -67
  56. package/src/components/Charts/MiniArea.vue +39 -39
  57. package/src/components/Charts/MiniBar.vue +39 -39
  58. package/src/components/Charts/MiniProgress.vue +75 -75
  59. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  60. package/src/components/Charts/Radar.vue +68 -68
  61. package/src/components/Charts/RankList.vue +77 -77
  62. package/src/components/Charts/TagCloud.vue +113 -113
  63. package/src/components/Charts/TransferBar.vue +64 -64
  64. package/src/components/Charts/Trend.vue +82 -82
  65. package/src/components/Charts/chart.less +12 -12
  66. package/src/components/Charts/smooth.area.less +13 -13
  67. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  68. package/src/components/NumberInfo/index.js +3 -3
  69. package/src/components/NumberInfo/index.less +54 -54
  70. package/src/components/NumberInfo/index.md +43 -43
  71. package/src/components/card/ChartCard.vue +79 -79
  72. package/src/components/chart/Bar.vue +60 -60
  73. package/src/components/chart/MiniArea.vue +67 -67
  74. package/src/components/chart/MiniBar.vue +59 -59
  75. package/src/components/chart/MiniProgress.vue +57 -57
  76. package/src/components/chart/Radar.vue +80 -80
  77. package/src/components/chart/RankingList.vue +60 -60
  78. package/src/components/chart/Trend.vue +79 -79
  79. package/src/components/chart/index.less +9 -9
  80. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  81. package/src/components/input/IInput.vue +66 -66
  82. package/src/components/menu/SideMenu.vue +75 -75
  83. package/src/components/menu/menu.js +273 -273
  84. package/src/components/tool/AStepItem.vue +60 -60
  85. package/src/layouts/CommonLayout.vue +56 -56
  86. package/src/lib.js +1 -1
  87. package/src/mock/extend/index.js +84 -84
  88. package/src/mock/goods/index.js +108 -108
  89. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  90. package/src/pages/system/dictionary/index.vue +44 -44
  91. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  92. package/src/pages/system/monitor/operLog/index.vue +37 -37
  93. package/src/services/api/cas.js +79 -79
  94. package/src/store/modules/setting.js +119 -119
  95. package/src/utils/errorCode.js +6 -6
  96. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
  97. package/.idea/MarsCodeWorkspaceAppSettings.xml +0 -7
  98. package/.idea/google-java-format.xml +0 -6
  99. package/.idea/jsLinters/eslint.xml +0 -6
  100. package/.idea/vue2-client.iml +0 -12
  101. package/.vscode/settings.json +0 -28
@@ -1,271 +1,271 @@
1
- <template>
2
- <a-drawer
3
- title="设备类型配置生成"
4
- placement="right"
5
- :width="isMobile ? screenWidth : screenWidth * 0.85"
6
- :visible="visible"
7
- @close="onClose"
8
- >
9
- <a-row :gutter="24">
10
- <a-col :xl="12" :lg="12" :md="12" :sm="24" :xs="24">
11
- <div class="page-header-index-wide">
12
- <a-card :bordered="false">
13
- <div slot="title">
14
- <div v-show="changeflag" >
15
- <a-button v-show="treeData.length === 0" @click="showModal('eventAddRoot')">添加根节点</a-button>
16
- <a-divider v-show="treeData.length === 0" type="vertical" />
17
- <a-button v-show="treeData.length > 0" @click="showModal('eventAddSame')">添加同级</a-button>
18
- <a-divider v-show="treeData.length > 0" type="vertical" />
19
- <a-button v-show="treeData.length > 0" @click="showModal('eventAddSub')">添加下级</a-button>
20
- <a-divider v-show="treeData.length > 0" type="vertical" />
21
- <a-button v-show="treeData.length > 0" @click="showModal('eventModify')">修改</a-button>
22
- <a-divider v-show="treeData.length > 0" type="vertical" />
23
- <a-button v-show="treeData.length > 0" @click="eventDelete">删除</a-button>
24
- </div>
25
- </div>
26
- <a-tree
27
- :tree-data="treeData"
28
- @select="onEventTreeNodeSelected"
29
- :defaultExpandAll="true"
30
- :selectedKeys.sync="selectKeys"
31
- showLine >
32
- <template slot="custom" slot-scope="item">
33
- <div style="position: relative;float:left;">
34
- {{ item.title }}
35
- </div>
36
- <div v-show="item.visibleModel" style="position: absolute;height:25px;top: 3%;left:3.8%" >
37
- <a-input-group compact>
38
- <a-input type="text" style="width: 30%" placeholder="名称" ref="myInput" v-model="nowchangetitle" />
39
- <a-input type="text" style="width: 30%" placeholder="值" ref="myInput" v-model="nowchangevalue" />
40
- <a-button
41
- @click="handleOk(item)"
42
- type="link">
43
- 保存
44
- </a-button>
45
- <a-divider type="vertical" />
46
- <a-button
47
- @click="handleCancel(item)"
48
- type="link"
49
- >取消</a-button>
50
- </a-input-group>
51
- </div>
52
- </template>
53
- </a-tree>
54
- </a-card>
55
- </div>
56
- </a-col>
57
- <a-col :xl="12" :lg="12" :md="12" :sm="24" :xs="24">
58
- <a-card :bordered="false" title="预览" size="small" style="overflow: auto">
59
- <json-viewer :copyable="{copyText: '复制', copiedText: '已复制'}" :value="treeData" :expand-depth="parseInt('100')" style="overflow: auto;max-height: 440px"></json-viewer>
60
- </a-card>
61
- </a-col>
62
- </a-row>
63
- </a-drawer>
64
- </template>
65
-
66
- <script>
67
-
68
- import { mapState } from 'vuex'
69
- import JsonViewer from 'vue-json-viewer'
70
-
71
- export default {
72
- name: 'LogDetailsView',
73
- data () {
74
- return {
75
- // 页面宽度
76
- screenWidth: document.documentElement.clientWidth,
77
- selectKeys: [],
78
- treeData: [],
79
- eventSelectedNode: null,
80
- // 当前操作类型
81
- operate: '',
82
- // 新建节点中的值
83
- nowchangetitle: '',
84
- // 新建节点中的值
85
- nowchangevalue: '',
86
- // 操作按钮显示控制
87
- changeflag: true
88
- }
89
- },
90
- props: {
91
- visible: {
92
- type: Boolean,
93
- default: () => {
94
- return false
95
- }
96
- }
97
- },
98
- components: {
99
- JsonViewer
100
- },
101
- methods: {
102
- showModal (operate) {
103
- if (!this.eventSelectedNode && this.treeData.length > 0) {
104
- this.$message.warning('请选择节点后进行操作')
105
- return
106
- }
107
- if (operate === 'eventAddSame' && this.eventSelectedNode && !this.eventSelectedNode.$parent.dataRef && this.treeData.length > 0) {
108
- this.$message.warning('不能给根节点添加同级')
109
- return
110
- }
111
- this.changeflag = false
112
- this.operate = operate
113
- switch (this.operate) {
114
- case 'eventAddRoot':
115
- this.eventAddRoot()
116
- break
117
- case 'eventAddSame':
118
- this.eventAddSame()
119
- break
120
- case 'eventAddSub':
121
- this.eventAddSub()
122
- break
123
- case 'eventModify':
124
- this.nowchangetitle = this.eventSelectedNode.dataRef.title
125
- this.nowchangevalue = this.eventSelectedNode.dataRef.value
126
- this.setvisibleModel(true, 'visibleModel')
127
- break
128
- default:
129
- this.$message.warning('未获取到操作指令')
130
- }
131
- },
132
- handleOk (item) {
133
- if (this.operate === 'eventModify') {
134
- this.eventModify()
135
- } else {
136
- this.eventSelectedNode.dataRef.title = this.nowchangetitle
137
- this.eventSelectedNode.dataRef.value = this.nowchangevalue
138
- }
139
- this.setvisibleModel(false, 'visibleModel')
140
- this.clearnodename()
141
- },
142
- setvisibleModel (flag, value) {
143
- const dataRef = this.eventSelectedNode.dataRef
144
- this.$set(dataRef, value, flag)
145
- },
146
- handleCancel (item) {
147
- if (this.operate === 'eventModify') {
148
- this.setvisibleModel(false, 'visibleModel')
149
- } else if (this.operate === 'eventAddRoot') {
150
- this.treeData = []
151
- } else {
152
- this.searchitem(item, this.treeData)
153
- }
154
- this.clearnodename()
155
- },
156
- searchitem (option, arr, type = 'delete') {
157
- // 递归删除树中某个节点
158
- for (let s = 0; s < arr.length; s++) {
159
- if (arr[s].key === option.key) {
160
- if (type === 'delete') {
161
- arr.splice(s, 1)
162
- }
163
- break
164
- } else if (arr[s].children && arr[s].children.length > 0) { // 递归条件
165
- this.searchitem(option, arr[s].children)
166
- }
167
- }
168
- },
169
- clearnodename () {
170
- this.operate = ''
171
- this.nowchangetitle = ''
172
- this.nowchangevalue = ''
173
- this.changeflag = true
174
- },
175
- onClose () {
176
- this.$emit('update:visible', false)
177
- },
178
- onEventTreeNodeSelected (seleteKeys, e) {
179
- if (e.selected) {
180
- this.eventSelectedNode = e.node
181
- return
182
- }
183
- this.eventSelectedNode = null
184
- },
185
- eventAddRoot () {
186
- this.$set(this.treeData, 'children', [])
187
- this.treeData.push({
188
- title: '',
189
- value: '',
190
- key: new Date().getTime(),
191
- scopedSlots: { title: 'custom' },
192
- visibleModel: true
193
- })
194
- },
195
- eventAddSame () {
196
- // 查找父级
197
- const dataRef = this.eventSelectedNode.$parent.dataRef
198
- if (!dataRef.children) {
199
- this.$set(dataRef, 'children', [])
200
- }
201
- dataRef.children.push({
202
- title: '',
203
- value: '',
204
- key: new Date().getTime(),
205
- scopedSlots: { title: 'custom' },
206
- visibleModel: true
207
- })
208
- },
209
- eventAddSub () {
210
- const dataRef = this.eventSelectedNode.dataRef
211
- if (!dataRef.children) {
212
- this.$set(dataRef, 'children', [])
213
- }
214
- this.eventSelectedNode.vcTree.$data._expandedKeys.push(dataRef.key)
215
- dataRef.children.push({
216
- title: '',
217
- value: '',
218
- key: new Date().getTime(),
219
- scopedSlots: { title: 'custom' },
220
- children: [],
221
- visibleModel: true
222
- })
223
- },
224
- eventModify () {
225
- const dataRef = this.eventSelectedNode.dataRef
226
- // this.$set(dataRef, 'children', [])
227
- dataRef.title = this.nowchangetitle
228
- dataRef.value = this.nowchangevalue
229
- },
230
- eventDelete () {
231
- if (!this.eventSelectedNode.$parent.dataRef) {
232
- this.treeData = []
233
- return
234
- }
235
- const parentDataRef = this.eventSelectedNode.$parent.dataRef
236
- // 判断是否是顶层
237
- const children = parentDataRef.children
238
- const currentDataRef = this.eventSelectedNode.dataRef
239
- const index = children.indexOf(currentDataRef)
240
- children.splice(index, 1)
241
- },
242
- onSelect (selectedKeys, info) {
243
- console.log('selected', selectedKeys, info)
244
- }
245
- },
246
- computed: {
247
- ...mapState('setting', ['isMobile'])
248
- }
249
- }
250
- </script>
251
- <style lang="less" scoped>
252
- .ant-tree-title {
253
- width: 100%;
254
- }
255
- .title {
256
- float: left;
257
- }
258
- .ant-card-body {
259
- .ant-tree {
260
- line-height: 3;
261
- li {
262
- position: relative;
263
- }
264
- }
265
- }
266
- .ant-card-body .but_type {
267
- float: right;
268
- position: absolute;
269
- right: 40px;
270
- }
271
- </style>
1
+ <template>
2
+ <a-drawer
3
+ title="设备类型配置生成"
4
+ placement="right"
5
+ :width="isMobile ? screenWidth : screenWidth * 0.85"
6
+ :visible="visible"
7
+ @close="onClose"
8
+ >
9
+ <a-row :gutter="24">
10
+ <a-col :xl="12" :lg="12" :md="12" :sm="24" :xs="24">
11
+ <div class="page-header-index-wide">
12
+ <a-card :bordered="false">
13
+ <div slot="title">
14
+ <div v-show="changeflag" >
15
+ <a-button v-show="treeData.length === 0" @click="showModal('eventAddRoot')">添加根节点</a-button>
16
+ <a-divider v-show="treeData.length === 0" type="vertical" />
17
+ <a-button v-show="treeData.length > 0" @click="showModal('eventAddSame')">添加同级</a-button>
18
+ <a-divider v-show="treeData.length > 0" type="vertical" />
19
+ <a-button v-show="treeData.length > 0" @click="showModal('eventAddSub')">添加下级</a-button>
20
+ <a-divider v-show="treeData.length > 0" type="vertical" />
21
+ <a-button v-show="treeData.length > 0" @click="showModal('eventModify')">修改</a-button>
22
+ <a-divider v-show="treeData.length > 0" type="vertical" />
23
+ <a-button v-show="treeData.length > 0" @click="eventDelete">删除</a-button>
24
+ </div>
25
+ </div>
26
+ <a-tree
27
+ :tree-data="treeData"
28
+ @select="onEventTreeNodeSelected"
29
+ :defaultExpandAll="true"
30
+ :selectedKeys.sync="selectKeys"
31
+ showLine >
32
+ <template slot="custom" slot-scope="item">
33
+ <div style="position: relative;float:left;">
34
+ {{ item.title }}
35
+ </div>
36
+ <div v-show="item.visibleModel" style="position: absolute;height:25px;top: 3%;left:3.8%" >
37
+ <a-input-group compact>
38
+ <a-input type="text" style="width: 30%" placeholder="名称" ref="myInput" v-model="nowchangetitle" />
39
+ <a-input type="text" style="width: 30%" placeholder="值" ref="myInput" v-model="nowchangevalue" />
40
+ <a-button
41
+ @click="handleOk(item)"
42
+ type="link">
43
+ 保存
44
+ </a-button>
45
+ <a-divider type="vertical" />
46
+ <a-button
47
+ @click="handleCancel(item)"
48
+ type="link"
49
+ >取消</a-button>
50
+ </a-input-group>
51
+ </div>
52
+ </template>
53
+ </a-tree>
54
+ </a-card>
55
+ </div>
56
+ </a-col>
57
+ <a-col :xl="12" :lg="12" :md="12" :sm="24" :xs="24">
58
+ <a-card :bordered="false" title="预览" size="small" style="overflow: auto">
59
+ <json-viewer :copyable="{copyText: '复制', copiedText: '已复制'}" :value="treeData" :expand-depth="parseInt('100')" style="overflow: auto;max-height: 440px"></json-viewer>
60
+ </a-card>
61
+ </a-col>
62
+ </a-row>
63
+ </a-drawer>
64
+ </template>
65
+
66
+ <script>
67
+
68
+ import { mapState } from 'vuex'
69
+ import JsonViewer from 'vue-json-viewer'
70
+
71
+ export default {
72
+ name: 'LogDetailsView',
73
+ data () {
74
+ return {
75
+ // 页面宽度
76
+ screenWidth: document.documentElement.clientWidth,
77
+ selectKeys: [],
78
+ treeData: [],
79
+ eventSelectedNode: null,
80
+ // 当前操作类型
81
+ operate: '',
82
+ // 新建节点中的值
83
+ nowchangetitle: '',
84
+ // 新建节点中的值
85
+ nowchangevalue: '',
86
+ // 操作按钮显示控制
87
+ changeflag: true
88
+ }
89
+ },
90
+ props: {
91
+ visible: {
92
+ type: Boolean,
93
+ default: () => {
94
+ return false
95
+ }
96
+ }
97
+ },
98
+ components: {
99
+ JsonViewer
100
+ },
101
+ methods: {
102
+ showModal (operate) {
103
+ if (!this.eventSelectedNode && this.treeData.length > 0) {
104
+ this.$message.warning('请选择节点后进行操作')
105
+ return
106
+ }
107
+ if (operate === 'eventAddSame' && this.eventSelectedNode && !this.eventSelectedNode.$parent.dataRef && this.treeData.length > 0) {
108
+ this.$message.warning('不能给根节点添加同级')
109
+ return
110
+ }
111
+ this.changeflag = false
112
+ this.operate = operate
113
+ switch (this.operate) {
114
+ case 'eventAddRoot':
115
+ this.eventAddRoot()
116
+ break
117
+ case 'eventAddSame':
118
+ this.eventAddSame()
119
+ break
120
+ case 'eventAddSub':
121
+ this.eventAddSub()
122
+ break
123
+ case 'eventModify':
124
+ this.nowchangetitle = this.eventSelectedNode.dataRef.title
125
+ this.nowchangevalue = this.eventSelectedNode.dataRef.value
126
+ this.setvisibleModel(true, 'visibleModel')
127
+ break
128
+ default:
129
+ this.$message.warning('未获取到操作指令')
130
+ }
131
+ },
132
+ handleOk (item) {
133
+ if (this.operate === 'eventModify') {
134
+ this.eventModify()
135
+ } else {
136
+ this.eventSelectedNode.dataRef.title = this.nowchangetitle
137
+ this.eventSelectedNode.dataRef.value = this.nowchangevalue
138
+ }
139
+ this.setvisibleModel(false, 'visibleModel')
140
+ this.clearnodename()
141
+ },
142
+ setvisibleModel (flag, value) {
143
+ const dataRef = this.eventSelectedNode.dataRef
144
+ this.$set(dataRef, value, flag)
145
+ },
146
+ handleCancel (item) {
147
+ if (this.operate === 'eventModify') {
148
+ this.setvisibleModel(false, 'visibleModel')
149
+ } else if (this.operate === 'eventAddRoot') {
150
+ this.treeData = []
151
+ } else {
152
+ this.searchitem(item, this.treeData)
153
+ }
154
+ this.clearnodename()
155
+ },
156
+ searchitem (option, arr, type = 'delete') {
157
+ // 递归删除树中某个节点
158
+ for (let s = 0; s < arr.length; s++) {
159
+ if (arr[s].key === option.key) {
160
+ if (type === 'delete') {
161
+ arr.splice(s, 1)
162
+ }
163
+ break
164
+ } else if (arr[s].children && arr[s].children.length > 0) { // 递归条件
165
+ this.searchitem(option, arr[s].children)
166
+ }
167
+ }
168
+ },
169
+ clearnodename () {
170
+ this.operate = ''
171
+ this.nowchangetitle = ''
172
+ this.nowchangevalue = ''
173
+ this.changeflag = true
174
+ },
175
+ onClose () {
176
+ this.$emit('update:visible', false)
177
+ },
178
+ onEventTreeNodeSelected (seleteKeys, e) {
179
+ if (e.selected) {
180
+ this.eventSelectedNode = e.node
181
+ return
182
+ }
183
+ this.eventSelectedNode = null
184
+ },
185
+ eventAddRoot () {
186
+ this.$set(this.treeData, 'children', [])
187
+ this.treeData.push({
188
+ title: '',
189
+ value: '',
190
+ key: new Date().getTime(),
191
+ scopedSlots: { title: 'custom' },
192
+ visibleModel: true
193
+ })
194
+ },
195
+ eventAddSame () {
196
+ // 查找父级
197
+ const dataRef = this.eventSelectedNode.$parent.dataRef
198
+ if (!dataRef.children) {
199
+ this.$set(dataRef, 'children', [])
200
+ }
201
+ dataRef.children.push({
202
+ title: '',
203
+ value: '',
204
+ key: new Date().getTime(),
205
+ scopedSlots: { title: 'custom' },
206
+ visibleModel: true
207
+ })
208
+ },
209
+ eventAddSub () {
210
+ const dataRef = this.eventSelectedNode.dataRef
211
+ if (!dataRef.children) {
212
+ this.$set(dataRef, 'children', [])
213
+ }
214
+ this.eventSelectedNode.vcTree.$data._expandedKeys.push(dataRef.key)
215
+ dataRef.children.push({
216
+ title: '',
217
+ value: '',
218
+ key: new Date().getTime(),
219
+ scopedSlots: { title: 'custom' },
220
+ children: [],
221
+ visibleModel: true
222
+ })
223
+ },
224
+ eventModify () {
225
+ const dataRef = this.eventSelectedNode.dataRef
226
+ // this.$set(dataRef, 'children', [])
227
+ dataRef.title = this.nowchangetitle
228
+ dataRef.value = this.nowchangevalue
229
+ },
230
+ eventDelete () {
231
+ if (!this.eventSelectedNode.$parent.dataRef) {
232
+ this.treeData = []
233
+ return
234
+ }
235
+ const parentDataRef = this.eventSelectedNode.$parent.dataRef
236
+ // 判断是否是顶层
237
+ const children = parentDataRef.children
238
+ const currentDataRef = this.eventSelectedNode.dataRef
239
+ const index = children.indexOf(currentDataRef)
240
+ children.splice(index, 1)
241
+ },
242
+ onSelect (selectedKeys, info) {
243
+ console.log('selected', selectedKeys, info)
244
+ }
245
+ },
246
+ computed: {
247
+ ...mapState('setting', ['isMobile'])
248
+ }
249
+ }
250
+ </script>
251
+ <style lang="less" scoped>
252
+ .ant-tree-title {
253
+ width: 100%;
254
+ }
255
+ .title {
256
+ float: left;
257
+ }
258
+ .ant-card-body {
259
+ .ant-tree {
260
+ line-height: 3;
261
+ li {
262
+ position: relative;
263
+ }
264
+ }
265
+ }
266
+ .ant-card-body .but_type {
267
+ float: right;
268
+ position: absolute;
269
+ right: 40px;
270
+ }
271
+ </style>
@@ -1,3 +1,3 @@
1
- import PersonSetting from './PersonSetting'
2
-
3
- export default PersonSetting
1
+ import PersonSetting from './PersonSetting'
2
+
3
+ export default PersonSetting
@@ -1,2 +1,2 @@
1
- import Tree from './Tree'
2
- export default Tree
1
+ import Tree from './Tree'
2
+ export default Tree
@@ -25,7 +25,7 @@
25
25
  </a-upload>
26
26
  </template>
27
27
  <a-upload-dragger
28
- v-else-if="model.type === 'file'"
28
+ v-else-if="model.type === 'file' || model.type === 'signature'"
29
29
  :accept="model.accept?.join('')"
30
30
  :customRequest="uploadFiles"
31
31
  :file-list="uploadedFileList"
@@ -156,6 +156,21 @@ export default {
156
156
  readOnly: {
157
157
  type: Boolean,
158
158
  default: false
159
+ },
160
+ // 兼容图片(新的image类型的表单项的字段名可自定义了,不再固定为Images,该属性为传入的新的图片列表)
161
+ // 如果字段名依旧为Images,则不需要该属性,而是使用images属性(兼容旧版的代码)
162
+ compatibleImages: {
163
+ type: Array,
164
+ default: () => {
165
+ return []
166
+ }
167
+ },
168
+ // 兼容签名(PC端没有签名功能,只做展示,归属到文件上传中,该属性为传入的签名列表)
169
+ signs: {
170
+ type: Array,
171
+ default: () => {
172
+ return []
173
+ }
159
174
  }
160
175
  },
161
176
  computed: {
@@ -163,7 +178,22 @@ export default {
163
178
  ...mapState('setting', ['compatible'])
164
179
  },
165
180
  created () {
166
- const list = this.model.type === 'file' ? [...this.files] : [...this.images]
181
+ // const list = this.model.type === 'file' ? [...this.files] : [...this.images]
182
+ let list = []
183
+ if (this.model.type === 'file') {
184
+ list = [...this.files]
185
+ } else if (this.model.type === 'signature') {
186
+ list = [...this.signs]
187
+ } else {
188
+ if (this.model.type === 'image' && this.model.model === 'Images') {
189
+ list = [...this.images]
190
+ } else if (this.model.type === 'image' && this.model.model !== 'Images') {
191
+ list = [...this.compatibleImages]
192
+ } else {
193
+ list = []
194
+ }
195
+ }
196
+
167
197
  if (this.model.useType) {
168
198
  // {uid,url,name,f_use_type?,f_form_type?}
169
199
  this.uploadedFileList = list.filter(item => item.f_use_type === this.model.useType)
@@ -1,3 +1,3 @@
1
- import Upload from './Upload'
2
-
3
- export default Upload
1
+ import Upload from './Upload'
2
+
3
+ export default Upload
@@ -29,6 +29,7 @@
29
29
  :disabled="itemDisabled(item.formItem)"
30
30
  :read-only="readonly(item.formItem)"
31
31
  :files="files"
32
+ :signs="signs"
32
33
  :form="form"
33
34
  :images="images"
34
35
  :service-name="serviceName"
@@ -83,6 +84,7 @@
83
84
  :disabled="itemDisabled(item)"
84
85
  :read-only="readonly(item)"
85
86
  :files="files"
87
+ :signs="signs"
86
88
  v-bind="formItemLayoutGen"
87
89
  :style="layout === 'inline' ? { marginTop: '5px' } : undefined"
88
90
  :form="form"
@@ -111,6 +113,7 @@
111
113
  :disabled="itemDisabled(item)"
112
114
  :readonly="readonly(item)"
113
115
  :files="files"
116
+ :signs="signs"
114
117
  v-bind="formItemLayoutGen"
115
118
  :style="layout === 'inline' ? { marginTop: '5px' } : undefined"
116
119
  :form="form[groupItem.model]"
@@ -145,6 +148,7 @@
145
148
  :disabled="itemDisabled(formItem)"
146
149
  :readonly="readonly(formItem)"
147
150
  :files="files"
151
+ :signs="signs"
148
152
  :enablePopupToBody="enablePopupToBody"
149
153
  v-bind="formItemLayoutGen"
150
154
  :style="layout === 'inline' ? { marginTop: '5px' } : undefined"
@@ -260,6 +264,8 @@ export default {
260
264
  // 修改有文件的表单时使用
261
265
  files: [],
262
266
  images: [],
267
+ // 签名
268
+ signs: [],
263
269
  // 校验
264
270
  rules: {},
265
271
  // 调用logic获取数据源的追加参数
@@ -621,6 +627,9 @@ export default {
621
627
  if (modifyModelData && modifyModelData.images) {
622
628
  this.images = modifyModelData.images
623
629
  }
630
+ if (modifyModelData && modifyModelData.signs) {
631
+ this.signs = modifyModelData.signs
632
+ }
624
633
  this.loaded = true
625
634
  this._emitConfigEnd()
626
635
  },