cloud-web-corejs 1.0.281 → 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 (192) 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 +126 -19
  5. package/src/components/VabUpload/view.vue +248 -209
  6. package/src/components/baseTabs/mixins.js +181 -181
  7. package/src/components/bizTab/BizBillActions.vue +129 -0
  8. package/src/components/bizTab/BizTabListPage.vue +391 -0
  9. package/src/components/bizTab/README.md +378 -0
  10. package/src/components/bizTab/billTableUtil.js +48 -0
  11. package/src/components/bizTab/billValidators.js +136 -0
  12. package/src/components/bizTab/bizBillDetailMixin.js +705 -0
  13. package/src/components/bizTab/index.js +24 -0
  14. package/src/components/excelExport/exportFieldDialog.vue +23 -12
  15. package/src/components/excelExport/exportItemConfigUtil.js +30 -0
  16. package/src/components/excelExport/mixins.js +3 -3
  17. package/src/components/excelImport/index.vue +156 -156
  18. package/src/components/jsonImport/index.vue +1 -1
  19. package/src/components/langImport/index.vue +1 -1
  20. package/src/components/mobile/statusTag/mixins.js +1 -61
  21. package/src/components/mobile/wf/addTaskUserdialog.vue +23 -3
  22. package/src/components/mobile/wf/content.vue +1705 -1556
  23. package/src/components/mobile/wf/deleteTaskUserDialog.vue +22 -3
  24. package/src/components/mobile/wf/mixins/wfModifyDialogMixin.js +8 -6
  25. package/src/components/mobile/wf/selectUserDialog.vue +122 -0
  26. package/src/components/mobile/wf/setCandidateDialog.vue +25 -4
  27. package/src/components/mobile/wf/urgingDialog.vue +26 -3
  28. package/src/components/mobile/wf/wfModifyDialog.vue +4 -0
  29. package/src/components/obsUpload/index.vue +1 -1
  30. package/src/components/table/config.js +78 -78
  31. package/src/components/table/index.js +1276 -1276
  32. package/src/components/table/plugins/cell-area/index.js +1055 -0
  33. package/src/components/table/plugins/cell-area/index.scss +77 -0
  34. package/src/components/table/plugins/cell-area/util.js +224 -0
  35. package/src/components/table/tableForm.vue +330 -330
  36. package/src/components/table/tableFormMixin.js +318 -318
  37. package/src/components/table/vxeFilter/index.js +163 -163
  38. package/src/components/table/vxeFilter/mixin.js +316 -316
  39. package/src/components/wf/content.vue +1188 -1188
  40. package/src/components/wf/wf.js +40 -20
  41. package/src/components/wf/wfActionDropdown.vue +1 -1
  42. package/src/components/wf/wfActionItems.js +1 -1
  43. 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
  44. 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
  45. 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
  46. 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
  47. package/src/components/xform/form-designer/designer.js +51 -52
  48. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +269 -269
  49. package/src/components/xform/form-designer/form-widget/container-widget/detail-h5-widget.vue +18 -2
  50. package/src/components/xform/form-designer/form-widget/container-widget/detail-temp-widget.vue +132 -0
  51. package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +250 -250
  52. package/src/components/xform/form-designer/form-widget/container-widget/h5-card-pane-widget.vue +23 -2
  53. package/src/components/xform/form-designer/form-widget/container-widget/h5-card-widget.vue +30 -1
  54. package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +319 -320
  55. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +365 -365
  56. package/src/components/xform/form-designer/form-widget/dialog/importDialog.vue +185 -185
  57. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +554 -555
  58. package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +409 -409
  59. package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +150 -132
  60. package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +114 -114
  61. package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +154 -154
  62. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +47 -1
  63. package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +178 -178
  64. package/src/components/xform/form-designer/form-widget/field-widget/mixins/time-limit-mixin.js +77 -77
  65. package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +6 -0
  66. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +139 -139
  67. package/src/components/xform/form-designer/form-widget/field-widget/singleUpload-widget.vue +1 -1
  68. package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +106 -106
  69. package/src/components/xform/form-designer/form-widget/field-widget/time-widget.vue +134 -134
  70. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +3 -2
  71. package/src/components/xform/form-designer/indexMixin.js +35 -1
  72. package/src/components/xform/form-designer/setting-panel/form-setting.vue +39 -39
  73. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +10 -10
  74. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/exportItemColumns-dialog.vue +438 -432
  75. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +2103 -2103
  76. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-temp-edito.vue +90 -0
  77. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +82 -82
  78. package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +833 -846
  79. package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +8 -8
  80. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +137 -137
  81. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +237 -237
  82. package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +43 -43
  83. package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +43 -43
  84. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +96 -96
  85. package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-item-button-editor.vue +51 -0
  86. package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +42 -42
  87. package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +43 -43
  88. package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +158 -158
  89. package/src/components/xform/form-designer/setting-panel/property-editor/h5Span-editor.vue +51 -0
  90. package/src/components/xform/form-designer/setting-panel/property-editor/itemStyle-editor.vue +39 -0
  91. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +188 -188
  92. package/src/components/xform/form-designer/setting-panel/property-editor/styleTempClass-editor.vue +51 -0
  93. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +347 -347
  94. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +12 -0
  95. package/src/components/xform/form-designer/toolbar-panel/index.vue +884 -874
  96. package/src/components/xform/form-designer/toolbar-panel/indexMixin.js +14 -0
  97. package/src/components/xform/form-designer/widget-panel/index.vue +11 -7
  98. package/src/components/xform/form-designer/widget-panel/indexMixin.js +30 -6
  99. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +112 -4
  100. package/src/components/xform/form-render/container-item/data-table-mixin.js +151 -93
  101. package/src/components/xform/form-render/container-item/detail-h5-item.vue +204 -34
  102. package/src/components/xform/form-render/container-item/detail-temp-item.vue +110 -0
  103. package/src/components/xform/form-render/container-item/h5-card-pane-item.vue +160 -140
  104. package/src/components/xform/form-render/container-item/list-h5-item.vue +1913 -1699
  105. package/src/components/xform/form-render/index.vue +153 -147
  106. package/src/components/xform/form-render/indexMixin.js +35 -3
  107. package/src/components/xform/lang/en-US.js +14 -0
  108. package/src/components/xform/lang/zh-CN.js +17 -0
  109. package/src/components/xform/mixins/defaultHandle.js +707 -707
  110. package/src/components/xform/styles/h5.scss +2238 -0
  111. package/src/components/xform/utils/textMaskUtil.js +182 -179
  112. package/src/components/xform/utils/treeTableUtil.js +1292 -1265
  113. package/src/components/xform/utils/util.js +56 -11
  114. package/src/directive/append-to-body/index.js +48 -0
  115. package/src/index.js +13 -4
  116. package/src/layout/components/Sidebar/default.vue +1655 -1655
  117. package/src/layout/components/extractedCode/viewDialog.vue +7 -7
  118. package/src/router/index.js +48 -27
  119. package/src/router/modules/customer.js +71 -14
  120. package/src/store/modules/permission.js +17 -18
  121. package/src/utils/assetUrl.js +19 -0
  122. package/src/utils/pdfUtil.js +429 -429
  123. package/src/utils/resolveViewComponent.js +142 -16
  124. package/src/utils/vab.js +1283 -1279
  125. package/src/views/bd/project/branch/bd_branch/edit.vue +145 -0
  126. package/src/views/bd/project/branch/bd_branch/list.vue +72 -0
  127. package/src/views/bd/project/branch/bd_branch/menuKindDialog.vue +106 -0
  128. package/src/views/bd/project/branch/bd_branch/mixins/edit.js +189 -0
  129. package/src/views/bd/project/branch/bd_branch/mixins/list.js +124 -0
  130. package/src/views/bd/project/branch/bd_branch/mixins/menuKindDialog.js +85 -0
  131. package/src/views/bd/project/branch/form_script/list.vue +31 -0
  132. package/src/views/bd/project/branch/form_template/list.vue +30 -0
  133. package/src/views/bd/project/branch/menu_kind/list.vue +31 -0
  134. package/src/views/bd/project/common/form_script/list.vue +16 -0
  135. package/src/views/bd/project/common/form_template/list.vue +15 -0
  136. package/src/views/bd/project/common/menu_kind/list.vue +15 -0
  137. package/src/views/bd/project/core/branchContext.js +100 -0
  138. package/src/views/bd/project/core/branchPage.js +78 -0
  139. package/src/views/bd/project/core/branchPageWrap.vue +225 -0
  140. package/src/views/bd/project/core/branchScope.js +44 -0
  141. package/src/views/bd/project/core/branchSearchPage.js +285 -0
  142. package/src/views/bd/project/core/branchSelect.vue +85 -0
  143. package/src/views/bd/project/core/branchTreeBar.vue +81 -0
  144. package/src/views/bd/project/core/httpBranchPatch.js +58 -0
  145. package/src/views/bd/project/datatable/menu_kind/list.vue +15 -0
  146. package/src/views/bd/project/datatable/table_model/list.vue +15 -0
  147. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  148. package/src/views/bd/setting/form_template/edit.vue +378 -356
  149. package/src/views/bd/setting/form_template/formDesignerDialog.vue +6 -0
  150. package/src/views/bd/setting/form_template/formTemplateType.js +43 -0
  151. package/src/views/bd/setting/form_template/list.vue +304 -303
  152. package/src/views/bd/setting/form_template/mixins/edit.js +344 -280
  153. package/src/views/bd/setting/form_template/mixins/list.js +748 -721
  154. package/src/views/bd/setting/table_model/edit.vue +1066 -1066
  155. package/src/views/bd/setting/table_model/mixins/edit.js +1455 -1455
  156. package/src/views/bd/setting/table_model/mixins/zdDialog.js +148 -148
  157. package/src/views/demo/bizTab/bill/billConfig.js +41 -0
  158. package/src/views/demo/bizTab/bill/detail.vue +436 -0
  159. package/src/views/demo/bizTab/bill/list.vue +288 -0
  160. package/src/views/demo/bizTab/bill/productDialog.vue +176 -0
  161. package/src/views/demo/bizTab/simple/billApi.js +123 -0
  162. package/src/views/demo/bizTab/simple/detail.vue +407 -0
  163. package/src/views/demo/bizTab/simple/list.vue +217 -0
  164. package/src/views/demo/bizTab/standalone/index.vue +121 -0
  165. package/src/views/demo/bizTab/wf/billConfig.js +44 -0
  166. package/src/views/demo/bizTab/wf/detail.vue +661 -0
  167. package/src/views/demo/bizTab/wf/list.vue +242 -0
  168. package/src/views/support/form-dialog-demo/demoPickerDialog.vue +72 -0
  169. package/src/views/support/form-dialog-demo/index.vue +537 -0
  170. package/src/views/user/file_view_ins/list.vue +970 -970
  171. package/src/views/user/form/vform/designer.vue +823 -821
  172. package/src/views/user/home/default.vue +1117 -1117
  173. package/src/views/user/home/default2.vue +1 -1
  174. package/src/views/user/home/index.vue +103 -101
  175. package/src/views/user/home/wjl/content.vue +1569 -0
  176. package/src/views/user/notify_message/dialog.vue +139 -137
  177. package/src/views/user/outLink/cc_form_view.vue +188 -0
  178. package/src/views/user/outLink/form_view.vue +202 -202
  179. package/src/views/user/outLink/index.vue +110 -110
  180. package/src/views/user/outLink/view.vue +3 -3
  181. package/src/views/user/role/edit.vue +632 -632
  182. package/src/views/user/role/list.vue +260 -260
  183. package/src/views/user/wf/iframe/index.vue +51 -51
  184. package/src/views/user/wf/iframe/index2.vue +64 -64
  185. package/src/views/user/wf/wf_manage/list.vue +1112 -1116
  186. package/src/views/user/wf/wf_manage/list2.vue +871 -875
  187. package/src/views/user/wf/wf_manage/wfContentDialog.vue +134 -131
  188. package/src/views/user/wf/wf_obj_config/importItemDialog.vue +1 -1
  189. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-menu-widget.vue +0 -106
  190. package/src/components/xform/form-designer/form-widget/field-widget/tableexportbuttonwidget.vue +0 -99
  191. package/src/components/xform/form-render/container-item/list-h5-item2.vue +0 -1340
  192. package/src/utils/wf.js +0 -766
