vue2-client 1.8.239 → 1.8.241

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 (210) hide show
  1. package/.env +19 -19
  2. package/.eslintrc.js +90 -90
  3. package/CHANGELOG.md +824 -824
  4. package/Components.md +60 -60
  5. package/babel.config.js +21 -21
  6. package/docs/index.md +30 -30
  7. package/docs/lowcode.md +188 -188
  8. package/docs/lowcodeForDeveloper.md +192 -192
  9. package/index.js +31 -31
  10. package/jest-transform-stub.js +8 -8
  11. package/jest.config.js +21 -21
  12. package/jest.setup.js +7 -7
  13. package/package.json +98 -98
  14. package/public/index.html +27 -27
  15. package/src/App.vue +188 -188
  16. package/src/ReportView.js +19 -19
  17. package/src/assets/img/querySlotDemo.svg +15 -15
  18. package/src/assets/svg/badtwo.svg +1 -1
  19. package/src/assets/svg/goodtwo.svg +1 -1
  20. package/src/base-client/components/common/AMisRender/index.js +3 -3
  21. package/src/base-client/components/common/AMisRender/index.vue +263 -263
  22. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +408 -408
  23. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  24. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  25. package/src/base-client/components/common/CitySelect/CitySelect.vue +346 -346
  26. package/src/base-client/components/common/CitySelect/index.js +3 -3
  27. package/src/base-client/components/common/CitySelect/index.md +109 -109
  28. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  29. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  30. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  31. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  32. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  33. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  34. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  35. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  36. package/src/base-client/components/common/FormGroupEdit/FormGroupEdit.vue +149 -149
  37. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  38. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  39. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  40. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  41. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  42. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  43. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +355 -386
  44. package/src/base-client/components/common/LowCodePageRender/LowCodePageRender.vue +29 -29
  45. package/src/base-client/components/common/LowCodePageRender/editorPageRender.vue +467 -467
  46. package/src/base-client/components/common/LowCodePageRender/index.js +3 -3
  47. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  48. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  49. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  50. package/src/base-client/components/common/Tree/index.js +2 -2
  51. package/src/base-client/components/common/Upload/Upload.vue +197 -197
  52. package/src/base-client/components/common/Upload/index.js +3 -3
  53. package/src/base-client/components/common/XAddForm/XAddForm.vue +92 -92
  54. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +729 -729
  55. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  56. package/src/base-client/components/common/XAddNativeForm/lowcodeEditorRegister.js +12 -12
  57. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +303 -303
  58. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  59. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  60. package/src/base-client/components/common/XBadge/XBadge.vue +78 -78
  61. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  62. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  63. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  64. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  65. package/src/base-client/components/common/XDescriptions/XDescriptions.vue +167 -167
  66. package/src/base-client/components/common/XDescriptions/XDescriptionsGroup.vue +299 -299
  67. package/src/base-client/components/common/XDescriptions/demo.vue +50 -50
  68. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  69. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  70. package/src/base-client/components/common/XDescriptions/lowcodeEditorRegister.js +1 -3
  71. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +214 -214
  72. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  73. package/src/base-client/components/common/XForm/XForm.vue +256 -256
  74. package/src/base-client/components/common/XForm/XFormItem.vue +766 -761
  75. package/src/base-client/components/common/XForm/XTreeSelect.vue +206 -206
  76. package/src/base-client/components/common/XForm/index.md +178 -178
  77. package/src/base-client/components/common/XFormCol/XFormCol.vue +36 -36
  78. package/src/base-client/components/common/XFormGroup/XFormGroup.vue +242 -242
  79. package/src/base-client/components/common/XFormGroup/demo.vue +40 -40
  80. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  81. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  82. package/src/base-client/components/common/XFormGroupDetails/XFormGroupDetails.vue +72 -72
  83. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  84. package/src/base-client/components/common/XFormTable/XFormTable.vue +519 -519
  85. package/src/base-client/components/common/XFormTable/index.md +98 -98
  86. package/src/base-client/components/common/XFormTable/lowcodeEditorRegister.js +12 -12
  87. package/src/base-client/components/common/XImportExcel/XImportExcel.vue +147 -147
  88. package/src/base-client/components/common/XReport/XReport.vue +837 -837
  89. package/src/base-client/components/common/XReport/XReportDemo.vue +2225 -2225
  90. package/src/base-client/components/common/XReport/XReportDesign.vue +470 -470
  91. package/src/base-client/components/common/XReport/XReportJsonRender.vue +267 -267
  92. package/src/base-client/components/common/XReport/XReportTrGroup.vue +742 -742
  93. package/src/base-client/components/common/XReport/index.js +3 -3
  94. package/src/base-client/components/common/XReport/index.md +44 -44
  95. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  96. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  97. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  98. package/src/base-client/components/common/XStepView/index.js +3 -3
  99. package/src/base-client/components/common/XStepView/index.md +31 -31
  100. package/src/base-client/components/common/XTable/XTable.vue +636 -636
  101. package/src/base-client/components/common/XTable/index.md +255 -255
  102. package/src/base-client/components/common/XTree/XTree.vue +320 -320
  103. package/src/base-client/components/common/XTree/index.js +3 -3
  104. package/src/base-client/components/common/XTree/index.md +36 -36
  105. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +114 -114
  106. package/src/base-client/components/common/XTreeOne/lowcodeEditorRegister.js +9 -9
  107. package/src/base-client/components/index.js +47 -47
  108. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  109. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  110. package/src/base-client/plugins/AppData.js +115 -115
  111. package/src/base-client/plugins/Config.js +19 -19
  112. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  113. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  114. package/src/bootstrap.js +39 -39
  115. package/src/components/CodeMirror/inedx.vue +118 -118
  116. package/src/components/CodeMirror/setting.js +40 -40
  117. package/src/components/FilePreview/FilePreview.vue +166 -166
  118. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  119. package/src/components/STable/index.js +323 -323
  120. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  121. package/src/components/checkbox/ImgCheckbox.vue +163 -163
  122. package/src/components/menu/SideMenu.vue +75 -75
  123. package/src/components/menu/menu.js +273 -273
  124. package/src/components/tool/AStepItem.vue +60 -60
  125. package/src/config/CreateQueryConfig.js +322 -322
  126. package/src/config/default/antd.config.js +89 -89
  127. package/src/config/default/setting.config.js +55 -55
  128. package/src/font-style/font.css +4 -4
  129. package/src/layouts/CommonLayout.vue +56 -56
  130. package/src/layouts/PageLayout.vue +151 -151
  131. package/src/layouts/SinglePageView.vue +138 -138
  132. package/src/layouts/header/AdminHeader.vue +132 -132
  133. package/src/layouts/header/HeaderNotice.vue +177 -177
  134. package/src/layouts/tabs/TabsHead.vue +189 -189
  135. package/src/layouts/tabs/TabsView.vue +387 -387
  136. package/src/lib.js +1 -1
  137. package/src/main.js +26 -26
  138. package/src/mock/extend/index.js +84 -84
  139. package/src/mock/goods/index.js +108 -108
  140. package/src/pages/AMisDemo/AMisDemo.vue +325 -325
  141. package/src/pages/AMisDemo/AMisDemo2.vue +74 -74
  142. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  143. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  144. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  145. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  146. package/src/pages/DynamicStatistics/FavoriteList.vue +51 -51
  147. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  148. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  149. package/src/pages/DynamicStatistics/index.vue +282 -282
  150. package/src/pages/Example/index.vue +32 -32
  151. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  152. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  153. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  154. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  155. package/src/pages/NewDynamicStatistics/FavoriteList.vue +51 -51
  156. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  157. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  158. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  159. package/src/pages/ServiceReview/index.vue +284 -284
  160. package/src/pages/XReportView/index.vue +62 -62
  161. package/src/pages/login/Login.vue +378 -378
  162. package/src/pages/login/LoginV3.vue +389 -389
  163. package/src/pages/lowCode/lowCodeEditor.vue +1285 -1288
  164. package/src/pages/lowCode/lowCodeRender.vue +39 -39
  165. package/src/pages/resourceManage/orgListManage.vue +98 -98
  166. package/src/pages/system/dictionary/index.vue +44 -44
  167. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  168. package/src/pages/system/monitor/operLog/index.vue +37 -37
  169. package/src/pages/system/settings/modifyPassword.vue +117 -117
  170. package/src/pages/system/ticket/index.vue +480 -480
  171. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  172. package/src/router/async/config.async.js +33 -33
  173. package/src/router/async/router.map.js +107 -107
  174. package/src/router/guards.js +220 -220
  175. package/src/router/index.js +27 -27
  176. package/src/router.js +19 -19
  177. package/src/services/api/TicketDetailsViewApi.js +46 -46
  178. package/src/services/api/cas.js +79 -79
  179. package/src/services/api/common.js +284 -284
  180. package/src/services/api/entity.js +18 -18
  181. package/src/services/api/index.js +17 -17
  182. package/src/services/api/restTools.js +46 -46
  183. package/src/services/apiService.js +14 -14
  184. package/src/services/user.js +71 -71
  185. package/src/store/modules/setting.js +119 -119
  186. package/src/theme/default/style.less +57 -57
  187. package/src/theme/global.less +130 -130
  188. package/src/utils/authority-utils.js +85 -85
  189. package/src/utils/errorCode.js +6 -6
  190. package/src/utils/htmlToPDF.js +108 -108
  191. package/src/utils/htmlToPDFApi.js +5 -5
  192. package/src/utils/indexedDB.js +201 -201
  193. package/src/utils/login.js +144 -144
  194. package/src/utils/lowcode/lowcodeComponentMixin.js +78 -78
  195. package/src/utils/lowcode/lowcodeLog.js +29 -29
  196. package/src/utils/lowcode/lowcodeUtils.js +129 -129
  197. package/src/utils/lowcode/registerComponentForEditor.js +11 -11
  198. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  199. package/src/utils/map-utils.js +47 -47
  200. package/src/utils/reg.js +19 -19
  201. package/src/utils/request.js +343 -343
  202. package/src/utils/routerUtil.js +435 -435
  203. package/src/utils/runEvalFunction.js +6 -6
  204. package/src/utils/util.js +231 -231
  205. package/src/utils/waterMark.js +31 -31
  206. package/test/Amis.spec.js +163 -163
  207. package/test/Tree.spec.js +167 -167
  208. package/test/myDialog.spec.js +46 -46
  209. package/vue.config.js +177 -177
  210. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
