vue2-client 1.6.49 → 1.7.0

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 (119) hide show
  1. package/.env +15 -15
  2. package/CHANGELOG.md +628 -625
  3. package/index.js +30 -30
  4. package/package.json +81 -81
  5. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +316 -316
  6. package/src/base-client/components/common/CitySelect/CitySelect.vue +247 -247
  7. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +667 -667
  8. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +733 -733
  9. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +468 -462
  10. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +508 -508
  11. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +146 -140
  12. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +165 -165
  13. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -275
  14. package/src/base-client/components/common/Upload/Upload.vue +168 -168
  15. package/src/base-client/components/common/XAddForm/XAddForm.vue +325 -325
  16. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +279 -279
  17. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  18. package/src/base-client/components/common/XForm/XForm.vue +180 -180
  19. package/src/base-client/components/common/XForm/XFormItem.vue +513 -513
  20. package/src/base-client/components/common/XForm/XTreeSelect.vue +184 -184
  21. package/src/base-client/components/common/XFormCol/XFormCol.vue +38 -38
  22. package/src/base-client/components/common/XFormTable/XFormTable.vue +344 -336
  23. package/src/base-client/components/common/XFormTable/index.md +97 -97
  24. package/src/base-client/components/common/XImportExcel/XImportExcel.vue +132 -132
  25. package/src/base-client/components/common/XTable/XTable.vue +506 -506
  26. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +111 -111
  27. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +231 -231
  28. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  29. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  30. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  31. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  32. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  33. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  34. package/src/base-client/plugins/AppData.js +76 -76
  35. package/src/base-client/plugins/GetLoginInfoService.js +179 -179
  36. package/src/base-client/plugins/PagedList.js +177 -177
  37. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  38. package/src/base-client/plugins/i18n-extend.js +32 -32
  39. package/src/components/Ellipsis/Ellipsis.vue +65 -65
  40. package/src/components/Ellipsis/index.md +38 -38
  41. package/src/components/NumberInfo/index.md +43 -43
  42. package/src/components/STable/README.md +341 -341
  43. package/src/components/STable/index.js +318 -318
  44. package/src/components/Trend/index.md +45 -45
  45. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  46. package/src/components/checkbox/ImgCheckbox.vue +163 -163
  47. package/src/components/exception/ExceptionPage.vue +70 -70
  48. package/src/components/form/FormRow.vue +52 -52
  49. package/src/components/index.js +36 -36
  50. package/src/components/menu/SideMenu.vue +62 -62
  51. package/src/components/menu/menu.js +273 -273
  52. package/src/components/page/header/index.less +40 -40
  53. package/src/components/setting/Setting.vue +235 -235
  54. package/src/components/table/StandardTable.vue +141 -141
  55. package/src/components/table/advance/ActionColumns.vue +158 -158
  56. package/src/components/table/advance/SearchArea.vue +355 -355
  57. package/src/components/tool/AStepItem.vue +60 -60
  58. package/src/components/tool/AvatarList.vue +68 -68
  59. package/src/components/tool/Drawer.vue +142 -142
  60. package/src/components/tool/TagSelect.vue +83 -83
  61. package/src/components/transition/PageToggleTransition.vue +97 -97
  62. package/src/config/CreateQueryConfig.js +307 -307
  63. package/src/config/default/admin.config.js +18 -18
  64. package/src/config/replacer/resolve.config.js +67 -67
  65. package/src/layouts/CommonLayout.vue +42 -42
  66. package/src/layouts/ComponentLayoutOne.vue +47 -47
  67. package/src/layouts/PageLayout.vue +151 -151
  68. package/src/layouts/SinglePageView.vue +116 -116
  69. package/src/layouts/footer/PageFooter.vue +49 -49
  70. package/src/layouts/header/AdminHeader.vue +134 -134
  71. package/src/layouts/header/HeaderAvatar.vue +64 -64
  72. package/src/layouts/header/HeaderNotice.vue +176 -176
  73. package/src/layouts/header/HeaderSearch.vue +67 -67
  74. package/src/layouts/header/InstitutionDetail.vue +181 -181
  75. package/src/layouts/header/index.less +92 -92
  76. package/src/layouts/tabs/TabsHead.vue +190 -190
  77. package/src/layouts/tabs/TabsView.vue +379 -379
  78. package/src/mock/goods/index.js +108 -108
  79. package/src/pages/CreateQueryPage.vue +84 -84
  80. package/src/pages/login/Login.vue +369 -369
  81. package/src/pages/report/ReportTable.js +124 -124
  82. package/src/pages/report/ReportTableHome.vue +28 -28
  83. package/src/pages/resourceManage/orgListManage.vue +98 -98
  84. package/src/pages/system/dictionary/index.vue +43 -43
  85. package/src/pages/system/file/index.vue +317 -317
  86. package/src/pages/system/monitor/loginInfor/index.vue +36 -36
  87. package/src/pages/system/monitor/operLog/index.vue +36 -36
  88. package/src/pages/system/settings/index.vue +126 -126
  89. package/src/pages/system/settings/modifyPassword.vue +109 -109
  90. package/src/router/async/config.async.js +28 -28
  91. package/src/router/async/router.map.js +66 -68
  92. package/src/router/index.js +27 -27
  93. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  94. package/src/services/api/LogDetailsViewApi.js +10 -10
  95. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  96. package/src/services/api/TicketDetailsViewApi.js +34 -34
  97. package/src/services/api/cas.js +79 -79
  98. package/src/services/api/common.js +137 -132
  99. package/src/services/api/commonTempTable.js +10 -10
  100. package/src/services/api/index.js +17 -17
  101. package/src/services/api/logininfor/index.js +6 -6
  102. package/src/services/api/manage.js +8 -8
  103. package/src/services/apiService.js +14 -14
  104. package/src/services/user.js +67 -67
  105. package/src/store/modules/index.js +4 -4
  106. package/src/theme/default/nprogress.less +76 -76
  107. package/src/theme/default/style.less +58 -58
  108. package/src/utils/EncryptUtil.js +53 -53
  109. package/src/utils/colors.js +107 -107
  110. package/src/utils/excel/Blob.js +180 -180
  111. package/src/utils/excel/Export2Excel.js +141 -141
  112. package/src/utils/formatter.js +68 -68
  113. package/src/utils/i18n.js +80 -80
  114. package/src/utils/map-utils.js +37 -37
  115. package/src/utils/theme-color-replacer-extend.js +91 -91
  116. package/src/utils/themeUtil.js +100 -100
  117. package/src/utils/util.js +230 -230
  118. package/vue.config.js +106 -106
  119. package/src/pages/system/queryParams/index.vue +0 -43