@@ -1,5 +1,19 @@
1
1
  <template>
2
- <div class="pop-box" :style="'z-index:'+zIndex">
2
+ <!-- 外壳改成 el-dialog + append-to-body,说明见 urgingDialog.vue。
3
+ 原来的 :style="'z-index:'+zIndex" 去掉了:层级由 element 的 PopupManager
4
+ 统一分配给 .el-dialog__wrapper,再手写一层反而会和它打架。 -->
5
+ <el-dialog
6
+ :visible.sync="dialogVisible"
7
+ :append-to-body="true"
8
+ :modal="false"
9
+ :show-close="false"
10
+ :close-on-click-modal="false"
11
+ :destroy-on-close="true"
12
+ custom-class="h5-pop-dialog"
13
+ width="100%"
14
+ top="0px"
15
+ @close="dialogClose"
16
+ >
3
17
  <div>
4
18
  <div class="header-box">
5
19
  <i class="back el-icon-close" @click="dialogClose"></i>
@@ -40,7 +54,7 @@
40
54
  <el-button type="primary" class="btn" @click="dialogPrimary" icon="el-icon-check">确 定</el-button>
41
55
  </div>
42
56
  </div>
43
- </div>
57
+ </el-dialog>
44
58
  </template>
45
59
 
46
60
  <script>