@@ -1,98 +1,98 @@
1
- # XFormTable
2
-
3
- 动态查询控件,进一步整合了XTable和XForm
4
-
5
-
6
- ## 何时使用
7
-
8
- 当需要一个通用的表单,表格一体化控件时
9
-
10
-
11
- 引用方式:
12
-
13
- ```javascript
14
- import XFormTable from '@vue2-client/base-client/components/XFormTable/XFormTable'
15
-
16
- export default {
17
- components: {
18
- XFormTable
19
- }
20
- }
21
- ```
22
-
23
-
24
-
25
- ## 代码演示
26
-
27
- ```html
28
- <x-form-table
29
- title="业务名称"
30
- :queryParamsName="queryParamsName">
31
- </x-form-table>
32
- ```
33
-
34
- ## API
35
-
36
- | 参数 | 说明 | 类型 | 默认值 |
37
- |--------------------|-------------------------|---------|-------|
38
- | title | 业务名称 | String | '' |
39
- | queryParamsName | 查询配置JSON文件名 | String | null |
40
- | queryParamsJson | 查询配置文件Json,用于查询配置生成器的预览 | Object | null |
41
- | serviceName | 配置所属命名空间 | String | null |
42
- | logicName | 通过logic获取表单表格配置 | String | null |
43
- | logicParam | 执行logic传递的参数 | Object | null |
44
- | fixedQueryForm | 固定查询表单,会和查询表单合并查询 | Object | {} |
45
- | fixedAddForm | 固定新增表单,会和新增表单合并 | Object | {} |
46
- | isExports | 是否显示导出按钮 | Boolean | true |
47
- | viewMode | 是否为预览模式 | Boolean | false |
48
- | getDataParams | 调用logic获取数据源的追加参数 | Object | - |
49
- | @action | 表格详情列的单击事件 | event | - |
50
- | @afterSubmit | 增改提交后的回调方法 | event | - |
51
- | @afterDelete | 删除提交后的回调方法 | event | - |
52
- | @afterSearchSubmit | 查询提交后的回调方法 | event | - |
53
- | @afterQuery | 表格查询后的回调方法 | event | - |
54
- | @selectRow | 选择表格列后的回调方法 | event | - |
55
- ## 例子1
56
- ----
57
- (基础使用)
58
-
59
- ```vue
60
- <template>
61
- <x-form-table
62
- :queryParamsName="queryParamsName"
63
- @action="toDetail">
64
- </x-form-table>
65
- </template>
66
-
67
- <script>
68
- import XFormTable from '@vue2-client/base-client/components/XFormTable/XFormTable'
69
-
70
- export default {
71
- components: {
72
- XFormTable
73
- },
74
- data () {
75
- return {
76
- // 查询配置文件名
77
- queryParamsName: 'logQueryParams'
78
- }
79
- },
80
- methods: {
81
- toDetail (record, id) {
82
- console.debug("您选择了项:"+ id)
83
- }
84
- }
85
- }
86
- </script>
87
- ```
88
-
89
- 注意事项
90
- ----
91
-
92
- > 本组件已经实现了自适应布局,在不同分辨率下的设备均可得到基本理想的展示效果
93
- >
94
- > 本组件已支持临时表的创建,当表名以##(两个井号)开头,则认为在创建临时表。
95
- >
96
- > 临时表会在连接断开时自动销毁
97
- >
98
- > 临时表仅做展示数据用,增,改,删,需要传入对应的自定义事件。自定义处理方式
1
+ # XFormTable
2
+
3
+ 动态查询控件,进一步整合了XTable和XForm
4
+
5
+
6
+ ## 何时使用
7
+
8
+ 当需要一个通用的表单,表格一体化控件时
9
+
10
+
11
+ 引用方式:
12
+
13
+ ```javascript
14
+ import XFormTable from '@vue2-client/base-client/components/XFormTable/XFormTable'
15
+
16
+ export default {
17
+ components: {
18
+ XFormTable
19
+ }
20
+ }
21
+ ```
22
+
23
+
24
+
25
+ ## 代码演示
26
+
27
+ ```html
28
+ <x-form-table
29
+ title="业务名称"
30
+ :queryParamsName="queryParamsName">
31
+ </x-form-table>
32
+ ```
33
+
34
+ ## API
35
+
36
+ | 参数 | 说明 | 类型 | 默认值 |
37
+ |--------------------|-------------------------|---------|-------|
38
+ | title | 业务名称 | String | '' |
39
+ | queryParamsName | 查询配置JSON文件名 | String | null |
40
+ | queryParamsJson | 查询配置文件Json,用于查询配置生成器的预览 | Object | null |
41
+ | serviceName | 配置所属命名空间 | String | null |
42
+ | logicName | 通过logic获取表单表格配置 | String | null |
43
+ | logicParam | 执行logic传递的参数 | Object | null |
44
+ | fixedQueryForm | 固定查询表单,会和查询表单合并查询 | Object | {} |
45
+ | fixedAddForm | 固定新增表单,会和新增表单合并 | Object | {} |
46
+ | isExports | 是否显示导出按钮 | Boolean | true |
47
+ | viewMode | 是否为预览模式 | Boolean | false |
48
+ | getDataParams | 调用logic获取数据源的追加参数 | Object | - |
49
+ | @action | 表格详情列的单击事件 | event | - |
50
+ | @afterSubmit | 增改提交后的回调方法 | event | - |
51
+ | @afterDelete | 删除提交后的回调方法 | event | - |
52
+ | @afterSearchSubmit | 查询提交后的回调方法 | event | - |
53
+ | @afterQuery | 表格查询后的回调方法 | event | - |
54
+ | @selectRow | 选择表格列后的回调方法 | event | - |
55
+ ## 例子1
56
+ ----
57
+ (基础使用)
58
+
59
+ ```vue
60
+ <template>
61
+ <x-form-table
62
+ :queryParamsName="queryParamsName"
63
+ @action="toDetail">
64
+ </x-form-table>
65
+ </template>
66
+
67
+ <script>
68
+ import XFormTable from '@vue2-client/base-client/components/XFormTable/XFormTable'
69
+
70
+ export default {
71
+ components: {
72
+ XFormTable
73
+ },
74
+ data () {
75
+ return {
76
+ // 查询配置文件名
77
+ queryParamsName: 'logQueryParams'
78
+ }
79
+ },
80
+ methods: {
81
+ toDetail (record, id) {
82
+ console.debug("您选择了项:"+ id)
83
+ }
84
+ }
85
+ }
86
+ </script>
87
+ ```
88
+
89
+ 注意事项
90
+ ----
91
+
92
+ > 本组件已经实现了自适应布局,在不同分辨率下的设备均可得到基本理想的展示效果
93
+ >
94
+ > 本组件已支持临时表的创建,当表名以##(两个井号)开头,则认为在创建临时表。
95
+ >
96
+ > 临时表会在连接断开时自动销毁
97
+ >
98
+ > 临时表仅做展示数据用,增,改,删,需要传入对应的自定义事件。自定义处理方式
@@ -1,12 +1,12 @@
1
- export const XFormTableConfig = {
2
- type: 'XFormTable',
3
- properties: {
4
- queryParamsName: {
5
- type: 'string'
6
- },
7
- serviceName: {
8
- type: 'string'
9
- }
10
- },
11
- selfEvent: ['action']
12
- }
1
+ export const XFormTableConfig = {
2
+ type: 'XFormTable',
3
+ properties: {
4
+ queryParamsName: {
5
+ type: 'string'
6
+ },
7
+ serviceName: {
8
+ type: 'string'
9
+ }
10
+ },
11
+ selfEvent: ['action']
12
+ }
@@ -1,147 +1,147 @@
1
- <template>
2
- <a-modal
3
- title="数据导入"
4
- :visible="open"
5
- :zIndex="1001"
6
- :confirm-loading="uploading"
7
- @cancel="importExcelHandleCancel"
8
- >
9
- <a-spin tip="上传中..." :spinning="uploading">
10
- <a-upload-dragger
11
- name="file"
12
- accept=".xlsx, .xls"
13
- :file-list="fileList"
14
- :multiple="false"
15
- :remove="handleRemove"
16
- :before-upload="beforeUpload"
17
- >
18
- <p class="ant-upload-drag-icon">
19
- <a-icon type="inbox" />
20
- </p>
21
- <p class="ant-upload-text">
22
- 请将文件拖拽到此处上传
23
- </p>
24
- <p class="ant-upload-hint">
25
- 支持单个上传,也可以点击后选择文件上传
26
- </p>
27
- </a-upload-dragger>
28
- <a-divider v-if="$slots.importExcelSlot"/>
29
- <a-collapse :bordered="false" v-if="$slots.importExcelSlot">
30
- <a-collapse-panel key="0" header="查看导入说明">
31
- <slot name="importExcelSlot"></slot>
32
- </a-collapse-panel>
33
- </a-collapse>
34
- </a-spin>
35
- <template slot="footer">
36
- <a-row>
37
- <a-button type="link" icon="download" v-if="queryParamsName !== 'none'" @click="importTemplate">
38
- 下载导入模板
39
- </a-button>
40
- <a-button key="back" @click="importExcelHandleCancel">
41
- 取消
42
- </a-button>
43
- <a-button key="submit" type="primary" :loading="uploading" @click="importExcelHandleChange">
44
- 导入
45
- </a-button>
46
- </a-row>
47
- </template>
48
- </a-modal>
49
- </template>
50
-
51
- <script>
52
-
53
- import { importData, downloadImportExcel } from '@vue2-client/services/api/common'
54
-
55
- export default {
56
- name: 'XImportExcel',
57
- props: {
58
- serviceName: {
59
- type: String,
60
- default: undefined
61
- },
62
- queryParamsName: {
63
- type: String,
64
- default: 'none'
65
- },
66
- // 业务名称
67
- title: {
68
- type: String,
69
- default: ''
70
- }
71
- },
72
- components: {
73
- },
74
- data () {
75
- return {
76
- open: false,
77
- uploadStatus: '',
78
- fileList: [],
79
- // 是否禁用上传
80
- uploading: false
81
- }
82
- },
83
- filters: {
84
- },
85
- created () {
86
- },
87
- computed: {
88
- },
89
- watch: {
90
- },
91
- methods: {
92
- /** 导入excel窗体关闭 */
93
- importExcelHandleCancel (e) {
94
- this.open = false
95
- this.fileList = []
96
- // 关闭后刷新列表
97
- this.$emit('ok')
98
- },
99
- /** 下载模板操作 */
100
- importTemplate () {
101
- downloadImportExcel({
102
- queryParamsName: this.queryParamsName
103
- }, this.serviceName).then(res => {
104
- if (!res || !res.value) {
105
- this.$message.warn('导入模板不存在,请检查配置')
106
- return
107
- }
108
- window.open('/res/excel/export/' + res.value)
109
- })
110
- },
111
- /** 导入excel窗体开启 */
112
- importExcelHandleOpen (e) {
113
- this.open = true
114
- },
115
- beforeUpload (file) {
116
- this.fileList = [file]
117
- return false
118
- },
119
- /** 导入excel */
120
- importExcelHandleChange () {
121
- const { fileList } = this
122
- const formData = new FormData()
123
- if (!fileList[0]) {
124
- this.$message.warn('请选择需要上传的文件')
125
- return
126
- }
127
- this.uploading = true
128
- formData.append('file', fileList[0])
129
- formData.append('queryParamsName', this.queryParamsName)
130
- importData(formData).then(res => {
131
- this.fileList = []
132
- this.$message.success(res.msg || res)
133
- this.open = false
134
- this.$emit('ok')
135
- }).catch(e => {
136
- this.$message.error(e)
137
- }).finally(() => {
138
- this.uploading = false
139
- })
140
- },
141
- handleRemove () {
142
- this.fileList = []
143
- this.uploading = false
144
- }
145
- }
146
- }
147
- </script>
1
+ <template>
2
+ <a-modal
3
+ title="数据导入"
4
+ :visible="open"
5
+ :zIndex="1001"
6
+ :confirm-loading="uploading"
7
+ @cancel="importExcelHandleCancel"
8
+ >
9
+ <a-spin tip="上传中..." :spinning="uploading">
10
+ <a-upload-dragger
11
+ name="file"
12
+ accept=".xlsx, .xls"
13
+ :file-list="fileList"
14
+ :multiple="false"
15
+ :remove="handleRemove"
16
+ :before-upload="beforeUpload"
17
+ >
18
+ <p class="ant-upload-drag-icon">
19
+ <a-icon type="inbox" />
20
+ </p>
21
+ <p class="ant-upload-text">
22
+ 请将文件拖拽到此处上传
23
+ </p>
24
+ <p class="ant-upload-hint">
25
+ 支持单个上传,也可以点击后选择文件上传
26
+ </p>
27
+ </a-upload-dragger>
28
+ <a-divider v-if="$slots.importExcelSlot"/>
29
+ <a-collapse :bordered="false" v-if="$slots.importExcelSlot">
30
+ <a-collapse-panel key="0" header="查看导入说明">
31
+ <slot name="importExcelSlot"></slot>
32
+ </a-collapse-panel>
33
+ </a-collapse>
34
+ </a-spin>
35
+ <template slot="footer">
36
+ <a-row>
37
+ <a-button type="link" icon="download" v-if="queryParamsName !== 'none'" @click="importTemplate">
38
+ 下载导入模板
39
+ </a-button>
40
+ <a-button key="back" @click="importExcelHandleCancel">
41
+ 取消
42
+ </a-button>
43
+ <a-button key="submit" type="primary" :loading="uploading" @click="importExcelHandleChange">
44
+ 导入
45
+ </a-button>
46
+ </a-row>
47
+ </template>
48
+ </a-modal>
49
+ </template>
50
+
51
+ <script>
52
+
53
+ import { importData, downloadImportExcel } from '@vue2-client/services/api/common'
54
+
55
+ export default {
56
+ name: 'XImportExcel',
57
+ props: {
58
+ serviceName: {
59
+ type: String,
60
+ default: undefined
61
+ },
62
+ queryParamsName: {
63
+ type: String,
64
+ default: 'none'
65
+ },
66
+ // 业务名称
67
+ title: {
68
+ type: String,
69
+ default: ''
70
+ }
71
+ },
72
+ components: {
73
+ },
74
+ data () {
75
+ return {
76
+ open: false,
77
+ uploadStatus: '',
78
+ fileList: [],
79
+ // 是否禁用上传
80
+ uploading: false
81
+ }
82
+ },
83
+ filters: {
84
+ },
85
+ created () {
86
+ },
87
+ computed: {
88
+ },
89
+ watch: {
90
+ },
91
+ methods: {
92
+ /** 导入excel窗体关闭 */
93
+ importExcelHandleCancel (e) {
94
+ this.open = false
95
+ this.fileList = []
96
+ // 关闭后刷新列表
97
+ this.$emit('ok')
98
+ },
99
+ /** 下载模板操作 */
100
+ importTemplate () {
101
+ downloadImportExcel({
102
+ queryParamsName: this.queryParamsName
103
+ }, this.serviceName).then(res => {
104
+ if (!res || !res.value) {
105
+ this.$message.warn('导入模板不存在,请检查配置')
106
+ return
107
+ }
108
+ window.open('/res/excel/export/' + res.value)
109
+ })
110
+ },
111
+ /** 导入excel窗体开启 */
112
+ importExcelHandleOpen (e) {
113
+ this.open = true
114
+ },
115
+ beforeUpload (file) {
116
+ this.fileList = [file]
117
+ return false
118
+ },
119
+ /** 导入excel */
120
+ importExcelHandleChange () {
121
+ const { fileList } = this
122
+ const formData = new FormData()
123
+ if (!fileList[0]) {
124
+ this.$message.warn('请选择需要上传的文件')
125
+ return
126
+ }
127
+ this.uploading = true
128
+ formData.append('file', fileList[0])
129
+ formData.append('queryParamsName', this.queryParamsName)
130
+ importData(formData).then(res => {
131
+ this.fileList = []
132
+ this.$message.success(res.msg || res)
133
+ this.open = false
134
+ this.$emit('ok')
135
+ }).catch(e => {
136
+ this.$message.error(e)
137
+ }).finally(() => {
138
+ this.uploading = false
139
+ })
140
+ },
141
+ handleRemove () {
142
+ this.fileList = []
143
+ this.uploading = false
144
+ }
145
+ }
146
+ }
147
+ </script>