cloud-web-corejs 1.0.280 → 1.1.0-dev.10

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 (193) hide show
  1. package/package.json +6 -2
  2. package/src/components/VabUpload/image-viewer.vue +442 -442
  3. package/src/components/VabUpload/index.vue +45 -3
  4. package/src/components/VabUpload/mixins.js +174 -34
  5. package/src/components/VabUpload/previewGroup.js +128 -0
  6. package/src/components/VabUpload/view.vue +248 -209
  7. package/src/components/baseTabs/mixins.js +181 -181
  8. package/src/components/bizTab/BizBillActions.vue +129 -0
  9. package/src/components/bizTab/BizTabListPage.vue +391 -0
  10. package/src/components/bizTab/README.md +378 -0
  11. package/src/components/bizTab/billTableUtil.js +48 -0
  12. package/src/components/bizTab/billValidators.js +136 -0
  13. package/src/components/bizTab/bizBillDetailMixin.js +705 -0
  14. package/src/components/bizTab/index.js +24 -0
  15. package/src/components/excelExport/exportFieldDialog.vue +23 -12
  16. package/src/components/excelExport/exportItemConfigUtil.js +30 -0
  17. package/src/components/excelExport/mixins.js +3 -3
  18. package/src/components/excelImport/index.vue +156 -156
  19. package/src/components/jsonImport/index.vue +1 -1
  20. package/src/components/langImport/index.vue +1 -1
  21. package/src/components/mobile/statusTag/mixins.js +1 -61
  22. package/src/components/mobile/wf/addTaskUserdialog.vue +23 -3
  23. package/src/components/mobile/wf/content.vue +1705 -1556
  24. package/src/components/mobile/wf/deleteTaskUserDialog.vue +22 -3
  25. package/src/components/mobile/wf/mixins/wfModifyDialogMixin.js +8 -6
  26. package/src/components/mobile/wf/selectUserDialog.vue +122 -0
  27. package/src/components/mobile/wf/setCandidateDialog.vue +25 -4
  28. package/src/components/mobile/wf/urgingDialog.vue +26 -3
  29. package/src/components/mobile/wf/wfModifyDialog.vue +4 -0
  30. package/src/components/obsUpload/index.vue +1 -1
  31. package/src/components/table/config.js +78 -78
  32. package/src/components/table/index.js +1276 -1276
  33. package/src/components/table/plugins/cell-area/index.js +1055 -0
  34. package/src/components/table/plugins/cell-area/index.scss +77 -0
  35. package/src/components/table/plugins/cell-area/util.js +224 -0
  36. package/src/components/table/tableForm.vue +330 -330
  37. package/src/components/table/tableFormMixin.js +318 -318
  38. package/src/components/table/vxeFilter/index.js +163 -163
  39. package/src/components/table/vxeFilter/mixin.js +316 -316
  40. package/src/components/wf/content.vue +1188 -1188
  41. package/src/components/wf/wf.js +40 -20
  42. package/src/components/wf/wfActionDropdown.vue +1 -1
  43. package/src/components/wf/wfActionItems.js +1 -1
  44. package/src/components/xform/docs/2026-08 xform H5 P0 /345/256/236/347/216/260/350/247/204/346/240/274.md" +528 -0
  45. package/src/components/xform/docs/2026-08 xform H5 P1 /345/256/236/347/216/260/350/247/204/346/240/274.md" +412 -0
  46. package/src/components/xform/docs/2026-08 xform H5 P2 /345/256/236/347/216/260/350/247/204/346/240/274.md" +287 -0
  47. package/src/components/xform/docs/2026-08 xform /347/247/273/345/212/250/347/253/257/345/270/203/345/261/200/345/257/271/351/275/220 bill_setting /346/226/271/346/241/210.md" +400 -0
  48. package/src/components/xform/form-designer/designer.js +51 -52
  49. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +269 -269
  50. package/src/components/xform/form-designer/form-widget/container-widget/detail-h5-widget.vue +18 -2
  51. package/src/components/xform/form-designer/form-widget/container-widget/detail-temp-widget.vue +132 -0
  52. package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +250 -250
  53. package/src/components/xform/form-designer/form-widget/container-widget/h5-card-pane-widget.vue +23 -2
  54. package/src/components/xform/form-designer/form-widget/container-widget/h5-card-widget.vue +30 -1
  55. package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +319 -320
  56. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +365 -365
  57. package/src/components/xform/form-designer/form-widget/dialog/importDialog.vue +185 -185
  58. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +554 -555
  59. package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +409 -409
  60. package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +150 -132
  61. package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +114 -114
  62. package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +154 -154
  63. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +47 -1
  64. package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +178 -178
  65. package/src/components/xform/form-designer/form-widget/field-widget/mixins/time-limit-mixin.js +77 -77
  66. package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +6 -0
  67. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +139 -139
  68. package/src/components/xform/form-designer/form-widget/field-widget/singleUpload-widget.vue +1 -1
  69. package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +106 -106
  70. package/src/components/xform/form-designer/form-widget/field-widget/time-widget.vue +134 -134
  71. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +3 -2
  72. package/src/components/xform/form-designer/indexMixin.js +35 -1
  73. package/src/components/xform/form-designer/setting-panel/form-setting.vue +39 -39
  74. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +10 -10
  75. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/exportItemColumns-dialog.vue +438 -432
  76. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +2103 -2103
  77. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-temp-edito.vue +90 -0
  78. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +82 -82
  79. package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +833 -846
  80. package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +8 -8
  81. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +137 -137
  82. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +237 -237
  83. package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +43 -43
  84. package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +43 -43
  85. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +96 -96
  86. package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-item-button-editor.vue +51 -0
  87. package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +42 -42
  88. package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +43 -43
  89. package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +158 -158
  90. package/src/components/xform/form-designer/setting-panel/property-editor/h5Span-editor.vue +51 -0
  91. package/src/components/xform/form-designer/setting-panel/property-editor/itemStyle-editor.vue +39 -0
  92. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +188 -188
  93. package/src/components/xform/form-designer/setting-panel/property-editor/styleTempClass-editor.vue +51 -0
  94. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +347 -347
  95. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +12 -0
  96. package/src/components/xform/form-designer/toolbar-panel/index.vue +884 -874
  97. package/src/components/xform/form-designer/toolbar-panel/indexMixin.js +14 -0
  98. package/src/components/xform/form-designer/widget-panel/index.vue +11 -7
  99. package/src/components/xform/form-designer/widget-panel/indexMixin.js +30 -6
  100. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +112 -4
  101. package/src/components/xform/form-render/container-item/data-table-mixin.js +151 -93
  102. package/src/components/xform/form-render/container-item/detail-h5-item.vue +204 -34
  103. package/src/components/xform/form-render/container-item/detail-temp-item.vue +110 -0
  104. package/src/components/xform/form-render/container-item/h5-card-pane-item.vue +160 -140
  105. package/src/components/xform/form-render/container-item/list-h5-item.vue +1913 -1699
  106. package/src/components/xform/form-render/index.vue +153 -147
  107. package/src/components/xform/form-render/indexMixin.js +35 -3
  108. package/src/components/xform/lang/en-US.js +14 -0
  109. package/src/components/xform/lang/zh-CN.js +17 -0
  110. package/src/components/xform/mixins/defaultHandle.js +707 -707
  111. package/src/components/xform/styles/h5.scss +2238 -0
  112. package/src/components/xform/utils/textMaskUtil.js +182 -179
  113. package/src/components/xform/utils/treeTableUtil.js +1292 -1265
  114. package/src/components/xform/utils/util.js +56 -11
  115. package/src/directive/append-to-body/index.js +48 -0
  116. package/src/index.js +13 -4
  117. package/src/layout/components/Sidebar/default.vue +1655 -1655
  118. package/src/layout/components/extractedCode/viewDialog.vue +7 -7
  119. package/src/router/index.js +48 -27
  120. package/src/router/modules/customer.js +71 -14
  121. package/src/store/modules/permission.js +17 -18
  122. package/src/utils/assetUrl.js +19 -0
  123. package/src/utils/pdfUtil.js +429 -429
  124. package/src/utils/resolveViewComponent.js +142 -16
  125. package/src/utils/vab.js +1283 -1279
  126. package/src/views/bd/project/branch/bd_branch/edit.vue +145 -0
  127. package/src/views/bd/project/branch/bd_branch/list.vue +72 -0
  128. package/src/views/bd/project/branch/bd_branch/menuKindDialog.vue +106 -0
  129. package/src/views/bd/project/branch/bd_branch/mixins/edit.js +189 -0
  130. package/src/views/bd/project/branch/bd_branch/mixins/list.js +124 -0
  131. package/src/views/bd/project/branch/bd_branch/mixins/menuKindDialog.js +85 -0
  132. package/src/views/bd/project/branch/form_script/list.vue +31 -0
  133. package/src/views/bd/project/branch/form_template/list.vue +30 -0
  134. package/src/views/bd/project/branch/menu_kind/list.vue +31 -0
  135. package/src/views/bd/project/common/form_script/list.vue +16 -0
  136. package/src/views/bd/project/common/form_template/list.vue +15 -0
  137. package/src/views/bd/project/common/menu_kind/list.vue +15 -0
  138. package/src/views/bd/project/core/branchContext.js +100 -0
  139. package/src/views/bd/project/core/branchPage.js +78 -0
  140. package/src/views/bd/project/core/branchPageWrap.vue +225 -0
  141. package/src/views/bd/project/core/branchScope.js +44 -0
  142. package/src/views/bd/project/core/branchSearchPage.js +285 -0
  143. package/src/views/bd/project/core/branchSelect.vue +85 -0
  144. package/src/views/bd/project/core/branchTreeBar.vue +81 -0
  145. package/src/views/bd/project/core/httpBranchPatch.js +58 -0
  146. package/src/views/bd/project/datatable/menu_kind/list.vue +15 -0
  147. package/src/views/bd/project/datatable/table_model/list.vue +15 -0
  148. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  149. package/src/views/bd/setting/form_template/edit.vue +378 -356
  150. package/src/views/bd/setting/form_template/formDesignerDialog.vue +6 -0
  151. package/src/views/bd/setting/form_template/formTemplateType.js +43 -0
  152. package/src/views/bd/setting/form_template/list.vue +304 -303
  153. package/src/views/bd/setting/form_template/mixins/edit.js +344 -280
  154. package/src/views/bd/setting/form_template/mixins/list.js +748 -721
  155. package/src/views/bd/setting/table_model/edit.vue +1066 -1066
  156. package/src/views/bd/setting/table_model/mixins/edit.js +1455 -1455
  157. package/src/views/bd/setting/table_model/mixins/zdDialog.js +148 -148
  158. package/src/views/demo/bizTab/bill/billConfig.js +41 -0
  159. package/src/views/demo/bizTab/bill/detail.vue +436 -0
  160. package/src/views/demo/bizTab/bill/list.vue +288 -0
  161. package/src/views/demo/bizTab/bill/productDialog.vue +176 -0
  162. package/src/views/demo/bizTab/simple/billApi.js +123 -0
  163. package/src/views/demo/bizTab/simple/detail.vue +407 -0
  164. package/src/views/demo/bizTab/simple/list.vue +217 -0
  165. package/src/views/demo/bizTab/standalone/index.vue +121 -0
  166. package/src/views/demo/bizTab/wf/billConfig.js +44 -0
  167. package/src/views/demo/bizTab/wf/detail.vue +661 -0
  168. package/src/views/demo/bizTab/wf/list.vue +242 -0
  169. package/src/views/support/form-dialog-demo/demoPickerDialog.vue +72 -0
  170. package/src/views/support/form-dialog-demo/index.vue +537 -0
  171. package/src/views/user/file_view_ins/list.vue +970 -970
  172. package/src/views/user/form/vform/designer.vue +823 -821
  173. package/src/views/user/home/default.vue +1117 -1117
  174. package/src/views/user/home/default2.vue +1 -1
  175. package/src/views/user/home/index.vue +103 -101
  176. package/src/views/user/home/wjl/content.vue +1569 -0
  177. package/src/views/user/notify_message/dialog.vue +139 -137
  178. package/src/views/user/outLink/cc_form_view.vue +188 -0
  179. package/src/views/user/outLink/form_view.vue +202 -202
  180. package/src/views/user/outLink/index.vue +110 -110
  181. package/src/views/user/outLink/view.vue +3 -3
  182. package/src/views/user/role/edit.vue +632 -632
  183. package/src/views/user/role/list.vue +260 -260
  184. package/src/views/user/wf/iframe/index.vue +51 -51
  185. package/src/views/user/wf/iframe/index2.vue +64 -64
  186. package/src/views/user/wf/wf_manage/list.vue +1112 -1116
  187. package/src/views/user/wf/wf_manage/list2.vue +871 -875
  188. package/src/views/user/wf/wf_manage/wfContentDialog.vue +134 -131
  189. package/src/views/user/wf/wf_obj_config/importItemDialog.vue +1 -1
  190. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-menu-widget.vue +0 -106
  191. package/src/components/xform/form-designer/form-widget/field-widget/tableexportbuttonwidget.vue +0 -99
  192. package/src/components/xform/form-render/container-item/list-h5-item2.vue +0 -1340
  193. package/src/utils/wf.js +0 -766