@@ -49,6 +63,11 @@ import mixin from './mixins/deleteTaskUserDialogMixin';
49
63
 
50
64
  export default {
51
65
  name: 'deleteTaskUserDialog',
52
- mixins: [selectDialogMixins, mixin]
66
+ mixins: [selectDialogMixins, mixin],
67
+ data() {
68
+ return {
69
+ dialogVisible: true
70
+ };
71
+ }
53
72
  };
54
73
  </script>
@@ -1,12 +1,13 @@
1
- import {requireViewCompat} from "@base/utils/resolveViewComponent";
1
+ import {requireViewAsync} from "@base/utils/resolveViewComponent";
2
2
 
3
3
  let mixin = {};
4
4
  let configUtil = {
5
5
  baseUrl: process.env.VUE_APP_BASE_API,
6
- // 归属自己 / 包内组件本地渲染;归属别家子应用(remote)或缺文件时返回 null,
7
- // 不再抛错崩溃。归属解析见 @base/utils/resolveViewComponent
6
+ // 归属自己 / 包内组件本地渲染;归属别家子应用(remote)、缺文件或 chunk 加载失败时
7
+ // 解析为 null,不抛错崩溃。返回 Promise,调用方必须 await
8
+ // 归属解析见 @base/utils/resolveViewComponent。
8
9
  requireView: (url) => {
9
- return requireViewCompat(url);
10
+ return requireViewAsync(url);
10
11
  },
11
12
  };
