agilebuilder-ui 1.1.46 → 1.1.48-rc1

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 (79) hide show
  1. package/lib/{401-1bde8dc9.js → 401-a94cd05b.js} +1 -1
  2. package/lib/{404-48d76996.js → 404-eb21244b.js} +1 -1
  3. package/lib/{iframe-page-77e184a0.js → iframe-page-7add4333.js} +1 -1
  4. package/lib/index-7a601895.js +92839 -0
  5. package/lib/super-ui.css +1 -1
  6. package/lib/super-ui.js +33 -32
  7. package/lib/super-ui.umd.cjs +172 -133
  8. package/lib/{tab-content-iframe-index-39745d49.js → tab-content-iframe-index-483b398c.js} +1 -1
  9. package/lib/{tab-content-index-65696e56.js → tab-content-index-0862686f.js} +1 -1
  10. package/lib/{tache-subprocess-history-ef943f95.js → tache-subprocess-history-c80e8ed2.js} +1 -1
  11. package/package.json +7 -2
  12. package/packages/chat-embed/index.ts +6 -0
  13. package/packages/chat-embed/src/chat-embed-message.ts +79 -0
  14. package/packages/chat-embed/src/chat-embed.css +117 -0
  15. package/packages/chat-embed/src/chat-sender.vue +240 -0
  16. package/packages/chat-embed/src/header.vue +50 -0
  17. package/packages/chat-embed/src/index.vue +425 -0
  18. package/packages/chat-embed/src/recommendation-message.vue +37 -0
  19. package/packages/chat-embed/src/util.ts +33 -0
  20. package/packages/department-tree-inline/src/department-multi-tree-inline.vue +42 -34
  21. package/packages/department-tree-inline/src/department-single-tree-inline.vue +53 -42
  22. package/packages/department-tree-inline/src/department-tree-service.js +17 -11
  23. package/packages/department-tree-inline/src/search-result.vue +187 -219
  24. package/packages/department-tree-mobile/src/department-tree-inline-app.vue +17 -4
  25. package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +52 -43
  26. package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +52 -42
  27. package/packages/department-user-tree-inline/src/department-user-tree-multi-service.js +23 -13
  28. package/packages/department-user-tree-inline/src/department-user-tree-single-service.js +9 -5
  29. package/packages/department-user-tree-inline/src/group-user-tree-service.js +17 -11
  30. package/packages/department-user-tree-inline/src/search-result.vue +207 -220
  31. package/packages/department-user-tree-mobile/src/department-user-tree-inline-app.vue +14 -3
  32. package/packages/dynamic-source-select/src/dynamic-source-select-service.js +7 -2
  33. package/packages/empty-state/index.vue +28 -0
  34. package/packages/fs-preview/src/fs-preview.vue +12 -3
  35. package/packages/fs-upload/src/fs-upload-multi.vue +6 -4
  36. package/packages/fs-upload/src/fs-upload-single.vue +7 -6
  37. package/packages/fs-upload/src/fs-upload.vue +3 -1
  38. package/packages/fs-upload/src/see-big-picture.vue +3 -0
  39. package/packages/fs-upload-list/src/fs-upload-list.vue +8 -2
  40. package/packages/fs-upload-new/src/fs-button-upload.vue +11 -4
  41. package/packages/fs-upload-new/src/fs-drag-upload.vue +11 -4
  42. package/packages/fs-upload-new/src/fs-preview-new.vue +8 -5
  43. package/packages/fs-upload-new/src/fs-upload-new.vue +17 -0
  44. package/packages/index.js +16 -13
  45. package/packages/json-view/index.ts +3 -0
  46. package/packages/json-view/json-view-dialog.vue +53 -0
  47. package/packages/json-view/json-view.vue +126 -0
  48. package/packages/plugins/export-data-new.js +2 -0
  49. package/packages/super-grid/src/apis.js +11 -0
  50. package/packages/super-grid/src/components/grid-icon.vue +6 -3
  51. package/packages/super-grid/src/custom-formatter.js +15 -2
  52. package/packages/super-grid/src/dynamic-input.vue +46 -4
  53. package/packages/super-grid/src/formatter.js +5 -1
  54. package/packages/super-grid/src/normal-column-content.vue +30 -38
  55. package/packages/super-grid/src/normal-column.vue +8 -1
  56. package/packages/super-grid/src/super-grid.vue +23 -10
  57. package/packages/utils/utils.js +27 -9
  58. package/packages/workgroup-tree-inline/src/search-result.vue +2 -1
  59. package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +50 -41
  60. package/packages/workgroup-tree-mobile/src/workgroup-tree-inline-app.vue +16 -5
  61. package/packages/workgroup-user-tree-inline/src/search-result.vue +2 -1
  62. package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +30 -24
  63. package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +49 -37
  64. package/packages/workgroup-user-tree-mobile/src/workgroup-user-tree-inline-app.vue +281 -222
  65. package/src/assets/chat-embed/avatar.png +0 -0
  66. package/src/i18n/langs/cn.js +20 -6
  67. package/src/i18n/langs/en.js +19 -5
  68. package/src/store/modules/chat-ai-store.ts +78 -0
  69. package/src/store/modules/tab-content.js +9 -3
  70. package/src/styles/index.scss +45 -0
  71. package/src/utils/auth.js +10 -7
  72. package/src/utils/chat-ai-util.ts +31 -0
  73. package/src/utils/common-util.js +78 -8
  74. package/src/utils/global-prop.js +17 -0
  75. package/src/utils/insert_css.js +14 -1
  76. package/src/utils/jump-page-utils.js +8 -4
  77. package/src/views/dsc-component/Sidebar/SidebarItem.vue +6 -0
  78. package/src/views/dsc-component/tabs/tab-content.vue +6 -0
  79. package/lib/index-465b0d69.js +0 -73558
