imatrix-ui 0.2.6-up → 0.2.7-up

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 (206) hide show
  1. package/README.md +7 -7
  2. package/index.html +13 -13
  3. package/lib/super-ui.css +1 -1
  4. package/lib/super-ui.js +2724 -1932
  5. package/lib/super-ui.umd.cjs +24 -24
  6. package/package.json +1 -1
  7. package/packages/IntervalSelection/index.js +6 -6
  8. package/packages/IntervalSelection/src/quarterScope.vue +405 -405
  9. package/packages/IntervalSelection/src/sectionDate.vue +475 -475
  10. package/packages/breadcrumb/index.js +6 -6
  11. package/packages/breadcrumb/src/breadcrumb.vue +81 -81
  12. package/packages/department-tree/index.js +6 -6
  13. package/packages/department-tree/src/department-tree.vue +113 -113
  14. package/packages/department-tree-inline/index.js +6 -6
  15. package/packages/department-tree-inline/src/department-multi-tree-inline.vue +472 -472
  16. package/packages/department-tree-inline/src/department-single-tree-inline.vue +340 -340
  17. package/packages/department-tree-inline/src/department-tree-inline.vue +86 -86
  18. package/packages/department-tree-inline/src/department-tree-service.js +344 -344
  19. package/packages/department-tree-inline/src/search-result.vue +235 -235
  20. package/packages/department-user-tree/index.js +6 -6
  21. package/packages/department-user-tree/src/department-user-multiple-tree.vue +129 -129
  22. package/packages/department-user-tree/src/department-user-single-tree.vue +94 -94
  23. package/packages/department-user-tree/src/department-user-tree.vue +114 -114
  24. package/packages/department-user-tree-inline/index.js +9 -9
  25. package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +731 -731
  26. package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +334 -334
  27. package/packages/department-user-tree-inline/src/department-user-tree-inline.vue +87 -87
  28. package/packages/department-user-tree-inline/src/department-user-tree-multi-service.js +309 -309
  29. package/packages/department-user-tree-inline/src/department-user-tree-single-service.js +179 -179
  30. package/packages/department-user-tree-inline/src/search-result.vue +273 -273
  31. package/packages/directives/prevent-reclick.js +22 -22
  32. package/packages/dynamic-source-select/index.js +6 -6
  33. package/packages/dynamic-source-select/src/dynamic-source-select-service.js +106 -106
  34. package/packages/dynamic-source-select/src/dynamic-source-select.vue +675 -675
  35. package/packages/dynamic-source-select/src/events.js +78 -78
  36. package/packages/fs-preview/index.js +6 -6
  37. package/packages/fs-preview/src/fs-preview.vue +287 -287
  38. package/packages/fs-upload/index.js +6 -6
  39. package/packages/fs-upload/src/fs-upload-multi.vue +443 -443
  40. package/packages/fs-upload/src/fs-upload-single.vue +353 -353
  41. package/packages/fs-upload/src/fs-upload.vue +191 -191
  42. package/packages/fs-upload/src/see-big-picture.vue +67 -67
  43. package/packages/fs-upload-list/index.js +6 -6
  44. package/packages/fs-upload-list/src/fs-upload-list.vue +372 -372
  45. package/packages/hamburger/index.js +6 -6
  46. package/packages/hamburger/src/hamburger.vue +40 -40
  47. package/packages/index.js +123 -123
  48. package/packages/multipart-upload/index.js +6 -6
  49. package/packages/multipart-upload/src/index.vue +66 -66
  50. package/packages/multipart-upload/src/multipart-upload-form.vue +377 -377
  51. package/packages/multipart-upload/src/multipart-upload-list.vue +517 -517
  52. package/packages/organization-input/index.js +6 -6
  53. package/packages/organization-input/src/organization-input.vue +583 -583
  54. package/packages/plugins/export-data-new.js +623 -623
  55. package/packages/plugins/export-data.js +431 -431
  56. package/packages/plugins/index.js +15 -15
  57. package/packages/plugins/public-method.js +47 -47
  58. package/packages/remove-department/index.js +6 -6
  59. package/packages/remove-department/src/remove-department.vue +200 -200
  60. package/packages/remove-department/src/remove-dept-service.js +31 -31
  61. package/packages/remove-user/index.js +6 -6
  62. package/packages/remove-user/src/remove-user-service.js +31 -31
  63. package/packages/remove-user/src/remove-user.vue +226 -226
  64. package/packages/remove-workgroup/index.js +6 -6
  65. package/packages/remove-workgroup/src/remove-workgroup-service.js +31 -31
  66. package/packages/remove-workgroup/src/remove-workgroup.vue +183 -183
  67. package/packages/rich-editor/index.js +7 -7
  68. package/packages/rich-editor/index.vue +297 -297
  69. package/packages/rich-editor/langs/zh-Hans.js +438 -438
  70. package/packages/rich-editor/viewer.vue +105 -105
  71. package/packages/scan-code-input/index.js +6 -6
  72. package/packages/scan-code-input/src/events.js +34 -34
  73. package/packages/scan-code-input/src/scan-code-input-colse.vue +140 -140
  74. package/packages/scan-code-input/src/scan-code-input.vue +132 -132
  75. package/packages/secret-info/index.js +7 -7
  76. package/packages/secret-info/index.vue +100 -100
  77. package/packages/super-grid/index.js +7 -7
  78. package/packages/super-grid/src/apis.js +1092 -1092
  79. package/packages/super-grid/src/columns-config.vue +427 -427
  80. package/packages/super-grid/src/custom-formatter.js +394 -394
  81. package/packages/super-grid/src/eventBus.js +2 -2
  82. package/packages/super-grid/src/events.js +56 -56
  83. package/packages/super-grid/src/formValidatorUtil.js +300 -300
  84. package/packages/super-grid/src/formatter.js +196 -196
  85. package/packages/super-grid/src/group-column.vue +99 -99
  86. package/packages/super-grid/src/header-context-menu.vue +82 -82
  87. package/packages/super-grid/src/index-column.vue +69 -69
  88. package/packages/super-grid/src/public-methods.js +30 -30
  89. package/packages/super-grid/src/row-operation.vue +193 -193
  90. package/packages/super-grid/src/search-button.vue +74 -74
  91. package/packages/super-grid/src/search-condition-input.vue +73 -73
  92. package/packages/super-grid/src/search-condition-list.vue +68 -68
  93. package/packages/super-grid/src/search-form-advancedQuery.vue +819 -819
  94. package/packages/super-grid/src/search-form-dialog.vue +77 -77
  95. package/packages/super-grid/src/search-form-item.vue +495 -495
  96. package/packages/super-grid/src/search-form-number.vue +111 -111
  97. package/packages/super-grid/src/search-form-ordinarySearch.vue +239 -239
  98. package/packages/super-grid/src/search-form.vue +762 -762
  99. package/packages/super-grid/src/search-methods.js +592 -592
  100. package/packages/super-grid/src/selection-column.vue +46 -46
  101. package/packages/super-grid/src/store.js +3 -3
  102. package/packages/super-grid/src/super-grid-service.js +728 -728
  103. package/packages/super-grid/src/super-grid.vue +3011 -3011
  104. package/packages/super-grid/src/utils.js +880 -880
  105. package/packages/super-grid/src/view-image-dialog.vue +176 -176
  106. package/packages/super-nine-grid/index.js +7 -7
  107. package/packages/super-nine-grid/src/apis.js +108 -108
  108. package/packages/super-nine-grid/src/custom-formatter.js +73 -73
  109. package/packages/super-nine-grid/src/formatter.js +134 -134
  110. package/packages/super-nine-grid/src/search-form-number.vue +35 -35
  111. package/packages/super-nine-grid/src/search-form.vue +700 -700
  112. package/packages/super-nine-grid/src/search-methods.js +151 -151
  113. package/packages/super-nine-grid/src/store.js +3 -3
  114. package/packages/super-nine-grid/src/super-grid-service.js +107 -107
  115. package/packages/svg-icon/index.js +6 -6
  116. package/packages/svg-icon/src/svg-icon.vue +43 -43
  117. package/packages/utils/date-util.js +292 -292
  118. package/packages/utils/dom.js +227 -227
  119. package/packages/utils/gogocodeTransfer.js +59 -59
  120. package/packages/utils/memory-cache-utils.js +117 -117
  121. package/packages/utils/utils.js +180 -180
  122. package/packages/utils/value-set.js +97 -97
  123. package/packages/valid-code/index.js +7 -7
  124. package/packages/valid-code/src/valid-code.vue +104 -104
  125. package/packages/workflow-button/index.js +6 -6
  126. package/packages/workflow-button/src/workflow-button.vue +550 -550
  127. package/packages/workflow-history-list/index.js +6 -6
  128. package/packages/workflow-history-list/src/api.js +7 -7
  129. package/packages/workflow-history-list/src/workflow-history-list.vue +291 -291
  130. package/packages/workgroup-tree/index.js +6 -6
  131. package/packages/workgroup-tree/src/workgroup-tree.vue +86 -86
  132. package/packages/workgroup-tree-inline/index.js +6 -6
  133. package/packages/workgroup-tree-inline/src/search-result.vue +222 -222
  134. package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +516 -516
  135. package/packages/workgroup-tree-inline/src/workgroup-tree-service.js +93 -93
  136. package/packages/workgroup-user-tree/index.js +6 -6
  137. package/packages/workgroup-user-tree/src/workgroup-user-tree.vue +103 -103
  138. package/packages/workgroup-user-tree-inline/index.js +9 -9
  139. package/packages/workgroup-user-tree-inline/src/search-result.vue +266 -266
  140. package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +239 -239
  141. package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +657 -657
  142. package/packages/year-range-picker/index.js +6 -6
  143. package/packages/year-range-picker/src/year-range-picker.vue +53 -53
  144. package/src/api/sso-service.js +172 -172
  145. package/src/api/tab.js +36 -36
  146. package/src/api/user-service.js +11 -11
  147. package/src/directives/permission/index.js +13 -13
  148. package/src/directives/permission/permission.js +20 -20
  149. package/src/i18n/langs/cn.js +259 -259
  150. package/src/i18n/langs/en.js +269 -269
  151. package/src/index.js +93 -93
  152. package/src/plugins.js +18 -18
  153. package/src/router/index.js +8 -26
  154. package/src/store/getters.js +15 -15
  155. package/src/store/index.js +19 -19
  156. package/src/store/modules/app.js +54 -54
  157. package/src/store/modules/tab-content.js +36 -36
  158. package/src/store/modules/user.js +285 -285
  159. package/src/utils/auth.js +61 -61
  160. package/src/utils/calculator/calculator-factory-wf.js +558 -558
  161. package/src/utils/calculator/calculator-factory.js +145 -145
  162. package/src/utils/calculator/calculator-util.js +166 -166
  163. package/src/utils/eventBus.js +2 -2
  164. package/src/utils/iconUtils.js +28 -28
  165. package/src/utils/index.js +102 -102
  166. package/src/utils/jump-page-utils.js +824 -824
  167. package/src/utils/menu.js +19 -19
  168. package/src/utils/permission.js +31 -31
  169. package/src/utils/permissionAuth.js +96 -96
  170. package/src/utils/range-selector.js +188 -188
  171. package/src/utils/request.js +269 -269
  172. package/src/utils/restful-interface-utils.js +57 -57
  173. package/src/utils/util.js +703 -703
  174. package/src/utils/validate.js +34 -34
  175. package/src/utils/watermark.js +108 -108
  176. package/src/utils/workflow-util.js +93 -93
  177. package/src/views/404.vue +248 -248
  178. package/src/views/dsc-component/Sidebar/Item.vue +84 -84
  179. package/src/views/dsc-component/Sidebar/Link.vue +38 -38
  180. package/src/views/dsc-component/Sidebar/SidebarItem.vue +198 -198
  181. package/src/views/dsc-component/Sidebar/index.vue +229 -229
  182. package/src/views/dsc-component/tabs/tab-content.vue +203 -203
  183. package/src/views/error-page/401.vue +106 -106
  184. package/src/views/error-page/404.vue +248 -248
  185. package/src/views/layout/EmptyLayout.vue +3 -3
  186. package/src/views/layout/Layout.vue +81 -81
  187. package/src/views/layout/NewLayout.vue +18 -18
  188. package/src/views/layout/components/AppMain.vue +39 -39
  189. package/src/views/layout/components/Breadcrumb/index.vue +158 -158
  190. package/src/views/layout/components/Menubar/Item.vue +79 -79
  191. package/src/views/layout/components/Menubar/Link.vue +38 -38
  192. package/src/views/layout/components/Menubar/index.vue +210 -210
  193. package/src/views/layout/components/Sidebar/Item.vue +53 -53
  194. package/src/views/layout/components/Sidebar/Link.vue +38 -38
  195. package/src/views/layout/components/Sidebar/index.vue +141 -141
  196. package/src/views/layout/components/iframe-page.vue +38 -38
  197. package/src/views/layout/components/index.js +4 -4
  198. package/src/views/layout/components/tabs/tab-content.vue +207 -207
  199. package/src/views/layout/mixin/ResizeHandler.js +41 -41
  200. package/src/views/layout/tab-content-iframe-index.vue +38 -38
  201. package/src/views/layout/tab-content-index.vue +93 -93
  202. package/src/views/login/authredirect.vue +10 -10
  203. package/src/views/login/index.vue +296 -296
  204. package/src/views/login/update-password.vue +243 -243
  205. package/src/views/redirect/index.vue +14 -14
  206. package/src/views/wf-history/tache-subprocess-history.vue +45 -45