12
13
  mixin = {
@@ -30,11 +31,12 @@ mixin = {
30
31
  this.openWfModifyDialog(this.code);
31
32
  },
32
33
  methods: {
33
- openWfModifyDialog() {
34
+ async openWfModifyDialog() {
34
35
  let row = this.paramData;
35
36
  let url = row.mobileurl + ".vue";
36
37
  this.showModifyDialog = true;
37
- this.content = configUtil.requireView(url);
38
+ // await 之后再 $openEditView:它是 200ms 定时放行,冷启动拉 chunk 常超过它
39
+ this.content = await configUtil.requireView(url);
38
40
  this.$openEditView("showBillEdit");
39
41
  },
40
42
  close() {
@@ -0,0 +1,122 @@
1
+ <template>
2
+ <!-- 移动版「选择用户」弹层(转办人 / 沟通对象 / 候选人)。
3
+ 来源是 views/mobile/user/user/dialog.vue,那份仍被手写移动页用着、且
4
+ src/views 不随包发布,所以这里另起一份收进包内,原文件保持原样不动。
5
+
6
+ 与原文件的差别只有三处:
7
+ 1. 外壳从 <div class="pop-box"> 换成 el-dialog + append-to-body —— 节点挂到
8
+ document.body,不再依赖 position:fixed 在宿主子树里侥幸生效(祖先一旦有
9
+ transform / display:none 就废),层级交给 element 的 PopupManager;
10
+ 2. 去掉 :style="'z-index:'+zIndex",同上,避免和 PopupManager 打架;
11
+ 3. 不再 @import resources/css/h5.scss —— 那份不随包发布,且原文件用的是
12
+ 非 scoped 的 <style>,等于把整份手写移动页样式泄成全局。本组件的骨架样式
13
+ 走 xform/styles/h5.scss 的 .h5-pop-dialog(顶层选择器,body 挂载后才命中)。 -->
14
+ <el-dialog
15
+ :visible.sync="dialogVisible"
16
+ :append-to-body="true"
17
+ :modal="false"
18
+ :show-close="false"
19
+ :close-on-click-modal="false"
20
+ :destroy-on-close="true"
21
+ custom-class="h5-pop-dialog"
22
+ width="100%"
23
+ top="0px"
24
+ @close="dialogClose"
25
+ >
26
+ <div>
27
+ <div class="header-box">
28
+ <i class="back el-icon-close" @click="dialogClose"></i>
29
+ {{ $t1('选择用户') }}
30
+ </div>
31
+ <div class="search-H5box">
32
+ <div class="txt">
33
+ <el-input placeholder="姓名" suffix-icon="el-icon-search" v-model="formData.nickName"
34
+ @keyup.enter.native="searchEvent">
35
+ <el-button slot="append" @click="searchEvent"> 搜索</el-button>
36
+ </el-input>
37
+ </div>
38
+ <div class="icon-screen" @click="popStatus = true">
39
+ <i class="iconfont icon-shaixuan1"></i>
40
+ <span>{{ $t1('高级筛选') }}</span>
41
+ </div>
42
+ </div>
43
+ <div class="flex">
44
+ <div class="checkbox-all_list" @scroll="handleScroll">
45
+ <div v-for="(row,rowIndex) in page.records" :key="rowIndex" class="order-item"
46
+ :class="{on:isChecked(row)}" @click="changeCheck(row,rowIndex)">
47
+ <div class="is-checked" v-if="isChecked(row)"><i class="el-icon-check"></i>已选择</div>
48
+ <div class="t1">
49
+ <i class="icon"></i>
50
+ <span>{{ row.nickName }}</span>
51
+ </div>
52
+ <div class="t2">
53
+ <p>登录名:{{ row.loginAccount }}</p>
54
+ <p>角色:{{ row.roleNames }}</p>
55
+ <p>机构:{{ row.saleOrgNames }}</p>
56
+ <p>邮编:{{ row.zipCode }}</p>
57
+ <p>地址:{{ row.address }}</p>
58
+ <p>性别:{{ genderMap[row.gender] }}</p>
59
+ <p>所属组织:{{ row.companyNames }}</p>
60
+ </div>
61
+ </div>
62
+ </div>
63
+ <div class="checkbox-all">
64
+ <div class='ca-t'>已选择用户:</div>
65
+ <div class="ca-c">
66
+ <span v-for="(checkRow, rowIndex) in checkRows" :key="rowIndex">{{ checkRow.nickName }}<i
67
+ class="el-icon-delete" @click="changeCheck(checkRow)"></i></span>
68
+ </div>
69
+ </div>
70
+ </div>
71
+ <div class="fixed-bottom-btns">
72
+ <el-button type="primary" plain class="btn" @click="dialogClose" icon="el-icon-close">{{ $t1('取 消') }}
73
+ </el-button>
74
+ <el-button type="primary" class="btn" @click="dialogPrimary" icon="el-icon-check">{{ $t1('确 定') }}</el-button>
75
+ </div>
76
+ <h5SearchDialog v-if="popStatus" :visiable.sync="popStatus" @searchEvent="confirmSearchDialog"
77
+ @resetEvent="resetSearchDialog">
78
+ <el-form label-position="top">
79
+ <el-form-item label="登录名">
80
+ <el-input v-model="formData.loginAccount" class="txt" clearable/>
81
+ </el-form-item>
82
+ <el-form-item label="姓名">
83
+ <el-input v-model="formData.nickName" class="txt" clearable/>
84
+ </el-form-item>
85
+ </el-form>
86
+ </h5SearchDialog>
87
+ </div>
88
+ </el-dialog>
89
+ </template>
90
+
91
+ <script>
92
+ import mixin from "@base/mixins/mobile/selectDialog/index";
93
+
94
+ export default {
95
+ name: 'selectUserDialog',
96
+ mixins: [mixin],
97
+ props: ['visiable', 'multi', 'rows', 'param'],
98
+ data() {
99
+ return {
100
+ // 父级用 v-if 控制存活,组件一挂载就是「已打开」。关闭统一走 dialogClose()
101
+ // 向父级 $emit('update:visiable', false),由父级的 v-if 销毁本组件。
102
+ dialogVisible: true,
103
+ genderMap: {1: '男', 2: '女'}
104
+ };
105
+ },
106
+ created() {
107
+ this.initSetting({
108
+ url: USER_PREFIX + '/user/listCurrentPage',
109
+ param: () => {
110
+ return {
111
+ enabled: true,
112
+ ...this.formData,
113
+ ...this.param,
114
+ }
115
+ }
116
+ })
117
+ },
118
+ mounted() {
119
+ this.searchEvent();
120
+ }
121
+ };
122
+ </script>
@@ -1,6 +1,20 @@
1
1
  <template>
2
2
  <div>
3
- <div class="pop-box">
3
+ <!-- 外壳改成 el-dialog + append-to-body,说明见 urgingDialog.vue。
4
+ 下面的选用户弹层是本弹层里再弹一层,两层都由 PopupManager 递增发号,
5
+ 后开的天然在上,不用手写 z-index。 -->
6
+ <el-dialog
7
+ :visible.sync="dialogVisible"
8
+ :append-to-body="true"
9
+ :modal="false"
10
+ :show-close="false"
11
+ :close-on-click-modal="false"
12
+ :destroy-on-close="true"
13
+ custom-class="h5-pop-dialog"
14
+ width="100%"
15
+ top="0px"
16
+ @close="dialogClose"
17
+ >
4
18
  <div>
5
19
  <div class="header-box">
6
20
  <i class="back el-icon-close" @click="dialogClose"></i>
@@ -30,7 +44,7 @@
30
44
  <el-button type="primary" class="btn" @click="dialogClose" icon="el-icon-check">确 定</el-button>
31
45
  </div>
32
46
  </div>
33
- </div>
47
+ </el-dialog>
34
48
  <user-dialog v-if="showUserDialog" :visiable.sync="showUserDialog" @close="showUserDialog = false"
35
49
  @confirm="userConfirm" multi="true" :rows="userRows"></user-dialog>
36
50
  </div>
@@ -39,10 +53,17 @@
39
53
  <script>
40
54
  import selectDialogMixins from '../../../mixins/mobile/selectDialog/index.js';
41
55
  import mixin from './mixins/setCandidateDialogMixin';
42
- import userDialog from "../../../views/mobile/user/user/dialog.vue";
56
+ // 选用户弹层改用包内的 selectUserDialog(el-dialog 版)。原来引的
57
+ // views/mobile/user/user/dialog.vue 仍是 .pop-box 版、且不随包发布,保持原样不动。
58
+ import userDialog from "./selectUserDialog.vue";
43
59
 
44
60
  export default {
45
61
  mixins: [selectDialogMixins, mixin],
46
- components: {userDialog}
62
+ components: {userDialog},
63
+ data() {
64
+ return {
65
+ dialogVisible: true
66
+ };
67
+ }
47
68
  };
48
69
  </script>
@@ -1,5 +1,21 @@
1
1
  <template>
2
- <div class="pop-box">
2
+ <!-- 外壳是 el-dialog + append-to-body:节点挂到 document.body,不再依赖
3
+ `position:fixed` 在宿主子树里侥幸生效(祖先一旦有 transform/display:none 就废),
4
+ 层级也交给 element 的 PopupManager,不用再手写 z-index。
5
+ el-dialog 自带的表头关掉——标题和关闭按钮都在下面的 .header-box 里。
6
+ 骨架样式见 xform/styles/h5.scss 的 .h5-pop-dialog(必须是顶层选择器)。 -->
7
+ <el-dialog
8
+ :visible.sync="dialogVisible"
9
+ :append-to-body="true"
10
+ :modal="false"
11
+ :show-close="false"
12
+ :close-on-click-modal="false"
13
+ :destroy-on-close="true"
14
+ custom-class="h5-pop-dialog"
15
+ width="100%"
16
+ top="0px"
17
+ @close="dialogClose"
18
+ >
3
19
  <div>
4
20
  <div class="header-box">
5
21
  <i class="back el-icon-close" @click="dialogClose"></i>
@@ -38,7 +54,7 @@
38
54
  </el-button>
39
55
  </div>
40
56
  </div>
41
- </div>
57
+ </el-dialog>
42
58
  </template>
43
59
 
44
60
  <script>
@@ -47,6 +63,13 @@ import mixin from './mixins/urgingDialogMixin';
47
63
 
48
64
  export default {
49
65
  name: 'urgingDialog',
50
- mixins: [selectDialogMixins, mixin]
66
+ mixins: [selectDialogMixins, mixin],
67
+ data() {
68
+ // 父级用 v-if 控制存活,组件一挂载就是「已打开」。关闭统一走 dialogClose()
69
+ // 向父级 $emit('update:visiable', false),由父级的 v-if 销毁本组件。
70
+ return {
71
+ dialogVisible: true
72
+ };
73
+ }
51
74
  };
52
75
  </script>
@@ -1,4 +1,8 @@
1
1
  <template>
2
+ <!-- 注意:这一个没有跟着「移动版流程弹层改 el-dialog + append-to-body」那一轮走,
3
+ 仍是 .pop-box 就地渲染。原因是 H5 不需要「修改单据」——xform H5 底栏明确
4
+ 不放这个按钮(见 form-render/container-item/detail-h5-item.vue 的说明),
5
+ 它只从手写移动页的 buttonGroup 进。样式仍走各应用自己的 h5.scss。 -->
2
6
  <div class="pop-box">
3
7
  <div>
4
8
  <div class="header-box">
@@ -20,7 +20,7 @@
20
20
  </div>
21
21
  <ul class="el-upload-list el-upload-list--picture">
22
22
  <div class="nodata" v-if="pasteList.length == 0">
23
- <img src="~@/resources/images/nodata2.png"/>
23
+ <img :src="$assetUrl(require('@/resources/images/nodata2.png'))" />
24
24
  </div>
25
25
  <li v-for="(pasteFile,index) in pasteList" :key="index" class="el-upload-list__item is-success">
26
26
  <div>
@@ -1,78 +1,78 @@
1
- import { getTableStateValue } from './state';
2
-
3
- let modules = {};
4
-
5
- modules = {
6
- className: "list-table",
7
- resizable: true,
8
- stripe: true,
9
- border: 'default',
10
- toolbarConfig: {
11
- className: 'toolSet',
12
- custom: {
13
- icon: 'el-icon-s-tools'
14
- }
15
- },
16
- pagerConfig: {
17
- className: 'pages-box',
18
- perfect: false,
19
- slots: {
20
- left: (obj, b, c) => {
21
- },
22
- right: (obj, b, c) => {
23
- let $grid = obj.$grid;
24
- let tableDataInfo = $grid.getTableData();
25
- let data = tableDataInfo.fullData;
26
- let h = $grid.$createElement;
27
-
28
- let proxyInfo = $grid.getProxyInfo();
29
- let pager = proxyInfo ? proxyInfo.pager : null;
30
- let celems = [h('span', $grid.$t2('当前记录', 'components.table.pageInfo')),
31
- h('span', {
32
- attrs: {
33
- class: 'f-red'
34
- }
35
- }, ' ' + tableDataInfo.visibleData.length + ' ')
36
- ];
37
- if (pager) {
38
- if (pager && getTableStateValue($grid, 'isQueryAllPage')) {
39
- celems.push(h('span', '/'));
40
- celems.push(h('span', {
41
- attrs: {
42
- class: 'f-red'
43
- }
44
- }, ' ' + pager.total));
45
- }
46
-
47
- let iconClass = getTableStateValue($grid, 'isQueryAllPage') ? 'icon-yincang' : 'el-icon-view';
48
-
49
- celems.push(h('i', {
50
- attrs: {
51
- class: iconClass,
52
- },
53
- on: {
54
- click: function click(evnt) {
55
- let refTarget = $grid.$vnode.data.ref;
56
- let that = $grid.params.originOption.vue;
57
- let tableName = $grid.params.originOption.tableName;
58
- $grid.$vxeTableUtil.checkQueryTotal(that, refTarget,
59
- !getTableStateValue($grid, 'isQueryAllPage'));
60
- }
61
- }
62
- }));
63
-
64
- }
65
- let elem = h('span', {}, celems);
66
- return [elem];
67
- }
68
- }
69
- },
70
- checkboxConfig: {
71
- reserve: true
72
- },
73
- rowConfig: {
74
- keyField: "_X_ROW_KEY"
75
- }
76
- };
77
-
78
- export default modules;
1
+ import { getTableStateValue } from './state';
2
+
3
+ let modules = {};
4
+
5
+ modules = {
6
+ className: "list-table",
7
+ resizable: true,
8
+ stripe: true,
9
+ border: 'default',
10
+ toolbarConfig: {
11
+ className: 'toolSet',
12
+ custom: {
13
+ icon: 'el-icon-s-tools'
14
+ }
15
+ },
16
+ pagerConfig: {
17
+ className: 'pages-box',
18
+ perfect: false,
19
+ slots: {
20
+ left: (obj, b, c) => {
21
+ },
22
+ right: (obj, b, c) => {
23
+ let $grid = obj.$grid;
24
+ let tableDataInfo = $grid.getTableData();
25
+ let data = tableDataInfo.fullData;
26
+ let h = $grid.$createElement;
27
+
28
+ let proxyInfo = $grid.getProxyInfo();
29
+ let pager = proxyInfo ? proxyInfo.pager : null;
30
+ let celems = [h('span', $grid.$t2('当前记录', 'components.table.pageInfo')),
31
+ h('span', {
32
+ attrs: {
33
+ class: 'f-red'
34
+ }
35
+ }, ' ' + tableDataInfo.visibleData.length + ' ')
36
+ ];
37
+ if (pager) {
38
+ if (pager && getTableStateValue($grid, 'isQueryAllPage')) {
39
+ celems.push(h('span', '/'));
40
+ celems.push(h('span', {
41
+ attrs: {
42
+ class: 'f-red'
43
+ }
44
+ }, ' ' + pager.total));
45
+ }
46
+
47
+ let iconClass = getTableStateValue($grid, 'isQueryAllPage') ? 'icon-yincang' : 'el-icon-view';
48
+
49
+ celems.push(h('i', {
50
+ attrs: {
51
+ class: iconClass,
52
+ },
53
+ on: {
54
+ click: function click(evnt) {
55
+ let refTarget = $grid.$vnode.data.ref;
56
+ let that = $grid.params.originOption.vue;
57
+ let tableName = $grid.params.originOption.tableName;
58
+ $grid.$vxeTableUtil.checkQueryTotal(that, refTarget,
59
+ !getTableStateValue($grid, 'isQueryAllPage'));
60
+ }
61
+ }
62
+ }));
63
+
64
+ }
65
+ let elem = h('span', {}, celems);
66
+ return [elem];
67
+ }
68
+ }
69
+ },
70
+ checkboxConfig: {
71
+ reserve: true
72
+ },
73
+ rowConfig: {
74
+ keyField: "_X_ROW_KEY"
75
+ }
76
+ };
77
+
78
+ export default modules;