cloud-web-corejs-haier 1.0.43 → 1.0.44

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 (227) hide show
  1. package/package.json +8 -6
  2. package/src/api/user.js +54 -46
  3. package/src/components/baseAlert/index.vue +57 -53
  4. package/src/components/baseInputExport/index.vue +3 -3
  5. package/src/components/baseTabs/mixins.js +12 -1
  6. package/src/components/errorMsg/index.vue +78 -78
  7. package/src/components/excelExport/button.vue +54 -45
  8. package/src/components/excelExport/exportFieldDialog.vue +3 -3
  9. package/src/components/excelExport/index.js +1 -43
  10. package/src/components/excelExport/index.vue +62 -34
  11. package/src/components/excelExport/mixins.js +74 -87
  12. package/src/components/excelImport/index.js +1 -62
  13. package/src/components/excelImport/mixins.js +1 -774
  14. package/src/components/fileLibrary/index.vue +113 -33
  15. package/src/components/fileLibrary/propertiesDialog.vue +6 -0
  16. package/src/components/hiprint/view/design/index.vue +139 -47
  17. package/src/components/hiprint/view/design/preview.vue +75 -52
  18. package/src/components/hiprint/view/json-view.vue +31 -31
  19. package/src/components/luckysheet/dialog.vue +159 -0
  20. package/src/components/luckysheet/export.js +595 -0
  21. package/src/components/luckysheet/fileUtils.js +147 -0
  22. package/src/components/luckysheet/index.js +69 -0
  23. package/src/components/luckysheet/templateJson.js +12078 -0
  24. package/src/components/luckysheet/view.vue +210 -0
  25. package/src/components/onlineTalk/index.vue +328 -6
  26. package/src/components/onlineTalk/talkUserDialog.vue +280 -0
  27. package/src/components/wf/addTaskUserdialog.vue +5 -5
  28. package/src/components/wf/content.vue +1244 -1169
  29. package/src/components/wf/mixins/setCandidateDialog.js +228 -2
  30. package/src/components/wf/mixins/setCandidateDialog2.js +115 -100
  31. package/src/components/wf/mixins/wfTaskUserRangeDialog.js +67 -1
  32. package/src/components/wf/setCandidateDialog.vue +5 -7
  33. package/src/components/wf/setCandidateDialog2.vue +14 -10
  34. package/src/components/wf/wf.js +527 -411
  35. package/src/components/wf/wfTaskUserRangeDialog.vue +1 -1
  36. package/src/components/wf/wfUtil.js +129 -91
  37. package/src/components/xform/form-designer/designer.js +1994 -9
  38. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +10 -0
  39. package/src/components/xform/form-designer/form-widget/container-widget/detail-pane-widget.vue +3 -2
  40. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +5 -1
  41. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin - /345/211/257/346/234/254.js" +1639 -0
  42. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +1756 -2
  43. package/src/components/xform/form-designer/form-widget/field-widget/baseAttachment-widget.vue +1 -0
  44. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-item-widget.vue +10 -1
  45. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-widget.vue +170 -0
  46. package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +1630 -1
  47. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +153 -40
  48. package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +65 -46
  49. package/src/components/xform/form-designer/form-widget/field-widget/vue-page-widget.vue +231 -0
  50. package/src/components/xform/form-designer/setting-panel/form-setting.vue +7 -4
  51. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/edit-tree-button-group-config-dialog.vue +281 -0
  52. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +659 -221
  53. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-editor.vue +3 -3
  54. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +133 -0
  55. package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue +14 -6
  56. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +1 -1
  57. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +1 -1
  58. package/src/components/xform/form-designer/setting-panel/property-editor/field-vue-page/vue-page-editor.vue +48 -0
  59. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +18 -17
  60. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +26 -26
  61. package/src/components/xform/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +67 -13
  62. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +2 -0
  63. package/src/components/xform/form-designer/setting-panel/property-editor/showViewButton-editor.vue +29 -0
  64. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +8 -6
  65. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +1 -0
  66. package/src/components/xform/form-render/container-item/data-table-mixin.js +20 -17
  67. package/src/components/xform/form-render/container-item/detail-item.vue +72 -48
  68. package/src/components/xform/form-render/container-item/sub-form-item.vue +10 -2
  69. package/src/components/xform/form-render/container-item/table2-item.vue +40 -10
  70. package/src/components/xform/form-render/indexMixin.js +3705 -1
  71. package/src/components/xform/icon-picker/icons.json +284 -0
  72. package/src/components/xform/icon-picker/index.vue +145 -0
  73. package/src/components/xform/lang/zh-CN.js +2 -1
  74. package/src/components/xform/mixins/defaultHandle.js +366 -2
  75. package/src/components/xform/utils/formula-util.js +3 -0
  76. package/src/components/xform/utils/sfc-generator.js +2 -2
  77. package/src/components/xform/utils/smart-vue-i18n/index.js +2 -1
  78. package/src/components/xform/utils/tableColumnHelper.js +54 -10
  79. package/src/components/xform/utils/util.js +1547 -1
  80. package/src/index.js +190 -211
  81. package/src/lang/locale/en/login.js +26 -19
  82. package/src/lang/locale/zh/login.js +25 -19
  83. package/src/layout/components/Sidebar/default.vue +252 -71
  84. package/src/layout/components/Sidebar/index.vue +6 -1
  85. package/src/layout/components/TagsView/index.vue +6 -0
  86. package/src/layout/components/langTool.vue +32 -29
  87. package/src/layout/defaultLayout.vue +16 -8
  88. package/src/layout/index.vue +5 -3
  89. package/src/permission.js +135 -1
  90. package/src/router/index.js +1 -4
  91. package/src/store/config/index.js +667 -1
  92. package/src/store/getters.js +2 -1
  93. package/src/store/modules/permission.js +332 -1
  94. package/src/store/modules/settings.js +26 -1
  95. package/src/store/modules/tagsView.js +190 -1
  96. package/src/store/modules/user.js +358 -1
  97. package/src/utils/aes.js +15 -1
  98. package/src/utils/auth.js +27 -1
  99. package/src/utils/componentDialog.js +217 -0
  100. package/src/utils/request.js +368 -1
  101. package/src/utils/vab.js +1256 -7
  102. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  103. package/src/views/bd/setting/bd_company_env/edit.vue +193 -193
  104. package/src/views/bd/setting/formVersion/button.vue +55 -0
  105. package/src/views/bd/setting/formVersion/compareBasicSection.vue +125 -0
  106. package/src/views/bd/setting/formVersion/compareCodeSection.vue +539 -0
  107. package/src/views/bd/setting/formVersion/compareContMixin.scss +65 -0
  108. package/src/views/bd/setting/formVersion/compareContent.vue +63 -0
  109. package/src/views/bd/setting/formVersion/compareDialog.vue +88 -0
  110. package/src/views/bd/setting/formVersion/compareMixin.js +93 -0
  111. package/src/views/bd/setting/formVersion/fieldCompare.vue +54 -0
  112. package/src/views/bd/setting/formVersion/formScriptCompareView.vue +94 -0
  113. package/src/views/bd/setting/formVersion/formTemplateCompareView.vue +74 -0
  114. package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +491 -0
  115. package/src/views/bd/setting/formVersion/link.vue +58 -0
  116. package/src/views/bd/setting/formVersion/preformDialog.vue +87 -0
  117. package/src/views/bd/setting/formVersion/reverButton.vue +82 -0
  118. package/src/views/bd/setting/formVersion/tableDetailDiff.js +99 -0
  119. package/src/views/bd/setting/formVersion/tableModelCompareView.vue +514 -0
  120. package/src/views/bd/setting/formVersion/textDiff.js +102 -0
  121. package/src/views/bd/setting/form_import_log/edit.vue +6 -3
  122. package/src/views/bd/setting/form_import_log/list.vue +5 -0
  123. package/src/views/bd/setting/form_script/edit.vue +196 -83
  124. package/src/views/bd/setting/form_script/edit1.vue +410 -220
  125. package/src/views/bd/setting/form_script/form_list.vue +19 -0
  126. package/src/views/bd/setting/form_script/list.vue +95 -21
  127. package/src/views/bd/setting/form_script/list1.vue +24 -0
  128. package/src/views/bd/setting/form_script/mixins/dialog.js +2 -2
  129. package/src/views/bd/setting/form_script/mixins/edit.js +265 -207
  130. package/src/views/bd/setting/form_script/mixins/edit1.js +259 -201
  131. package/src/views/bd/setting/form_script/mixins/form_list.js +322 -296
  132. package/src/views/bd/setting/form_script/mixins/list.js +163 -95
  133. package/src/views/bd/setting/form_script/mixins/list1.js +244 -155
  134. package/src/views/bd/setting/form_script/mixins/otherAuthDialog.js +1 -1
  135. package/src/views/bd/setting/form_template/batchWfObjConfigDialog.vue +1 -1
  136. package/src/views/bd/setting/form_template/edit.vue +355 -205
  137. package/src/views/bd/setting/form_template/formDesignerDialog.vue +171 -0
  138. package/src/views/bd/setting/form_template/list.vue +49 -74
  139. package/src/views/bd/setting/form_template/mixins/batchWfObjConfigDialog.js +3 -3
  140. package/src/views/bd/setting/form_template/mixins/edit.js +51 -8
  141. package/src/views/bd/setting/form_template/mixins/itemList.js +1 -1
  142. package/src/views/bd/setting/form_template/mixins/list.js +114 -82
  143. package/src/views/bd/setting/form_template/mixins/list2.js +3 -3
  144. package/src/views/bd/setting/form_template/mixins/otherAuthDialog.js +1 -1
  145. package/src/views/bd/setting/form_template/mixins/wf_list.js +3 -7
  146. package/src/views/bd/setting/form_template/wfObjConfigDialog.vue +254 -254
  147. package/src/views/bd/setting/form_template/wf_list.vue +161 -127
  148. package/src/views/bd/setting/request_async_setting/edit.vue +320 -320
  149. package/src/views/bd/setting/request_setting/edit.vue +300 -300
  150. package/src/views/bd/setting/request_setting/list.vue +15 -25
  151. package/src/views/bd/setting/table_model/edit.vue +702 -498
  152. package/src/views/bd/setting/table_model/list.vue +28 -0
  153. package/src/views/bd/setting/table_model/mixins/dialog.js +1 -1
  154. package/src/views/bd/setting/table_model/mixins/edit copy.js +903 -0
  155. package/src/views/bd/setting/table_model/mixins/edit.js +228 -121
  156. package/src/views/bd/setting/table_model/mixins/list.js +55 -20
  157. package/src/views/bd/setting/table_model/mixins/otherAuthDialog.js +1 -1
  158. package/src/views/bd/setting/table_model/mixins/zdDialog.js +50 -46
  159. package/src/views/bd/setting/utils/index.js +15 -0
  160. package/src/views/user/api_request/list.vue +203 -203
  161. package/src/views/user/bill_setting/list.vue +345 -345
  162. package/src/views/user/code_rules/list.vue +204 -204
  163. package/src/views/user/common_attribute/list.vue +378 -378
  164. package/src/views/user/common_script/list.vue +341 -341
  165. package/src/views/user/company_info/dialog.vue +80 -49
  166. package/src/views/user/country/list.vue +197 -197
  167. package/src/views/user/extend_datasource/dialog.vue +0 -3
  168. package/src/views/user/extend_datasource/edit.vue +1 -2
  169. package/src/views/user/extend_datasource/list.vue +221 -224
  170. package/src/views/user/fieldTranslation/editDialog.vue +1 -1
  171. package/src/views/user/fieldTranslation/list.vue +473 -473
  172. package/src/views/user/field_values_invisible/list.vue +207 -207
  173. package/src/views/user/file_type/list.vue +271 -271
  174. package/src/views/user/file_view_area/list.vue +331 -331
  175. package/src/views/user/form/vform/designer.vue +303 -287
  176. package/src/views/user/form/vform/formFieldMapping.js +2 -3
  177. package/src/views/user/form/view/edit.vue +19 -1
  178. package/src/views/user/form/view/list.vue +59 -17
  179. package/src/views/user/groups/list.vue +158 -158
  180. package/src/views/user/home/default.vue +274 -182
  181. package/src/views/user/home/default2.vue +1148 -0
  182. package/src/views/user/home/index.vue +2 -1
  183. package/src/views/user/lang_tag/list.vue +170 -170
  184. package/src/views/user/language_setting/list.vue +208 -208
  185. package/src/views/user/ledger_library/list.vue +12 -10
  186. package/src/views/user/login/default.vue +1 -1
  187. package/src/views/user/login/indexMixin.js +204 -169
  188. package/src/views/user/menu/list.vue +575 -575
  189. package/src/views/user/notify_message/dialog.vue +7 -1
  190. package/src/views/user/notify_template/list.vue +192 -192
  191. package/src/views/user/notify_template/list2.vue +190 -190
  192. package/src/views/user/position/list.vue +188 -188
  193. package/src/views/user/project_tag/list.vue +175 -175
  194. package/src/views/user/push_setting/list.vue +236 -236
  195. package/src/views/user/request_setting/list.vue +248 -248
  196. package/src/views/user/role/list.vue +182 -182
  197. package/src/views/user/system_notice/infoDialog.vue +61 -2
  198. package/src/views/user/system_notice/list.vue +203 -203
  199. package/src/views/user/system_parameter/list.vue +141 -141
  200. package/src/views/user/user/edit.vue +45 -0
  201. package/src/views/user/user/form_list.vue +245 -245
  202. package/src/views/user/user/info.vue +253 -140
  203. package/src/views/user/user_log_classify/list.vue +197 -197
  204. package/src/views/user/wf/iframe/index.vue +46 -46
  205. package/src/views/user/wf/wfReport/index.vue +1 -1
  206. package/src/views/user/wf/wf_auto_submit_data/list.vue +659 -659
  207. package/src/views/user/wf/wf_diy_attribute/edit.vue +1 -1
  208. package/src/views/user/wf/wf_manage/list.vue +795 -795
  209. package/src/views/user/wf/wf_manage/wfContentDialog.vue +106 -106
  210. package/src/views/user/wf/wf_obj_config/dialog.vue +2 -2
  211. package/src/views/user/wf/wf_obj_config/edit.vue +1 -1
  212. package/src/views/user/wf/wf_obj_config/edit_form.vue +2 -2
  213. package/src/views/user/wf/wf_obj_config/itemEdit.vue +1 -1
  214. package/src/views/user/wf/wf_obj_config/itemEdit_form.vue +1 -1
  215. package/src/views/user/wf/wf_obj_config/itemOperateDialog.vue +4 -4
  216. package/src/views/user/wf/wf_obj_config/list.vue +28 -28
  217. package/src/views/user/wf/wf_obj_config/list_form.vue +5 -5
  218. package/src/views/user/wf/wf_obj_config/wfBizDataSettingDialog.vue +292 -292
  219. package/src/views/user/wf/wf_param/edit.vue +1 -1
  220. package/src/views/user/wf/wf_transfer_setting/edit.vue +1 -1
  221. package/src/views/user/wf/wf_transfer_setting/list.vue +321 -319
  222. package/src/views/user/wf/wf_work_calendar/components/calendar.vue +369 -367
  223. package/src/views/user/wf/wf_work_calendar/components/calendar2.vue +401 -399
  224. package/src/views/user/wf/wf_work_calendar/configDialog.vue +6 -6
  225. package/src/views/user/wf/wf_work_calendar/date.js +84 -83
  226. package/src/views/user/wf/wf_work_calendar/list.vue +6 -6
  227. package/src/views/user/workbench_menu/list.vue +555 -0