@@ -1,266 +1,266 @@
1
- <template>
2
- <div style="height: 100%">
3
- <el-table
4
- ref="superGrid"
5
- :data="gridData"
6
- row-key="id"
7
- :row-class-name="tableRowClassName"
8
- :max-height="myHeight"
9
- border
10
- fit
11
- @row-click="rowClick"
12
- @row-dblclick="rowDblclick"
13
- >
14
- <el-table-column v-if="multiple === false" width="60" fixed>
15
- <template v-slot="scope">
16
- <el-radio
17
- v-model="singleUserIndex"
18
- :label="scope.$index"
19
- @change="selectWorkgroupUser"
20
- >
21
- {{ scope.$index + 1 }}
22
- </el-radio>
23
- </template>
24
- </el-table-column>
25
- <el-table-column
26
- v-if="multiple && isSearchResult"
27
- fixed
28
- :label="$t('imatrixUIPublicModel.edit')"
29
- align="center"
30
- width="60px"
31
- >
32
- <template v-slot="scope">
33
- <div>
34
- <el-button
35
- type="primary"
36
- size="mini"
37
- :icon="ElIconPlus"
38
- :disabled="isDisable(scope.row)"
39
- circle
40
- @click="addWorkgroupUser(scope.$index, scope.row)"
41
- />
42
- </div>
43
- </template>
44
- </el-table-column>
45
- <el-table-column
46
- v-if="multiple && !isSearchResult"
47
- fixed
48
- :label="$t('imatrixUIPublicModel.edit')"
49
- align="center"
50
- width="60px"
51
- >
52
- <template v-slot="scope">
53
- <div>
54
- <el-button
55
- type="danger"
56
- size="mini"
57
- :icon="ElIconDelete"
58
- circle
59
- @click="removeWorkgroupUser(scope.$index, scope.row)"
60
- />
61
- </div>
62
- </template>
63
- </el-table-column>
64
- <el-table-column
65
- v-if="multiple"
66
- :label="$t('superGrid.index')"
67
- align="center"
68
- width="60px"
69
- >
70
- <template v-slot="scope">
71
- {{ scope.$index + 1 }}
72
- </template>
73
- </el-table-column>
74
- <el-table-column
75
- :label="$t('departmentUserTreeInline.name')"
76
- :width="130"
77
- prop="name"
78
- >
79
- <template v-slot="scope">
80
- <span
81
- v-if="scope.row.enName && scope.row.enName.trim() !== ''"
82
- class="ellipsis cell--span"
83
- :title="scope.row.name + '(' + scope.row.enName + ')'"
84
- >{{ scope.row.name + '(' + scope.row.enName + ')' }}</span
85
- >
86
- <span v-else class="ellipsis cell--span" :title="scope.row.name">{{
87
- scope.row.name
88
- }}</span>
89
- </template>
90
- </el-table-column>
91
- <el-table-column
92
- :label="$t('departmentUserTreeInline.loginName')"
93
- :width="110"
94
- prop="loginName"
95
- >
96
- <template v-slot="scope">
97
- <span class="ellipsis cell--span" :title="scope.row.loginName">{{
98
- scope.row.loginName
99
- }}</span>
100
- </template>
101
- </el-table-column>
102
- <el-table-column
103
- :label="$t('departmentUserTreeInline.department')"
104
- :min-width="160"
105
- prop="mainDepartmentName"
106
- >
107
- <template v-slot="scope">
108
- <span
109
- class="ellipsis cell--span"
110
- :title="
111
- language && language !== 'cn' && scope.row.mainDepartmentEnName
112
- ? scope.row.mainDepartmentEnName
113
- : scope.row.mainDepartmentName
114
- "
115
- >{{
116
- language && language !== 'cn' && scope.row.mainDepartmentEnName
117
- ? scope.row.mainDepartmentEnName
118
- : scope.row.mainDepartmentName
119
- }}</span
120
- >
121
- </template>
122
- </el-table-column>
123
- <!--由于保密要求,邮箱不能显示,需要脱敏处理,暂时注释掉,不显示-->
124
- <!-- <el-table-column
125
- :label="$t('departmentUserTreeInline.email')"
126
- :width="130"
127
- prop="email"
128
- >
129
- <template slot-scope="scope">
130
- <span class="ellipsis cell--span" :title="scope.row.email">{{ scope.row.email }}</span>
131
- </template>
132
- </el-table-column> -->
133
- <el-table-column
134
- v-if="containBranch"
135
- :label="$t('departmentUserTreeInline.branch')"
136
- :width="130"
137
- prop="subCompanyName"
138
- >
139
- <template v-slot="scope">
140
- <span class="ellipsis cell--span" :title="scope.row.subCompanyName">{{
141
- scope.row.subCompanyName
142
- }}</span>
143
- </template>
144
- </el-table-column>
145
- </el-table>
146
- </div>
147
- </template>
148
-
149
- <script>
150
- import { Plus as ElIconPlus, Delete as ElIconDelete } from '@element-plus/icons-vue'
151
- import { $on, $off, $once, $emit } from '../../utils/gogocodeTransfer'
152
- export default {
153
- data() {
154
- let tableHeight = this.height
155
- tableHeight = tableHeight.substring(0, tableHeight.indexOf('px'))
156
- const myHeight = parseInt(tableHeight) + 30 + 'px'
157
- return {
158
- // 选中的用户序号
159
- singleUserIndex: null,
160
- selectedUser: null,
161
- myHeight,
162
- language: !window.$locale ? 'cn' : window.$locale,
163
- ElIconPlus,
164
- ElIconDelete,
165
- }
166
- },
167
- name: 'UserResult',
168
- props: {
169
- gridData: {
170
- type: Array,
171
- default: null,
172
- },
173
- containBranch: {
174
- type: Boolean,
175
- default: false,
176
- },
177
- multiple: {
178
- type: Boolean,
179
- default: false,
180
- },
181
- // 多选树时是否是查询结果列表,用于控制“操作”列按钮的显示
182
- isSearchResult: {
183
- type: Boolean,
184
- default: true,
185
- },
186
- height: {
187
- type: String,
188
- default: '300px',
189
- },
190
- selectResult: {
191
- type: Array,
192
- default: function () {
193
- return []
194
- },
195
- },
196
- },
197
- created() {},
198
- methods: {
199
- // 单选树时,点击行事件
200
- // rowClick(row, column, event) {
201
- // this.selectedUser = row
202
- // // this.$emit('rowClick', row, column, event)
203
- // },
204
- // 移除工作组
205
- removeWorkgroupUser(index, row) {
206
- $emit(this, 'removeWorkgroupUser', index, row)
207
- },
208
- // 添加工作组
209
- addWorkgroupUser(index, row) {
210
- $emit(this, 'addWorkgroupUser', index, row)
211
- },
212
- // 选中工作组
213
- selectWorkgroupUser(selectVal) {
214
- $emit(this, 'selectResult', this.gridData[selectVal])
215
- },
216
- rowClick(row, column, event) {
217
- this.singleUserIndex = row.row_index
218
- $emit(this, 'selectResult', row)
219
- },
220
- tableRowClassName({ row, rowIndex }) {
221
- row.row_index = rowIndex
222
- },
223
- rowDblclick(row, column, event) {
224
- if (this.multiple) {
225
- $emit(this, 'addWorkgroupUser', null, row)
226
- } else {
227
- $emit(this, 'resultRowDblclick', row)
228
- }
229
- },
230
- isDisable(row) {
231
- if (this.selectResult) {
232
- const containUsers = this.selectResult.filter(this.filterDept(row))
233
- if (containUsers && containUsers.length > 0) {
234
- return true
235
- }
236
- }
237
- return false
238
- },
239
- // 判断用户是否存在的过滤器
240
- filterDept(queryDept) {
241
- return (dept) => {
242
- return dept.id === queryDept.id
243
- }
244
- },
245
- },
246
- emits: [
247
- 'removeWorkgroupUser',
248
- 'addWorkgroupUser',
249
- 'selectResult',
250
- 'resultRowDblclick',
251
- ,
252
- ],
253
- }
254
- </script>
255
-
256
- <style>
257
- .searchResult {
258
- color: red;
259
- }
260
- .inline-select-custom {
261
- width: 100px;
262
- }
263
- .inline-input-custom {
264
- width: 98%;
265
- }
266
- </style>
1
+ <template>
2
+ <div style="height: 100%">
3
+ <el-table
4
+ ref="superGrid"
5
+ :data="gridData"
6
+ row-key="id"
7
+ :row-class-name="tableRowClassName"
8
+ :max-height="myHeight"
9
+ border
10
+ fit
11
+ @row-click="rowClick"
12
+ @row-dblclick="rowDblclick"
13
+ >
14
+ <el-table-column v-if="multiple === false" width="60" fixed>
15
+ <template v-slot="scope">
16
+ <el-radio
17
+ v-model="singleUserIndex"
18
+ :label="scope.$index"
19
+ @change="selectWorkgroupUser"
20
+ >
21
+ {{ scope.$index + 1 }}
22
+ </el-radio>
23
+ </template>
24
+ </el-table-column>
25
+ <el-table-column
26
+ v-if="multiple && isSearchResult"
27
+ fixed
28
+ :label="$t('imatrixUIPublicModel.edit')"
29
+ align="center"
30
+ width="60px"
31
+ >
32
+ <template v-slot="scope">
33
+ <div>
34
+ <el-button
35
+ type="primary"
36
+ size="mini"
37
+ :icon="ElIconPlus"
38
+ :disabled="isDisable(scope.row)"
39
+ circle
40
+ @click="addWorkgroupUser(scope.$index, scope.row)"
41
+ />
42
+ </div>
43
+ </template>
44
+ </el-table-column>
45
+ <el-table-column
46
+ v-if="multiple && !isSearchResult"
47
+ fixed
48
+ :label="$t('imatrixUIPublicModel.edit')"
49
+ align="center"
50
+ width="60px"
51
+ >
52
+ <template v-slot="scope">
53
+ <div>
54
+ <el-button
55
+ type="danger"
56
+ size="mini"
57
+ :icon="ElIconDelete"
58
+ circle
59
+ @click="removeWorkgroupUser(scope.$index, scope.row)"
60
+ />
61
+ </div>
62
+ </template>
63
+ </el-table-column>
64
+ <el-table-column
65
+ v-if="multiple"
66
+ :label="$t('superGrid.index')"
67
+ align="center"
68
+ width="60px"
69
+ >
70
+ <template v-slot="scope">
71
+ {{ scope.$index + 1 }}
72
+ </template>
73
+ </el-table-column>
74
+ <el-table-column
75
+ :label="$t('departmentUserTreeInline.name')"
76
+ :width="130"
77
+ prop="name"
78
+ >
79
+ <template v-slot="scope">
80
+ <span
81
+ v-if="scope.row.enName && scope.row.enName.trim() !== ''"
82
+ class="ellipsis cell--span"
83
+ :title="scope.row.name + '(' + scope.row.enName + ')'"
84
+ >{{ scope.row.name + '(' + scope.row.enName + ')' }}</span
85
+ >
86
+ <span v-else class="ellipsis cell--span" :title="scope.row.name">{{
87
+ scope.row.name
88
+ }}</span>
89
+ </template>
90
+ </el-table-column>
91
+ <el-table-column
92
+ :label="$t('departmentUserTreeInline.loginName')"
93
+ :width="110"
94
+ prop="loginName"
95
+ >
96
+ <template v-slot="scope">
97
+ <span class="ellipsis cell--span" :title="scope.row.loginName">{{
98
+ scope.row.loginName
99
+ }}</span>
100
+ </template>
101
+ </el-table-column>
102
+ <el-table-column
103
+ :label="$t('departmentUserTreeInline.department')"
104
+ :min-width="160"
105
+ prop="mainDepartmentName"
106
+ >
107
+ <template v-slot="scope">
108
+ <span
109
+ class="ellipsis cell--span"
110
+ :title="
111
+ language && language !== 'cn' && scope.row.mainDepartmentEnName
112
+ ? scope.row.mainDepartmentEnName
113
+ : scope.row.mainDepartmentName
114
+ "
115
+ >{{
116
+ language && language !== 'cn' && scope.row.mainDepartmentEnName
117
+ ? scope.row.mainDepartmentEnName
118
+ : scope.row.mainDepartmentName
119
+ }}</span
120
+ >
121
+ </template>
122
+ </el-table-column>
123
+ <!--由于保密要求,邮箱不能显示,需要脱敏处理,暂时注释掉,不显示-->
124
+ <!-- <el-table-column
125
+ :label="$t('departmentUserTreeInline.email')"
126
+ :width="130"
127
+ prop="email"
128
+ >
129
+ <template slot-scope="scope">
130
+ <span class="ellipsis cell--span" :title="scope.row.email">{{ scope.row.email }}</span>
131
+ </template>
132
+ </el-table-column> -->
133
+ <el-table-column
134
+ v-if="containBranch"
135
+ :label="$t('departmentUserTreeInline.branch')"
136
+ :width="130"
137
+ prop="subCompanyName"
138
+ >
139
+ <template v-slot="scope">
140
+ <span class="ellipsis cell--span" :title="scope.row.subCompanyName">{{
141
+ scope.row.subCompanyName
142
+ }}</span>
143
+ </template>
144
+ </el-table-column>
145
+ </el-table>
146
+ </div>
147
+ </template>
148
+
149
+ <script>
150
+ import { Plus as ElIconPlus, Delete as ElIconDelete } from '@element-plus/icons-vue'
151
+ import { $on, $off, $once, $emit } from '../../utils/gogocodeTransfer'
152
+ export default {
153
+ data() {
154
+ let tableHeight = this.height
155
+ tableHeight = tableHeight.substring(0, tableHeight.indexOf('px'))
156
+ const myHeight = parseInt(tableHeight) + 30 + 'px'
157
+ return {
158
+ // 选中的用户序号
159
+ singleUserIndex: null,
160
+ selectedUser: null,
161
+ myHeight,
162
+ language: !window.$locale ? 'cn' : window.$locale,
163
+ ElIconPlus,
164
+ ElIconDelete,
165
+ }
166
+ },
167
+ name: 'UserResult',
168
+ props: {
169
+ gridData: {
170
+ type: Array,
171
+ default: null,
172
+ },
173
+ containBranch: {
174
+ type: Boolean,
175
+ default: false,
176
+ },
177
+ multiple: {
178
+ type: Boolean,
179
+ default: false,
180
+ },
181
+ // 多选树时是否是查询结果列表,用于控制“操作”列按钮的显示
182
+ isSearchResult: {
183
+ type: Boolean,
184
+ default: true,
185
+ },
186
+ height: {
187
+ type: String,
188
+ default: '300px',
189
+ },
190
+ selectResult: {
191
+ type: Array,
192
+ default: function () {
193
+ return []
194
+ },
195
+ },
196
+ },
197
+ created() {},
198
+ methods: {
199
+ // 单选树时,点击行事件
200
+ // rowClick(row, column, event) {
201
+ // this.selectedUser = row
202
+ // // this.$emit('rowClick', row, column, event)
203
+ // },
204
+ // 移除工作组
205
+ removeWorkgroupUser(index, row) {
206
+ $emit(this, 'removeWorkgroupUser', index, row)
207
+ },
208
+ // 添加工作组
209
+ addWorkgroupUser(index, row) {
210
+ $emit(this, 'addWorkgroupUser', index, row)
211
+ },
212
+ // 选中工作组
213
+ selectWorkgroupUser(selectVal) {
214
+ $emit(this, 'selectResult', this.gridData[selectVal])
215
+ },
216
+ rowClick(row, column, event) {
217
+ this.singleUserIndex = row.row_index
218
+ $emit(this, 'selectResult', row)
219
+ },
220
+ tableRowClassName({ row, rowIndex }) {
221
+ row.row_index = rowIndex
222
+ },
223
+ rowDblclick(row, column, event) {
224
+ if (this.multiple) {
225
+ $emit(this, 'addWorkgroupUser', null, row)
226
+ } else {
227
+ $emit(this, 'resultRowDblclick', row)
228
+ }
229
+ },
230
+ isDisable(row) {
231
+ if (this.selectResult) {
232
+ const containUsers = this.selectResult.filter(this.filterDept(row))
233
+ if (containUsers && containUsers.length > 0) {
234
+ return true
235
+ }
236
+ }
237
+ return false
238
+ },
239
+ // 判断用户是否存在的过滤器
240
+ filterDept(queryDept) {
241
+ return (dept) => {
242
+ return dept.id === queryDept.id
243
+ }
244
+ },
245
+ },
246
+ emits: [
247
+ 'removeWorkgroupUser',
248
+ 'addWorkgroupUser',
249
+ 'selectResult',
250
+ 'resultRowDblclick',
251
+ ,
252
+ ],
253
+ }
254
+ </script>
255
+
256
+ <style>
257
+ .searchResult {
258
+ color: red;
259
+ }
260
+ .inline-select-custom {
261
+ width: 100px;
262
+ }
263
+ .inline-input-custom {
264
+ width: 98%;
265
+ }
266
+ </style>