@@ -0,0 +1,145 @@
1
+ <template>
2
+ <div class="detail-wrap">
3
+ <el-form ref="editForm" :model="bdBranch">
4
+ <div class="d-header clearfix">
5
+ <div class="fl">
6
+ <i class="el-icon-info" />
7
+ {{ dataId ? $t1("查看分支定义") : $t1("新增分支定义") }}
8
+ </div>
9
+ <div class="fr">
10
+ <el-button
11
+ type="primary"
12
+ plain
13
+ class="button-sty"
14
+ @click="$baseReload()"
15
+ icon="el-icon-refresh-right"
16
+ >
17
+ {{ $t1("重置") }}
18
+ </el-button>
19
+ <el-button
20
+ type="primary"
21
+ class="button-sty"
22
+ icon="el-icon-check"
23
+ @click="saveData"
24
+ >{{ $t1("保存") }}
25
+ </el-button>
26
+ </div>
27
+ </div>
28
+ <div class="d-cont">
29
+ <div class="d-item">
30
+ <div class="title first">
31
+ <b>{{ $t1("基本信息") }}</b>
32
+ </div>
33
+ <table class="table-detail">
34
+ <tbody>
35
+ <tr>
36
+ <th>
37
+ <em class="f-red">*</em>
38
+ {{ $t1("分支编码") }}
39
+ </th>
40
+ <td>
41
+ <el-form-item prop="branchCode" :rules="branchCodeRules">
42
+ <el-input
43
+ type="text"
44
+ autocomplete="off"
45
+ v-model="bdBranch.branchCode"
46
+ :disabled="isEdit"
47
+ clearable
48
+ />
49
+ </el-form-item>
50
+ </td>
51
+ <th>
52
+ <em class="f-red">*</em>
53
+ {{ $t1("分支名称") }}
54
+ </th>
55
+ <td>
56
+ <el-form-item prop="branchName" :rules="branchNameRules">
57
+ <el-input
58
+ type="text"
59
+ autocomplete="off"
60
+ v-model="bdBranch.branchName"
61
+ clearable
62
+ />
63
+ </el-form-item>
64
+ </td>
65
+ <th>{{ $t1("是否启用") }}</th>
66
+ <td>
67
+ <el-switch v-model="bdBranch.enabled"></el-switch>
68
+ </td>
69
+ </tr>
70
+ <tr>
71
+ <th>{{ $t1("备注") }}</th>
72
+ <td colspan="5">
73
+ <el-input
74
+ type="textarea"
75
+ :rows="2"
76
+ :placeholder="$t1('请输入内容')"
77
+ size="small"
78
+ v-model="bdBranch.remark"
79
+ clearable
80
+ ></el-input>
81
+ </td>
82
+ </tr>
83
+ <tr>
84
+ <th>{{ $t1("创建人") }}</th>
85
+ <td>{{ bdBranch.createBy }}</td>
86
+ <th>{{ $t1("创建时间") }}</th>
87
+ <td>{{ bdBranch.createDate }}</td>
88
+ <th>{{ $t1("更新人") }}</th>
89
+ <td>{{ bdBranch.modifyBy }}</td>
90
+ </tr>
91
+ </tbody>
92
+ </table>
93
+ </div>
94
+ <div class="d-item">
95
+ <div class="title">
96
+ <b>{{ $t1("分支菜单类型") }}</b>
97
+ </div>
98
+ <div class="grid-height" style="height: 320px">
99
+ <vxe-grid
100
+ ref="table-menuKind"
101
+ :data="menuKindRows"
102
+ v-bind="menuKindOption"
103
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
104
+ @custom="$vxeTableUtil.customHandle"
105
+ >
106
+ <template #form>
107
+ <div class="clearfix screen-btns">
108
+ <div class="fl">
109
+ <vxe-button
110
+ status="primary"
111
+ class="button-sty"
112
+ icon="el-icon-plus"
113
+ @click="openMenuKindDialog"
114
+ >
115
+ {{ $t1("选择分类") }}
116
+ </vxe-button>
117
+ <span class="tips">{{
118
+ $t1("注:只能选择「分类-通用」的一级分类")
119
+ }}</span>
120
+ </div>
121
+ </div>
122
+ </template>
123
+ </vxe-grid>
124
+ </div>
125
+ </div>
126
+ </div>
127
+ </el-form>
128
+ <menuKindDialog
129
+ v-if="showMenuKindDialog"
130
+ :visiable.sync="showMenuKindDialog"
131
+ :rows="checkedMenuKindRows"
132
+ multi="true"
133
+ @confirm="confirmMenuKindDialog"
134
+ ></menuKindDialog>
135
+ </div>
136
+ </template>
137
+
138
+ <script>
139
+ import mixin from "./mixins/edit";
140
+
141
+ export default {
142
+ name: "bdBranchEdit",
143
+ mixins: [mixin],
144
+ };
145
+ </script>
@@ -0,0 +1,72 @@
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
6
+ v-if="showEdit"
7
+ visible-key="showEdit"
8
+ :_dataId.sync="dataId"
9
+ :parent-target="_self"
10
+ @reload="$reloadHandle"
11
+ ></editView>
12
+ </el-tab-pane>
13
+ <el-tab-pane :label="$t1('列表')" name="second">
14
+ <div class="grid-height">
15
+ <vxe-grid
16
+ ref="table-m1"
17
+ v-bind="vxeOption"
18
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
19
+ @custom="$vxeTableUtil.customHandle"
20
+ >
21
+ <template #form>
22
+ <tableForm
23
+ :formData.sync="formData"
24
+ @searchEvent="searchEvent"
25
+ @resetEvent="resetEvent"
26
+ >
27
+ <template #buttonLeft>
28
+ <vxe-button
29
+ status="primary"
30
+ class="button-sty"
31
+ icon="el-icon-plus"
32
+ @click="openEditDialog"
33
+ >
34
+ {{ $t1("新增") }}
35
+ </vxe-button>
36
+ </template>
37
+ <template #buttonRight>
38
+ <vxe-button
39
+ icon="el-icon-brush"
40
+ class="button-sty"
41
+ @click="resetEvent"
42
+ type="text"
43
+ status="primary"
44
+ plain
45
+ >{{ $t1("刷新") }}
46
+ </vxe-button>
47
+ <vxe-button
48
+ status="warning"
49
+ icon="el-icon-search"
50
+ class="button-sty"
51
+ @click="searchEvent"
52
+ >
53
+ {{ $t1("搜索") }}
54
+ </vxe-button>
55
+ </template>
56
+ </tableForm>
57
+ </template>
58
+ </vxe-grid>
59
+ </div>
60
+ </el-tab-pane>
61
+ </el-tabs>
62
+ </div>
63
+ </template>
64
+
65
+ <script>
66
+ import mixin from "./mixins/list";
67
+
68
+ export default {
69
+ name: "bd_branch:list",
70
+ mixins: [mixin],
71
+ };
72
+ </script>
@@ -0,0 +1,106 @@
1
+ <template>
2
+ <el-dialog
3
+ :title="$t1('分类-通用一级分类')"
4
+ :append-to-body="true"
5
+ :modal-append-to-body="true"
6
+ :close-on-click-modal="falseValue"
7
+ :visible.sync="showDialog"
8
+ :modal="falseValue"
9
+ custom-class="dialog-style list-dialog dialog-checkbox pd_0"
10
+ width="1000px"
11
+ @close="dialogClose"
12
+ v-el-drag-dialog
13
+ v-el-dialog-center
14
+ >
15
+ <div class="cont" style="height: 450px">
16
+ <vxe-grid
17
+ class="is-pointer"
18
+ ref="table-m1"
19
+ v-bind="vxeOption"
20
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
21
+ @custom="$vxeTableUtil.customHandle"
22
+ @checkbox-change="addDataTable"
23
+ @checkbox-all="checkAll"
24
+ @cell-dblclick="checkWithSubmit"
25
+ >
26
+ <template #form>
27
+ <div class="clearfix screen-btns">
28
+ <div class="fr">
29
+ <vxe-button
30
+ icon="el-icon-brush"
31
+ class="button-sty"
32
+ @click="resetEvent"
33
+ type="text"
34
+ status="primary"
35
+ plain
36
+ >{{ $t1("刷新") }}
37
+ </vxe-button>
38
+ <vxe-button
39
+ status="warning"
40
+ icon="el-icon-search"
41
+ class="button-sty"
42
+ @click="searchEvent"
43
+ >
44
+ {{ $t1("搜索") }}
45
+ </vxe-button>
46
+ </div>
47
+ </div>
48
+ <vxe-form
49
+ class="screen-box"
50
+ title-width="92px"
51
+ title-align="right"
52
+ :data="formData"
53
+ @submit="searchEvent"
54
+ @reset="resetEvent"
55
+ >
56
+ <vxe-form-item :title="$t1('表单分类名称') + ':'" field="name">
57
+ <template v-slot>
58
+ <el-input v-model="formData.name" size="small" clearable />
59
+ </template>
60
+ </vxe-form-item>
61
+ <vxe-button type="submit" @click="searchEvent" v-show="false"></vxe-button>
62
+ </vxe-form>
63
+ </template>
64
+ </vxe-grid>
65
+ </div>
66
+ <label id="labBtn" class="transverse">
67
+ <div class="icon">
68
+ <i class="el-icon-more"></i>
69
+ <i class="el-icon-more"></i>
70
+ </div>
71
+ </label>
72
+ <div class="multipleChoice">
73
+ <el-tooltip
74
+ :enterable="false"
75
+ effect="dark"
76
+ :content="$t1('全部删除')"
77
+ placement="top"
78
+ ><a class="allDel icon-quanbushanchu" @click="clearChecked()"></a
79
+ ></el-tooltip>
80
+ <div class="list">
81
+ <div class="item" v-for="(checkRow, index) in checkRows" :key="index">
82
+ <p>{{ checkRow.name }}</p>
83
+ <a class="el-icon-close" @click="clearTable1Select(index)"></a>
84
+ </div>
85
+ </div>
86
+ </div>
87
+ <span slot="footer" class="dialog-footer">
88
+ <el-button type="primary" plain class="button-sty" @click="dialogClose">
89
+ <i class="el-icon-close el-icon"></i>
90
+ {{ $t1("取 消") }}
91
+ </el-button>
92
+ <el-button type="primary" @click="dialogPrimary" class="button-sty">
93
+ <i class="el-icon-check el-icon"></i>
94
+ {{ $t1("确 定") }}
95
+ </el-button>
96
+ </span>
97
+ </el-dialog>
98
+ </template>
99
+
100
+ <script>
101
+ import mixin from "./mixins/menuKindDialog";
102
+
103
+ export default {
104
+ mixins: [mixin],
105
+ };
106
+ </script>
@@ -0,0 +1,189 @@
1
+ import menuKindDialog from "../menuKindDialog.vue";
2
+ import { getJsxBtn } from "@base/views/bd/setting/utils/index";
3
+
4
+ const BRANCH_CODE_REG = /^[0-9a-zA-Z_.-]{1,80}$/;
5
+
6
+ let modules = {};
7
+ modules = {
8
+ name: "bdBranchEdit",
9
+ components: { menuKindDialog },
10
+ props: {
11
+ _dataId: [String, Number],
12
+ },
13
+ created() {
14
+ if (this._dataId && !isNaN(this._dataId)) {
15
+ this.dataId = this._dataId;
16
+ }
17
+ },
18
+ mounted() {
19
+ this.initTableMenuKind();
20
+ this.getData();
21
+ },
22
+ data() {
23
+ return {
24
+ isEdit: false,
25
+ dataId: "",
26
+ bdBranch: {
27
+ enabled: true,
28
+ },
29
+ menuKindRows: [],
30
+ menuKindOption: {},
31
+ showMenuKindDialog: false,
32
+ branchCodeRules: [
33
+ { required: true, message: this.$t1("分支编码不能为空"), trigger: "blur" },
34
+ {
35
+ pattern: BRANCH_CODE_REG,
36
+ message: this.$t1("分支编码只允许是字母或数字或'_.-',长度80位以内"),
37
+ trigger: "blur",
38
+ },
39
+ ],
40
+ branchNameRules: [
41
+ { required: true, message: this.$t1("分支名称不能为空"), trigger: "blur" },
42
+ ],
43
+ };
44
+ },
45
+ computed: {
46
+ checkedMenuKindRows() {
47
+ return this.menuKindRows.map((item) => {
48
+ return { id: item.menuKindId, name: item.menuKindName };
49
+ });
50
+ },
51
+ },
52
+ methods: {
53
+ getData() {
54
+ if (!this.dataId || isNaN(this.dataId)) {
55
+ return;
56
+ }
57
+ this.isEdit = true;
58
+ this.$commonHttp({
59
+ url: USER_PREFIX + `/bd_branch/get`,
60
+ method: `post`,
61
+ data: {
62
+ id: this.dataId,
63
+ },
64
+ isLoading: true,
65
+ modalStrictly: true,
66
+ success: (res) => {
67
+ this.bdBranch = res.objx || {};
68
+ this.getMenuKinds();
69
+ },
70
+ });
71
+ },
72
+ getMenuKinds() {
73
+ this.$http({
74
+ url: USER_PREFIX + `/bd_branch/getBdBranchMenuKinds`,
75
+ method: `post`,
76
+ data: {
77
+ id: this.dataId,
78
+ },
79
+ success: (res) => {
80
+ this.menuKindRows = res.objx || [];
81
+ },
82
+ });
83
+ },
84
+ initTableMenuKind() {
85
+ let tableOption = {
86
+ vue: this,
87
+ tableRef: "table-menuKind",
88
+ tableName: "bd_branch_edit-menuKind",
89
+ config: {
90
+ height: "auto",
91
+ },
92
+ columns: [
93
+ { type: "checkbox", width: 48, resizable: false, fixed: "left" },
94
+ {
95
+ title: this.$t1("表单分类名称"),
96
+ field: "menuKindName",
97
+ minWidth: 250,
98
+ },
99
+ {
100
+ width: 47,
101
+ fixed: "right",
102
+ title: "",
103
+ sortable: false,
104
+ slots: {
105
+ default: ({ rowIndex }) => {
106
+ return getJsxBtn({
107
+ iconName: "el-icon-delete",
108
+ content: this.$t1("删除"),
109
+ onclick: () => {
110
+ this.menuKindRows.splice(rowIndex, 1);
111
+ },
112
+ });
113
+ },
114
+ },
115
+ },
116
+ ],
117
+ };
118
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
119
+ this.menuKindOption = opts;
120
+ });
121
+ },
122
+ openMenuKindDialog() {
123
+ this.showMenuKindDialog = true;
124
+ },
125
+ confirmMenuKindDialog(rows) {
126
+ let oldMap = {};
127
+ this.menuKindRows.forEach((item) => {
128
+ oldMap[item.menuKindId] = item;
129
+ });
130
+ this.menuKindRows = (rows || []).map((row) => {
131
+ // 保留已有明细的 id/branchId,避免更新时被当成新增
132
+ let old = oldMap[row.id];
133
+ if (old) {
134
+ return old;
135
+ }
136
+ return {
137
+ menuKindId: row.id,
138
+ menuKindName: row.name,
139
+ };
140
+ });
141
+ },
142
+ saveData() {
143
+ this.$refs.editForm.$baseValidate((valid) => {
144
+ if (!valid) {
145
+ return;
146
+ }
147
+ if (!this.menuKindRows.length) {
148
+ this.$message({
149
+ type: "error",
150
+ message: this.$t1("分支菜单类型不能为空"),
151
+ });
152
+ return;
153
+ }
154
+ this.$baseConfirm(this.$t1("您确定要保存吗?")).then(() => {
155
+ let url =
156
+ USER_PREFIX + (this.isEdit ? `/bd_branch/update` : `/bd_branch/save`);
157
+ this.$http({
158
+ url: url,
159
+ method: `post`,
160
+ data: {
161
+ ...this.bdBranch,
162
+ bdBranchMenuKindDTOs: this.menuKindRows,
163
+ },
164
+ isLoading: true,
165
+ success: (res) => {
166
+ this.$message({
167
+ message: res.content,
168
+ type: "success",
169
+ duration: 500,
170
+ onClose: () => {
171
+ if (this.isEdit) {
172
+ this.$baseReload();
173
+ } else {
174
+ this.$baseReload({
175
+ updateParam: {
176
+ _dataId: res.objx,
177
+ },
178
+ });
179
+ }
180
+ },
181
+ });
182
+ },
183
+ });
184
+ });
185
+ });
186
+ },
187
+ },
188
+ };
189
+ export default modules;
@@ -0,0 +1,124 @@
1
+ import tableForm from "@base/components/table/tableForm.vue";
2
+ import editView from "../edit.vue";
3
+ import { getJsxBtn, getJsxStatus } from "@base/views/bd/setting/utils/index";
4
+
5
+ let modules = {};
6
+ modules = {
7
+ name: "bd_branch:list",
8
+ components: { tableForm, editView },
9
+ mounted() {
10
+ this.initTableList();
11
+ },
12
+ data() {
13
+ return {
14
+ activeName: "second",
15
+ dataId: 0,
16
+ showEdit: false,
17
+ vxeOption: {},
18
+ formData: {},
19
+ };
20
+ },
21
+ methods: {
22
+ searchEvent() {
23
+ this.$refs["table-m1"].commitProxy("reload");
24
+ },
25
+ resetEvent() {
26
+ this.formData = {};
27
+ this.$refs["table-m1"].commitProxy("reload");
28
+ },
29
+ openEditDialog(id) {
30
+ this.dataId = !id || typeof id == "object" ? 0 : id;
31
+ this.activeName = "first";
32
+ this.$openEditView("showEdit");
33
+ },
34
+ getSearchParam() {
35
+ return {
36
+ ...this.formData,
37
+ };
38
+ },
39
+ initTableList() {
40
+ let tableOption = {
41
+ vue: this,
42
+ tableRef: "table-m1",
43
+ tableName: "bd_branch_list-m1",
44
+ path: USER_PREFIX + "/bd_branch/listPage",
45
+ param: () => {
46
+ return this.getSearchParam();
47
+ },
48
+ columns: [
49
+ { type: "checkbox", width: 48, resizable: false, fixed: "left" },
50
+ {
51
+ title: this.$t1("分支编码"),
52
+ field: "branchCode",
53
+ width: 200,
54
+ fixed: "left",
55
+ },
56
+ { title: this.$t1("分支名称"), field: "branchName", width: 200 },
57
+ {
58
+ title: this.$t1("是否启用"),
59
+ field: "enabled",
60
+ width: 120,
61
+ slots: {
62
+ default: ({ row }) => {
63
+ if (row.enabled) {
64
+ return getJsxStatus(null, this.$t1("启用"));
65
+ }
66
+ return getJsxStatus("s-3", this.$t1("禁用"));
67
+ },
68
+ },
69
+ },
70
+ { title: this.$t1("备注"), field: "remark", width: 250 },
71
+ { field: "createBy", title: this.$t1("创建人"), width: 120 },
72
+ { field: "createDate", title: this.$t1("创建时间"), width: 150 },
73
+ { field: "modifyBy", title: this.$t1("更新人"), width: 120 },
74
+ { field: "modifyDate", title: this.$t1("更新时间"), width: 150 },
75
+ {
76
+ width: 47,
77
+ fixed: "right",
78
+ title: "",
79
+ sortable: false,
80
+ slots: {
81
+ default: ({ row }) => {
82
+ return getJsxBtn({
83
+ iconName: "el-icon-edit",
84
+ content: this.$t1("查看"),
85
+ onclick: () => {
86
+ this.openEditDialog(row.id);
87
+ },
88
+ });
89
+ },
90
+ },
91
+ },
92
+ ],
93
+ searchColumns: [
94
+ {
95
+ title: this.$t1("分支编码"),
96
+ field: "branchCode",
97
+ type: "input",
98
+ common: true,
99
+ },
100
+ {
101
+ title: this.$t1("分支名称"),
102
+ field: "branchName",
103
+ type: "input",
104
+ common: true,
105
+ },
106
+ {
107
+ title: this.$t1("是否启用"),
108
+ field: "enabled",
109
+ type: "select",
110
+ common: true,
111
+ itemOption: [
112
+ { label: this.$t1("启用"), value: true },
113
+ { label: this.$t1("禁用"), value: false },
114
+ ],
115
+ },
116
+ ],
117
+ };
118
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
119
+ this.vxeOption = opts;
120
+ });
121
+ },
122
+ },
123
+ };
124
+ export default modules;