@@ -1,341 +1,341 @@
1
- <template>
2
- <div id="containt">
3
- <el-tabs v-model="activeName" class="tab-box">
4
- <el-tab-pane :label="$t1('常规')" name="first">
5
- <editView v-if="showEdit" visible-key="showEdit" :_dataId.sync="dataId" :parent-target="_self"
6
- @reload="$reloadHandle"></editView>
7
- </el-tab-pane>
8
- <el-tab-pane :label="$t1('列表')" name="second">
9
- <div class="tree-box fl">
10
- <div class="tit"><b>{{ $t1('数据类型') }}</b></div>
11
- <div class="tree-btns" style="margin-top: 10px;">
12
- <el-button type="primary" plain icon="el-icon-circle-plus-outline" class="btn"
13
- @click="addDataType()">{{ $t1('新增') }}
14
- </el-button>
15
- <el-button type="primary" plain icon="el-icon-edit-outline" class="btn" @click="editDataType()"
16
- :disabled="!currentDataType || !currentDataType.dataTypeCode">{{ $t1('编辑') }}
17
- </el-button>
18
- <el-button type="primary" plain icon="el-icon-delete" class="btn" @click="deleteDataType()"
19
- :disabled="!currentDataType || !currentDataType.dataTypeCode">{{ $t1('删除') }}
20
- </el-button>
21
- </div>
22
- <el-tree
23
- :props="defaultProps"
24
- :load="loadNode"
25
- node-key="id"
26
- ref="tree"
27
- highlight-current
28
- lazy
29
- :expand-on-click-node="false"
30
- @node-click="handleNodeClick"
31
- class="tree-list"
32
- icon-class="el-icon-arrow-down"
33
- ></el-tree>
34
- </div>
35
- <label id="labBtn">
36
- <div class="icon">
37
- <i class="el-icon-more"></i>
38
- <i class="el-icon-more"></i>
39
- </div>
40
- </label>
41
- <div class="main-right fr" style="padding-left:6px;">
42
- <div class="grid-height">
43
- <vxe-grid ref="table-m1" v-bind="vxeOption" @resizable-change="$vxeTableUtil.onColumnWitchChange"
44
- @custom="$vxeTableUtil.customHandle">
45
- <template #form>
46
- <div class="clearfix screen-btns">
47
- <div class="fl">
48
- <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openEditDialog">
49
- {{ $t1('新增') }}
50
- </vxe-button>
51
- <base-table-export :option="{ title: $t1('通用执行脚本导出'), targetRef: 'table-m1'}"
52
- :parent-target="_self"/>
53
- </div>
54
- <div class="fr">
55
- <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
56
- plain>{{ $t1('重置') }}
57
- </vxe-button>
58
- <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">
59
- {{ $t1('搜索') }}
60
- </vxe-button>
61
- </div>
62
- </div>
63
- <vxe-form ref="form" class="screen-box" title-width="92px" title-align="right" :data="formData"
64
- @submit="searchEvent" @reset="searchEvent">
65
- <vxe-form-item :title="$t1('数据类型')+':'" field="dataTypeName">
66
- <template v-slot>
67
- <el-input v-model="currentDataType.dataTypeName" size="small" disabled/>
68
- </template>
69
- </vxe-form-item>
70
- <vxe-form-item :title="$t1('脚本编号')+':'" field="scriptCode">
71
- <template v-slot>
72
- <el-input v-model="formData.scriptCode" size="small" clearable/>
73
- </template>
74
- </vxe-form-item>
75
- <vxe-form-item :title="$t1('脚本说明')+':'" field="scriptDesc">
76
- <template v-slot>
77
- <el-input v-model="formData.scriptDesc" size="small" clearable/>
78
- </template>
79
- </vxe-form-item>
80
- <vxe-form-item :title="$t1('脚本')+':'" field="script">
81
- <template v-slot>
82
- <el-input v-model="formData.script" size="small" clearable/>
83
- </template>
84
- </vxe-form-item>
85
- <vxe-form-item :title="$t1('是否启用')+':'" field="enabled">
86
- <template v-slot>
87
- <el-select v-model="formData.enabled" clearable>
88
- <el-option :value="true" :label="$t1('启用')"></el-option>
89
- <el-option :value="false" :label="$t1('禁用')"></el-option>
90
- </el-select>
91
- </template>
92
- </vxe-form-item>
93
- </vxe-form>
94
- </template>
95
- </vxe-grid>
96
- </div>
97
- </div>
98
- </el-tab-pane>
99
- </el-tabs>
100
- <dataTypeEditDialog v-if="showDataTypeEditDialog" :visiable.sync="showDataTypeEditDialog"
101
- :_dataId.sync="editDataTypeId" :dataTypeGroup="dataTypeGroup"
102
- @confirm="confirmDataTypeEditDialog"></dataTypeEditDialog>
103
- </div>
104
- </template>
105
-
106
- <script>
107
- import editView from './edit.vue';
108
- import dataTypeEditDialog from "../../../views/user/data_type_setting/editDialog";
109
- import {treeScollx} from '@base/utils/global.js';
110
-
111
- export default {
112
- name: 'common_script:list',
113
- components: {editView, dataTypeEditDialog},
114
- data() {
115
- return {
116
- activeName: 'second',
117
- dataId: 0,
118
- showEdit: false,
119
- vxeOption: {},
120
- formData: {},
121
-
122
- defaultProps: {
123
- label: 'dataTypeName', //这里是树结构中需显示的数据(即接口返回的需展示在页面上的参数)
124
- children: [],
125
- isLeaf: 'leaf'
126
- },
127
- showDataTypeEditDialog: false,
128
- currentDataType: {},
129
- dataTypeGroup: "commonScript"
130
- };
131
- },
132
- mounted() {
133
- treeScollx({target: this, type: 'default'});
134
- this.initTableList();
135
- },
136
- methods: {
137
- searchEvent() {
138
- this.$refs['table-m1'].commitProxy('reload');
139
- },
140
- resetEvent() {
141
- this.formData = {};
142
- this.$refs['table-m1'].commitProxy('reload');
143
- },
144
- openEditDialog(id) {
145
- this.dataId = !id || typeof id == 'object' ? 0 : id;
146
- this.activeName = 'first';
147
- this.$openEditView('showEdit');
148
- },
149
- initTableList() {
150
- let that = this;
151
- let pushTypeMap = {0: this.$t1('异步推送'), 1: this.$t1('同步调用')};
152
- let tableOption = {
153
- vue: this,
154
- tableRef: 'table-m1',
155
- tableName: 'user_commonScript_list-m1',
156
- path: USER_PREFIX + '/common_script/listPage',
157
- param: () => {
158
- return {
159
- ...this.formData,
160
- dataTypeCode: this.currentDataType.dataTypeCode
161
- };
162
- },
163
- columns: [
164
- {type: 'checkbox', width: 48, resizable: false, fixed: 'left'},
165
- {
166
- title: this.$t1('脚本编号'),
167
- field: 'scriptCode',
168
- width: 150,
169
- fixed: 'left'
170
- },
171
- {
172
- title: this.$t1('脚本说明'),
173
- field: 'scriptDesc',
174
- width: 150
175
- },
176
- {
177
- title: this.$t1('执行组织编码'),
178
- field: 'exeCompanyCode',
179
- width: 150
180
- },
181
- {
182
- field: 'enabled',
183
- title: this.$t1('是否启用'),
184
- width: 150,
185
- slots: {
186
- default: ({row}) => {
187
- if (row.enabled) {
188
- return [
189
- <div class="txt-status">
190
- <span>{this.$t1('启用')}</span>
191
- </div>
192
- ];
193
- } else {
194
- return [
195
- <div class="txt-status disable">
196
- <span>{this.$t1('禁用')}</span>
197
- </div>
198
- ];
199
- }
200
- }
201
- }
202
- },
203
- {
204
- field: 'allCompany',
205
- title: this.$t1('全部组织使用'),
206
- width: 150,
207
- slots: {
208
- default: ({row}) => {
209
- if (row.allCompany) {
210
- return [
211
- <div class="txt-status">
212
- <span>{this.$t1('是')}</span>
213
- </div>
214
- ];
215
- } else {
216
- return [
217
- <div class="txt-status disable">
218
- <span>{this.$t1('否')}</span>
219
- </div>
220
- ];
221
- }
222
- }
223
- }
224
- },
225
- {
226
- field: 'createDate',
227
- title: this.$t1('创建时间'),
228
- width: 150
229
- },
230
- {title: this.$t1('更新时间'), field: 'modifyDate', width: 150},
231
- {
232
- width: 47,
233
- fixed: 'right',
234
- title: '',
235
- sortable: false,
236
- slots: {
237
- default: ({row}) => {
238
- return [
239
- <div>
240
- <a
241
- href="javascript:void(0);"
242
- class="a-link"
243
- onclick={() => {
244
- this.openEditDialog(row.id);
245
- }}
246
- >
247
- <el-tooltip enterable={false} effect="dark" content={this.$t1('查看')} placement="top"
248
- popper-class="tooltip-skin">
249
- <i class="el-icon-edit"/>
250
- </el-tooltip>
251
- </a>
252
- </div>
253
- ];
254
- }
255
- }
256
- }
257
- ]
258
- };
259
- this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
260
- this.vxeOption = opts;
261
- });
262
- },
263
- handleNodeClick(data, node, v) {
264
- this.currentDataType = data;
265
- this.$forceUpdate();
266
- this.searchEvent();
267
- },
268
- // 异步树叶子节点懒加载逻辑
269
- loadNode(node, resolve) {
270
- let url = USER_PREFIX + '/data_type_setting/listPage';
271
- this.$http({
272
- url: url,
273
- method: 'post',
274
- data: {
275
- dataTypeGroup: this.dataTypeGroup
276
- },
277
- success: res => {
278
- let rows = [{id: -1, dataTypeCode: null, dataTypeName: this.$t1('全部'), leaf: true}]
279
- let records = res.objx && res.objx.records ? res.objx.records : [];
280
- records.forEach(value => {
281
- value.leaf = true;
282
- });
283
- rows.push(...records)
284
- resolve(rows);
285
- this.$nextTick(() => {
286
- let data = node.childNodes[0].data;
287
- this.$refs.tree.setCurrentKey(data);
288
- this.currentDataType = data;
289
- })
290
- }
291
- });
292
- },
293
- addDataType() {
294
- this.editDataTypeId = null;
295
- this.showDataTypeEditDialog = true;
296
- },
297
- editDataType() {
298
- let row = this.currentDataType;
299
- this.editDataTypeId = row.id;
300
- this.showDataTypeEditDialog = true;
301
- },
302
- confirmDataTypeEditDialog(row) {
303
- row.leaf = true;
304
- let editDataTypeId = this.editDataTypeId;
305
- if (!editDataTypeId) {
306
- this.$refs.tree.append(row);
307
- } else {
308
- let node = this.$refs.tree.getNode(row.id + "");
309
- node.data = row;
310
- }
311
- },
312
- deleteDataType() {
313
- let row = this.currentDataType;
314
-
315
- this.$baseConfirm(this.$t1('您确定要删除数据类型[{dataTypeName}]吗?', {dataTypeName: row.dataTypeName})).then(() => {
316
- var url = USER_PREFIX + `/data_type_setting/setDisabled`;
317
- this.$http({
318
- url: url,
319
- method: `post`,
320
- data: {id: row.id},
321
- isLoading: true,
322
- success: res => {
323
- this.$message({
324
- message: res.content,
325
- type: 'success',
326
- duration: 2000
327
- });
328
- this.$refs.tree.remove(row);
329
-
330
- let node = this.$refs.tree.getNode("-1");
331
- let data = node.data;
332
- this.$refs.tree.setCurrentKey(data);
333
- this.currentDataType = data;
334
- this.searchEvent();
335
- }
336
- });
337
- });
338
- }
339
- }
340
- };
341
- </script>
1
+ <template>
2
+ <div id="containt">
3
+ <el-tabs v-model="activeName" class="tab-box">
4
+ <el-tab-pane :label="$t1('常规')" name="first">
5
+ <editView v-if="showEdit" visible-key="showEdit" :_dataId.sync="dataId" :parent-target="_self"
6
+ @reload="$reloadHandle"></editView>
7
+ </el-tab-pane>
8
+ <el-tab-pane :label="$t1('列表')" name="second">
9
+ <div class="tree-box fl">
10
+ <div class="tit"><b>{{ $t1('数据类型') }}</b></div>
11
+ <div class="tree-btns" style="margin-top: 10px;">
12
+ <el-button type="primary" plain icon="el-icon-circle-plus-outline" class="btn"
13
+ @click="addDataType()">{{ $t1('新增') }}
14
+ </el-button>
15
+ <el-button type="primary" plain icon="el-icon-edit-outline" class="btn" @click="editDataType()"
16
+ :disabled="!currentDataType || !currentDataType.dataTypeCode">{{ $t1('编辑') }}
17
+ </el-button>
18
+ <el-button type="primary" plain icon="el-icon-delete" class="btn" @click="deleteDataType()"
19
+ :disabled="!currentDataType || !currentDataType.dataTypeCode">{{ $t1('删除') }}
20
+ </el-button>
21
+ </div>
22
+ <el-tree
23
+ :props="defaultProps"
24
+ :load="loadNode"
25
+ node-key="id"
26
+ ref="tree"
27
+ highlight-current
28
+ lazy
29
+ :expand-on-click-node="false"
30
+ @node-click="handleNodeClick"
31
+ class="tree-list"
32
+ icon-class="el-icon-arrow-down"
33
+ ></el-tree>
34
+ </div>
35
+ <label id="labBtn">
36
+ <div class="icon">
37
+ <i class="el-icon-more"></i>
38
+ <i class="el-icon-more"></i>
39
+ </div>
40
+ </label>
41
+ <div class="main-right fr" style="padding-left:6px;">
42
+ <div class="grid-height">
43
+ <vxe-grid ref="table-m1" v-bind="vxeOption" @resizable-change="$vxeTableUtil.onColumnWitchChange"
44
+ @custom="$vxeTableUtil.customHandle">
45
+ <template #form>
46
+ <div class="clearfix screen-btns">
47
+ <div class="fl">
48
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openEditDialog">
49
+ {{ $t1('新增') }}
50
+ </vxe-button>
51
+ <base-table-export :option="{ title: $t1('通用执行脚本导出'), targetRef: 'table-m1'}"
52
+ :parent-target="_self"/>
53
+ </div>
54
+ <div class="fr">
55
+ <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
56
+ plain>{{ $t1('重置') }}
57
+ </vxe-button>
58
+ <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">
59
+ {{ $t1('搜索') }}
60
+ </vxe-button>
61
+ </div>
62
+ </div>
63
+ <vxe-form ref="form" class="screen-box" title-width="92px" title-align="right" :data="formData"
64
+ @submit="searchEvent" @reset="searchEvent">
65
+ <vxe-form-item :title="$t1('数据类型')+':'" field="dataTypeName">
66
+ <template v-slot>
67
+ <el-input v-model="currentDataType.dataTypeName" size="small" disabled/>
68
+ </template>
69
+ </vxe-form-item>
70
+ <vxe-form-item :title="$t1('脚本编号')+':'" field="scriptCode">
71
+ <template v-slot>
72
+ <el-input v-model="formData.scriptCode" size="small" clearable/>
73
+ </template>
74
+ </vxe-form-item>
75
+ <vxe-form-item :title="$t1('脚本说明')+':'" field="scriptDesc">
76
+ <template v-slot>
77
+ <el-input v-model="formData.scriptDesc" size="small" clearable/>
78
+ </template>
79
+ </vxe-form-item>
80
+ <vxe-form-item :title="$t1('脚本')+':'" field="script">
81
+ <template v-slot>
82
+ <el-input v-model="formData.script" size="small" clearable/>
83
+ </template>
84
+ </vxe-form-item>
85
+ <vxe-form-item :title="$t1('是否启用')+':'" field="enabled">
86
+ <template v-slot>
87
+ <el-select v-model="formData.enabled" clearable>
88
+ <el-option :value="true" :label="$t1('启用')"></el-option>
89
+ <el-option :value="false" :label="$t1('禁用')"></el-option>
90
+ </el-select>
91
+ </template>
92
+ </vxe-form-item>
93
+ </vxe-form>
94
+ </template>
95
+ </vxe-grid>
96
+ </div>
97
+ </div>
98
+ </el-tab-pane>
99
+ </el-tabs>
100
+ <dataTypeEditDialog v-if="showDataTypeEditDialog" :visiable.sync="showDataTypeEditDialog"
101
+ :_dataId.sync="editDataTypeId" :dataTypeGroup="dataTypeGroup"
102
+ @confirm="confirmDataTypeEditDialog"></dataTypeEditDialog>
103
+ </div>
104
+ </template>
105
+
106
+ <script>
107
+ import editView from './edit.vue';
108
+ import dataTypeEditDialog from "../../../views/user/data_type_setting/editDialog";
109
+ import {treeScollx} from '@base/utils/global.js';
110
+
111
+ export default {
112
+ name: 'common_script:list',
113
+ components: {editView, dataTypeEditDialog},
114
+ data() {
115
+ return {
116
+ activeName: 'second',
117
+ dataId: 0,
118
+ showEdit: false,
119
+ vxeOption: {},
120
+ formData: {},
121
+
122
+ defaultProps: {
123
+ label: 'dataTypeName', //这里是树结构中需显示的数据(即接口返回的需展示在页面上的参数)
124
+ children: [],
125
+ isLeaf: 'leaf'
126
+ },
127
+ showDataTypeEditDialog: false,
128
+ currentDataType: {},
129
+ dataTypeGroup: "commonScript"
130
+ };
131
+ },
132
+ mounted() {
133
+ treeScollx({target: this, type: 'default'});
134
+ this.initTableList();
135
+ },
136
+ methods: {
137
+ searchEvent() {
138
+ this.$refs['table-m1'].commitProxy('reload');
139
+ },
140
+ resetEvent() {
141
+ this.formData = {};
142
+ this.$refs['table-m1'].commitProxy('reload');
143
+ },
144
+ openEditDialog(id) {
145
+ this.dataId = !id || typeof id == 'object' ? 0 : id;
146
+ this.activeName = 'first';
147
+ this.$openEditView('showEdit');
148
+ },
149
+ initTableList() {
150
+ let that = this;
151
+ let pushTypeMap = {0: this.$t1('异步推送'), 1: this.$t1('同步调用')};
152
+ let tableOption = {
153
+ vue: this,
154
+ tableRef: 'table-m1',
155
+ tableName: 'user_commonScript_list-m1',
156
+ path: USER_PREFIX + '/common_script/listPage',
157
+ param: () => {
158
+ return {
159
+ ...this.formData,
160
+ dataTypeCode: this.currentDataType.dataTypeCode
161
+ };
162
+ },
163
+ columns: [
164
+ {type: 'checkbox', width: 48, resizable: false, fixed: 'left'},
165
+ {
166
+ title: this.$t1('脚本编号'),
167
+ field: 'scriptCode',
168
+ width: 150,
169
+ fixed: 'left'
170
+ },
171
+ {
172
+ title: this.$t1('脚本说明'),
173
+ field: 'scriptDesc',
174
+ width: 150
175
+ },
176
+ {
177
+ title: this.$t1('执行组织编码'),
178
+ field: 'exeCompanyCode',
179
+ width: 150
180
+ },
181
+ {
182
+ field: 'enabled',
183
+ title: this.$t1('是否启用'),
184
+ width: 150,
185
+ slots: {
186
+ default: ({row}) => {
187
+ if (row.enabled) {
188
+ return [
189
+ <div class="txt-status">
190
+ <span>{this.$t1('启用')}</span>
191
+ </div>
192
+ ];
193
+ } else {
194
+ return [
195
+ <div class="txt-status disable">
196
+ <span>{this.$t1('禁用')}</span>
197
+ </div>
198
+ ];
199
+ }
200
+ }
201
+ }
202
+ },
203
+ {
204
+ field: 'allCompany',
205
+ title: this.$t1('全部组织使用'),
206
+ width: 150,
207
+ slots: {
208
+ default: ({row}) => {
209
+ if (row.allCompany) {
210
+ return [
211
+ <div class="txt-status">
212
+ <span>{this.$t1('是')}</span>
213
+ </div>
214
+ ];
215
+ } else {
216
+ return [
217
+ <div class="txt-status disable">
218
+ <span>{this.$t1('否')}</span>
219
+ </div>
220
+ ];
221
+ }
222
+ }
223
+ }
224
+ },
225
+ {
226
+ field: 'createDate',
227
+ title: this.$t1('创建时间'),
228
+ width: 150
229
+ },
230
+ {title: this.$t1('更新时间'), field: 'modifyDate', width: 150},
231
+ {
232
+ width: 47,
233
+ fixed: 'right',
234
+ title: '',
235
+ sortable: false,
236
+ slots: {
237
+ default: ({row}) => {
238
+ return [
239
+ <div>
240
+ <a
241
+ href="javascript:void(0);"
242
+ class="a-link"
243
+ onclick={() => {
244
+ this.openEditDialog(row.id);
245
+ }}
246
+ >
247
+ <el-tooltip enterable={false} effect="dark" content={this.$t1('查看')} placement="top"
248
+ popper-class="tooltip-skin">
249
+ <i class="el-icon-edit"/>
250
+ </el-tooltip>
251
+ </a>
252
+ </div>
253
+ ];
254
+ }
255
+ }
256
+ }
257
+ ]
258
+ };
259
+ this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
260
+ this.vxeOption = opts;
261
+ });
262
+ },
263
+ handleNodeClick(data, node, v) {
264
+ this.currentDataType = data;
265
+ this.$forceUpdate();
266
+ this.searchEvent();
267
+ },
268
+ // 异步树叶子节点懒加载逻辑
269
+ loadNode(node, resolve) {
270
+ let url = USER_PREFIX + '/data_type_setting/listPage';
271
+ this.$http({
272
+ url: url,
273
+ method: 'post',
274
+ data: {
275
+ dataTypeGroup: this.dataTypeGroup
276
+ },
277
+ success: res => {
278
+ let rows = [{id: -1, dataTypeCode: null, dataTypeName: this.$t1('全部'), leaf: true}]
279
+ let records = res.objx && res.objx.records ? res.objx.records : [];
280
+ records.forEach(value => {
281
+ value.leaf = true;
282
+ });
283
+ rows.push(...records)
284
+ resolve(rows);
285
+ this.$nextTick(() => {
286
+ let data = node.childNodes[0].data;
287
+ this.$refs.tree.setCurrentKey(data);
288
+ this.currentDataType = data;
289
+ })
290
+ }
291
+ });
292
+ },
293
+ addDataType() {
294
+ this.editDataTypeId = null;
295
+ this.showDataTypeEditDialog = true;
296
+ },
297
+ editDataType() {
298
+ let row = this.currentDataType;
299
+ this.editDataTypeId = row.id;
300
+ this.showDataTypeEditDialog = true;
301
+ },
302
+ confirmDataTypeEditDialog(row) {
303
+ row.leaf = true;
304
+ let editDataTypeId = this.editDataTypeId;
305
+ if (!editDataTypeId) {
306
+ this.$refs.tree.append(row);
307
+ } else {
308
+ let node = this.$refs.tree.getNode(row.id + "");
309
+ node.data = row;
310
+ }
311
+ },
312
+ deleteDataType() {
313
+ let row = this.currentDataType;
314
+
315
+ this.$baseConfirm(this.$t1('您确定要删除数据类型[{dataTypeName}]吗?', {dataTypeName: row.dataTypeName})).then(() => {
316
+ var url = USER_PREFIX + `/data_type_setting/setDisabled`;
317
+ this.$http({
318
+ url: url,
319
+ method: `post`,
320
+ data: {id: row.id},
321
+ isLoading: true,
322
+ success: res => {
323
+ this.$message({
324
+ message: res.content,
325
+ type: 'success',
326
+ duration: 2000
327
+ });
328
+ this.$refs.tree.remove(row);
329
+
330
+ let node = this.$refs.tree.getNode("-1");
331
+ let data = node.data;
332
+ this.$refs.tree.setCurrentKey(data);
333
+ this.currentDataType = data;
334
+ this.searchEvent();
335
+ }
336
+ });
337
+ });
338
+ }
339
+ }
340
+ };
341
+ </script>