@cimom/ci-web-plugins-commom 1.0.12 → 1.0.15
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.
- package/README.md +171 -158
- package/dist/CI.Web.Plugins.Commom.css +2 -2
- package/dist/DhtmlxGanttPro/README.md +360 -0
- package/dist/DhtmlxGanttPro/index.js +1 -0
- package/dist/SearchPro/SearchPro.bundle.js +2 -2
- package/dist/VxeGridPro/README.md +91 -91
- package/dist/VxeModalPro/README.md +122 -122
- package/dist/VxeTablePro/README.md +86 -86
- package/dist/components/DhtmlxGanttPro/index.vue/index.js +1 -0
- package/dist/components/DhtmlxGanttPro/index.vue/index2.js +1 -0
- package/dist/components/DhtmlxGanttPro/index.vue/index3.js +1 -0
- package/dist/components/SearchPro/index.vue/index2.js +1 -1
- package/dist/components/SearchPro/innerComponents/reportSelectTable.vue/index2.js +1 -1
- package/dist/components/SearchPro/tableTemplate/index.vue/index2.js +1 -1
- package/dist/components/SearchPro/tableTemplate/second.vue/index2.js +1 -1
- package/dist/components/VxeGridPro/index.vue/index2.js +1 -1
- package/dist/components/VxeTablePro/index.vue/index2.js +1 -1
- package/dist/config/index/index.js +1 -1
- package/dist/index/index.js +1 -1
- package/package.json +11 -6
|
@@ -1,122 +1,122 @@
|
|
|
1
|
-
# VxeModalPro
|
|
2
|
-
|
|
3
|
-
## 组件介绍
|
|
4
|
-
VxeModalPro 是一个基于 Vue3 的弹窗插件,支持灵活配置和自定义内容,适用于多种业务场景。该组件对 [vxe-table](https://vxeui.com/#/modal/api/) 进行了二次封装,支持统一扩展功能配置,便于业务快速集成和后续扩展。
|
|
5
|
-
|
|
6
|
-
## 安装
|
|
7
|
-
|
|
8
|
-
```bash
|
|
9
|
-
npm install @cimom/ci-web-plugins-commom
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
> **注意:** 需引入主包样式文件:
|
|
13
|
-
> ```js
|
|
14
|
-
> import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css'
|
|
15
|
-
> ```
|
|
16
|
-
|
|
17
|
-
## 使用方法
|
|
18
|
-
|
|
19
|
-
### 全局注册
|
|
20
|
-
```js
|
|
21
|
-
import { createApp } from 'vue';
|
|
22
|
-
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
23
|
-
import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css';
|
|
24
|
-
|
|
25
|
-
const app = createApp(App);
|
|
26
|
-
app.component('VxeModalPro', VxeModalPro);
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
### 局部注册
|
|
30
|
-
```js
|
|
31
|
-
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
32
|
-
|
|
33
|
-
export default {
|
|
34
|
-
components: { VxeModalPro }
|
|
35
|
-
}
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
### 基本用法(推荐 v-model 控制显示)
|
|
39
|
-
```vue
|
|
40
|
-
<script setup>
|
|
41
|
-
import { ref } from 'vue';
|
|
42
|
-
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
43
|
-
import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css';
|
|
44
|
-
|
|
45
|
-
const showPopup = ref(false);
|
|
46
|
-
</script>
|
|
47
|
-
|
|
48
|
-
<template>
|
|
49
|
-
<button @click="showPopup = true">打开弹窗</button>
|
|
50
|
-
<VxeModalPro v-model="showPopup" title="测试弹窗">
|
|
51
|
-
<div>这里是弹窗内容</div>
|
|
52
|
-
</VxeModalPro>
|
|
53
|
-
</template>
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
## 实例方法调用说明
|
|
57
|
-
|
|
58
|
-
VxeModalPro 支持通过 ref 获取组件实例,并通过 `Instance()` 方法获取底层 vxe-modal 实例,再调用其原生方法(如全屏/还原等)。
|
|
59
|
-
|
|
60
|
-
### 示例:调用全屏方法
|
|
61
|
-
|
|
62
|
-
```vue
|
|
63
|
-
<script setup>
|
|
64
|
-
import { ref } from 'vue';
|
|
65
|
-
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
66
|
-
import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css';
|
|
67
|
-
|
|
68
|
-
const showPopup = ref(false);
|
|
69
|
-
const modalRef = ref(null);
|
|
70
|
-
|
|
71
|
-
function openFullscreen() {
|
|
72
|
-
// 通过 Instance() 获取底层 vxe-modal 实例
|
|
73
|
-
const modalInstance = modalRef.value?.Instance?.();
|
|
74
|
-
if (modalInstance && modalInstance.zoom) {
|
|
75
|
-
modalInstance.zoom(); // 切换全屏/还原
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
</script>
|
|
79
|
-
|
|
80
|
-
<template>
|
|
81
|
-
<button @click="showPopup = true">打开弹窗</button>
|
|
82
|
-
<VxeModalPro ref="modalRef" v-model="showPopup" title="测试弹窗">
|
|
83
|
-
<button @click="openFullscreen">全屏/还原</button>
|
|
84
|
-
<div>这里是弹窗内容</div>
|
|
85
|
-
</VxeModalPro>
|
|
86
|
-
</template>
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
> 说明:VxeModalPro 通过 `Instance()` 方法暴露底层 vxe-modal 的实例,常用如 zoom()(全屏/还原)、maximize()、revert() 等,具体方法可参考 [vxe-table modal API](https://vxeui.com/#/modal/api/)。
|
|
90
|
-
|
|
91
|
-
## 属性说明
|
|
92
|
-
| 属性 | 说明 | 类型 | 默认值 |
|
|
93
|
-
| --------- | ------------ | ------- | ------ |
|
|
94
|
-
| title | 弹窗标题 | String | - |
|
|
95
|
-
|
|
96
|
-
## 事件说明
|
|
97
|
-
| 事件名 | 说明 | 回调参数 |
|
|
98
|
-
| ------ | -------- | -------- |
|
|
99
|
-
| close | 关闭弹窗 | - |
|
|
100
|
-
|
|
101
|
-
## 插槽说明
|
|
102
|
-
| 插槽名 | 说明 |
|
|
103
|
-
| ------ | -------- |
|
|
104
|
-
| default| 弹窗内容 |
|
|
105
|
-
|
|
106
|
-
## 遮罩毛玻璃模糊强度效果
|
|
107
|
-
|
|
108
|
-
通过 `backdropFilter` 属性可设置弹窗遮罩的毛玻璃模糊强度(单位:px)。当弹窗打开时自动生效,关闭时自动移除。
|
|
109
|
-
|
|
110
|
-
**示例:**
|
|
111
|
-
```vue
|
|
112
|
-
<VxeModalPro v-model="showPopup" title="毛玻璃弹窗" :backdropFilter="8">
|
|
113
|
-
<div>带毛玻璃遮罩的弹窗内容</div>
|
|
114
|
-
</VxeModalPro>
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
| 属性 | 说明 | 类型 | 默认值 |
|
|
118
|
-
| ------ | ---------------------- | -------------- | ------ |
|
|
119
|
-
| backdropFilter | 遮罩毛玻璃模糊强度(px) | Number | null 可选【1-10】 |
|
|
120
|
-
|
|
121
|
-
## License
|
|
122
|
-
MIT
|
|
1
|
+
# VxeModalPro
|
|
2
|
+
|
|
3
|
+
## 组件介绍
|
|
4
|
+
VxeModalPro 是一个基于 Vue3 的弹窗插件,支持灵活配置和自定义内容,适用于多种业务场景。该组件对 [vxe-table](https://vxeui.com/#/modal/api/) 进行了二次封装,支持统一扩展功能配置,便于业务快速集成和后续扩展。
|
|
5
|
+
|
|
6
|
+
## 安装
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
npm install @cimom/ci-web-plugins-commom
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
> **注意:** 需引入主包样式文件:
|
|
13
|
+
> ```js
|
|
14
|
+
> import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css'
|
|
15
|
+
> ```
|
|
16
|
+
|
|
17
|
+
## 使用方法
|
|
18
|
+
|
|
19
|
+
### 全局注册
|
|
20
|
+
```js
|
|
21
|
+
import { createApp } from 'vue';
|
|
22
|
+
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
23
|
+
import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css';
|
|
24
|
+
|
|
25
|
+
const app = createApp(App);
|
|
26
|
+
app.component('VxeModalPro', VxeModalPro);
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### 局部注册
|
|
30
|
+
```js
|
|
31
|
+
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
32
|
+
|
|
33
|
+
export default {
|
|
34
|
+
components: { VxeModalPro }
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### 基本用法(推荐 v-model 控制显示)
|
|
39
|
+
```vue
|
|
40
|
+
<script setup>
|
|
41
|
+
import { ref } from 'vue';
|
|
42
|
+
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
43
|
+
import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css';
|
|
44
|
+
|
|
45
|
+
const showPopup = ref(false);
|
|
46
|
+
</script>
|
|
47
|
+
|
|
48
|
+
<template>
|
|
49
|
+
<button @click="showPopup = true">打开弹窗</button>
|
|
50
|
+
<VxeModalPro v-model="showPopup" title="测试弹窗">
|
|
51
|
+
<div>这里是弹窗内容</div>
|
|
52
|
+
</VxeModalPro>
|
|
53
|
+
</template>
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## 实例方法调用说明
|
|
57
|
+
|
|
58
|
+
VxeModalPro 支持通过 ref 获取组件实例,并通过 `Instance()` 方法获取底层 vxe-modal 实例,再调用其原生方法(如全屏/还原等)。
|
|
59
|
+
|
|
60
|
+
### 示例:调用全屏方法
|
|
61
|
+
|
|
62
|
+
```vue
|
|
63
|
+
<script setup>
|
|
64
|
+
import { ref } from 'vue';
|
|
65
|
+
import VxeModalPro from '@cimom/ci-web-plugins-commom/VxeModalPro';
|
|
66
|
+
import '@cimom/ci-web-plugins-commom/dist/CI.Web.Plugins.Commom.css';
|
|
67
|
+
|
|
68
|
+
const showPopup = ref(false);
|
|
69
|
+
const modalRef = ref(null);
|
|
70
|
+
|
|
71
|
+
function openFullscreen() {
|
|
72
|
+
// 通过 Instance() 获取底层 vxe-modal 实例
|
|
73
|
+
const modalInstance = modalRef.value?.Instance?.();
|
|
74
|
+
if (modalInstance && modalInstance.zoom) {
|
|
75
|
+
modalInstance.zoom(); // 切换全屏/还原
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
</script>
|
|
79
|
+
|
|
80
|
+
<template>
|
|
81
|
+
<button @click="showPopup = true">打开弹窗</button>
|
|
82
|
+
<VxeModalPro ref="modalRef" v-model="showPopup" title="测试弹窗">
|
|
83
|
+
<button @click="openFullscreen">全屏/还原</button>
|
|
84
|
+
<div>这里是弹窗内容</div>
|
|
85
|
+
</VxeModalPro>
|
|
86
|
+
</template>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
> 说明:VxeModalPro 通过 `Instance()` 方法暴露底层 vxe-modal 的实例,常用如 zoom()(全屏/还原)、maximize()、revert() 等,具体方法可参考 [vxe-table modal API](https://vxeui.com/#/modal/api/)。
|
|
90
|
+
|
|
91
|
+
## 属性说明
|
|
92
|
+
| 属性 | 说明 | 类型 | 默认值 |
|
|
93
|
+
| --------- | ------------ | ------- | ------ |
|
|
94
|
+
| title | 弹窗标题 | String | - |
|
|
95
|
+
|
|
96
|
+
## 事件说明
|
|
97
|
+
| 事件名 | 说明 | 回调参数 |
|
|
98
|
+
| ------ | -------- | -------- |
|
|
99
|
+
| close | 关闭弹窗 | - |
|
|
100
|
+
|
|
101
|
+
## 插槽说明
|
|
102
|
+
| 插槽名 | 说明 |
|
|
103
|
+
| ------ | -------- |
|
|
104
|
+
| default| 弹窗内容 |
|
|
105
|
+
|
|
106
|
+
## 遮罩毛玻璃模糊强度效果
|
|
107
|
+
|
|
108
|
+
通过 `backdropFilter` 属性可设置弹窗遮罩的毛玻璃模糊强度(单位:px)。当弹窗打开时自动生效,关闭时自动移除。
|
|
109
|
+
|
|
110
|
+
**示例:**
|
|
111
|
+
```vue
|
|
112
|
+
<VxeModalPro v-model="showPopup" title="毛玻璃弹窗" :backdropFilter="8">
|
|
113
|
+
<div>带毛玻璃遮罩的弹窗内容</div>
|
|
114
|
+
</VxeModalPro>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
| 属性 | 说明 | 类型 | 默认值 |
|
|
118
|
+
| ------ | ---------------------- | -------------- | ------ |
|
|
119
|
+
| backdropFilter | 遮罩毛玻璃模糊强度(px) | Number | null 可选【1-10】 |
|
|
120
|
+
|
|
121
|
+
## License
|
|
122
|
+
MIT
|
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
# VxeTablePro 组件使用说明
|
|
2
|
-
|
|
3
|
-
## 简介
|
|
4
|
-
`VxeTablePro` 是基于 Vue3 + TypeScript 的表格插件模板,集成了 SCSS、CSS、TailwindCSS,适用于 NPM 发布。该组件对 [vxe-table](https://vxeui.com/#/table/api/) 进行了二次封装,支持统一扩展功能配置,便于业务快速集成和后续扩展。
|
|
5
|
-
|
|
6
|
-
## 安装
|
|
7
|
-
|
|
8
|
-
```bash
|
|
9
|
-
npm install @cimom/ci-web-plugins-commom
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
## 使用方法
|
|
13
|
-
|
|
14
|
-
```vue
|
|
15
|
-
<script setup>
|
|
16
|
-
import { VxeTablePro } from '@cimom/ci-web-plugins-commom'
|
|
17
|
-
或
|
|
18
|
-
import VxeTablePro from '@cimom/ci-web-plugins-commom/VxeTablePro' // 独立引用 可减少打包体积
|
|
19
|
-
import { reactive } from 'vue'
|
|
20
|
-
const gridOptions = reactive({
|
|
21
|
-
data: [
|
|
22
|
-
{ id: '10001', name: '张三', role: '开发', sex: '男', num: '28', address: '北京' },
|
|
23
|
-
{ id: '10002', name: '李四', role: '测试', sex: '女', num: '22', address: '上海' }
|
|
24
|
-
]
|
|
25
|
-
})
|
|
26
|
-
const footerData = [
|
|
27
|
-
{ seq: '合计', num: '50' },
|
|
28
|
-
{ seq: '平均', num: '25' }
|
|
29
|
-
]
|
|
30
|
-
function currentRowChange(params) {
|
|
31
|
-
alert(params.row.name)
|
|
32
|
-
}
|
|
33
|
-
</script>
|
|
34
|
-
|
|
35
|
-
<template>
|
|
36
|
-
<VxeTablePro
|
|
37
|
-
@current-row-change="currentRowChange"
|
|
38
|
-
:rowConfig="{ isCurrent: true, isHover: true }"
|
|
39
|
-
:data="gridOptions.data"
|
|
40
|
-
show-footer
|
|
41
|
-
:footer-data="footerData"
|
|
42
|
-
border
|
|
43
|
-
stripe
|
|
44
|
-
height="400"
|
|
45
|
-
:column-config="{ resizable: true }"
|
|
46
|
-
/>
|
|
47
|
-
</template>
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
### 插槽支持
|
|
51
|
-
|
|
52
|
-
所有 `vxe-table` 插槽均可透传,使用方式与原生一致。
|
|
53
|
-
|
|
54
|
-
## 实例方法调用说明
|
|
55
|
-
|
|
56
|
-
VxeTablePro 支持通过 ref 获取组件实例,并通过 `Instance()` 方法获取底层 vxe-table 实例,再调用其原生方法(如刷新、获取选中行等)。
|
|
57
|
-
|
|
58
|
-
### 示例:调用原生方法
|
|
59
|
-
|
|
60
|
-
```vue
|
|
61
|
-
<script setup>
|
|
62
|
-
import { ref } from 'vue';
|
|
63
|
-
import VxeTablePro from '@cimom/ci-web-plugins-commom/VxeTablePro';
|
|
64
|
-
|
|
65
|
-
const tableRef = ref(null);
|
|
66
|
-
|
|
67
|
-
function clearSelection() {
|
|
68
|
-
// 通过 Instance() 获取底层 vxe-table 实例
|
|
69
|
-
const tableInstance = tableRef.value?.Instance?.();
|
|
70
|
-
if (tableInstance && tableInstance.clearCheckboxRow) {
|
|
71
|
-
tableInstance.clearCheckboxRow(); // 清除所有勾选行
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
</script>
|
|
75
|
-
|
|
76
|
-
<template>
|
|
77
|
-
<VxeTablePro ref="tableRef" :data="[]" />
|
|
78
|
-
<button @click="clearSelection">清除勾选</button>
|
|
79
|
-
</template>
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
> 说明:VxeTablePro 通过 `Instance()` 方法暴露底层 vxe-table 的实例,常用如 clearCheckboxRow()、getCheckboxRecords() 等,具体方法可参考 [vxe-table table API](https://vxeui.com/#/table/api/)。
|
|
83
|
-
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
> 组件打包采用 `rollup.config.js`,产物位于 `dist/VxeTablePro` 目录,按需引入即可。
|
|
1
|
+
# VxeTablePro 组件使用说明
|
|
2
|
+
|
|
3
|
+
## 简介
|
|
4
|
+
`VxeTablePro` 是基于 Vue3 + TypeScript 的表格插件模板,集成了 SCSS、CSS、TailwindCSS,适用于 NPM 发布。该组件对 [vxe-table](https://vxeui.com/#/table/api/) 进行了二次封装,支持统一扩展功能配置,便于业务快速集成和后续扩展。
|
|
5
|
+
|
|
6
|
+
## 安装
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
npm install @cimom/ci-web-plugins-commom
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## 使用方法
|
|
13
|
+
|
|
14
|
+
```vue
|
|
15
|
+
<script setup>
|
|
16
|
+
import { VxeTablePro } from '@cimom/ci-web-plugins-commom'
|
|
17
|
+
或
|
|
18
|
+
import VxeTablePro from '@cimom/ci-web-plugins-commom/VxeTablePro' // 独立引用 可减少打包体积
|
|
19
|
+
import { reactive } from 'vue'
|
|
20
|
+
const gridOptions = reactive({
|
|
21
|
+
data: [
|
|
22
|
+
{ id: '10001', name: '张三', role: '开发', sex: '男', num: '28', address: '北京' },
|
|
23
|
+
{ id: '10002', name: '李四', role: '测试', sex: '女', num: '22', address: '上海' }
|
|
24
|
+
]
|
|
25
|
+
})
|
|
26
|
+
const footerData = [
|
|
27
|
+
{ seq: '合计', num: '50' },
|
|
28
|
+
{ seq: '平均', num: '25' }
|
|
29
|
+
]
|
|
30
|
+
function currentRowChange(params) {
|
|
31
|
+
alert(params.row.name)
|
|
32
|
+
}
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<template>
|
|
36
|
+
<VxeTablePro
|
|
37
|
+
@current-row-change="currentRowChange"
|
|
38
|
+
:rowConfig="{ isCurrent: true, isHover: true }"
|
|
39
|
+
:data="gridOptions.data"
|
|
40
|
+
show-footer
|
|
41
|
+
:footer-data="footerData"
|
|
42
|
+
border
|
|
43
|
+
stripe
|
|
44
|
+
height="400"
|
|
45
|
+
:column-config="{ resizable: true }"
|
|
46
|
+
/>
|
|
47
|
+
</template>
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 插槽支持
|
|
51
|
+
|
|
52
|
+
所有 `vxe-table` 插槽均可透传,使用方式与原生一致。
|
|
53
|
+
|
|
54
|
+
## 实例方法调用说明
|
|
55
|
+
|
|
56
|
+
VxeTablePro 支持通过 ref 获取组件实例,并通过 `Instance()` 方法获取底层 vxe-table 实例,再调用其原生方法(如刷新、获取选中行等)。
|
|
57
|
+
|
|
58
|
+
### 示例:调用原生方法
|
|
59
|
+
|
|
60
|
+
```vue
|
|
61
|
+
<script setup>
|
|
62
|
+
import { ref } from 'vue';
|
|
63
|
+
import VxeTablePro from '@cimom/ci-web-plugins-commom/VxeTablePro';
|
|
64
|
+
|
|
65
|
+
const tableRef = ref(null);
|
|
66
|
+
|
|
67
|
+
function clearSelection() {
|
|
68
|
+
// 通过 Instance() 获取底层 vxe-table 实例
|
|
69
|
+
const tableInstance = tableRef.value?.Instance?.();
|
|
70
|
+
if (tableInstance && tableInstance.clearCheckboxRow) {
|
|
71
|
+
tableInstance.clearCheckboxRow(); // 清除所有勾选行
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
</script>
|
|
75
|
+
|
|
76
|
+
<template>
|
|
77
|
+
<VxeTablePro ref="tableRef" :data="[]" />
|
|
78
|
+
<button @click="clearSelection">清除勾选</button>
|
|
79
|
+
</template>
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
> 说明:VxeTablePro 通过 `Instance()` 方法暴露底层 vxe-table 的实例,常用如 clearCheckboxRow()、getCheckboxRecords() 等,具体方法可参考 [vxe-table table API](https://vxeui.com/#/table/api/)。
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
> 组件打包采用 `rollup.config.js`,产物位于 `dist/VxeTablePro` 目录,按需引入即可。
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"./index2.js";import{render as o}from"./index3.js";e.render=o,e.__scopeId="data-v-0c7cf755",e.__file="src/components/DhtmlxGanttPro/index.vue";export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{ref as e,watch as t,onMounted as a,nextTick as n,onBeforeUnmount as l}from"vue";import{gantt as d}from"dhtmlx-gantt";var r={name:"DhtmlxGanttPro",props:{width:{type:[String,Number],default:"100%"},height:{type:[String,Number],default:"500px"},data:{type:Array,default:()=>[]},links:{type:Array,default:()=>[]},config:{type:Object,default:()=>({})},readonly:{type:Boolean,default:!1},locale:{type:String,default:"cn"},theme:{type:String,default:"default"}},emits:["task-click","task-dblclick","task-change","task-add","task-delete","data-loaded","data-error","view-change","scale-change"],setup(r,{emit:s}){const o=e(null);let c=!1;const i=()=>({date_format:"%Y-%m-%d",scale_unit:"day",date_scale:"%m/%d",subscales:[{unit:"month",step:1,date:"%Y年%m月"}],columns:[{name:"text",label:"任务名称",width:150,tree:!0},{name:"start_date",label:"开始时间",width:80},{name:"duration",label:"工期",width:60},{name:"progress",label:"进度",width:60}],...r.config}),k=async()=>{if(!c&&o.value)try{o.value.innerHTML="";const e=i();Object.assign(d.config,e),"cn"===r.locale&&Object.assign(d.locale,"cn"===r.locale?{date:{month_full:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],month_short:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],day_full:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],day_short:["日","一","二","三","四","五","六"]},labels:{new_task:"新任务",icon_save:"保存",icon_cancel:"取消",icon_details:"详细信息",icon_edit:"编辑",icon_delete:"删除",confirm_closing:"",confirm_deleting:"确定删除任务吗?",section_description:"描述",section_time:"时间段",section_type:"类型"}}:{}),r.readonly&&(d.config.readonly=!0),h(),await n(),d.init(o.value),c=!0,r.data.length>0&&f(),s("data-loaded",{data:r.data,links:r.links})}catch(e){console.error("DhtmlxGanttPro 初始化失败:",e),s("data-error",e)}},h=()=>{d.attachEvent("onTaskClick",((e,t)=>{const a=d.getTask(e);return s("task-click",{task:a,event:t}),!0})),d.attachEvent("onTaskDblClick",((e,t)=>{const a=d.getTask(e);return s("task-dblclick",{task:a,event:t}),!r.readonly})),d.attachEvent("onAfterTaskUpdate",((e,t)=>{s("task-change",{id:e,task:t})})),d.attachEvent("onAfterTaskAdd",((e,t)=>{s("task-add",{id:e,task:t})})),d.attachEvent("onAfterTaskDelete",(e=>{s("task-delete",{id:e})})),d.attachEvent("onViewChange",(e=>{s("view-change",{mode:e})})),d.attachEvent("onScaleConfigChange",(()=>{s("scale-change")}))},f=()=>{if(c)try{d.clearAll(),d.parse({data:r.data,links:r.links})}catch(e){console.error("DhtmlxGanttPro 数据加载失败:",e),s("data-error",e)}};t((()=>r.readonly),(e=>{c&&(d.config.readonly=e,d.render())})),a((()=>{n((()=>{k()}))})),l((()=>{o.value&&(o.value.innerHTML=""),c=!1}));return{ganttContainer:o,...{getGanttInstance:()=>d,refresh:()=>{if(c){const e=i();Object.assign(d.config,e),f(),d.render()}},getSelectedTask:()=>d.getSelectedTask(),addTask:e=>{if(c&&!r.readonly)return d.addTask(e)},updateTask:(e,t)=>{if(c&&!r.readonly)return d.updateTask(e,t)},deleteTask:e=>{if(c&&!r.readonly)return d.deleteTask(e)},fitToTask:()=>{c&&d.showTask(d.getTaskByIndex(0).id)}}}}};export{r as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createElementBlock as t,openBlock as n,createElementVNode as i,normalizeStyle as e}from"vue";const r={class:"dhtmlx-gantt-pro"};function o(o,a,h,l,s,c){return n(),t("div",r,[i("div",{ref:"ganttContainer",style:e({width:h.width,height:h.height}),class:"gantt-container"},null,4)])}export{o as render};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ref as e,reactive as l,onUnmounted as a,resolveComponent as t,createElementBlock as n,openBlock as o,createVNode as u,withCtx as i,createElementVNode as r,createTextVNode as d,unref as s,Fragment as c,renderList as m,createBlock as f,normalizeClass as v,normalizeStyle as p,toDisplayString as C,withDirectives as g,vShow as h,nextTick as b}from"vue";import D from"vxe-table";import{getLocalStorageStore as _,getCookie as y}from"../../../libs/setStore/index.js";import S from"../../../libs/request/index.js";import T from"dayjs";import"../tableTemplate/index.vue/index.js";import"../tableTemplate/second.vue/index.js";import{ArrowDown as w,Search as x,RefreshRight as I,Refresh as V,Delete as E}from"../../../node_modules/@element-plus/icons-vue/dist/index/index.js";import k from"../tableTemplate/index.vue/index2.js";import N from"../tableTemplate/second.vue/index2.js";const O={class:"drawerClass"},A={class:"flex flex-col"},L={style:{padding:"5px 0px"},class:"flex justify-between"},M={class:"flex justify-center"},F={class:"dropdownLink"},j={style:{"margin-right":"10px"}},P={class:"flex flex-col"},R={style:{padding:"5px 0px"},class:"flex justify-between"},Y={class:"flex justify-center"},U={class:"dropdownLink"},H={class:"dropdownLink"},q={style:{"margin-top":"10px"}};var B=Object.assign({name:"drawerComponent"},{__name:"index",props:{},emits:["update:drawerShow","queryFunc"],setup(B,{expose:K,emit:J}){const z=J;let Q=window.location.href;const $=e({}),G=e(null),W=e(!1),X=e(null),Z=e(null),ee=e(!1),le=e(!1),ae=e(!1),te=e([]),ne=e(!1),oe=e(!1),ue=e(null),ie=e("First"),re=e(!1),de=e(!1),se=e(!1);e(!1);const ce=e(0),me=e("");e("");const fe=e([]),ve=e(null),pe=e(!1),Ce=l({hash:"",flag:""}),ge=l({name:"",region:0,defaultOption:!1}),he=l({name:[{required:!0,message:"请输入方案名称",trigger:"blur"}]}),be=e(null),De=e(null),_e=e(null);e(_("multiOrganization"));const ye=e(_("userInfo")||y("userInfo")||{CID:null});a((()=>{$.value={}}));const Se=async()=>{oe.value=!0;let e={table:"TBL_SYS_ADVANCED_SEARCH",CID:Z.value};await S.request({url:"/api/SYSTEM/Common/Remove",method:"post",data:e}).then((e=>{e.Success&&(oe.value=!1,console.log(e.Content?e.Content:"执行成功"),ce.value=Math.ceil(1e4*Math.random()),Z.value=null,Object.assign(ge,{name:"",region:0,defaultOption:!1}),be.value&&be.value.clearValidate(),Te(!0))})).catch((e=>{oe.value=!1,console.error("Delete solution error:",e)}))},Te=async(e=!1)=>{let l=Ne();if(!e&&l&&l.length>0){re.value=!0;let e=xe(l);try{let l=$.value[Q].lastTimeSearchSolutionCID;l&&(e=Ie(l))}catch(e){}if(e){let l=JSON.parse(e.CCONDITION);l.tableData&&(fe.value=we(l.tableData)),l.loadDataConfig&&(ve.value=l.loadDataConfig)}return void setTimeout((()=>{re.value=!1}),1e3)}re.value=!0;let a={table:"TBL_SYS_ADVANCED_SEARCH",where:`CPARENT='${ue.value.searchProSettingCPARENT}'`};await S.request({url:"/api/SYSTEM/Common/PageQuery",method:"post",data:a}).then((e=>{if(e.Success&&e.Datas&&e.Datas.length>0){te.value=e.Datas,$.value[Q]={solutionList:te.value};let l=xe();if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(fe.value=we(e.tableData)),e.loadDataConfig&&(ve.value=e.loadDataConfig)}}})).catch((e=>{console.error("Load solution list error:",e)})),re.value=!1},we=(e=[],l=!1)=>{let a=[],t=ke();return t&&!l?e.forEach((e=>{t[e.id]&&t[e.id].hasOwnProperty("isCheck")?e.isCheck=t[e.id].isCheck:e.isCheck=!0,e.value=t[e.id].value,e.comparator=t[e.id].comparator,e.relationSign=t[e.id].relationSign,a.push(e)})):e.forEach((e=>{if(e.isCheck=!0,e.defaultValue)switch(e.controlType){case"number":e.value=e.defaultValue?Number(e.defaultValue):null;break;case"date":case"datetime":e.value=Le(e.controlType,e.defaultValue);break;case"daterange":case"datetimerange":e.defaultValue&&(e.value=((e,l)=>{const a=new Date,t=new Date;try{let n=[t,a],o="",u=l.split("#");switch(e){case"daterange":o="YYYY-MM-DD";break;case"datetimerange":o="YYYY-MM-DD HH:mm:ss";break;default:o=""}if(u[0])if("curdate"==u[0])n[0]=T().format(o);else if(u[0].includes("-")){let e=u[0].split("-");n[0]=T()[e[0]](Number(e[1]),e[2]).format(o)}else n[0]=t;if(u[1])if("curdate"==u[1])n[1]=T().format(o);else if(u[1].includes("-")){let e=u[1].split("-");n[1]=T()[e[0]](Number(e[1]),e[2]).format(o)}else n[1]=a;return n}catch(e){return[t,a]}})(e.controlType,e.defaultValue));break;default:e.value=e.defaultValue}a.push(e)})),a},xe=(e=[])=>{0==e.length&&(e=te.value);let l=null,a=e.filter((e=>{if(e.CDEFAULT)return X.value=e.CID,e}));return l=a&&a.length>0?a[0]:Ie(ue.value.searchProSettingID,e),l},Ie=(e,l=[])=>{0==l.length&&(l=te.value);let a=null,t=l.filter((l=>{if(l.CID==e)return l}));return t&&t.length>0&&(a=t[0]),a},Ve=e=>{ne.value=e},Ee=e=>{},ke=()=>{try{return $.value[Q]?.searchParams||null}catch(e){return null}},Ne=()=>{try{return $.value[Q]?.solutionList||[]}catch(e){return[]}},Oe=e=>{Me()},Ae=()=>{Te(!0)},Le=(e,l)=>l,Me=()=>{W.value=!0,clearTimeout(G.value),G.value=setTimeout((()=>{let e=je(),l=(e=>{let l={};return e.forEach((e=>{let a={id:e.id,field:e.field,isCheck:e.isCheck,value:e.value,comparator:e.comparator,relationSign:e.relationSign};l[e.id]=a})),l})(je("visibleData"));$.value[Q].searchParams=l,$.value[Q].lastTimeSearchSolutionCID=X.value;let a=[{ConditionalList:Fe(e)}];W.value=!1;let t={fullPath:Q,conditionalList:a};ue.value.closeAfterSearchPro&&(de.value=!1),console.log("setGlobalState:",{type:"searchProDrawerBox",postData:t}),z("queryFunc",t)}),1e3)},Fe=e=>{let l=[];return e.forEach(((e,a)=>{if(!e.isCheck&&e.children&&0==e.children.length)return;let t=e.value;if("reportMulSelect"!=e.controlType&&"customMulSelect"!=e.controlType||(t=t.toString()),0!=e.parentId)if("daterange"==e.controlType||"datetimerange"==e.controlType){let n={Key:0==a?-1:e.relationSign,Value:{ConditionalList:[{Key:0,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t[0],ConditionalType:3}},{Key:0,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t[1],ConditionalType:5}}]}};t&&t[0]&&t[1]&&l.push(n)}else{let n={Key:0==a?-1:e.relationSign,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t,ConditionalType:e.comparator}};t&&l.push(n)}else if(0==e.parentId&&e.children.length>0){let t=Fe(e.children),n={Key:0==a?-1:e.relationSign,Value:{ConditionalList:t}};t&&t.length>0&&l.push(n)}})),l},je=(e="fullData")=>{let l=[];try{let a=De.value?.$refs?.vxeTableRef;l=a.getTableData()[e]}catch(e){return l}return l},Pe=e=>{se.value=!0,Ce.hash=Math.ceil(1e4*Math.random()),Ce.flag=e},Re=()=>{$.value[Q]={},ce.value=Math.ceil(1e4*Math.random()),Z.value=null,Object.assign(ge,{name:"",region:0,defaultOption:!1}),be.value&&be.value.clearValidate()},Ye=()=>{ne.value=!1,re.value=!1,z("update:drawerShow",!1),Object.assign(ge,{name:"",region:0,defaultOption:!1})},Ue=e=>{X.value=e;let l=Ie(e);if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(fe.value=we(e.tableData,!0)),e.loadDataConfig&&(ve.value=e.loadDataConfig)}},He=e=>{be.value.clearValidate(),Z.value=e;const l=Ie(e);l&&(ge.name=l.CSCHEME_NAME||"",ge.region=l.CVISIBLE||0,ge.defaultOption=!!l.CDEFAULT);let a=_e.value;a&&a.solutionCID_change(e)},qe=e=>{},Be=e=>{ee.value=e},Ke=e=>{Te(!0),Object.assign(ge,{name:"",region:0,defaultOption:!1})};return K({openDrawer:e=>{e.tableId?(me.value=e.tableId,ue.value={searchProSettingCPARENT:e.CPARENT,searchProSettingID:e.tableId,cleanCache:e.cleanCache||!1,closeAfterSearchPro:e.closeAfterSearchPro},de.value=!0,b((()=>{Te(ue.value.cleanCache)}))):D.modal.message({message:"未配置高级搜索ID",status:"error"})},queryFunc:Me,resetQuery:Ae,closeDrawer:Ye}),(e,l)=>{const a=t("el-icon"),b=t("el-dropdown-item"),D=t("el-dropdown-menu"),_=t("el-dropdown"),y=t("el-button"),S=t("el-tab-pane"),T=t("el-input"),B=t("el-form-item"),K=t("el-option"),J=t("el-select"),z=t("el-checkbox"),Q=t("el-form"),$=t("el-tabs"),G=t("el-drawer");return o(),n("div",O,[u(G,{"close-on-press-escape":"",title:"高级查询",modelValue:de.value,"onUpdate:modelValue":l[9]||(l[9]=e=>de.value=e),direction:"rtl",size:"800px","destroy-on-close":!0,onClose:Ye,wrapperClosable:!0},{default:i((()=>[u($,{style:{"margin-left":"10px"},modelValue:ie.value,"onUpdate:modelValue":l[8]||(l[8]=e=>ie.value=e),onTabClick:Ee},{default:i((()=>[u(S,{label:"查询条件",name:"First"},{default:i((()=>[r("div",A,[r("div",L,[r("div",M,[u(_,{onCommand:Ue,class:"dropDownCla"},{dropdown:i((()=>[u(D,null,{default:i((()=>[(o(!0),n(c,null,m(te.value,((e,l)=>(o(),f(b,{key:l,command:e.CID},{default:i((()=>[r("i",{style:p({color:e.CID==X.value?"green":""}),class:v([e.CID==X.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),r("span",{style:p({color:e.CDEFAULT?"red":""})},C(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:i((()=>[r("span",F,[u(a,null,{default:i((()=>[u(s(w))])),_:1}),l[10]||(l[10]=d(" 选择方案 "))])])),_:1})]),r("div",j,[u(y,{loading:W.value,onClick:l[0]||(l[0]=e=>Me()),type:"primary"},{default:i((()=>[u(a,null,{default:i((()=>[u(s(x))])),_:1}),l[11]||(l[11]=d(" 查询 "))])),_:1,__:[11]},8,["loading"]),u(y,{onClick:l[1]||(l[1]=e=>Ae()),type:"warning"},{default:i((()=>[u(a,null,{default:i((()=>[u(s(I))])),_:1}),l[12]||(l[12]=d(" 重置 "))])),_:1,__:[12]})])]),r("div",null,[u(k,{ref_key:"TableFirstTemplateRef",ref:De,conditionConfig:Ce,isClearTreeData:ce.value,tableOptions:fe.value,tableDataLoading:re.value,isAdd:pe.value,onHandleEnterEvent:Oe},null,8,["conditionConfig","isClearTreeData","tableOptions","tableDataLoading","isAdd"])])])])),_:1}),u(S,{label:"新增方案",name:"Second"},{default:i((()=>[r("div",P,[r("div",R,[r("div",Y,[u(_,{onCommand:He,class:"dropDownCla"},{dropdown:i((()=>[u(D,null,{default:i((()=>[(o(!0),n(c,null,m(te.value,((e,l)=>(o(),f(b,{key:l,command:e.CID},{default:i((()=>[r("i",{style:p({color:e.CID==Z.value?"green":""}),class:v([e.CID==Z.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),r("span",{style:p({color:e.CDEFAULT?"red":""})},C(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:i((()=>[r("span",U,[u(a,null,{default:i((()=>[u(s(w))])),_:1}),l[13]||(l[13]=d(" 选择方案 "))])])),_:1}),u(_,{disabled:ae.value&&!!Z.value,onCommand:Pe,class:"dropDownCla"},{dropdown:i((()=>[u(D,null,{default:i((()=>[u(b,{command:"group"},{default:i((()=>l[15]||(l[15]=[d("条件组")]))),_:1,__:[15]}),u(b,{command:"condition"},{default:i((()=>l[16]||(l[16]=[d("条件")]))),_:1,__:[16]})])),_:1})])),default:i((()=>[r("span",H,[u(a,null,{default:i((()=>[u(s(w))])),_:1}),l[14]||(l[14]=d(" 新增条件 "))])])),_:1},8,["disabled"]),u(y,{type:"warning",onClick:l[2]||(l[2]=e=>Re())},{default:i((()=>[u(a,null,{default:i((()=>[u(s(V))])),_:1}),l[17]||(l[17]=d("清空 "))])),_:1,__:[17]}),g(u(y,{disabled:ee.value,onClick:l[3]||(l[3]=e=>(console.log("此操作将删除高级查询配置数据, 是否继续?"),void Se())),type:"danger",loading:oe.value},{default:i((()=>[u(a,null,{default:i((()=>[u(s(E))])),_:1}),l[18]||(l[18]=d(" 删除 "))])),_:1,__:[18]},8,["disabled","loading"]),[[h,!!Z.value]]),u(y,{disabled:le.value&&!!Z.value,onClick:l[4]||(l[4]=e=>{be.value.validate((e=>{if(!e)return!1;{let e=_e.value;e&&e.submitEditDialog()}}))}),loading:ne.value,type:"success"},{default:i((()=>l[19]||(l[19]=[r("i",{class:"vxe-icon-save"},null,-1),d(" 保存 ")]))),_:1,__:[19]},8,["disabled","loading"])]),l[20]||(l[20]=r("div",{style:{"margin-right":"10px"}},null,-1))]),r("div",q,[u(Q,{ref_key:"searchSolutionRef",ref:be,inline:!0,rules:he,model:ge},{default:i((()=>[u(B,{label:"方案名称",prop:"name"},{default:i((()=>[u(T,{readonly:le.value&&!!Z.value,style:{width:"160px"},modelValue:ge.name,"onUpdate:modelValue":l[5]||(l[5]=e=>ge.name=e),placeholder:"方案名称",clear:""},null,8,["readonly","modelValue"])])),_:1}),u(B,{label:"可见性",prop:"region"},{default:i((()=>[u(J,{disabled:"",userId:ye.value?.CID,style:{width:"160px"},modelValue:ge.region,"onUpdate:modelValue":l[6]||(l[6]=e=>ge.region=e),placeholder:"请选择可见性"},{default:i((()=>[u(K,{label:"仅有我",value:ye.value?.CID},null,8,["value"]),u(K,{label:"全局",value:0})])),_:1},8,["userId","modelValue"])])),_:1}),u(B,{label:"设为默认"},{default:i((()=>[u(z,{modelValue:ge.defaultOption,"onUpdate:modelValue":l[7]||(l[7]=e=>ge.defaultOption=e)},null,8,["modelValue"])])),_:1})])),_:1},8,["rules","model"])]),r("div",null,[u(N,{ref_key:"TableSecondTemplateRef",ref:_e,conditionConfig:Ce,isClearTreeData:ce.value,solutionList:te.value,optionModel:ue.value,formSolution:ge,onFormDataChangeFn:qe,onDisabledDeleteBtnFn:Be,onSubmitSuccess:Ke,onSubmitBtnLoadingFn:Ve,solutionCID:Z.value},null,8,["conditionConfig","isClearTreeData","solutionList","optionModel","formSolution","solutionCID"])])])])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])])}}});export{B as default};
|
|
1
|
+
import{ref as e,reactive as l,onMounted as a,nextTick as t,onUnmounted as n,resolveComponent as o,createElementBlock as u,openBlock as i,createBlock as r,withCtx as d,createVNode as s,createElementVNode as c,createTextVNode as f,unref as m,Fragment as p,renderList as v,normalizeClass as g,normalizeStyle as C,toDisplayString as b,withDirectives as h,vShow as _}from"vue";import y from"vxe-table";import{getLocalStorageStore as x,getCookie as D}from"../../../libs/setStore/index.js";import S from"../../../libs/request/index.js";import T from"dayjs";import"../tableTemplate/index.vue/index.js";import"../tableTemplate/second.vue/index.js";import{ArrowDown as w,Search as I,RefreshRight as k,Refresh as V,Delete as E}from"../../../node_modules/@element-plus/icons-vue/dist/index/index.js";import A from"../tableTemplate/index.vue/index2.js";import N from"../tableTemplate/second.vue/index2.js";const O={class:"drawerClass"},F={class:"flex flex-col"},M={style:{padding:"5px 0px"},class:"flex justify-between"},L={class:"flex justify-center"},P={class:"inline-block text-white w-full px-1.5 text-left"},j={style:{"margin-right":"10px"}},R={class:"flex flex-col"},U={style:{padding:"5px 0px"},class:"flex justify-between"},Y={class:"flex justify-center"},H={class:"inline-block text-white w-full px-1.5 text-left"},B={class:"inline-block text-white w-full px-1.5 text-left"},q={style:{"margin-top":"10px"}},K={class:"flex flex-col"},J={style:{padding:"5px 0px"},class:"flex justify-between"},z={class:"flex justify-center"},Q={class:"inline-block text-white w-full px-1.5 text-left"},$={style:{"margin-right":"10px"}},G={class:"flex flex-col"},W={style:{padding:"5px 0px"},class:"flex justify-between"},X={class:"flex justify-center"},Z={class:"inline-block text-white w-full px-1.5 text-left"},ee={class:"inline-block text-white w-full px-1.5 text-left"},le={style:{"margin-top":"10px"}};var ae=Object.assign({name:"drawerComponent"},{__name:"index",props:{config:{type:Object,default:()=>({cleanCache:!1,tableId:null,CPARENT:"",closeAfterSearchPro:!0})},type:{type:String,default:"drawer"}},emits:["update:drawerShow","queryFunc"],setup(ae,{expose:te,emit:ne}){const oe=ae,ue=ne;let ie=window.location.href;const re=e({}),de=e(null),se=e(!1),ce=e(null),fe=e(null),me=e(!1),pe=e(!1),ve=e(!1),ge=e([]),Ce=e(!1),be=e(!1),he=e(null),_e=e("First"),ye=e(!1),xe=e(!1),De=e(!1);e(!1);const Se=e(0),Te=e("");e("");const we=e([]),Ie=e(null),ke=e(!1),Ve=l({hash:"",flag:""}),Ee=l({name:"",region:0,defaultOption:!1}),Ae=l({name:[{required:!0,message:"请输入方案名称",trigger:"blur"}]}),Ne=e(null),Oe=e(null),Fe=e(null);e(x("multiOrganization"));const Me=e(x("userInfo")||D("userInfo")||{CID:null});a((()=>{"tabs"==oe.type&&(Te.value=oe.config.tableId,he.value={searchProSettingCPARENT:oe.config.CPARENT,searchProSettingID:oe.config.tableId,cleanCache:oe.config.cleanCache||!1,closeAfterSearchPro:oe.config.closeAfterSearchPro},t((()=>{je(he.value.cleanCache)})))})),n((()=>{re.value={}}));const Le=()=>{console.log("此操作将删除高级查询配置数据, 是否继续?"),Pe()},Pe=async()=>{be.value=!0;let e={table:"TBL_SYS_ADVANCED_SEARCH",CID:fe.value};await S.request({url:"/api/SYSTEM/Common/Remove",method:"post",data:e}).then((e=>{e.Success&&(be.value=!1,console.log(e.Content?e.Content:"执行成功"),Se.value=Math.ceil(1e4*Math.random()),fe.value=null,Object.assign(Ee,{name:"",region:0,defaultOption:!1}),Ne.value&&Ne.value.clearValidate(),je(!0))})).catch((e=>{be.value=!1,console.error("Delete solution error:",e)}))},je=async(e=!1)=>{let l=Je();if(!e&&l&&l.length>0){ye.value=!0;let e=Ue(l);try{let l=re.value[ie].lastTimeSearchSolutionCID;l&&(e=Ye(l))}catch(e){}if(e){let l=JSON.parse(e.CCONDITION);l.tableData&&(we.value=Re(l.tableData)),l.loadDataConfig&&(Ie.value=l.loadDataConfig)}return void setTimeout((()=>{ye.value=!1}),1e3)}ye.value=!0;let a={table:"TBL_SYS_ADVANCED_SEARCH",where:`CPARENT='${he.value.searchProSettingCPARENT}'`};await S.request({url:"/api/SYSTEM/Common/PageQuery",method:"post",data:a}).then((e=>{if(e.Success&&e.Datas&&e.Datas.length>0){ge.value=e.Datas,re.value[ie]={solutionList:ge.value};let l=Ue();if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(we.value=Re(e.tableData)),e.loadDataConfig&&(Ie.value=e.loadDataConfig)}}})).catch((e=>{console.error("Load solution list error:",e)})),ye.value=!1},Re=(e=[],l=!1)=>{let a=[],t=Ke();return t&&!l?e.forEach((e=>{t[e.id]&&t[e.id].hasOwnProperty("isCheck")?e.isCheck=t[e.id].isCheck:e.isCheck=!0,e.value=t[e.id].value,e.comparator=t[e.id].comparator,e.relationSign=t[e.id].relationSign,a.push(e)})):e.forEach((e=>{if(e.isCheck=!0,e.defaultValue)switch(e.controlType){case"number":e.value=e.defaultValue?Number(e.defaultValue):null;break;case"date":case"datetime":e.value=$e(e.controlType,e.defaultValue);break;case"daterange":case"datetimerange":e.defaultValue&&(e.value=((e,l)=>{const a=new Date,t=new Date;try{let n=[t,a],o="",u=l.split("#");switch(e){case"daterange":o="YYYY-MM-DD";break;case"datetimerange":o="YYYY-MM-DD HH:mm:ss";break;default:o=""}if(u[0])if("curdate"==u[0])n[0]=T().format(o);else if(u[0].includes("-")){let e=u[0].split("-");n[0]=T()[e[0]](Number(e[1]),e[2]).format(o)}else n[0]=t;if(u[1])if("curdate"==u[1])n[1]=T().format(o);else if(u[1].includes("-")){let e=u[1].split("-");n[1]=T()[e[0]](Number(e[1]),e[2]).format(o)}else n[1]=a;return n}catch(e){return[t,a]}})(e.controlType,e.defaultValue));break;default:e.value=e.defaultValue}a.push(e)})),a},Ue=(e=[])=>{0==e.length&&(e=ge.value);let l=null,a=e.filter((e=>{if(e.CDEFAULT)return ce.value=e.CID,e}));return l=a&&a.length>0?a[0]:Ye(he.value.searchProSettingID,e),l},Ye=(e,l=[])=>{0==l.length&&(l=ge.value);let a=null,t=l.filter((l=>{if(l.CID==e)return l}));return t&&t.length>0&&(a=t[0]),a},He=()=>{Ne.value.validate((e=>{if(!e)return!1;{let e=Fe.value;e&&e.submitEditDialog()}}))},Be=e=>{Ce.value=e},qe=e=>{},Ke=()=>{try{return re.value[ie]?.searchParams||null}catch(e){return null}},Je=()=>{try{return re.value[ie]?.solutionList||[]}catch(e){return[]}},ze=e=>{Ge()},Qe=()=>{je(!0)},$e=(e,l)=>l,Ge=()=>{se.value=!0,clearTimeout(de.value),de.value=setTimeout((()=>{let e=Xe(),l=(e=>{let l={};return e.forEach((e=>{let a={id:e.id,field:e.field,isCheck:e.isCheck,value:e.value,comparator:e.comparator,relationSign:e.relationSign};l[e.id]=a})),l})(Xe("visibleData"));re.value[ie].searchParams=l,re.value[ie].lastTimeSearchSolutionCID=ce.value;let a=[{ConditionalList:We(e)}];se.value=!1;let t={fullPath:ie,conditionalList:a};he.value.closeAfterSearchPro&&(xe.value=!1),console.log("setGlobalState:",{type:"searchProDrawerBox",postData:t}),ue("queryFunc",t)}),1e3)},We=e=>{let l=[];return e.forEach(((e,a)=>{if(!e.isCheck&&e.children&&0==e.children.length)return;let t=e.value;if("reportMulSelect"!=e.controlType&&"customMulSelect"!=e.controlType||(t=t.toString()),0!=e.parentId)if("daterange"==e.controlType||"datetimerange"==e.controlType){let n={Key:0==a?-1:e.relationSign,Value:{ConditionalList:[{Key:0,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t[0],ConditionalType:3}},{Key:0,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t[1],ConditionalType:5}}]}};t&&t[0]&&t[1]&&l.push(n)}else{let n={Key:0==a?-1:e.relationSign,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t,ConditionalType:e.comparator}};t&&l.push(n)}else if(0==e.parentId&&e.children.length>0){let t=We(e.children),n={Key:0==a?-1:e.relationSign,Value:{ConditionalList:t}};t&&t.length>0&&l.push(n)}})),l},Xe=(e="fullData")=>{let l=[];try{let a=Oe.value?.$refs?.vxeTableRef;l=a.getTableData()[e]}catch(e){return l}return l},Ze=e=>{De.value=!0,Ve.hash=Math.ceil(1e4*Math.random()),Ve.flag=e},el=()=>{re.value[ie]={},Se.value=Math.ceil(1e4*Math.random()),fe.value=null,Object.assign(Ee,{name:"",region:0,defaultOption:!1}),Ne.value&&Ne.value.clearValidate()},ll=()=>{Ce.value=!1,ye.value=!1,ue("update:drawerShow",!1),Object.assign(Ee,{name:"",region:0,defaultOption:!1})},al=e=>{ce.value=e;let l=Ye(e);if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(we.value=Re(e.tableData,!0)),e.loadDataConfig&&(Ie.value=e.loadDataConfig)}},tl=e=>{Ne.value.clearValidate(),fe.value=e;const l=Ye(e);l&&(Ee.name=l.CSCHEME_NAME||"",Ee.region=l.CVISIBLE||0,Ee.defaultOption=!!l.CDEFAULT);let a=Fe.value;a&&a.solutionCID_change(e)},nl=e=>{},ol=e=>{me.value=e},ul=e=>{je(!0),Object.assign(Ee,{name:"",region:0,defaultOption:!1})};return te({openDrawer:e=>{e.tableId?(Te.value=e.tableId,he.value={searchProSettingCPARENT:e.CPARENT,searchProSettingID:e.tableId,cleanCache:e.cleanCache||!1,closeAfterSearchPro:e.closeAfterSearchPro},xe.value=!0,t((()=>{je(he.value.cleanCache)}))):y.modal.message({message:"未配置高级搜索ID",status:"error"})},queryFunc:Ge,resetQuery:Qe,closeDrawer:ll}),(e,l)=>{const a=o("el-icon"),t=o("el-dropdown-item"),n=o("el-dropdown-menu"),y=o("el-dropdown"),x=o("el-button"),D=o("el-tab-pane"),S=o("el-input"),T=o("el-form-item"),ae=o("el-option"),te=o("el-select"),ne=o("el-checkbox"),ue=o("el-form"),ie=o("el-tabs"),re=o("el-drawer");return i(),u("div",O,["drawer"==oe.type?(i(),r(re,{key:0,"close-on-press-escape":"",title:"高级查询",modelValue:xe.value,"onUpdate:modelValue":l[9]||(l[9]=e=>xe.value=e),direction:"rtl",size:"800px","destroy-on-close":!0,onClose:ll,wrapperClosable:!0},{default:d((()=>[s(ie,{style:{"margin-left":"10px"},modelValue:_e.value,"onUpdate:modelValue":l[8]||(l[8]=e=>_e.value=e),onTabClick:qe},{default:d((()=>[s(D,{label:"查询条件",name:"First"},{default:d((()=>[c("div",F,[c("div",M,[c("div",L,[s(y,{onCommand:al,class:"flex items-center px-2.5 py-1.5 mr-2.5 bg-blue-500 rounded text-center cursor-pointer"},{dropdown:d((()=>[s(n,null,{default:d((()=>[(i(!0),u(p,null,v(ge.value,((e,l)=>(i(),r(t,{key:l,command:e.CID},{default:d((()=>[c("i",{style:C({color:e.CID==ce.value?"green":""}),class:g([e.CID==ce.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),c("span",{style:C({color:e.CDEFAULT?"red":""})},b(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:d((()=>[c("span",P,[s(a,null,{default:d((()=>[s(m(w))])),_:1}),l[19]||(l[19]=f(" 选择方案 "))])])),_:1})]),c("div",j,[s(x,{loading:se.value,onClick:l[0]||(l[0]=e=>Ge()),type:"primary"},{default:d((()=>[s(a,null,{default:d((()=>[s(m(I))])),_:1}),l[20]||(l[20]=f(" 查询 "))])),_:1,__:[20]},8,["loading"]),s(x,{onClick:l[1]||(l[1]=e=>Qe()),type:"warning"},{default:d((()=>[s(a,null,{default:d((()=>[s(m(k))])),_:1}),l[21]||(l[21]=f(" 重置 "))])),_:1,__:[21]})])]),c("div",null,[s(A,{ref_key:"TableFirstTemplateRef",ref:Oe,conditionConfig:Ve,isClearTreeData:Se.value,tableOptions:we.value,tableDataLoading:ye.value,isAdd:ke.value,onHandleEnterEvent:ze},null,8,["conditionConfig","isClearTreeData","tableOptions","tableDataLoading","isAdd"])])])])),_:1}),s(D,{label:"新增方案",name:"Second"},{default:d((()=>[c("div",R,[c("div",U,[c("div",Y,[s(y,{onCommand:tl,class:"flex items-center px-2.5 py-1.5 mr-2.5 bg-blue-500 rounded text-center cursor-pointer"},{dropdown:d((()=>[s(n,null,{default:d((()=>[(i(!0),u(p,null,v(ge.value,((e,l)=>(i(),r(t,{key:l,command:e.CID},{default:d((()=>[c("i",{style:C({color:e.CID==fe.value?"green":""}),class:g([e.CID==fe.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),c("span",{style:C({color:e.CDEFAULT?"red":""})},b(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:d((()=>[c("span",H,[s(a,null,{default:d((()=>[s(m(w))])),_:1}),l[22]||(l[22]=f(" 选择方案 "))])])),_:1}),s(y,{disabled:ve.value&&!!fe.value,onCommand:Ze,class:"flex items-center px-2.5 py-1.5 mr-2.5 bg-blue-500 rounded text-center cursor-pointer"},{dropdown:d((()=>[s(n,null,{default:d((()=>[s(t,{command:"group"},{default:d((()=>l[24]||(l[24]=[f("条件组")]))),_:1,__:[24]}),s(t,{command:"condition"},{default:d((()=>l[25]||(l[25]=[f("条件")]))),_:1,__:[25]})])),_:1})])),default:d((()=>[c("span",B,[s(a,null,{default:d((()=>[s(m(w))])),_:1}),l[23]||(l[23]=f(" 新增条件 "))])])),_:1},8,["disabled"]),s(x,{type:"warning",onClick:l[2]||(l[2]=e=>el())},{default:d((()=>[s(a,null,{default:d((()=>[s(m(V))])),_:1}),l[26]||(l[26]=f("清空 "))])),_:1,__:[26]}),h(s(x,{disabled:me.value,onClick:l[3]||(l[3]=e=>Le()),type:"danger",loading:be.value},{default:d((()=>[s(a,null,{default:d((()=>[s(m(E))])),_:1}),l[27]||(l[27]=f(" 删除 "))])),_:1,__:[27]},8,["disabled","loading"]),[[_,!!fe.value]]),s(x,{disabled:pe.value&&!!fe.value,onClick:l[4]||(l[4]=e=>He()),loading:Ce.value,type:"success"},{default:d((()=>[l[28]||(l[28]=c("i",{class:"vxe-icon-save"},null,-1)),l[29]||(l[29]=f(" ")),h(c("span",null,"新增",512),[[_,!fe.value]]),h(c("span",null,"更新",512),[[_,!!fe.value]])])),_:1,__:[28,29]},8,["disabled","loading"])]),l[30]||(l[30]=c("div",{style:{"margin-right":"10px"}},null,-1))]),c("div",q,[s(ue,{ref_key:"searchSolutionRef",ref:Ne,inline:!0,rules:Ae,model:Ee},{default:d((()=>[s(T,{label:"方案名称",prop:"name"},{default:d((()=>[s(S,{readonly:pe.value&&!!fe.value,style:{width:"160px"},modelValue:Ee.name,"onUpdate:modelValue":l[5]||(l[5]=e=>Ee.name=e),placeholder:"方案名称",clear:""},null,8,["readonly","modelValue"])])),_:1}),s(T,{label:"可见性",prop:"region"},{default:d((()=>[s(te,{disabled:"",userId:Me.value?.CID,style:{width:"160px"},modelValue:Ee.region,"onUpdate:modelValue":l[6]||(l[6]=e=>Ee.region=e),placeholder:"请选择可见性"},{default:d((()=>[s(ae,{label:"仅有我",value:Me.value?.CID},null,8,["value"]),s(ae,{label:"全局",value:0})])),_:1},8,["userId","modelValue"])])),_:1}),s(T,{label:"设为默认"},{default:d((()=>[s(ne,{modelValue:Ee.defaultOption,"onUpdate:modelValue":l[7]||(l[7]=e=>Ee.defaultOption=e)},null,8,["modelValue"])])),_:1})])),_:1},8,["rules","model"])]),c("div",null,[s(N,{ref_key:"TableSecondTemplateRef",ref:Fe,conditionConfig:Ve,isClearTreeData:Se.value,solutionList:ge.value,optionModel:he.value,formSolution:Ee,onFormDataChangeFn:nl,onDisabledDeleteBtnFn:ol,onSubmitSuccess:ul,onSubmitBtnLoadingFn:Be,solutionCID:fe.value},null,8,["conditionConfig","isClearTreeData","solutionList","optionModel","formSolution","solutionCID"])])])])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])):(i(),r(ie,{key:1,style:{"margin-left":"10px"},modelValue:_e.value,"onUpdate:modelValue":l[18]||(l[18]=e=>_e.value=e),onTabClick:qe},{default:d((()=>[s(D,{label:"查询条件",name:"First"},{default:d((()=>[c("div",K,[c("div",J,[c("div",z,[s(y,{onCommand:al,class:"flex items-center px-2.5 py-1.5 mr-2.5 bg-blue-500 rounded text-center cursor-pointer"},{dropdown:d((()=>[s(n,null,{default:d((()=>[(i(!0),u(p,null,v(ge.value,((e,l)=>(i(),r(t,{key:l,command:e.CID},{default:d((()=>[c("i",{style:C({color:e.CID==ce.value?"green":""}),class:g([e.CID==ce.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),c("span",{style:C({color:e.CDEFAULT?"red":""})},b(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:d((()=>[c("span",Q,[s(a,null,{default:d((()=>[s(m(w))])),_:1}),l[31]||(l[31]=f(" 选择方案 "))])])),_:1})]),c("div",$,[s(x,{loading:se.value,onClick:l[10]||(l[10]=e=>Ge()),type:"primary"},{default:d((()=>[s(a,null,{default:d((()=>[s(m(I))])),_:1}),l[32]||(l[32]=f(" 查询 "))])),_:1,__:[32]},8,["loading"]),s(x,{onClick:l[11]||(l[11]=e=>Qe()),type:"warning"},{default:d((()=>[s(a,null,{default:d((()=>[s(m(k))])),_:1}),l[33]||(l[33]=f(" 重置 "))])),_:1,__:[33]})])]),c("div",null,[s(A,{ref_key:"TableFirstTemplateRef",ref:Oe,conditionConfig:Ve,isClearTreeData:Se.value,tableOptions:we.value,tableDataLoading:ye.value,isAdd:ke.value,onHandleEnterEvent:ze},null,8,["conditionConfig","isClearTreeData","tableOptions","tableDataLoading","isAdd"])])])])),_:1}),s(D,{label:"新增方案",name:"Second"},{default:d((()=>[c("div",G,[c("div",W,[c("div",X,[s(y,{onCommand:tl,class:"flex items-center px-2.5 py-1.5 mr-2.5 bg-blue-500 rounded text-center cursor-pointer"},{dropdown:d((()=>[s(n,null,{default:d((()=>[(i(!0),u(p,null,v(ge.value,((e,l)=>(i(),r(t,{key:l,command:e.CID},{default:d((()=>[c("i",{style:C({color:e.CID==fe.value?"green":""}),class:g([e.CID==fe.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),c("span",{style:C({color:e.CDEFAULT?"red":""})},b(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:d((()=>[c("span",Z,[s(a,null,{default:d((()=>[s(m(w))])),_:1}),l[34]||(l[34]=f(" 选择方案 "))])])),_:1}),s(y,{disabled:ve.value&&!!fe.value,onCommand:Ze,class:"flex items-center px-2.5 py-1.5 mr-2.5 bg-blue-500 rounded text-center cursor-pointer"},{dropdown:d((()=>[s(n,null,{default:d((()=>[s(t,{command:"group"},{default:d((()=>l[36]||(l[36]=[f("条件组")]))),_:1,__:[36]}),s(t,{command:"condition"},{default:d((()=>l[37]||(l[37]=[f("条件")]))),_:1,__:[37]})])),_:1})])),default:d((()=>[c("span",ee,[s(a,null,{default:d((()=>[s(m(w))])),_:1}),l[35]||(l[35]=f(" 新增条件 "))])])),_:1},8,["disabled"]),s(x,{type:"warning",onClick:l[12]||(l[12]=e=>el())},{default:d((()=>[s(a,null,{default:d((()=>[s(m(V))])),_:1}),l[38]||(l[38]=f("清空 "))])),_:1,__:[38]}),h(s(x,{disabled:me.value,onClick:l[13]||(l[13]=e=>Le()),type:"danger",loading:be.value},{default:d((()=>[s(a,null,{default:d((()=>[s(m(E))])),_:1}),l[39]||(l[39]=f(" 删除 "))])),_:1,__:[39]},8,["disabled","loading"]),[[_,!!fe.value]]),s(x,{disabled:pe.value&&!!fe.value,onClick:l[14]||(l[14]=e=>He()),loading:Ce.value,type:"success"},{default:d((()=>[l[40]||(l[40]=c("i",{class:"vxe-icon-save"},null,-1)),l[41]||(l[41]=f(" ")),h(c("span",null,"新增",512),[[_,!fe.value]]),h(c("span",null,"更新",512),[[_,!!fe.value]])])),_:1,__:[40,41]},8,["disabled","loading"])]),l[42]||(l[42]=c("div",{style:{"margin-right":"10px"}},null,-1))]),c("div",le,[s(ue,{ref_key:"searchSolutionRef",ref:Ne,inline:!0,rules:Ae,model:Ee},{default:d((()=>[s(T,{label:"方案名称",prop:"name"},{default:d((()=>[s(S,{readonly:pe.value&&!!fe.value,style:{width:"160px"},modelValue:Ee.name,"onUpdate:modelValue":l[15]||(l[15]=e=>Ee.name=e),placeholder:"方案名称",clear:""},null,8,["readonly","modelValue"])])),_:1}),s(T,{label:"可见性",prop:"region"},{default:d((()=>[s(te,{disabled:"",userId:Me.value?.CID,style:{width:"160px"},modelValue:Ee.region,"onUpdate:modelValue":l[16]||(l[16]=e=>Ee.region=e),placeholder:"请选择可见性"},{default:d((()=>[s(ae,{label:"仅有我",value:Me.value?.CID},null,8,["value"]),s(ae,{label:"全局",value:0})])),_:1},8,["userId","modelValue"])])),_:1}),s(T,{label:"设为默认"},{default:d((()=>[s(ne,{modelValue:Ee.defaultOption,"onUpdate:modelValue":l[17]||(l[17]=e=>Ee.defaultOption=e)},null,8,["modelValue"])])),_:1})])),_:1},8,["rules","model"])]),c("div",null,[s(N,{ref_key:"TableSecondTemplateRef",ref:Fe,conditionConfig:Ve,isClearTreeData:Se.value,solutionList:ge.value,optionModel:he.value,formSolution:Ee,onFormDataChangeFn:nl,onDisabledDeleteBtnFn:ol,onSubmitSuccess:ul,onSubmitBtnLoadingFn:Be,solutionCID:fe.value},null,8,["conditionConfig","isClearTreeData","solutionList","optionModel","formSolution","solutionCID"])])])])),_:1})])),_:1},8,["modelValue"]))])}}});export{ae as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getCurrentInstance as e,ref as l,computed as a,onMounted as t,resolveComponent as u,createElementBlock as n,openBlock as i,Fragment as o,createCommentVNode as v,createVNode as
|
|
1
|
+
import{getCurrentInstance as e,ref as l,computed as a,onMounted as t,resolveComponent as u,createElementBlock as n,openBlock as i,Fragment as o,createCommentVNode as v,createVNode as d,withCtx as r,withDirectives as c,renderList as p,createBlock as m,vShow as s}from"vue";import{useSearchItemComposable as g}from"../minxin/index.js";var f={__name:"reportSelectTable",props:{modelValue:{type:[String,Number],default:""},fieldName:{type:String,default:""},field:{type:String,default:""},row:{type:Object,default:()=>({})}},emits:["update:modelValue","changeEvent"],setup(f,{emit:h}){const y={},b=f,S=h;let x=window.location.href;e();const{init:k,changeEvent:w,getDBDataByActionName:E}=g(),C=l(null),A=l(null),V=l(!1),z=l(!1),T=l([]);l("");const N=l({total:0,currentPage:1,pageSize:10}),_=l([]),P=l({key:"",text:""}),D=l({columns:[],data:[]}),O=l(null),j=a((()=>{let e={};try{e=b.row.controlOptions}catch(l){e={}}return e}));t((()=>{k(),G(),setTimeout((()=>{b.modelValue&&(C.value=b.modelValue)}),300)}));const B=e=>{C.value=e.row[P.value.key],b.row[b.fieldName]=C.value,O.value?.blur()},F=e=>{13===e.keyCode&&K()},G=e=>{0==_.value.length&&(j.value&&(A.value=j.value,A.value.hasOwnProperty("CDATAS")&&A.value.CDATAS&&(I(A.value.CDATAS),N.value.pageSize=Number(A.value.CPAGE_SIZE),V.value="Y"==A.value.CIS_PAGE)),K())},I=e=>{T.value=[],D.value.columns=[],e&&e.length>0?e.forEach((e=>{if(e.isSelectTextField&&(P.value.text=e.field),e.isSelectKeyField&&(P.value.key=e.field),e.iisShowList){let l={field:e.field,headerAlign:"center",minWidth:Number(e.width),title:e.title?e.title:e.field};T.value.push(l),D.value.columns.push(l)}})):P.value={key:"",text:""}},K=async()=>{z.value=!0;let e=[],l=(()=>{let e=[];try{e=y[x+b.field]}catch(l){e=[]}return e})();var a;l&&l.length>0?e=l:(e=await E(A.value),a=e,y[x+b.field]=a),e&&e.length>0?(_.value=R(e),D.value.data=e):_.value=[{value:"",label:"请选择"}],z.value=!1,setTimeout((()=>{z.value=!1}),1e4)},R=e=>{let l=[{value:"",label:"请选择"}];return e&&e.length>0&&e.forEach((e=>{if(e[P.value.text]){let a={value:e[P.value.key],label:e[P.value.text]};l.push(a)}})),l},W=e=>{N.value.currentPage=e,K()},L=e=>{S("update:modelValue",e),w(e),S("changeEvent",{value:e,type:"change"})};return(e,l)=>{const a=u("el-option"),t=u("vxe-column"),g=u("vxe-table"),h=u("el-pagination"),y=u("el-select");return i(),n(o,null,[v(' @focus="focusEvent()" '),d(y,{clearable:"",onChange:L,ref_key:"elSelectRef",ref:O,modelValue:C.value,"onUpdate:modelValue":[l[0]||(l[0]=e=>C.value=e),l[1]||(l[1]=l=>e.$emit("update:modelValue",l))],"model-value":f.modelValue,loading:z.value,placeholder:"请选择"},{default:r((()=>[(i(!0),n(o,null,p(_.value,((e,l)=>(i(),m(a,{key:e.value+l,label:e.label,value:e.value,style:{display:"none"}},null,8,["label","value"])))),128)),v(' <div> <el-input style="padding:2px 5px;" @keyup="keyupEvent" size="mini" v-model="searchkey"\n placeholder="请输入关键字 回车 ENTER"></el-input></div> '),d(g,{size:"mini",border:"",onKeyup:F,height:"180px",onCellClick:B,data:D.value.data},{default:r((()=>[(i(!0),n(o,null,p(D.value.columns,((e,l)=>(i(),m(t,{"header-align":"center","min-width":e.minWidth,key:l+e.field,field:e.field,title:e.title},null,8,["min-width","field","title"])))),128))])),_:1},8,["data"]),c(d(h,{background:"",size:"small","current-page":N.value.currentPage,"page-size":N.value.pageSize,onCurrentChange:W,layout:"prev, pager, next",total:N.value.total},null,8,["current-page","page-size","total"]),[[s,V.value]])])),_:1},8,["modelValue","model-value","loading"])],2112)}}};export{f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ref as e,watch as l,nextTick as t,resolveComponent as a,createElementBlock as o,openBlock as d,createVNode as n,withCtx as u,Fragment as
|
|
1
|
+
import{ref as e,watch as l,nextTick as t,resolveComponent as a,createElementBlock as o,openBlock as d,createVNode as n,withCtx as u,Fragment as i,createTextVNode as r,toDisplayString as p,createBlock as m,createCommentVNode as v,renderList as s,withKeys as f}from"vue";import"../../innerComponents/reportSelect.vue/index.js";import"../../innerComponents/reportCustomSelect.vue/index.js";import"../../innerComponents/reportCustomMulSelect.vue/index.js";import"../../innerComponents/reportSelectTable.vue/index.js";import"../../innerComponents/reportMulSelect.vue/index.js";import c from"../../innerComponents/reportSelect.vue/index2.js";import y from"../../innerComponents/reportSelectTable.vue/index2.js";import V from"../../innerComponents/reportCustomSelect.vue/index2.js";import b from"../../innerComponents/reportCustomMulSelect.vue/index2.js";import h from"../../innerComponents/reportMulSelect.vue/index2.js";const w={class:"tableTemplateClass"},x={key:1};var k={__name:"index",props:{activeName:{type:String,default:"first"},tableDataLoading:{type:Boolean,default:!1},tableOptions:{type:Array,default:()=>[]},conditionConfig:{type:Object,default:()=>({hash:698,flag:""})},isClearTreeData:{type:[Number,String],default:0},isAdd:{type:Boolean,default:!1}},emits:["handleEnterEvent"],setup(k,{emit:g}){const U=k,T=g,C=e(!1),S=e([{value:0,label:"等于",text:"Equal"},{value:1,label:"模糊查询",text:"Like"},{value:2,label:"大于",text:"GreaterThan"},{value:3,label:"大于等于",text:"GreaterThanOrEqual"},{value:4,label:"小于",text:"LessThan"},{value:5,label:"小于等于",text:"LessThanOrEqual"},{value:6,label:"In操作",text:"In"},{value:7,label:"NotIn操作",text:"NotIn"},{value:8,label:"左模糊",text:"LikeLeft"},{value:9,label:"右模糊",text:"LikeRight"},{value:10,label:"不等于",text:"NoEqual"},{value:11,label:"IsNullOrEmpty",text:"IsNullOrEmpty"},{value:12,label:"IsNot",text:"IsNot"},{value:13,label:"模糊查询取反",text:"NoLike"},{value:14,label:"EqualNull ",text:"EqualNull"},{value:15,label:"InLike",text:"InLike"},{value:16,label:"区间范围 ",text:"BetweenAnd"}]),I=e([]),M=e(null);l((()=>U.isAdd),(e=>{e&&(I.value=[])})),l((()=>U.conditionConfig),((e,l)=>{t((()=>{}))}),{deep:!0,immediate:!0}),l((()=>U.tableOptions),((e,l)=>{I.value=e,e&&t((()=>{N()}))}),{deep:!0});const E=e=>{T("handleEnterEvent",e)},N=()=>{C.value||(C.value=!0,setTimeout((()=>{const e=M.value;e&&e.setAllTreeExpand(!0)}),300))};return(e,l)=>{const t=a("vxe-column"),g=a("el-option"),U=a("el-select"),T=a("el-date-picker"),C=a("el-input-number"),N=a("el-input"),j=a("vxe-table");return d(),o("div",w,[n(j,{ref_key:"vxeTableRef",ref:M,"checkbox-config":{checkField:"isCheck"},loading:k.tableDataLoading,"show-overflow":"",border:"",size:"mini","column-config":{resizable:!0},"row-config":{useKey:!0,keyField:"id",isCurrent:!0,isHover:!0},"edit-config":{trigger:"click",mode:"cell"},"tree-config":{transform:!0,rowField:"id",parentField:"parentId",expandAll:!0},data:I.value,"scroll-y":{enabled:!1}},{default:u((()=>[n(t,{type:"checkbox",width:"40","header-align":"center",align:"center"}),n(t,{field:"field",title:"参数名称",width:"160","tree-node":"","header-align":"center"},{default:u((({row:e})=>[0!=e.parentId?(d(),o(i,{key:0},[r(p(e.title?e.title:e.field),1)],64)):(d(),o("span",x,"条件组"))])),_:1}),n(t,{field:"comparator",title:"比较符",width:"150","header-align":"center"},{default:u((({row:e})=>[0!=e.parentId?(d(),m(U,{key:0,modelValue:e.comparator,"onUpdate:modelValue":l=>e.comparator=l,placeholder:"请选择"},{default:u((()=>[(d(!0),o(i,null,s(S.value,((e,l)=>(d(),m(g,{key:l,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:2},1032,["modelValue","onUpdate:modelValue"])):v("v-if",!0)])),_:1}),n(t,{field:"value",title:"比较值","header-align":"center"},{default:u((({row:e})=>[0!=e.parentId?(d(),o(i,{key:0},["select"==e.controlType?(d(),o(i,{key:0},[v(' <el-select style="width: 100%;" v-model="row.value" placeholder="请选择">\n\t\t\t\t\t\t\t\t<el-option label="比较值1" value="&&" />\n\t\t\t\t\t\t\t\t<el-option label="比较值2" value="||" />\n\t\t\t\t\t\t\t</el-select> ')],64)):"date"==e.controlType?(d(),m(T,{key:1,field:e.field,type:"date",style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,placeholder:"请选择","value-format":"yyyy-MM-dd"},null,8,["field","modelValue","onUpdate:modelValue"])):"datetime"==e.controlType?(d(),m(T,{key:2,field:e.field,type:"datetime",style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,placeholder:"请选择","value-format":"yyyy-MM-dd HH:mm:ss"},null,8,["field","modelValue","onUpdate:modelValue"])):"daterange"==e.controlType?(d(),m(T,{key:3,field:e.field,type:"daterange",style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,placeholder:"请选择","value-format":"yyyy-MM-dd"},null,8,["field","modelValue","onUpdate:modelValue"])):"datetimerange"==e.controlType?(d(),m(T,{key:4,field:e.field,type:"datetimerange",style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,placeholder:"请选择","value-format":"yyyy-MM-dd HH:mm:ss"},null,8,["field","modelValue","onUpdate:modelValue"])):"reportSelect"==e.controlType?(d(),o(i,{key:5},[v(" 下拉框 "),n(c,{field:e.field,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,style:{width:"100%"},row:e},null,8,["field","modelValue","onUpdate:modelValue","row"])],64)):"reportSelectTable"==e.controlType?(d(),o(i,{key:6},[v(" 下拉框(表) "),n(y,{field:e.field,fieldName:"value",modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,style:{width:"100%"},row:e},null,8,["field","modelValue","onUpdate:modelValue","row"])],64)):"customSelect"==e.controlType?(d(),o(i,{key:7},[v(" 下拉框(自定义单选) "),n(V,{field:e.field,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,style:{width:"100%"},row:e},null,8,["field","modelValue","onUpdate:modelValue","row"])],64)):"customMulSelect"==e.controlType?(d(),o(i,{key:8},[v(" 下拉框(自定义多选) "),n(b,{field:e.field,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,style:{width:"100%"},row:e},null,8,["field","modelValue","onUpdate:modelValue","row"])],64)):"reportMulSelect"==e.controlType?(d(),o(i,{key:9},[v(" 下拉框(多选) "),n(h,{field:e.field,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,style:{width:"100%"},row:e},null,8,["field","modelValue","onUpdate:modelValue","row"])],64)):"number"==e.controlType?(d(),m(C,{key:10,field:e.field,onKeyup:l[0]||(l[0]=f((e=>E(e)),["enter","native"])),style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l},null,8,["field","modelValue","onUpdate:modelValue"])):(d(),m(N,{key:11,field:e.field,onKeyup:l[1]||(l[1]=f((e=>E(e)),["enter","native"])),style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,placeholder:"请输入"},null,8,["field","modelValue","onUpdate:modelValue"]))],64)):v("v-if",!0)])),_:1}),n(t,{field:"relationSign",title:"关系",width:"70","header-align":"center"},{default:u((({row:e})=>[v(' <template v-if="row.parentId != 0">\n\t\t\t\t\t\t\n\t\t\t\t\t</template> '),n(U,{modelValue:e.relationSign,"onUpdate:modelValue":l=>e.relationSign=l,placeholder:"请选择"},{default:u((()=>[n(g,{label:"并",value:0}),n(g,{label:"或",value:1}),n(g,{label:"无",value:-1})])),_:2},1032,["modelValue","onUpdate:modelValue"])])),_:1})])),_:1},8,["loading","data"])])}}};export{k as default};
|