@@ -3,7 +3,7 @@
3
3
  <el-container style="height: 395px">
4
4
  <el-aside width="430px">
5
5
  <el-container style="height: 390px">
6
- <el-header style="text-align: right; font-size: 12px">
6
+ <el-header style="text-align: right; font-size: 12px; height: 35px">
7
7
  <el-autocomplete
8
8
  v-model="filterText"
9
9
  :fetch-suggestions="querySearch"
@@ -20,44 +20,48 @@
20
20
  </el-autocomplete>
21
21
  </el-header>
22
22
  <el-main>
23
- <div
24
- v-if="!searchValue"
25
- style="padding-top: 5px; overflow: auto; width: auto; display: inline-block !important"
26
- >
27
- <el-tree
28
- ref="workgroupTree"
29
- :filter-node-method="filterNode"
30
- :load="loadNode"
31
- :props="defaultProps"
32
- :show-checkbox="multiple"
33
- lazy
34
- node-key="id"
35
- @check="handleCheckNode"
36
- @node-click="handleNodeClick"
23
+ <template v-if="!searchValue">
24
+ <div
25
+ v-if="canShowOrgTree"
26
+ style="padding-top: 5px; overflow: auto; width: auto; display: inline-block !important"
37
27
  >
38
- <template #default="{ node, data }">
39
- <span>
40
- <el-icon>
41
- <Menu v-if="node.data.id === -1" />
42
- <Calendar v-else />
43
- </el-icon>
44
- <span
45
- :class="
46
- data.nodeType &&
47
- data.nodeType === 'WORKGROUP' &&
48
- searchValue &&
49
- data.name.indexOf(searchValue) > -1
50
- ? 'searchResult'
51
- : ''
52
- "
53
- :title="node.label"
54
- >
55
- {{ node.label }}
28
+ <el-tree
29
+ ref="workgroupTree"
30
+ :filter-node-method="filterNode"
31
+ :load="loadNode"
32
+ :props="defaultProps"
33
+ :show-checkbox="multiple"
34
+ lazy
35
+ node-key="id"
36
+ @check="handleCheckNode"
37
+ @node-click="handleNodeClick"
38
+ >
39
+ <template #default="{ node, data }">
40
+ <span>
41
+ <el-icon>
42
+ <Menu v-if="node.data.id === -1" />
43
+ <Calendar v-else />
44
+ </el-icon>
45
+ <span
46
+ :class="
47
+ data.nodeType &&
48
+ data.nodeType === 'WORKGROUP' &&
49
+ searchValue &&
50
+ data.name.indexOf(searchValue) > -1
51
+ ? 'searchResult'
52
+ : ''
53
+ "
54
+ :title="node.label"
55
+ >
56
+ {{ node.label }}
57
+ </span>
56
58
  </span>
57
- </span>
58
- </template>
59
- </el-tree>
60
- </div>
59
+ </template>
60
+ </el-tree>
61
+ </div>
62
+ <!-- 暂无信息 -->
63
+ <EmptyState v-else style="width: 100%; height: 100%" />
64
+ </template>
61
65
  <div v-if="searchValue && searchValue.length > 0" style="height: 100%; overflow: hidden">
62
66
  <workgroup-result
63
67
  ref="workgroupResult"
@@ -116,7 +120,7 @@ import localStorage from '../../../src/utils/local-storage'
116
120
  import utils from '../../utils/utils'
