cloud-web-corejs 1.0.281 → 1.1.0-dev.4

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 (158) 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 +44 -2
  4. package/src/components/VabUpload/mixins.js +126 -19
  5. package/src/components/VabUpload/view.vue +247 -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/mobile/statusTag/mixins.js +1 -61
  18. package/src/components/mobile/wf/content.vue +1662 -1556
  19. package/src/components/mobile/wf/mixins/wfModifyDialogMixin.js +8 -6
  20. package/src/components/table/config.js +78 -78
  21. package/src/components/table/index.js +1276 -1276
  22. package/src/components/table/plugins/cell-area/index.js +1055 -0
  23. package/src/components/table/plugins/cell-area/index.scss +77 -0
  24. package/src/components/table/plugins/cell-area/util.js +224 -0
  25. package/src/components/table/tableForm.vue +330 -330
  26. package/src/components/table/tableFormMixin.js +318 -318
  27. package/src/components/table/vxeFilter/index.js +163 -163
  28. package/src/components/table/vxeFilter/mixin.js +316 -316
  29. package/src/components/wf/content.vue +1188 -1188
  30. package/src/components/wf/wf.js +40 -20
  31. package/src/components/wf/wfActionDropdown.vue +1 -1
  32. package/src/components/wf/wfActionItems.js +1 -1
  33. 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
  34. 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
  35. 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
  36. 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
  37. package/src/components/xform/form-designer/designer.js +15 -0
  38. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +269 -269
  39. package/src/components/xform/form-designer/form-widget/container-widget/detail-temp-widget.vue +132 -0
  40. package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +250 -250
  41. package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +319 -320
  42. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +365 -365
  43. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +554 -555
  44. package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +409 -409
  45. package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +150 -132
  46. package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +114 -114
  47. package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +154 -154
  48. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +47 -1
  49. package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +178 -178
  50. package/src/components/xform/form-designer/form-widget/field-widget/mixins/time-limit-mixin.js +77 -77
  51. package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +6 -0
  52. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +139 -139
  53. package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +106 -106
  54. package/src/components/xform/form-designer/form-widget/field-widget/time-widget.vue +134 -134
  55. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +1 -0
  56. package/src/components/xform/form-designer/setting-panel/form-setting.vue +39 -39
  57. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +10 -10
  58. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/exportItemColumns-dialog.vue +438 -432
  59. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +2103 -2103
  60. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-temp-edito.vue +90 -0
  61. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +82 -82
  62. package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +19 -5
  63. package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +8 -8
  64. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +137 -137
  65. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +237 -237
  66. package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +43 -43
  67. package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +43 -43
  68. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +96 -96
  69. package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-item-button-editor.vue +51 -0
  70. package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +42 -42
  71. package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +43 -43
  72. package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +158 -158
  73. package/src/components/xform/form-designer/setting-panel/property-editor/h5Span-editor.vue +51 -0
  74. package/src/components/xform/form-designer/setting-panel/property-editor/itemStyle-editor.vue +39 -0
  75. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +188 -188
  76. package/src/components/xform/form-designer/setting-panel/property-editor/styleTempClass-editor.vue +51 -0
  77. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +347 -347
  78. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +4 -0
  79. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +59 -3
  80. package/src/components/xform/form-render/container-item/data-table-mixin.js +151 -93
  81. package/src/components/xform/form-render/container-item/detail-h5-item.vue +183 -32
  82. package/src/components/xform/form-render/container-item/detail-temp-item.vue +110 -0
  83. package/src/components/xform/form-render/container-item/h5-card-pane-item.vue +160 -140
  84. package/src/components/xform/form-render/container-item/list-h5-item.vue +1688 -1700
  85. package/src/components/xform/form-render/index.vue +153 -147
  86. package/src/components/xform/form-render/indexMixin.js +12 -0
  87. package/src/components/xform/lang/en-US.js +10 -0
  88. package/src/components/xform/lang/zh-CN.js +12 -0
  89. package/src/components/xform/mixins/defaultHandle.js +707 -707
  90. package/src/components/xform/styles/h5.scss +1992 -0
  91. package/src/components/xform/utils/textMaskUtil.js +182 -179
  92. package/src/components/xform/utils/treeTableUtil.js +1292 -1265
  93. package/src/components/xform/utils/util.js +56 -11
  94. package/src/index.js +9 -4
  95. package/src/layout/components/extractedCode/viewDialog.vue +7 -7
  96. package/src/router/index.js +21 -0
  97. package/src/router/modules/customer.js +71 -14
  98. package/src/store/modules/permission.js +17 -18
  99. package/src/utils/pdfUtil.js +429 -429
  100. package/src/utils/resolveViewComponent.js +142 -16
  101. package/src/views/bd/project/branch/bd_branch/edit.vue +145 -0
  102. package/src/views/bd/project/branch/bd_branch/list.vue +72 -0
  103. package/src/views/bd/project/branch/bd_branch/menuKindDialog.vue +106 -0
  104. package/src/views/bd/project/branch/bd_branch/mixins/edit.js +189 -0
  105. package/src/views/bd/project/branch/bd_branch/mixins/list.js +124 -0
  106. package/src/views/bd/project/branch/bd_branch/mixins/menuKindDialog.js +85 -0
  107. package/src/views/bd/project/branch/form_script/list.vue +31 -0
  108. package/src/views/bd/project/branch/form_template/list.vue +30 -0
  109. package/src/views/bd/project/branch/menu_kind/list.vue +31 -0
  110. package/src/views/bd/project/common/form_script/list.vue +16 -0
  111. package/src/views/bd/project/common/form_template/list.vue +15 -0
  112. package/src/views/bd/project/common/menu_kind/list.vue +15 -0
  113. package/src/views/bd/project/core/branchContext.js +100 -0
  114. package/src/views/bd/project/core/branchPage.js +78 -0
  115. package/src/views/bd/project/core/branchPageWrap.vue +225 -0
  116. package/src/views/bd/project/core/branchScope.js +44 -0
  117. package/src/views/bd/project/core/branchSearchPage.js +285 -0
  118. package/src/views/bd/project/core/branchSelect.vue +85 -0
  119. package/src/views/bd/project/core/branchTreeBar.vue +81 -0
  120. package/src/views/bd/project/core/httpBranchPatch.js +58 -0
  121. package/src/views/bd/project/datatable/menu_kind/list.vue +15 -0
  122. package/src/views/bd/project/datatable/table_model/list.vue +15 -0
  123. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  124. package/src/views/bd/setting/table_model/edit.vue +1066 -1066
  125. package/src/views/bd/setting/table_model/mixins/edit.js +1455 -1455
  126. package/src/views/bd/setting/table_model/mixins/zdDialog.js +148 -148
  127. package/src/views/demo/bizTab/bill/billConfig.js +41 -0
  128. package/src/views/demo/bizTab/bill/detail.vue +436 -0
  129. package/src/views/demo/bizTab/bill/list.vue +288 -0
  130. package/src/views/demo/bizTab/bill/productDialog.vue +176 -0
  131. package/src/views/demo/bizTab/simple/billApi.js +123 -0
  132. package/src/views/demo/bizTab/simple/detail.vue +407 -0
  133. package/src/views/demo/bizTab/simple/list.vue +217 -0
  134. package/src/views/demo/bizTab/standalone/index.vue +121 -0
  135. package/src/views/demo/bizTab/wf/billConfig.js +44 -0
  136. package/src/views/demo/bizTab/wf/detail.vue +661 -0
  137. package/src/views/demo/bizTab/wf/list.vue +242 -0
  138. package/src/views/support/form-dialog-demo/demoPickerDialog.vue +72 -0
  139. package/src/views/support/form-dialog-demo/index.vue +537 -0
  140. package/src/views/user/file_view_ins/list.vue +3 -3
  141. package/src/views/user/home/index.vue +8 -6
  142. package/src/views/user/home/wjl/content.vue +1569 -0
  143. package/src/views/user/notify_message/dialog.vue +7 -5
  144. package/src/views/user/outLink/cc_form_view.vue +188 -0
  145. package/src/views/user/outLink/form_view.vue +2 -2
  146. package/src/views/user/outLink/index.vue +4 -4
  147. package/src/views/user/outLink/view.vue +3 -3
  148. package/src/views/user/role/edit.vue +632 -632
  149. package/src/views/user/role/list.vue +260 -260
  150. package/src/views/user/wf/iframe/index.vue +3 -3
  151. package/src/views/user/wf/iframe/index2.vue +3 -3
  152. package/src/views/user/wf/wf_manage/list.vue +1112 -1116
  153. package/src/views/user/wf/wf_manage/list2.vue +9 -13
  154. package/src/views/user/wf/wf_manage/wfContentDialog.vue +8 -5
  155. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-menu-widget.vue +0 -106
  156. package/src/components/xform/form-designer/form-widget/field-widget/tableexportbuttonwidget.vue +0 -99
  157. package/src/components/xform/form-render/container-item/list-h5-item2.vue +0 -1340
  158. package/src/utils/wf.js +0 -766
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!-- 分支模块:挂在左侧树顶部、「表单分类」之上 -->
3
+ <div class="bd-branch-tree-bar">
4
+ <div class="branch-info">
5
+ <span class="value" :title="branchLabel">{{ branchLabel }}</span>
6
+ </div>
7
+ <el-tooltip
8
+ :enterable="false"
9
+ effect="dark"
10
+ :content="$t1('打开新分支')"
11
+ placement="top"
12
+ popper-class="tooltip-skin"
13
+ >
14
+ <el-button
15
+ class="open-new"
16
+ icon="el-icon-plus"
17
+ @click="$emit('open-new')"
18
+ ></el-button>
19
+ </el-tooltip>
20
+ </div>
21
+ </template>
22
+
23
+ <script>
24
+ export default {
25
+ name: "bdBranchTreeBar",
26
+ props: {
27
+ branchLabel: String,
28
+ },
29
+ };
30
+ </script>
31
+
32
+ <style lang="scss" scoped>
33
+ /* 与树上方的 .tree-userChange 保持同一套模块样式 */
34
+ .bd-branch-tree-bar {
35
+ flex: none;
36
+ display: flex;
37
+ align-items: center;
38
+ margin: 9px 10px 0;
39
+ padding: 7px 7px 7px 10px;
40
+ background: #f4f6fa;
41
+ border-radius: 5px;
42
+
43
+ .branch-info {
44
+ flex: 1;
45
+ min-width: 0;
46
+ display: flex;
47
+ align-items: flex-start;
48
+ font-size: 14px;
49
+ line-height: 20px;
50
+
51
+ .value {
52
+ flex: 1;
53
+ min-width: 0;
54
+ /* 长分支名换行显示,最多两行,超出再省略 */
55
+ display: -webkit-box;
56
+ -webkit-line-clamp: 2;
57
+ -webkit-box-orient: vertical;
58
+ overflow: hidden;
59
+ text-overflow: ellipsis;
60
+ word-break: break-all;
61
+ font-weight: 600;
62
+ /* 与详情页标题栏的分支标记同色 */
63
+ color: #ff731c;
64
+ }
65
+ }
66
+
67
+ .open-new {
68
+ flex: none;
69
+ width: 26.5px;
70
+ height: 26.5px;
71
+ margin-left: 8px;
72
+ padding: 0;
73
+ line-height: 26.5px;
74
+ text-align: center;
75
+ background: #fff;
76
+ border: solid 1px rgba(99, 134, 250, 0.15);
77
+ border-radius: 5px;
78
+ color: #6386fa;
79
+ }
80
+ }
81
+ </style>
@@ -0,0 +1,58 @@
1
+ import Vue from "vue";
2
+ import { findScope, getScopeParams, needInject } from "./branchContext";
3
+
4
+ /**
5
+ * 给 Vue.prototype.$http 追加分支参数。
6
+ *
7
+ * $commonHttp 内部也是转调 this.$http,vxe 表格代理、$jsonExport、表单设计器保存、
8
+ * 版本回滚等全部走这一个出口,所以只需要在这里包一层就能覆盖所有请求点,
9
+ * 不必改动 bd/setting 下的任何原文件。
10
+ */
11
+
12
+ let patched = false;
13
+
14
+ /** 调用方已显式指定分支参数时以调用方为准(如分支定义里固定查通用分类) */
15
+ function merge(data, params) {
16
+ let next = { ...(data || {}) };
17
+ Object.keys(params).forEach((key) => {
18
+ if (next[key] === undefined || next[key] === null) {
19
+ next[key] = params[key];
20
+ }
21
+ });
22
+ return next;
23
+ }
24
+
25
+ export function installBranchHttp() {
26
+ if (patched) {
27
+ return;
28
+ }
29
+ const origin = Vue.prototype.$http;
30
+ // $http 由 utils/vab.js 在启动时安装,此处尚未就绪则不标记已打补丁,留待下次调用
31
+ if (typeof origin !== "function") {
32
+ return;
33
+ }
34
+ patched = true;
35
+
36
+ const wrapped = function (option) {
37
+ let scope = findScope(this);
38
+ let params = needInject(option && option.url) ? getScopeParams(scope) : null;
39
+ if (!params) {
40
+ return origin.apply(this, arguments);
41
+ }
42
+ let data = option.data;
43
+ let nextData;
44
+ if (Array.isArray(data)) {
45
+ // /formScript/saves 的 body 是 DTO 数组,需要逐项补参数
46
+ nextData = data.map((item) => merge(item, params));
47
+ } else {
48
+ nextData = merge(data, params);
49
+ }
50
+ return origin.call(this, { ...option, data: nextData });
51
+ };
52
+
53
+ // request.js 在 $http 上挂了额外属性(如取消、拦截相关),透传出去
54
+ Object.assign(wrapped, origin);
55
+ wrapped.prototype = origin.prototype;
56
+
57
+ Vue.prototype.$http = wrapped;
58
+ }
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <baseList></baseList>
3
+ </template>
4
+
5
+ <script>
6
+ import branchScope from "../../core/branchScope";
7
+ import { BRANCH_FLAG } from "../../core/branchContext";
8
+ import baseList from "@base/views/bd/setting/menu_kind/list.vue";
9
+
10
+ export default {
11
+ name: "dt_menu_kind:list",
12
+ components: { baseList },
13
+ mixins: [branchScope(BRANCH_FLAG.DATA_TABLE)],
14
+ };
15
+ </script>
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <baseList></baseList>
3
+ </template>
4
+
5
+ <script>
6
+ import branchScope from "../../core/branchScope";
7
+ import { BRANCH_FLAG } from "../../core/branchContext";
8
+ import baseList from "@base/views/bd/setting/table_model/list.vue";
9
+
10
+ export default {
11
+ name: "dt_table_model:list",
12
+ components: { baseList },
13
+ mixins: [branchScope(BRANCH_FLAG.DATA_TABLE)],
14
+ };
15
+ </script>
@@ -1,174 +1,174 @@
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="1200px"
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
- <tableForm :formData.sync="formData" @searchEvent="searchEvent" @resetEvent="resetEvent">
28
- <template #buttonLeft>
29
- </template>
30
- <template #buttonRight>
31
- <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
32
- plain>{{ $t1('刷新') }}
33
- </vxe-button>
34
- <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">{{
35
- $t1('搜索')
36
- }}
37
- </vxe-button>
38
- </template>
39
- </tableForm>
40
- </template>
41
- </vxe-grid>
42
- </div>
43
- <label id="labBtn" class="transverse">
44
- <div class="icon">
45
- <i class="el-icon-more"></i>
46
- <i class="el-icon-more"></i>
47
- </div>
48
- </label>
49
- <div class="multipleChoice">
50
- <el-tooltip :enterable="false" effect="dark" :content="$t1('全部删除')" placement="top"><a
51
- class="allDel icon-quanbushanchu" @click="clearChecked()"></a></el-tooltip>
52
- <div class="list">
53
- <div class="item" v-for="(checkRow, index) in checkRows" :key="index">
54
- <p>{{ getCheckLabel(checkRow, 'bdCompanyCode') }}</p>
55
- <a class="el-icon-close" @click="clearTable1Select(index)"></a>
56
- </div>
57
- </div>
58
- </div>
59
- <span slot="footer" class="dialog-footer">
60
- <span class="fl tips" v-if="!selectMulti">{{ $t1('注:双击确认选择(单选)') }}</span>
61
- <el-button type="primary" plain class="button-sty" @click="dialogClose">
62
- <i class="el-icon-close el-icon"></i>
63
- {{ $t1('取 消') }}
64
- </el-button>
65
- <el-button type="primary" @click="dialogPrimary" class="button-sty">
66
- <i class="el-icon-check el-icon"></i>
67
- {{ $t1('确 定') }}
68
- </el-button>
69
- </span>
70
- </el-dialog>
71
- </template>
72
-
73
- <script>
74
- import {selectDialogMixins} from '@base/mixins/selectDialog/index.js';
75
- import tableForm from "@base/components/table/tableForm.vue";
76
-
77
- export default {
78
- name: 'positionDialog',
79
- props: ['visiable', 'multi', 'rows', 'param'],
80
- mixins: [selectDialogMixins],
81
- components: {
82
- tableForm
83
- },
84
- created() {
85
- this.initSetting();
86
- },
87
- mounted() {
88
- this.initTableM1();
89
- },
90
- data() {
91
- var that = this;
92
- return {
93
- showDialog: true,
94
- falseValue: false,
95
- selectMulti: true,
96
- formData: {},
97
- vxeOption: {}
98
- };
99
- },
100
- methods: {
101
- initTableM1() {
102
- let that = this;
103
- let bdServiceMap = {"dev": this.$t1("测试"), "uat": this.$t1("UAT"), "prod": this.$t1("正式")};
104
- let url = USER_PREFIX + '/bd_company_env/listPage';
105
- let tableOption = {
106
- vue: that,
107
- tableRef: 'table-m1',
108
- tableName: 'basic_position_dialog-m1',
109
- path: url,
110
- param: () => {
111
- return {
112
- ...this.formData
113
- }
114
- },
115
- columns: [
116
- {type: 'checkbox', fixed: 'left', width: 48, resizable: false},
117
- {
118
- title: this.$t1('服务'),
119
- field: 'bdService',
120
- width: 150,
121
- fixed: 'left',
122
- slots: {
123
- default: ({row}) => {
124
- return bdServiceMap[row.bdService] || "";
125
- }
126
- }
127
- },
128
- {
129
- title: this.$t1('组织编码'),
130
- field: 'bdCompanyCode',
131
- width: 150,
132
- },
133
- {
134
- title: this.$t1('组织备注'),
135
- field: 'bdCompanyRemark',
136
- width: 150,
137
- },
138
- {
139
- width: 47,
140
- fixed: 'right',
141
- title: '',
142
- sortable: false
143
- }
144
- ],
145
- searchColumns: [
146
- {
147
- title: this.$t1('服务'), field: "bdService", type: "select", common: true, itemOption: [
148
- {label: this.$t1("测试"), value: "dev"},
149
- {label: this.$t1("UAT"), value: "uat"},
150
- {label: this.$t1("正式"), value: "prod"}
151
- ]
152
- },
153
- {
154
- title: this.$t1("组织编码"),
155
- field: "bdCompanyCode",
156
- type: "input",
157
- common: true,
158
- }
159
- ],
160
- config: {
161
- checkboxConfig: {
162
- checkStrictly: true,
163
- showHeader: this.selectMulti,
164
- trigger: 'row'
165
- }
166
- }
167
- };
168
- this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
169
- that.vxeOption = opts;
170
- });
171
- }
172
- }
173
- };
174
- </script>
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="1200px"
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
+ <tableForm :formData.sync="formData" @searchEvent="searchEvent" @resetEvent="resetEvent">
28
+ <template #buttonLeft>
29
+ </template>
30
+ <template #buttonRight>
31
+ <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
32
+ plain>{{ $t1('刷新') }}
33
+ </vxe-button>
34
+ <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">{{
35
+ $t1('搜索')
36
+ }}
37
+ </vxe-button>
38
+ </template>
39
+ </tableForm>
40
+ </template>
41
+ </vxe-grid>
42
+ </div>
43
+ <label id="labBtn" class="transverse">
44
+ <div class="icon">
45
+ <i class="el-icon-more"></i>
46
+ <i class="el-icon-more"></i>
47
+ </div>
48
+ </label>
49
+ <div class="multipleChoice">
50
+ <el-tooltip :enterable="false" effect="dark" :content="$t1('全部删除')" placement="top"><a
51
+ class="allDel icon-quanbushanchu" @click="clearChecked()"></a></el-tooltip>
52
+ <div class="list">
53
+ <div class="item" v-for="(checkRow, index) in checkRows" :key="index">
54
+ <p>{{ getCheckLabel(checkRow, 'bdCompanyCode') }}</p>
55
+ <a class="el-icon-close" @click="clearTable1Select(index)"></a>
56
+ </div>
57
+ </div>
58
+ </div>
59
+ <span slot="footer" class="dialog-footer">
60
+ <span class="fl tips" v-if="!selectMulti">{{ $t1('注:双击确认选择(单选)') }}</span>
61
+ <el-button type="primary" plain class="button-sty" @click="dialogClose">
62
+ <i class="el-icon-close el-icon"></i>
63
+ {{ $t1('取 消') }}
64
+ </el-button>
65
+ <el-button type="primary" @click="dialogPrimary" class="button-sty">
66
+ <i class="el-icon-check el-icon"></i>
67
+ {{ $t1('确 定') }}
68
+ </el-button>
69
+ </span>
70
+ </el-dialog>
71
+ </template>
72
+
73
+ <script>
74
+ import {selectDialogMixins} from '@base/mixins/selectDialog/index.js';
75
+ import tableForm from "@base/components/table/tableForm.vue";
76
+
77
+ export default {
78
+ name: 'positionDialog',
79
+ props: ['visiable', 'multi', 'rows', 'param'],
80
+ mixins: [selectDialogMixins],
81
+ components: {
82
+ tableForm
83
+ },
84
+ created() {
85
+ this.initSetting();
86
+ },
87
+ mounted() {
88
+ this.initTableM1();
89
+ },
90
+ data() {
91
+ var that = this;
92
+ return {
93
+ showDialog: true,
94
+ falseValue: false,
95
+ selectMulti: true,
96
+ formData: {},
97
+ vxeOption: {}
98
+ };
99
+ },
100
+ methods: {
101
+ initTableM1() {
102
+ let that = this;
103
+ let bdServiceMap = {"dev": this.$t1("测试"), "uat": this.$t1("UAT"), "prod": this.$t1("正式")};
104
+ let url = USER_PREFIX + '/bd_company_env/listPage';
105
+ let tableOption = {
106
+ vue: that,
107
+ tableRef: 'table-m1',
108
+ tableName: 'basic_position_dialog-m1',
109
+ path: url,
110
+ param: () => {
111
+ return {
112
+ ...this.formData
113
+ }
114
+ },
115
+ columns: [
116
+ {type: 'checkbox', fixed: 'left', width: 48, resizable: false},
117
+ {
118
+ title: this.$t1('服务'),
119
+ field: 'bdService',
120
+ width: 150,
121
+ fixed: 'left',
122
+ slots: {
123
+ default: ({row}) => {
124
+ return bdServiceMap[row.bdService] || "";
125
+ }
126
+ }
127
+ },
128
+ {
129
+ title: this.$t1('组织编码'),
130
+ field: 'bdCompanyCode',
131
+ width: 150,
132
+ },
133
+ {
134
+ title: this.$t1('组织备注'),
135
+ field: 'bdCompanyRemark',
136
+ width: 150,
137
+ },
138
+ {
139
+ width: 47,
140
+ fixed: 'right',
141
+ title: '',
142
+ sortable: false
143
+ }
144
+ ],
145
+ searchColumns: [
146
+ {
147
+ title: this.$t1('服务'), field: "bdService", type: "select", common: true, itemOption: [
148
+ {label: this.$t1("测试"), value: "dev"},
149
+ {label: this.$t1("UAT"), value: "uat"},
150
+ {label: this.$t1("正式"), value: "prod"}
151
+ ]
152
+ },
153
+ {
154
+ title: this.$t1("组织编码"),
155
+ field: "bdCompanyCode",
156
+ type: "input",
157
+ common: true,
158
+ }
159
+ ],
160
+ config: {
161
+ checkboxConfig: {
162
+ checkStrictly: true,
163
+ showHeader: this.selectMulti,
164
+ trigger: 'row'
165
+ }
166
+ }
167
+ };
168
+ this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
169
+ that.vxeOption = opts;
170
+ });
171
+ }
172
+ }
173
+ };
174
+ </script>