@@ -1,184 +1,184 @@
1
- <template>
2
- <!-- 树形选择框 -->
3
- <a-form-model-item v-if="loaded" :ref="model" :label="name" :prop="model">
4
- <a-tree-select
5
- v-model="value"
6
- :disabled="disabled"
7
- :tree-data="getTreeData()"
8
- :tree-checkable="mode === '查询' && queryType !== 'RIGHT_LIKE'"
9
- :placeholder="'请选择' + name"
10
- :dropdown-style="{ maxHeight: '400px' }"
11
- tree-node-filter-prop="label"
12
- :show-checked-strategy="queryType === 'RIGHT_LIKE' ? 'SHOW_ALL' : undefined"
13
- allow-clear
14
- class="tree-select"
15
- @change="onTreeSelectChange">
16
- </a-tree-select>
17
- </a-form-model-item>
18
- </template>
19
- <script>
20
- import XFormCol from '@vue2-client/base-client/components/common/XFormCol'
21
-
22
- export default {
23
- name: 'XTreeSelect',
24
- components: { XFormCol },
25
- data () {
26
- return {
27
- // 内容加载是否完成
28
- loaded: false,
29
- // 数据列表
30
- option: [],
31
- // 表单
32
- form: {},
33
- // 查询方式
34
- queryType: 'IN',
35
- // label名称
36
- name: undefined,
37
- // 模型名称
38
- model: undefined,
39
- // 使用方式
40
- mode: '查询',
41
- // 是否禁用
42
- disabled: false,
43
- // 选中值
44
- value: undefined
45
- }
46
- },
47
- methods: {
48
- init (params) {
49
- const {
50
- option = [], form, queryType = 'IN', name, model, mode = '查询', disabled = false
51
- } = params
52
- this.loaded = false
53
- this.option = option
54
- this.form = form
55
- this.queryType = queryType
56
- this.name = name
57
- this.model = model
58
- this.mode = mode
59
- this.disabled = disabled
60
- // 修改时恢复树形选择框选中状态
61
- if (this.queryType !== 'RIGHT_LIKE') {
62
- const value = this.form[this.model]
63
- if (value) {
64
- // 如果数据源中值含'-',代表是由多个数据源组成的树,需要重新组织新增/编辑时的表单值
65
- if (this.option.length > 0 && this.option[0].value.indexOf('-') !== -1) {
66
- this.value = model + '-' + value
67
- } else {
68
- this.value = value
69
- }
70
- } else {
71
- this.value = undefined
72
- }
73
- }
74
- this.loaded = true
75
- },
76
- // 获取树形选择框数据
77
- getTreeData () {
78
- const treeData = this.option
79
- if (this.mode === '新增/修改') {
80
- this.setParentSelectable(treeData)
81
- }
82
- return treeData
83
- },
84
- // 设置树形选择框不能选择父节点
85
- setParentSelectable (treeData) {
86
- treeData.forEach(item => {
87
- if (item.children && item.children.length) {
88
- item.selectable = false
89
- this.setParentSelectable(item.children)
90
- }
91
- })
92
- },
93
- // 选中树节点
94
- onTreeSelectChange (value, label, extra) {
95
- if (this.queryType === 'RIGHT_LIKE') {
96
- // 获取可用于模糊查询的组织机构字符串
97
- let node = extra.triggerNode.$parent
98
- label = label[0]
99
- while (node && node.label) {
100
- label = node.label + '.' + label
101
- node = node.$parent
102
- }
103
- this.form[this.model] = label
104
- } else {
105
- // 如果选中值含'-',代表是由多个数据源组成的树,需要重新组织查询或新增/编辑时的表单
106
- if ((value instanceof Array && value.length > 0 && value[0].indexOf('-') !== -1) || (typeof value === 'string' && value.indexOf('-') !== -1)) {
107
- const treeDatas = {}
108
- // 单选情况用于新增.修改表单场景,使用extra.triggerNode获取选中节点信息
109
- if (!extra.allCheckedNodes) {
110
- this.setNodeData(treeDatas, extra.triggerNode)
111
- } else {
112
- // 多选情况用于查询表单场景,使用extra.allCheckedNodes获取选中节点集合
113
- const nodes = extra.allCheckedNodes
114
- // 获取任意选中节点的叶子节点的字段名,用于查询时组织查询项的key
115
- const name = this.getNodeDataProps(nodes[0])
116
- // 获取所有选中节点的叶子节点的value,用于查询时组织查询项的value
117
- const values = []
118
- for (const node of nodes) {
119
- const ref = this.setDataRef(node)
120
- if (ref instanceof Array) {
121
- for (const nodeRef of ref) {
122
- const keyValue = nodeRef.node.key
123
- values.push(keyValue.substring(keyValue.lastIndexOf('-') + 1))
124
- }
125
- } else {
126
- const keyValue = ref.node.key
127
- values.push(keyValue.substring(keyValue.lastIndexOf('-') + 1))
128
- }
129
- }
130
- treeDatas[name] = values
131
- }
132
- // 移除默认的表单项,将组织好后的表单项合并进表单
133
- this.form[this.model] = undefined
134
- Object.assign(this.form, treeDatas)
135
- } else {
136
- // 从单一数据源组成的树可以直接赋值
137
- this.form[this.model] = value
138
- }
139
- }
140
- },
141
- // 设置选中值
142
- setValue (value) {
143
- this.value = value
144
- },
145
- setDataRef (node) {
146
- if (node.children) {
147
- return this.setDataRef(node.children)
148
- }
149
- return node
150
- },
151
- /**
152
- * 组织节点和每层父节点的数据,用于新增/修改时更新表单数据
153
- * @param data 组织完成的数据
154
- * @param node 节点
155
- * @return 返回示例: { parentId: 1, childId: 2 }
156
- */
157
- setNodeData (data, node) {
158
- if (node.value) {
159
- const value = node.value
160
- const columnsName = value.substring(0, value.indexOf('-'))
161
- data[columnsName] = value.substring(value.lastIndexOf('-') + 1)
162
- if (node.$parent) {
163
- this.setNodeData(data, node.$parent)
164
- }
165
- }
166
- },
167
- getNodeDataProps (node) {
168
- if (node.children && node.children.length > 0) {
169
- return this.getNodeDataProps(node.children[0])
170
- }
171
- const value = node.node.key
172
- return value.substring(0, value.indexOf('-'))
173
- }
174
- }
175
- }
176
- </script>
177
- <style lang="less" scoped>
178
- .tree-select {
179
- /deep/ .ant-select-selection.ant-select-selection--multiple {
180
- max-height: 32px;
181
- overflow-y: auto;
182
- }
183
- }
184
- </style>
1
+ <template>
2
+ <!-- 树形选择框 -->
3
+ <a-form-model-item v-if="loaded" :ref="model" :label="name" :prop="model">
4
+ <a-tree-select
5
+ v-model="value"
6
+ :disabled="disabled"
7
+ :tree-data="getTreeData()"
8
+ :tree-checkable="mode === '查询' && queryType !== 'RIGHT_LIKE'"
9
+ :placeholder="'请选择' + name"
10
+ :dropdown-style="{ maxHeight: '400px' }"
11
+ tree-node-filter-prop="label"
12
+ :show-checked-strategy="queryType === 'RIGHT_LIKE' ? 'SHOW_ALL' : undefined"
13
+ allow-clear
14
+ class="tree-select"
15
+ @change="onTreeSelectChange">
16
+ </a-tree-select>
17
+ </a-form-model-item>
18
+ </template>
19
+ <script>
20
+ import XFormCol from '@vue2-client/base-client/components/common/XFormCol'
21
+
22
+ export default {
23
+ name: 'XTreeSelect',
24
+ components: { XFormCol },
25
+ data () {
26
+ return {
27
+ // 内容加载是否完成
28
+ loaded: false,
29
+ // 数据列表
30
+ option: [],
31
+ // 表单
32
+ form: {},
33
+ // 查询方式
34
+ queryType: 'IN',
35
+ // label名称
36
+ name: undefined,
37
+ // 模型名称
38
+ model: undefined,
39
+ // 使用方式
40
+ mode: '查询',
41
+ // 是否禁用
42
+ disabled: false,
43
+ // 选中值
44
+ value: undefined
45
+ }
46
+ },
47
+ methods: {
48
+ init (params) {
49
+ const {
50
+ option = [], form, queryType = 'IN', name, model, mode = '查询', disabled = false
51
+ } = params
52
+ this.loaded = false
53
+ this.option = option
54
+ this.form = form
55
+ this.queryType = queryType
56
+ this.name = name
57
+ this.model = model
58
+ this.mode = mode
59
+ this.disabled = disabled
60
+ // 修改时恢复树形选择框选中状态
61
+ if (this.queryType !== 'RIGHT_LIKE') {
62
+ const value = this.form[this.model]
63
+ if (value) {
64
+ // 如果数据源中值含'-',代表是由多个数据源组成的树,需要重新组织新增/编辑时的表单值
65
+ if (this.option.length > 0 && this.option[0].value.indexOf('-') !== -1) {
66
+ this.value = model + '-' + value
67
+ } else {
68
+ this.value = value
69
+ }
70
+ } else {
71
+ this.value = undefined
72
+ }
73
+ }
74
+ this.loaded = true
75
+ },
76
+ // 获取树形选择框数据
77
+ getTreeData () {
78
+ const treeData = this.option
79
+ if (this.mode === '新增/修改') {
80
+ this.setParentSelectable(treeData)
81
+ }
82
+ return treeData
83
+ },
84
+ // 设置树形选择框不能选择父节点
85
+ setParentSelectable (treeData) {
86
+ treeData.forEach(item => {
87
+ if (item.children && item.children.length) {
88
+ item.selectable = false
89
+ this.setParentSelectable(item.children)
90
+ }
91
+ })
92
+ },
93
+ // 选中树节点
94
+ onTreeSelectChange (value, label, extra) {
95
+ if (this.queryType === 'RIGHT_LIKE') {
96
+ // 获取可用于模糊查询的组织机构字符串
97
+ let node = extra.triggerNode.$parent
98
+ label = label[0]
99
+ while (node && node.label) {
100
+ label = node.label + '.' + label
101
+ node = node.$parent
102
+ }
103
+ this.form[this.model] = label
104
+ } else {
105
+ // 如果选中值含'-',代表是由多个数据源组成的树,需要重新组织查询或新增/编辑时的表单
106
+ if ((value instanceof Array && value.length > 0 && value[0].indexOf('-') !== -1) || (typeof value === 'string' && value.indexOf('-') !== -1)) {
107
+ const treeDatas = {}
108
+ // 单选情况用于新增.修改表单场景,使用extra.triggerNode获取选中节点信息
109
+ if (!extra.allCheckedNodes) {
110
+ this.setNodeData(treeDatas, extra.triggerNode)
111
+ } else {
112
+ // 多选情况用于查询表单场景,使用extra.allCheckedNodes获取选中节点集合
113
+ const nodes = extra.allCheckedNodes
114
+ // 获取任意选中节点的叶子节点的字段名,用于查询时组织查询项的key
115
+ const name = this.getNodeDataProps(nodes[0])
116
+ // 获取所有选中节点的叶子节点的value,用于查询时组织查询项的value
117
+ const values = []
118
+ for (const node of nodes) {
119
+ const ref = this.setDataRef(node)
120
+ if (ref instanceof Array) {
121
+ for (const nodeRef of ref) {
122
+ const keyValue = nodeRef.node.key
123
+ values.push(keyValue.substring(keyValue.lastIndexOf('-') + 1))
124
+ }
125
+ } else {
126
+ const keyValue = ref.node.key
127
+ values.push(keyValue.substring(keyValue.lastIndexOf('-') + 1))
128
+ }
129
+ }
130
+ treeDatas[name] = values
131
+ }
132
+ // 移除默认的表单项,将组织好后的表单项合并进表单
133
+ this.form[this.model] = undefined
134
+ Object.assign(this.form, treeDatas)
135
+ } else {
136
+ // 从单一数据源组成的树可以直接赋值
137
+ this.form[this.model] = value
138
+ }
139
+ }
140
+ },
141
+ // 设置选中值
142
+ setValue (value) {
143
+ this.value = value
144
+ },
145
+ setDataRef (node) {
146
+ if (node.children) {
147
+ return this.setDataRef(node.children)
148
+ }
149
+ return node
150
+ },
151
+ /**
152
+ * 组织节点和每层父节点的数据,用于新增/修改时更新表单数据
153
+ * @param data 组织完成的数据
154
+ * @param node 节点
155
+ * @return 返回示例: { parentId: 1, childId: 2 }
156
+ */
157
+ setNodeData (data, node) {
158
+ if (node.value) {
159
+ const value = node.value
160
+ const columnsName = value.substring(0, value.indexOf('-'))
161
+ data[columnsName] = value.substring(value.lastIndexOf('-') + 1)
162
+ if (node.$parent) {
163
+ this.setNodeData(data, node.$parent)
164
+ }
165
+ }
166
+ },
167
+ getNodeDataProps (node) {
168
+ if (node.children && node.children.length > 0) {
169
+ return this.getNodeDataProps(node.children[0])
170
+ }
171
+ const value = node.node.key
172
+ return value.substring(0, value.indexOf('-'))
173
+ }
174
+ }
175
+ }
176
+ </script>
177
+ <style lang="less" scoped>
178
+ .tree-select {
179
+ /deep/ .ant-select-selection.ant-select-selection--multiple {
180
+ max-height: 32px;
181
+ overflow-y: auto;
182
+ }
183
+ }
184
+ </style>
@@ -1,38 +1,38 @@
1
- <template>
2
- <a-col
3
- :xs="flex.xs"
4
- :sm="flex.sm"
5
- :md="flex.md"
6
- :lg="flex.lg"
7
- :xl="flex.xl"
8
- :xxl="flex.xxl" >
9
- <slot></slot>
10
- </a-col>
11
- </template>
12
-
13
- <script>
14
-
15
- export default {
16
- name: 'XFormCol',
17
- props: {
18
- flex: {
19
- type: Object,
20
- default: () => {
21
- return {
22
- xs: 24,
23
- sm: 24,
24
- md: 24,
25
- lg: 12,
26
- xl: 8,
27
- xxl: 6
28
- }
29
- }
30
- }
31
- },
32
- data () {
33
- return {
34
-
35
- }
36
- }
37
- }
38
- </script>
1
+ <template>
2
+ <a-col
3
+ :xs="flex.xs"
4
+ :sm="flex.sm"
5
+ :md="flex.md"
6
+ :lg="flex.lg"
7
+ :xl="flex.xl"
8
+ :xxl="flex.xxl" >
9
+ <slot></slot>
10
+ </a-col>
11
+ </template>
12
+
13
+ <script>
14
+
15
+ export default {
16
+ name: 'XFormCol',
17
+ props: {
18
+ flex: {
19
+ type: Object,
20
+ default: () => {
21
+ return {
22
+ xs: 24,
23
+ sm: 24,
24
+ md: 24,
25
+ lg: 12,
26
+ xl: 8,
27
+ xxl: 6
28
+ }
29
+ }
30
+ }
31
+ },
32
+ data () {
33
+ return {
34
+
35
+ }
36
+ }
37
+ }
38
+ </script>