117
121
  import workgroupTreeService from './workgroup-tree-service'
118
122
  import WorkgroupResult from './search-result.vue'
119
-
123
+ import EmptyState from '../../empty-state/index.vue'
120
124
  export default {
121
125
  data() {
122
126
  return {
@@ -145,12 +149,14 @@ export default {
145
149
  selectWorkgroupData: null,
146
150
  // 公司根节点信息
147
151
  tenantInfo: {},
148
- ElIconSearch
152
+ ElIconSearch,
153
+ canShowOrgTree: false
149
154
  }
150
155
  },
151
156
  name: 'InlineWorkgroupTree',
152
157
  components: {
153
- WorkgroupResult
158
+ WorkgroupResult,
159
+ EmptyState
154
160
  },
155
161
  props: {
156
162
  // 是否是多选树,默认是true
@@ -195,6 +201,9 @@ export default {
195
201
  }
196
202
  },
197
203
  created() {
204
+ utils.canShowOrgTree().then((showOrgTree) => {
205
+ this.canShowOrgTree = showOrgTree
206
+ })
198
207
  if (this.multiple) {
199
208
  this.initSelectGroups(this.searchField, this.selectGroupInfo, this.separator).then((selectGroups) => {
200
209
  if (selectGroups) {
@@ -537,7 +546,7 @@ export default {
537
546
  }
538
547
  </script>
539
548
 
540
- <style>
549
+ <style scoped>
541
550
  .searchResult {
542
551
  color: red;
543
552
  }
@@ -43,7 +43,9 @@
43
43
  </el-row>
44
44
  </el-card>
45
45
  <el-card class="card-content org-tree" style="overflow: auto">
46
+ <el-empty v-if="!departments.length" :image="noMessageImage"> </el-empty>
46
47
  <el-tree
48
+ v-else
47
49
  ref="orgTreeRef"
48
50
  :data="departments"
49
51
  :show-checkbox="multiple"
@@ -63,14 +65,14 @@
63
65
  </template>
64
66
  </el-tree>
65
67
  </el-card>
66
- <el-card class="card-footer" style="height: 40px">
68
+ <el-card class="card-footer">
67
69
  <div style="display: flex">
68
70
  <div class="select-result" @click="showResult">
69
71
  <!-- 已选择:6人,其中有一个部门(含子部门) -->
70
72
  <span v-if="multiple" @click="showResult">
71
73
  <span v-if="selectDepts.length > 0">
72
74
  {{ $t('departmentTreeInline.selectResultInfoHasSelect')
73
- }}{{ $t('departmentTreeInline.workgroupTree', { num: selectDepts.length }) }}
75
+ }}{{ $t('workgroupTree.selectResultInfo', { num: selectDepts.length }) }}
74
76
  <span style="padding-left: 10px"
75
77
  ><el-icon><ArrowUpBold /></el-icon
76
78
  ></span>
@@ -97,6 +99,8 @@ import { resizeScrollTargetHeightUtil, getDeptNamePath } from '../../utils/organ
97
99
  import deptResult from './dept-result.vue'
98
100
  import { ElMessage } from 'element-plus'
99
101
  import { useI18n } from 'vue-i18n'
102
+ import utils from '../../utils/utils'
103
+ import noMessageImage from '../../../src/assets/nonemessage.png'
100
104
  const props = defineProps<{
101
105
  // 是否是多选树,默认是true
102
106
  multiple: {
@@ -149,6 +153,7 @@ let searchParam = ref({
149
153
  departmentInfo: null
150
154
  })
151
155
  const { t } = useI18n()
156
+
152
157
  onMounted(() => {
153
158
  initSelectGroups(props.searchField, props.selectWorkgroupInfo, props.separator).then((departments) => {
154
159
  selectDepts.value = departments
@@ -167,9 +172,15 @@ function getTenantInfo() {
167
172
  }
168
173
 
169
174
  function getTenantChildrenDept() {
170
- getTenantChildren(props.branchInfo, tenantNodeId).then((children) => {
171
- departments.value = children
172
- checkedDeptDefault(selectDepts.value, defaultCheckedKeys.value)
175
+ utils.canShowOrgTree().then((showOrgTree) => {
176
+ if (showOrgTree) {
177
+ getTenantChildren(props.branchInfo, tenantNodeId).then((children) => {
178
+ departments.value = children
179
+ checkedDeptDefault(selectDepts.value, defaultCheckedKeys.value)
180
+ })
181
+ } else {
182
+ departments.value = []
183
+ }
173
184
  })
174
185
  }
175
186
 
@@ -209,7 +209,8 @@ export default {
209
209
  },
210
210
  // 添加工作组
211
211
  addWorkgroupUser(index, row) {
212
- $emit(this, 'addWorkgroupUser', index, row)
212
+ // JSON.parse(JSON.stringify(row)) 转换对象是为了解决添加数据时浏览器崩溃
213
+ $emit(this, 'addWorkgroupUser', index, JSON.parse(JSON.stringify(row)))
213
214
  },
214
215
  // 选中工作组
215
216
  selectWorkgroupUser(selectVal) {
@@ -132,27 +132,29 @@ const workgroupTreeInlineService = {
132
132
  .then((data) => {
133
133
  resolve(data)
134
134
  // 更新当前点击的节点的子节点
135
- this.$refs.workgroupUserTree.updateKeyChildren(parentNodeId, data)
136
- if (parentId === 0) {
137
- // 初始化树时,展开公司节点
138
- const tenantData = data[0].data
139
- this.tenantInfo = JSON.parse(tenantData)
140
- this.containBranch = data[0].containBranch
141
- // 加载整个组织结构树时,展开公司节点
142
- this.loadWorkgroup(this.tenantNodeId, this.tenantNodeId + '')
143
- }
144
- if (this.isClickNode) {
145
- // 表示点击工作组节点选中时展开
146
- this.isClickNode = false
147
- this.checkedNode(node.data)
148
- } else {
149
- // 表示是点击三角展开节点时
150
- if (checkedKeys && checkedKeys.indexOf(parentNodeId) > -1) {
151
- // 点击公司名称前的三角标识展开节点时,保持当前节点的选中状态
152
- // 表示当前展开的节点是选中状态,则应保持其选中状态,并选中其子节点
153
- this.checkedNode(node.data)
135
+ if (this.$refs.workgroupUserTree) {
136
+ this.$refs.workgroupUserTree.updateKeyChildren(parentNodeId, data)
137
+ if (parentId === 0) {
138
+ // 初始化树时,展开公司节点
139
+ const tenantData = data[0].data
140
+ this.tenantInfo = JSON.parse(tenantData)
141
+ this.containBranch = data[0].containBranch
142
+ // 加载整个组织结构树时,展开公司节点
143
+ this.loadWorkgroup(this.tenantNodeId, this.tenantNodeId + '')
144
+ }
145
+ if (this.isClickNode) {
146
+ // 表示点击工作组节点选中时展开
147
+ this.isClickNode = false
148
+ this.checkedNode(node.data)
149
+ } else {
150
+ // 表示是点击三角展开节点时
151
+ if (checkedKeys && checkedKeys.indexOf(parentNodeId) > -1) {
152
+ // 点击公司名称前的三角标识展开节点时,保持当前节点的选中状态
153
+ // 表示当前展开的节点是选中状态,则应保持其选中状态,并选中其子节点
154
+ this.checkedNode(node.data)
155
+ }
156
+ }
154
157
  }
155
- }
156
158
  })
157
159
  },
158
160
  // 加载当前节点的子节点
@@ -164,9 +166,11 @@ const workgroupTreeInlineService = {
164
166
  this.$http
165
167
  .post(window.$vueApp.config.globalProperties.baseAPI + '/component/organization-trees/workgroup-users', param)
166
168
  .then((children) => {
167
- this.$refs.workgroupUserTree.updateKeyChildren(parentNodeId, children)
168
- if (this.$refs.workgroupUserTree.store.nodesMap[parentNodeId]) {
169
- this.$refs.workgroupUserTree.store.nodesMap[parentNodeId].expanded = true
169
+ if(this.$refs.workgroupUserTree) {
170
+ this.$refs.workgroupUserTree.updateKeyChildren(parentNodeId, children)
171
+ if (this.$refs.workgroupUserTree.store.nodesMap[parentNodeId]) {
172
+ this.$refs.workgroupUserTree.store.nodesMap[parentNodeId].expanded = true
173
+ }
170
174
  }
171
175
  if (isSearch) {
172
176
  // 查询时处理
@@ -176,7 +180,9 @@ const workgroupTreeInlineService = {
176
180
  }
177
181
  if (this.allExpandNodeIds.length === this.allSearchNodeIds.length) {
178
182
  // 表示所有节点已展开,执行树的过滤方法
179
- this.$refs.workgroupUserTree.filter(searchValue)
183
+ if(this.$refs.workgroupUserTree) {
184
+ this.$refs.workgroupUserTree.filter(searchValue)
185
+ }
180
186
  this.allExpandNodeIds = []
181
187
  this.allSearchNodeIds = []
182
188
  }
@@ -21,41 +21,45 @@
21
21
  </el-autocomplete>
22
22
  </el-header>
23
23
  <el-main style="padding: 10px">
24
- <div
25
- v-if="!searchValue"
26
- style="padding-top: 5px; overflow: auto; width: auto; display: inline-block !important"
27
- >
28
- <el-tree
29
- ref="workgroupUserTree"
30
- :filter-node-method="filterNode"
31
- :load="loadNode"
32
- :props="defaultProps"
33
- :show-checkbox="multiple"
34
- lazy
35
- node-key="nodeId"
36
- @check="handleCheckNode"
37
- @node-click="handleNodeClick"
24
+ <template v-if="!searchValue">
25
+ <div
26
+ v-if="canShowOrgTree"
27
+ style="padding-top: 5px; overflow: auto; width: auto; display: inline-block !important"
38
28
  >
39
- <template #default="{ node, data }">
40
- <span>
41
- <el-icon>
42
- <Menu v-if="node.data.id === -1" />
43
- <Calendar v-else />
44
- </el-icon>
45
- <span
46
- :class="
47
- data.nodeType && data.nodeType === 'USER' && searchValue && filterUserVal(data, searchValue)
48
- ? 'searchResult'
49
- : ''
50
- "
51
- :title="node.label"
52
- >
53
- {{ node.label }}
29
+ <el-tree
30
+ ref="workgroupUserTree"
31
+ :filter-node-method="filterNode"
32
+ :load="loadNode"
33
+ :props="defaultProps"
34
+ :show-checkbox="multiple"
35
+ lazy
36
+ node-key="nodeId"
37
+ @check="handleCheckNode"
38
+ @node-click="handleNodeClick"
39
+ >
40
+ <template #default="{ node, data }">
41
+ <span>
42
+ <el-icon>
43
+ <Menu v-if="node.data.id === -1" />
44
+ <Calendar v-else />
45
+ </el-icon>
46
+ <span
47
+ :class="
48
+ data.nodeType && data.nodeType === 'USER' && searchValue && filterUserVal(data, searchValue)
49
+ ? 'searchResult'
50
+ : ''
51
+ "
52
+ :title="node.label"
53
+ >
54
+ {{ node.label }}
55
+ </span>
54
56
  </span>
55
- </span>
56
- </template>
57
- </el-tree>
58
- </div>
57
+ </template>
58
+ </el-tree>
59
+ </div>
60
+ <!-- 暂无信息 -->
61
+ <EmptyState v-else style="width: 100%; height: 100%" />
62
+ </template>
59
63
  <div v-if="searchValue && searchValue.length > 0" style="height: 100%; overflow: hidden">
60
64
  <workgroup-user-result
61
65
  ref="workgroupUserResult"
@@ -114,7 +118,7 @@ import localStorage from '../../../src/utils/local-storage'
114
118
  import utils from '../../utils/utils'
115
119
  import workgroupTreeInlineService from './workgroup-tree-inline-service'
116
120
  import WorkgroupUserResult from './search-result.vue'
117
-
121
+ import EmptyState from '../../empty-state/index.vue'
118
122
  export default {
119
123
  data() {
120
124
  return {
@@ -153,12 +157,14 @@ export default {
153
157
  selectNodeInfo: null,
154
158
  // 公司根节点信息
155
159
  tenantInfo: {},
156
- ElIconSearch
160
+ ElIconSearch,
161
+ canShowOrgTree: false
157
162
  }
158
163
  },
159
164
  name: 'InlineWorkgroupUserTree',
160
165
  components: {
161
- WorkgroupUserResult
166
+ WorkgroupUserResult,
167
+ EmptyState
162
168
  },
163
169
  props: {
164
170
  // 是否是多选树,默认是true
@@ -198,6 +204,9 @@ export default {
198
204
  }
199
205
  },
200
206
  created() {
207
+ utils.canShowOrgTree().then((showOrgTree) => {
208
+ this.canShowOrgTree = showOrgTree
209
+ })
201
210
  if (this.multiple) {
202
211
  this.initSelectUsers(this.searchField, this.selectUserInfo, this.separator).then((users) => {
203
212
  if (users) {
@@ -291,7 +300,10 @@ export default {
291
300
  // // this.searchParam.userField = this.searchField
292
301
  // // 后台查询部门,并拼接树节点
293
302
  // this.filterAppendNodes(value)
294
- this.$refs.workgroupUserTree.filter(value)
303
+
304
+ if(this.$refs.workgroupUserTree) {
305
+ this.$refs.workgroupUserTree.filter(value)
306
+ }
295
307
  },
296
308
  // 点击查询按钮调用的方法
297
309
  clickSearch() {