@cimom/ci-web-plugins-commom 1.0.7 → 1.0.9

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 (24) hide show
  1. package/README.md +1 -1
  2. package/dist/CI.Web.Plugins.Commom.css +2 -2
  3. package/dist/SearchPro/README.md +164 -0
  4. package/dist/SearchPro/index.js +1 -0
  5. package/dist/components/SearchPro/index.vue/index.js +1 -0
  6. package/dist/components/SearchPro/index.vue/index2.js +1 -0
  7. package/dist/components/SearchPro/innerComponents/minxin/index.js +1 -0
  8. package/dist/components/SearchPro/innerComponents/reportCustomMulSelect.vue/index.js +1 -0
  9. package/dist/components/SearchPro/innerComponents/reportCustomMulSelect.vue/index2.js +1 -0
  10. package/dist/components/SearchPro/innerComponents/reportCustomSelect.vue/index.js +1 -0
  11. package/dist/components/SearchPro/innerComponents/reportCustomSelect.vue/index2.js +1 -0
  12. package/dist/components/SearchPro/innerComponents/reportMulSelect.vue/index.js +1 -0
  13. package/dist/components/SearchPro/innerComponents/reportMulSelect.vue/index2.js +1 -0
  14. package/dist/components/SearchPro/innerComponents/reportSelect.vue/index.js +1 -0
  15. package/dist/components/SearchPro/innerComponents/reportSelect.vue/index2.js +1 -0
  16. package/dist/components/SearchPro/innerComponents/reportSelectTable.vue/index.js +1 -0
  17. package/dist/components/SearchPro/innerComponents/reportSelectTable.vue/index2.js +1 -0
  18. package/dist/components/SearchPro/tableTemplate/index.vue/index.js +1 -0
  19. package/dist/components/SearchPro/tableTemplate/index.vue/index2.js +1 -0
  20. package/dist/components/SearchPro/tableTemplate/second.vue/index.js +1 -0
  21. package/dist/components/SearchPro/tableTemplate/second.vue/index2.js +1 -0
  22. package/dist/components/VxeGridPro/index.vue/index2.js +1 -1
  23. package/dist/index/index.js +1 -1
  24. package/package.json +17 -8
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # 新插件添加及构建注意事项
2
- 新插件目录:components/VxeModalPro
2
+ 新插件目录:components/SearchPro
3
3
  1.添加测试案例 在目录testPlugins/,参考已有插件测试案例
4
4
  2.添加新插件在entries目下的入口文件
5
5
  3.添加新插件在rollup.config.js构建的配置
@@ -1,3 +1,3 @@
1
- *,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
1
+ .tableTemplateClass[data-v-2c3574c1]{margin-right:10px}.tableTemplateClass [data-v-2c3574c1] .vxe-table--body-wrapper{height:calc(100vh - 180px)}.tableTemplateSecondClass[data-v-2c3574c1]{margin-right:10px}.tableTemplateSecondClass [data-v-2c3574c1] .vxe-table--body-wrapper{height:calc(100vh - 240px)}.tableTemplateClass[data-v-49d49595]{margin-right:10px}.tableTemplateClass [data-v-49d49595] .vxe-table--body-wrapper{height:calc(100vh - 180px)}.tableTemplateSecondClass[data-v-49d49595]{margin-right:10px}.tableTemplateSecondClass [data-v-49d49595] .vxe-table--body-wrapper{height:calc(100vh - 240px)}.drawerClass [data-v-c8aa8fb0] .el-drawer__header{align-items:center;border-bottom:1px solid #dcdfe6!important;color:#72767b;display:flex;height:39px;margin-bottom:10px!important;padding:5px 10px}.drawerClass [data-v-c8aa8fb0] .el-tabs__header{margin:0!important}.drawerClass .dropDownCla[data-v-c8aa8fb0]{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1));border-radius:.25rem;cursor:pointer;margin-right:.625rem;padding:.375rem .625rem;text-align:center}.drawerClass .dropdownLink{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));display:inline-block;padding-left:.375rem;padding-right:.375rem;text-align:left;width:100%}.drawerClass .dropdownLink[data-v-c8aa8fb0]{font-size:12px!important}.drawerClass .dropdownLink i[data-v-c8aa8fb0]{margin-right:.25rem}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
2
2
  ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
3
- */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.mb-2{margin-bottom:.5rem}.flex{display:flex}.h-\[100px\]{height:100px}.h-\[600px\]{height:600px}.w-\[500px\]{width:500px}.resize{resize:both}.flex-col{flex-direction:column}.justify-center{justify-content:center}.border{border-width:1px}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.p-4{padding:1rem}.p-5{padding:1.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.font-bold{font-weight:700}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
3
+ */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.mb-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.mr-2\.5{margin-right:.625rem}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.h-\[100px\]{height:100px}.h-\[600px\]{height:600px}.w-\[500px\]{width:500px}.w-full{width:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.rounded{border-radius:.25rem}.border{border-width:1px}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.text-center{text-align:center}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.font-bold{font-weight:700}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
@@ -0,0 +1,164 @@
1
+ # SearchPro 组件使用说明
2
+
3
+ ## 简介
4
+ `SearchPro` 是基于 Vue3 + Element Plus 的高级查询插件,提供了强大的条件查询功能。该组件支持多种查询条件类型、查询方案保存、条件组合等功能,适用于复杂的数据查询场景。
5
+
6
+ ## 功能特性
7
+ - 🔍 **多种查询条件类型**:支持文本、数字、日期、下拉选择等多种查询条件
8
+ - 💾 **查询方案管理**:支持保存、删除、设置默认查询方案
9
+ - 🔗 **条件组合**:支持 AND/OR 逻辑组合查询条件
10
+ - 📅 **智能日期处理**:支持相对日期设置(如当前日期、当前日期-1月等)
11
+ - 🎯 **可见性控制**:支持个人私有和全局共享查询方案
12
+ - 🔄 **缓存机制**:自动缓存查询条件,提升用户体验
13
+
14
+ ## 安装
15
+
16
+ ```bash
17
+ npm install @cimom/ci-web-plugins-commom
18
+ ```
19
+
20
+ ## 使用方法
21
+
22
+ ### 基础用法
23
+
24
+ ```vue
25
+ <script setup>
26
+ import { ref } from 'vue'
27
+ import { SearchPro } from '@cimom/ci-web-plugins-commom'
28
+ // 或独立引用
29
+ import SearchPro from '@cimom/ci-web-plugins-commom/SearchPro'
30
+
31
+ const searchProRef = ref(null)
32
+
33
+ // 打开高级查询弹框
34
+ const openSearch = () => {
35
+ searchProRef.value?.openDrawer({
36
+ tableId: 'your_table_id', // 必需:表格ID
37
+ CPARENT: 'your_parent_id', // 可选:父级ID
38
+ closeAfterSearchPro: true // 可选:查询后是否关闭弹框
39
+ })
40
+ }
41
+
42
+ // 处理查询结果
43
+ const handleQuery = (queryParams) => {
44
+ console.log('查询参数:', queryParams)
45
+ // 执行查询逻辑
46
+ }
47
+ </script>
48
+
49
+ <template>
50
+ <div>
51
+ <el-button @click="openSearch" type="primary">高级查询</el-button>
52
+
53
+ <SearchPro
54
+ ref="searchProRef"
55
+ @queryFunc="handleQuery"
56
+ />
57
+ </div>
58
+ </template>
59
+ ```
60
+
61
+ ### 高级配置
62
+
63
+ ```vue
64
+ <script setup>
65
+ import { ref } from 'vue'
66
+ import SearchPro from '@cimom/ci-web-plugins-commom/SearchPro'
67
+
68
+ const searchProRef = ref(null)
69
+
70
+ // 配置查询条件
71
+ const searchConfig = {
72
+ tableId: 'user_table',
73
+ CPARENT: 'user_search',
74
+ closeAfterSearchPro: false,
75
+ // 其他配置项...
76
+ }
77
+
78
+ const openAdvancedSearch = () => {
79
+ searchProRef.value?.openDrawer(searchConfig)
80
+ }
81
+ </script>
82
+
83
+ <template>
84
+ <SearchPro
85
+ ref="searchProRef"
86
+ @queryFunc="handleAdvancedQuery"
87
+ />
88
+ </template>
89
+ ```
90
+
91
+ ## API 参考
92
+
93
+ ### Props
94
+ 目前组件主要通过 ref 调用方法进行配置,暂无直接 props。
95
+
96
+ ### Events
97
+
98
+ | 事件名 | 说明 | 参数 |
99
+ |--------|------|------|
100
+ | queryFunc | 执行查询时触发 | queryParams: 查询参数对象 |
101
+
102
+ ### Methods
103
+
104
+ #### openDrawer(config)
105
+ 打开高级查询弹框
106
+
107
+ **参数:**
108
+ - `config.tableId` (string, 必需) - 表格ID,用于标识查询配置
109
+ - `config.CPARENT` (string, 可选) - 父级ID,用于查询方案分组
110
+ - `config.closeAfterSearchPro` (boolean, 可选) - 查询后是否关闭弹框,默认 true
111
+
112
+ **示例:**
113
+ ```javascript
114
+ searchProRef.value?.openDrawer({
115
+ tableId: 'product_list',
116
+ CPARENT: 'product_search',
117
+ closeAfterSearchPro: true
118
+ })
119
+ ```
120
+
121
+ ## 查询条件类型
122
+
123
+ ### 支持的控件类型
124
+ - **text**: 文本输入框
125
+ - **number**: 数字输入框
126
+ - **date**: 日期选择器
127
+ - **datetime**: 日期时间选择器
128
+ - **daterange**: 日期范围选择器
129
+ - **datetimerange**: 日期时间范围选择器
130
+ - **select**: 下拉选择框
131
+ - **multiselect**: 多选下拉框
132
+
133
+ ### 默认值配置
134
+ 支持多种默认值设置方式:
135
+
136
+ ```javascript
137
+ // 相对日期示例
138
+ defaultValue: "curdate" // 当前日期
139
+ defaultValue: "subtract-1-month" // 当前日期减1月
140
+ defaultValue: "add-1-day" // 当前日期加1天
141
+ defaultValue: "curdate#subtract-1-month" // 日期范围:当前日期到当前日期减1月
142
+ ```
143
+
144
+ ## 注意事项
145
+
146
+ 1. **表格ID配置**:使用前必须配置 `tableId`,否则会提示"未配置高级搜索ID"
147
+ 2. **权限控制**:查询方案支持个人私有和全局共享两种可见性
148
+ 3. **缓存机制**:组件会自动缓存用户的查询条件,刷新页面后会恢复上次的查询状态
149
+ 4. **依赖要求**:需要 Element Plus 和相关的后端 API 支持
150
+
151
+ ## 常见问题
152
+
153
+ ### Q: 如何清除查询缓存?
154
+ A: 组件会在页面卸载时自动清除缓存,也可以通过重置按钮清除当前查询条件。
155
+
156
+ ### Q: 如何自定义查询条件?
157
+ A: 查询条件配置通过后端 API 动态获取,需要在对应的数据表中配置查询字段信息。
158
+
159
+ ### Q: 支持哪些比较运算符?
160
+ A: 支持等于、不等于、大于、小于、包含、不包含等多种比较运算符,具体可通过界面选择。
161
+
162
+ ---
163
+
164
+ > 组件打包采用 `rollup.config.js`,产物位于 `dist/SearchPro` 目录,按需引入即可。
@@ -0,0 +1 @@
1
+ import"../components/SearchPro/index.vue/index.js";export{default}from"../components/SearchPro/index.vue/index2.js";
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__scopeId="data-v-c8aa8fb0",e.__file="src/components/SearchPro/index.vue";export{e as default};
@@ -0,0 +1 @@
1
+ import{ref as e,reactive as l,onUnmounted as a,resolveComponent as t,createElementBlock as o,openBlock as n,createVNode as i,withCtx as r,createElementVNode as u,createTextVNode as s,Fragment as d,renderList as c,createBlock as m,normalizeClass as f,normalizeStyle as v,toDisplayString as p,withDirectives as h,vShow as C,nextTick as g}from"vue";import b from"vxe-table";import{getLocalStorageStore as D,getCookie as y}from"@/libs/setStore";import _ from"@/libs/request";import S from"dayjs";import"../tableTemplate/index.vue/index.js";import"../tableTemplate/second.vue/index.js";import w from"../tableTemplate/index.vue/index2.js";import T from"../tableTemplate/second.vue/index2.js";const x={class:"drawerClass"},I={class:"flex flex-col"},V={style:{padding:"5px 0px"},class:"flex justify-between"},k={class:"flex justify-center"},N={style:{"margin-right":"10px"}},E={class:"flex flex-col"},A={style:{padding:"5px 0px"},class:"flex justify-between"},L={class:"flex justify-center"},F={style:{"margin-top":"10px"}};var O=Object.assign({name:"drawerComponent"},{__name:"index",props:{},emits:["update:drawerShow","queryFunc"],setup(O,{expose:M,emit:P}){const Y=P;let j=window.location.href;const R=e({}),U=e(null),q=e(!1),H=e(null),B=e(null),K=e(!1),J=e(!1),z=e(!1),Q=e([]),$=e(!1),G=e(!1),W=e(null),X=e("First"),Z=e(!1),ee=e(!1),le=e(!1);e(!1);const ae=e(0),te=e("");e("");const oe=e([]),ne=e(null),ie=e(!1),re=l({hash:"",flag:""}),ue=l({name:"",region:0,defaultOption:!1}),se=l({name:[{required:!0,message:"请输入方案名称",trigger:"blur"}]}),de=e(null),ce=e(null),me=e(null);e(D("multiOrganization"));const fe=e(D("userInfo")||y("userInfo")||{CID:null});a((()=>{R.value={}}));const ve=async()=>{G.value=!0;let e={table:"TBL_SYS_ADVANCED_SEARCH",CID:B.value};await _.request({url:"/api/SYSTEM/Common/Remove",method:"post",data:e}).then((e=>{e.Success&&(G.value=!1,console.log(e.Content?e.Content:"执行成功"),Se(),pe(!0))})).catch((e=>{G.value=!1,console.error("Delete solution error:",e)}))},pe=async(e=!1)=>{let l=_e();if(!e&&l&&l.length>0){Z.value=!0;let e=Ce(l);try{let l=R.value[j].lastTimeSearchSolutionCID;l&&(e=ge(l))}catch(e){}if(e){let l=JSON.parse(e.CCONDITION);l.tableData&&(oe.value=he(l.tableData)),l.loadDataConfig&&(ne.value=l.loadDataConfig)}return void setTimeout((()=>{Z.value=!1}),1e3)}Z.value=!0;let a={table:"TBL_SYS_ADVANCED_SEARCH",where:`CPARENT='${W.value.searchProSettingCPARENT}'`};await _.request({url:"/api/SYSTEM/Common/PageQuery",method:"post",data:a}).then((e=>{if(e.Success&&e.Datas&&e.Datas.length>0){Q.value=e.Datas,R.value[j]={solutionList:Q.value};let l=Ce();if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(oe.value=he(e.tableData)),e.loadDataConfig&&(ne.value=e.loadDataConfig)}}})).catch((e=>{console.error("Load solution list error:",e)})),Z.value=!1},he=(e=[],l=!1)=>{let a=[],t=ye();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=xe(e.controlType,e.defaultValue);break;case"daterange":case"datetimerange":e.defaultValue&&(e.value=((e,l)=>{const a=new Date,t=new Date;try{let o=[t,a],n="",i=l.split("#");switch(e){case"daterange":n="YYYY-MM-DD";break;case"datetimerange":n="YYYY-MM-DD HH:mm:ss";break;default:n=""}if(i[0])if("curdate"==i[0])o[0]=S().format(n);else if(i[0].includes("-")){let e=i[0].split("-");o[0]=S()[e[0]](Number(e[1]),e[2]).format(n)}else o[0]=t;if(i[1])if("curdate"==i[1])o[1]=S().format(n);else if(i[1].includes("-")){let e=i[1].split("-");o[1]=S()[e[0]](Number(e[1]),e[2]).format(n)}else o[1]=a;return o}catch(e){return[t,a]}})(e.controlType,e.defaultValue));break;default:e.value=e.defaultValue}a.push(e)})),a},Ce=(e=[])=>{0==e.length&&(e=Q.value);let l=null,a=e.filter((e=>{if(e.CDEFAULT)return H.value=e.CID,e}));return l=a&&a.length>0?a[0]:ge(W.value.searchProSettingID,e),l},ge=(e,l=[])=>{0==l.length&&(l=Q.value);let a=null,t=l.filter((l=>{if(l.CID==e)return l}));return t&&t.length>0&&(a=t[0]),a},be=e=>{$.value=e},De=e=>{},ye=()=>{try{return R.value[j]?.searchParams||null}catch(e){return null}},_e=()=>{try{return R.value[j]?.solutionList||[]}catch(e){return[]}},Se=()=>{R.value[j]={}},we=e=>{Ie()},Te=()=>{pe(!0)},xe=(e,l)=>l,Ie=()=>{q.value=!0,clearTimeout(U.value),U.value=setTimeout((()=>{let e=ke(),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})(ke("visibleData"));R.value[j].searchParams=l,R.value[j].lastTimeSearchSolutionCID=H.value;let a=[{ConditionalList:Ve(e)}];q.value=!1;let t={fullPath:j,conditionalList:a};W.value.closeAfterSearchPro&&(ee.value=!1),console.log("setGlobalState:",{type:"searchProDrawerBox",postData:t})}),1e3)},Ve=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 o={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(o)}else{let o={Key:0==a?-1:e.relationSign,Value:{FieldName:e.tableName?e.tableName+"."+e.field:e.field,FieldValue:t,ConditionalType:e.comparator}};t&&l.push(o)}else if(0==e.parentId&&e.children.length>0){let t=Ve(e.children),o={Key:0==a?-1:e.relationSign,Value:{ConditionalList:t}};t&&t.length>0&&l.push(o)}})),l},ke=(e="fullData")=>{let l=[];try{let a=ce.value?.$refs?.vxeTableRef;l=a.getTableData()[e]}catch(e){return l}return l},Ne=e=>{le.value=!0,re.hash=Math.ceil(1e4*Math.random()),re.flag=e},Ee=()=>{$.value=!1,Z.value=!1,Y("update:drawerShow",!1),Y("queryFunc",ue),Object.assign(ue,{name:"",region:0,defaultOption:!1})},Ae=e=>{H.value=e;let l=ge(e);if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(oe.value=he(e.tableData,!0)),e.loadDataConfig&&(ne.value=e.loadDataConfig)}},Le=e=>{de.value.clearValidate(),B.value=e;let l=me.value;l&&l.solutionCID_change(e)},Fe=e=>{},Oe=e=>{K.value=e},Me=e=>{pe(!0)};return M({openDrawer:e=>{e.tableId?(te.value=e.tableId,W.value={searchProSettingCPARENT:e.CPARENT,searchProSettingID:e.tableId,closeAfterSearchPro:e.closeAfterSearchPro},ee.value=!0,g((()=>{pe()}))):b.modal.message({message:"未配置高级搜索ID",status:"error"})},queryFunc:Ie,resetQuery:Te,closeDrawer:Ee}),(e,l)=>{const a=t("el-dropdown-item"),g=t("el-dropdown-menu"),b=t("el-dropdown"),D=t("el-button"),y=t("el-tab-pane"),_=t("el-input"),S=t("el-form-item"),O=t("el-option"),M=t("el-select"),P=t("el-checkbox"),Y=t("el-form"),j=t("el-tabs"),R=t("el-drawer");return n(),o("div",x,[i(R,{"close-on-press-escape":"",title:"高级查询",modelValue:ee.value,"onUpdate:modelValue":l[9]||(l[9]=e=>ee.value=e),direction:"rtl",size:"800px","destroy-on-close":!0,onClose:Ee,wrapperClosable:!0},{default:r((()=>[i(j,{style:{"margin-left":"10px"},modelValue:X.value,"onUpdate:modelValue":l[8]||(l[8]=e=>X.value=e),onTabClick:De},{default:r((()=>[i(y,{label:"查询条件",name:"First"},{default:r((()=>[u("div",I,[u("div",V,[u("div",k,[i(b,{onCommand:Ae,class:"dropDownCla"},{dropdown:r((()=>[i(g,null,{default:r((()=>[(n(!0),o(d,null,c(Q.value,((e,l)=>(n(),m(a,{key:l,command:e.CID},{default:r((()=>[u("i",{style:v({color:e.CID==H.value?"green":""}),class:f([e.CID==H.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),u("span",{style:v({color:e.CDEFAULT?"red":""})},p(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:r((()=>[l[10]||(l[10]=u("span",{class:"dropdownLink"},[u("i",{class:"el-icon-arrow-down"}),s(" 选择方案 ")],-1))])),_:1,__:[10]})]),u("div",N,[i(D,{loading:q.value,onClick:l[0]||(l[0]=e=>Ie()),type:"primary"},{default:r((()=>l[11]||(l[11]=[u("i",{class:"el-icon-search"},null,-1),s(" 查询")]))),_:1,__:[11]},8,["loading"]),i(D,{onClick:l[1]||(l[1]=e=>Te()),type:"warning"},{default:r((()=>l[12]||(l[12]=[u("i",{class:"el-icon-refresh-right"},null,-1),s(" 重置")]))),_:1,__:[12]})])]),u("div",null,[i(w,{ref_key:"TableFirstTemplateRef",ref:ce,conditionConfig:re,isClearTreeData:ae.value,tableOptions:oe.value,tableDataLoading:Z.value,isAdd:ie.value,onHandleEnterEvent:we},null,8,["conditionConfig","isClearTreeData","tableOptions","tableDataLoading","isAdd"])])])])),_:1}),i(y,{label:"新增方案",name:"Second"},{default:r((()=>[u("div",E,[u("div",A,[u("div",L,[i(b,{onCommand:Le,class:"dropDownCla"},{dropdown:r((()=>[i(g,null,{default:r((()=>[(n(!0),o(d,null,c(Q.value,((e,l)=>(n(),m(a,{key:l,command:e.CID},{default:r((()=>[u("i",{style:v({color:e.CID==B.value?"green":""}),class:f([e.CID==B.value?"vxe-icon-check":"vxe-icon-minus"])},null,6),u("span",{style:v({color:e.CDEFAULT?"red":""})},p(e.CSCHEME_NAME),5)])),_:2},1032,["command"])))),128))])),_:1})])),default:r((()=>[l[13]||(l[13]=u("span",{class:"dropdownLink"},[u("i",{class:"el-icon-arrow-down"}),s(" 选择方案 ")],-1))])),_:1,__:[13]}),i(b,{disabled:z.value&&!!B.value,onCommand:Ne,class:"dropDownCla"},{dropdown:r((()=>[i(g,null,{default:r((()=>[i(a,{command:"group"},{default:r((()=>l[14]||(l[14]=[s("条件组")]))),_:1,__:[14]}),i(a,{command:"condition"},{default:r((()=>l[15]||(l[15]=[s("条件")]))),_:1,__:[15]})])),_:1})])),default:r((()=>[l[16]||(l[16]=u("span",{class:"dropdownLink"},[u("i",{class:"el-icon-arrow-down"}),s(" 新增条件 ")],-1))])),_:1,__:[16]},8,["disabled"]),i(D,{type:"warning",onClick:l[2]||(l[2]=e=>(Se(),void(ae.value=Math.ceil(1e4*Math.random()))))},{default:r((()=>l[17]||(l[17]=[u("i",{class:"el-icon-refresh"},null,-1),s("清空")]))),_:1,__:[17]}),h(i(D,{disabled:K.value,onClick:l[3]||(l[3]=e=>(console.log("此操作将删除高级查询配置数据, 是否继续?"),void ve())),type:"danger",loading:G.value},{default:r((()=>l[18]||(l[18]=[u("i",{class:"el-icon-delete"},null,-1),s(" 删除")]))),_:1,__:[18]},8,["disabled","loading"]),[[C,!!B.value]]),i(D,{disabled:J.value&&!!B.value,onClick:l[4]||(l[4]=e=>{de.value.validate((e=>{if(!e)return!1;{let e=me.value;e&&e.submitEditDialog()}}))}),loading:$.value,type:"success"},{default:r((()=>l[19]||(l[19]=[u("i",{class:"vxe-icon-save"},null,-1),s(" 保存")]))),_:1,__:[19]},8,["disabled","loading"])]),l[20]||(l[20]=u("div",{style:{"margin-right":"10px"}},null,-1))]),u("div",F,[i(Y,{ref_key:"searchSolutionRef",ref:de,inline:!0,rules:se,model:ue},{default:r((()=>[i(S,{label:"方案名称",prop:"name"},{default:r((()=>[i(_,{readonly:J.value&&!!B.value,style:{width:"160px"},modelValue:ue.name,"onUpdate:modelValue":l[5]||(l[5]=e=>ue.name=e),placeholder:"方案名称",clear:""},null,8,["readonly","modelValue"])])),_:1}),i(S,{label:"可见性",prop:"region"},{default:r((()=>[i(M,{disabled:"",userId:fe.value?.CID,style:{width:"160px"},modelValue:ue.region,"onUpdate:modelValue":l[6]||(l[6]=e=>ue.region=e),placeholder:"请选择可见性"},{default:r((()=>[i(O,{label:"仅有我",value:fe.value?.CID},null,8,["value"]),i(O,{label:"全局",value:0})])),_:1},8,["userId","modelValue"])])),_:1}),i(S,{label:"设为默认"},{default:r((()=>[i(P,{modelValue:ue.defaultOption,"onUpdate:modelValue":l[7]||(l[7]=e=>ue.defaultOption=e)},null,8,["modelValue"])])),_:1})])),_:1},8,["rules","model"])]),u("div",null,[i(T,{ref_key:"TableSecondTemplateRef",ref:me,conditionConfig:re,solutionList:Q.value,optionModel:W.value,formSolution:ue,onFormDataChangeFn:Fe,onDisabledDeleteBtnFn:Oe,onSubmitSuccess:Me,onSubmitBtnLoadingFn:be,solutionCID:B.value},null,8,["conditionConfig","solutionList","optionModel","formSolution","solutionCID"])])])])),_:1})])),_:1},8,["modelValue"])])),_:1},8,["modelValue"])])}}});export{O as default};
@@ -0,0 +1 @@
1
+ import{getCurrentInstance as e,ref as t}from"vue";import a from"dayjs";import r from"@/libs/request";function s(){const s=e(),l=t(""),i=(e,t)=>{let r=null,s="";switch(e){case"date":s="YYYY-MM-DD";break;case"dateTime":s="YYYY-MM-DD HH:mm:ss";break;default:s=""}if(t)if("curdate"==t)r=a().format(s);else if(t.includes("-")){let e=t.split("-");r=a()[e[0]](Number(e[1]),e[2]).format(s)}else r=null;return r};return{value:l,init:()=>{},changeEvent:e=>{l.value=e;let t={value:e,type:"change"};s?.emit("changeEvent",t)},clear:(e,t,a,r)=>{if(e&&t&&a&&l.value&&a[e]){let s=r.defaultValue;switch(t){case"date":case"dateTime":case"month":let r=i(t,s);a[e]=r;break;case"number":let l=Number(s);a[e]=l;break;default:a[e]=s}l.value=""}},setDateTimeDefaultVal:i,setDateTimeRangeDefaultVal:(e,t)=>{const r=new Date,s=new Date;try{let l=[s,r],i="",u=t.split("#");switch(e){case"daterange":i="YYYY-MM-DD";break;case"datetimerange":i="YYYY-MM-DD HH:mm:ss";break;default:i=""}if(u[0])if("curdate"==u[0])l[0]=a().format(i);else if(u[0].includes("-")){let e=u[0].split("-");l[0]=a()[e[0]](Number(e[1]),e[2]).format(i)}else l[0]=s;if(u[1])if("curdate"==u[1])l[1]=a().format(i);else if(u[1].includes("-")){let e=u[1].split("-");l[1]=a()[e[0]](Number(e[1]),e[2]).format(i)}else l[1]=r;return l}catch(e){return[s,r]}},getDBDataByActionName:async e=>{let t={Id:e?.CDATASET_ID,Parameter:{}};if(!t.hasOwnProperty("Id")||!t.Id)return void console.error("====DataSetId 为空,跳过查询====");let a=[];return await r.request({url:"/api/MD/DataSet/GetListByDataSetId",method:"post",data:t}).then((e=>{e.Success&&([4,5,6].includes(e.Data)&&(e.Datas=JSON.parse(e.Datas)),e&&e.Datas&&(a=e.Datas))})),a},formatQuery:e=>{let t={};if(e&&Object.keys(e).length>0)for(const[a,r]of Object.entries(e))t[a]=r.value;return t}}}export{s as useSearchItemComposable};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__file="src/components/SearchPro/innerComponents/reportCustomMulSelect.vue";export{e as default};
@@ -0,0 +1 @@
1
+ import{ref as e,computed as l,onMounted as t,resolveComponent as a,createElementBlock as u,openBlock as n,Fragment as o,createCommentVNode as v,createVNode as r,withCtx as d,renderList as i,createBlock as c}from"vue";import{useSearchItemComposable as p}from"../minxin/index.js";var m={__name:"reportCustomMulSelect",props:{modelValue:{type:Array,default:()=>[]},row:{type:Object,default:()=>({})},field:{type:String,default:""}},emits:["update:modelValue","changeEvent"],setup(m,{emit:s}){const f=m,h=s,{init:A,changeEvent:y}=p();e(!1);const S=e(null),g=e([]),b=e({key:"",text:""}),C=l((()=>{let e={};try{e=f.row.controlOptions}catch(l){e={}}return e}));t((()=>{A(),x()}));const x=e=>{0==g.value.length&&(C.value&&(S.value=C.value,S.value.hasOwnProperty("CDATAS")&&S.value.CDATAS&&T(S.value.CDATAS)),D())},T=e=>{e&&e.length>0?e.forEach((e=>{e.isSelectTextField&&(b.value.text=e.field),e.isSelectKeyField&&(b.value.key=e.field)})):b.value={key:"",text:""}},D=()=>{let e=[{value:"",label:"请选择"}];S.value.CDATAS&&S.value.CDATAS.length>0&&S.value.CDATAS.forEach((l=>{let t={value:l.field,label:l.title?l.title:l.field};e.push(t)})),g.value=e},E=e=>{h("update:modelValue",e),y(e),h("changeEvent",{value:e,type:"change"})};return(e,l)=>{const t=a("el-option"),p=a("el-select");return n(),u(o,null,[v(' @focus="focusEvent" '),r(p,{onChange:E,multiple:!0,filterable:"",clearable:"","model-value":m.modelValue,"onUpdate:modelValue":l[0]||(l[0]=l=>e.$emit("update:modelValue",l)),placeholder:"请选择"},{default:d((()=>[(n(!0),u(o,null,i(g.value,(e=>(n(),c(t,{key:e.value,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:1},8,["model-value"])],2112)}}};export{m as default};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__file="src/components/SearchPro/innerComponents/reportCustomSelect.vue";export{e as default};
@@ -0,0 +1 @@
1
+ import{ref as e,computed as l,onMounted as t,resolveComponent as a,createElementBlock as u,openBlock as n,Fragment as o,createCommentVNode as v,createVNode as r,withCtx as d,renderList as i,createBlock as c}from"vue";import{useSearchItemComposable as p}from"../minxin/index.js";var m={__name:"reportCustomSelect",props:{modelValue:{type:[String,Number],default:""},row:{type:Object,default:()=>({})},field:{type:String,default:""}},emits:["update:modelValue","changeEvent"],setup(m,{emit:s}){const f=m,h=s,{init:A,changeEvent:y}=p();e(!1);const S=e(null),g=e([]),b=e({key:"",text:""}),C=l((()=>{let e={};try{e=f.row.controlOptions}catch(l){e={}}return e}));t((()=>{A(),x()}));const x=e=>{0==g.value.length&&(C.value&&(S.value=C.value,S.value.hasOwnProperty("CDATAS")&&S.value.CDATAS&&T(S.value.CDATAS)),D())},T=e=>{e&&e.length>0?e.forEach((e=>{e.isSelectTextField&&(b.value.text=e.field),e.isSelectKeyField&&(b.value.key=e.field)})):b.value={key:"",text:""}},D=()=>{let e=[{value:"",label:"请选择"}];S.value.CDATAS&&S.value.CDATAS.length>0&&S.value.CDATAS.forEach((l=>{let t={value:l.field,label:l.title?l.title:l.field};e.push(t)})),g.value=e},E=e=>{h("update:modelValue",e),y(e),h("changeEvent",{value:e,type:"change"})};return(e,l)=>{const t=a("el-option"),p=a("el-select");return n(),u(o,null,[v(' @focus="focusEvent" '),r(p,{onChange:E,filterable:"",clearable:"","model-value":m.modelValue,"onUpdate:modelValue":l[0]||(l[0]=l=>e.$emit("update:modelValue",l)),placeholder:"请选择"},{default:d((()=>[(n(!0),u(o,null,i(g.value,(e=>(n(),c(t,{key:e.value,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:1},8,["model-value"])],2112)}}};export{m as default};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__file="src/components/SearchPro/innerComponents/reportMulSelect.vue";export{e as default};
@@ -0,0 +1 @@
1
+ import{ref as e,computed as l,onMounted as a,resolveComponent as t,createElementBlock as u,openBlock as n,Fragment as o,createCommentVNode as v,createVNode as r,withCtx as i,renderList as d,createBlock as c}from"vue";import{useSearchItemComposable as p}from"../minxin/index.js";var f={__name:"reportMulSelect",props:{modelValue:{type:Array,default:()=>[]},row:{type:Object,default:()=>({})},field:{type:String,default:""}},emits:["update:modelValue","changeEvent"],setup(f,{emit:m}){const s={},h=f,y=m;let g=window.location.href;const{changeEvent:b,getDBDataByActionName:x}=p(),A=e(!1),S=e(null),w=e([]),E=e({key:"",text:""}),V=l((()=>{let e={};try{e=h.row.controlOptions}catch(l){e={}}return e}));a((()=>{k()}));const k=e=>{0==w.value.length&&(V.value&&(S.value=V.value,S.value.hasOwnProperty("CDATAS")&&S.value.CDATAS&&D(S.value.CDATAS)),T())},D=e=>{e&&e.length>0?e.forEach((e=>{e.isSelectTextField&&(E.value.text=e.field),e.isSelectKeyField&&(E.value.key=e.field)})):E.value={key:"",text:""}},T=async()=>{let e=(()=>{let e=[];try{e=s[g+h.field]}catch(l){e=[]}return e})();if(e&&e.length>0)return void(w.value=e);A.value=!0;let l=await x(S.value);var a;l&&l.length>0?(w.value=C(l),a=w.value,s[g+h.field]=a):w.value=[{value:"",label:"请选择"}],A.value=!1,setTimeout((()=>{A.value=!1}),1e4)},C=e=>{let l=[{value:"",label:"请选择"}];return e&&e.length>0&&e.forEach((e=>{if(e[E.value.text]){let a={value:e[E.value.key],label:e[E.value.text]};l.push(a)}})),l},O=e=>{y("update:modelValue",e),b(e),y("changeEvent",{value:e,type:"change"})};return(e,l)=>{const a=t("el-option"),p=t("el-select");return n(),u(o,null,[v(' @focus="focusEvent" '),r(p,{onChange:O,multiple:!0,loading:A.value,filterable:"",clearable:"","model-value":f.modelValue,"onUpdate:modelValue":l[0]||(l[0]=l=>e.$emit("update:modelValue",l)),placeholder:"请选择"},{default:i((()=>[(n(!0),u(o,null,d(w.value,((e,l)=>(n(),c(a,{key:e.value+l,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:1},8,["loading","model-value"])],2112)}}};export{f as default};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__file="src/components/SearchPro/innerComponents/reportSelect.vue";export{e as default};
@@ -0,0 +1 @@
1
+ import{ref as e,computed as l,onMounted as t,resolveComponent as a,createElementBlock as u,openBlock as n,Fragment as o,createCommentVNode as v,createVNode as r,withCtx as i,renderList as d,createBlock as c}from"vue";import{useSearchItemComposable as f}from"../minxin/index.js";var m={__name:"reportSelect",props:{modelValue:{type:[String,Number],default:""},row:{type:Object,default:()=>({})},field:{type:String,default:""}},emits:["update:modelValue","changeEvent"],setup(m,{emit:p}){const s={},h=m,g=p;let y=window.location.href;const{init:b,changeEvent:x,getDBDataByActionName:S}=f(),A=e(!1),w=e(null),E=e([]),V=e({key:"",text:""}),k=l((()=>{let e={};try{e=h.row.controlOptions}catch(l){e={}}return e}));t((()=>{b(),D()}));const D=e=>{0==E.value.length&&(k.value&&(w.value=k.value,w.value.hasOwnProperty("CDATAS")&&w.value.CDATAS&&T(w.value.CDATAS)),C())},T=e=>{e&&e.length>0?e.forEach((e=>{e.isSelectTextField&&(V.value.text=e.field),e.isSelectKeyField&&(V.value.key=e.field)})):V.value={key:"",text:""}},C=async()=>{let e=(()=>{let e=[];try{e=s[y+h.field]}catch(l){e=[]}return e})();if(e&&e.length>0)return void(E.value=e);A.value=!0;let l=await S(w.value);var t;l&&l.length>0?(E.value=O(l),t=E.value,s[y+h.field]=t):E.value=[{value:"",label:"请选择"}],A.value=!1,setTimeout((()=>{A.value=!1}),1e4)},O=e=>{let l=[{value:"",label:"请选择"}];return e&&e.length>0&&e.forEach((e=>{if(e[V.value.text]){let t={value:e[V.value.key],label:e[V.value.text]};l.push(t)}})),l},_=e=>{g("update:modelValue",e),x(e),g("changeEvent",{value:e,type:"change"})};return(e,l)=>{const t=a("el-option"),f=a("el-select");return n(),u(o,null,[v(' @focus="focusEvent" '),r(f,{onChange:_,loading:A.value,filterable:"",clearable:"","model-value":m.modelValue,"onUpdate:modelValue":l[0]||(l[0]=l=>e.$emit("update:modelValue",l)),placeholder:"请选择"},{default:i((()=>[(n(!0),u(o,null,d(E.value,((e,l)=>(n(),c(t,{key:e.value+l,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:1},8,["loading","model-value"])],2112)}}};export{m as default};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__file="src/components/SearchPro/innerComponents/reportSelectTable.vue";export{e as default};
@@ -0,0 +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 r,withCtx as d,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),T=l(!1),z=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=>{z.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};z.value.push(l),D.value.columns.push(l)}})):P.value={key:"",text:""}},K=async()=>{T.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:"请选择"}],T.value=!1,setTimeout((()=>{T.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()" '),r(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:T.value,placeholder:"请选择"},{default:d((()=>[(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"\r\n placeholder="请输入关键字 回车 ENTER"></el-input></div> '),r(g,{size:"mini",border:"",onKeyup:F,height:"180px",onCellClick:B,data:D.value.data},{default:d((()=>[(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(r(h,{background:"",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};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__scopeId="data-v-2c3574c1",e.__file="src/components/SearchPro/tableTemplate/index.vue";export{e as default};
@@ -0,0 +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 r,createTextVNode as i,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 h from"../../innerComponents/reportCustomMulSelect.vue/index2.js";import b from"../../innerComponents/reportMulSelect.vue/index2.js";const w={class:"tableTemplateClass"},x={key:1};var g={__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(g,{emit:k}){const U=g,T=k,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.isClearTreeData),((e,l)=>{})),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"),k=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:g.tableDataLoading,resizable:"","show-overflow":"",border:"",size:"mini","row-key":"","highlight-current-row":!0,"row-config":{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(r,{key:0},[i(p(e.title?e.title:e.field),1)],64)):(d(),o("span",x,"条件组"))])),_:1}),n(t,{field:"comparator",title:"比较符",width:"160","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(r,null,s(S.value,((e,l)=>(d(),m(k,{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(r,{key:0},["select"==e.controlType?(d(),o(r,{key:0},[v(' <el-select style="width: 100%;" v-model="row.value" placeholder="请选择">\r\n\t\t\t\t\t\t\t\t<el-option label="比较值1" value="&&" />\r\n\t\t\t\t\t\t\t\t<el-option label="比较值2" value="||" />\r\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(r,{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(r,{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(r,{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(r,{key:8},[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)):"reportMulSelect"==e.controlType?(d(),o(r,{key:9},[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)):"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:"90","header-align":"center"},{default:u((({row:e})=>[v(' <template v-if="row.parentId != 0">\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t</template> '),n(U,{modelValue:e.relationSign,"onUpdate:modelValue":l=>e.relationSign=l,placeholder:"请选择"},{default:u((()=>[n(k,{label:"并",value:0}),n(k,{label:"或",value:1}),n(k,{label:"无",value:-1})])),_:2},1032,["modelValue","onUpdate:modelValue"])])),_:1})])),_:1},8,["loading","data"])])}}};export{g as default};
@@ -0,0 +1 @@
1
+ import e from"./index2.js";e.__scopeId="data-v-49d49595",e.__file="src/components/SearchPro/tableTemplate/second.vue";export{e as default};
@@ -0,0 +1 @@
1
+ import{getCurrentInstance as e,ref as l,watch as t,nextTick as a,resolveComponent as o,createElementBlock as n,openBlock as u,createVNode as d,withCtx as r,Fragment as i,createCommentVNode as s,normalizeStyle as m,renderList as p,createBlock as c,withDirectives as v,createTextVNode as f,vShow as y}from"vue";import h from"@/libs/request";import"../../innerComponents/reportSelect.vue/index.js";import"../../innerComponents/reportCustomMulSelect.vue/index.js";import"../../innerComponents/reportCustomSelect.vue/index.js";import"../../innerComponents/reportSelectTable.vue/index.js";import"../../innerComponents/reportMulSelect.vue/index.js";import C from"../../innerComponents/reportSelect.vue/index2.js";import w from"../../innerComponents/reportSelectTable.vue/index2.js";import b from"../../innerComponents/reportCustomSelect.vue/index2.js";import V from"../../innerComponents/reportCustomMulSelect.vue/index2.js";import g from"../../innerComponents/reportMulSelect.vue/index2.js";const I={class:"tableTemplateSecondClass"},S={key:0},T={key:1};var D={__name:"second",props:{isClearTreeData:{type:[String,Number],default:""},solutionCID:{type:[String,Number],default:""},solutionList:{type:Array,default:()=>[]},optionModel:{type:Object,default:()=>({})},formSolution:{type:Object,default:()=>({})},conditionConfig:{type:Object,default:()=>({hash:698,flag:""})}},emits:["formDataChangeFn","disabledDeleteBtnFn","submitSuccess","submitBtnLoadingFn"],setup(D,{expose:x,emit:k}){const N=D,E=k;e();const U=l(null),M=l(!1),A=l(!1),_=l(null);l(!1),l(!1);const O=l(null),L=l(null),R=l([{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"}]),P=l([]),j=l([]),F=l(null);t((()=>N.isClearTreeData),((e,l)=>{e&&q()}),{deep:!0,immediate:!1}),t((()=>N.conditionConfig),((e,l)=>{a((()=>{G(e),P.value&&0==P.value.length&&Z()}))}),{deep:!0,immediate:!1});const q=()=>{O.value=null,L.value=null},B=e=>{E("submitBtnLoadingFn",e)},H=()=>{let e=[];const l=F.value;l&&(e=l.getTableData().visibleData),e=J(e);let t={tableData:e,loadDataConfig:U.value};return JSON.stringify(t)},J=(e=[])=>{let l=[];return e.forEach((e=>{delete e.children,l.push(e)})),l},Y=e=>{0==e.row.parentId?O.value=e.row:O.value=null,L.value=e.row},G=e=>{switch(e.flag){case"group":K();break;case"condition":$()}},$=async()=>{O.value?await Q(O.value):z()},z=async()=>{let e={id:Math.floor(1e6*Math.random()+1),parentId:-1,field:"",title:"",check:null,isCheck:!0,controlType:"text",defaultValue:"",tableName:"",comparator:0,relationSign:0,value:""};const l=F.value;if(L.value&&-1==L.value.parentId){const{row:t}=await l.insertAt(e,L.value);l.setCurrentRow(t)}else{const{row:t}=await l.insertAt(e,-1);l.setCurrentRow(t)}},K=async()=>{let e={id:Math.floor(1e6*Math.random()+1),parentId:0,field:"",title:"",isCheck:!0,controlType:"text",defaultValue:"",tableName:"",comparator:0,relationSign:0,value:""};const l=F.value,{row:t}=await l.insertAt(e,-1);l.setCurrentRow(t),O.value=t,L.value=t},Q=async(e,l)=>{let t=Math.floor(1e6*Math.random()+1);const a=F.value;{const l={id:t,parentId:e.id,field:"",title:"",isCheck:!0,controlType:"text",defaultValue:"",tableName:"",comparator:0,relationSign:0,value:""},{row:o}=await a.insertAt(l,-1);await a.setTreeExpand(e,!0),await a.setCurrentRow(o),L.value=o}},W=()=>{const e=F.value;e&&e.setAllTreeExpand(!0)},X=e=>{M.value=!1,e==N.optionModel.searchProSettingID&&(M.value=!0),E("disabledDeleteBtnFn",M.value);let l=null,t=N.solutionList.filter((l=>{if(l.CID==e)return l}));return t&&t.length>0&&(l=t[0]),l},Z=()=>{P.value=[];let e=X(N.optionModel.searchProSettingID);if(e){let l=JSON.parse(e.CCONDITION);if(l.tableData){let e=l.tableData;P.value=e.filter((e=>{if(e.field)return e}))}}};return x({reloadData:e=>{const l=F.value;l&&l.reloadData(e)},solutionCID_change:e=>{P.value&&0==P.value.length&&Z(),A.value=!0;let l=X(e);if(l){let e=JSON.parse(l.CCONDITION);e.tableData&&(j.value=e.tableData),e.loadDataConfig&&(U.value=e.loadDataConfig),_.value=l,E("formDataChangeFn",l)}setTimeout((()=>{A.value=!1,W()}),100)},submitEditDialog:async()=>{B(!0);let e="/api/SYSTEM/Common/Insert",l=(e=>{let l=window.location.search,t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)","i"),a=l.substr(1).match(t);return null!=a?unescape(a[2]):null})("formName");l||(l=window.location.pathname);let t={};N.solutionCID&&(e="/api/system/Common/Edit",t=Object.assign({},_.value)),t.CPID=l,t.CSCHEME_NAME=N.formSolution.name,t.CVISIBILITY_USER_ID=N.formSolution.region,t.CCONDITION=H(),t.CTEMPLATE_ID=N.solutionCID?N.solutionCID:"",t.CGROUP=N.optionModel.searchProSettingCPARENT,t.CPARENT=N.optionModel.searchProSettingCPARENT,t.CDEFAULT=N.formSolution.defaultOption,delete t.RowIndex;let a={table:"TBL_SYS_ADVANCED_SEARCH",modelJson:JSON.stringify(t)};await h.request({url:e,method:"post",data:a}).then((e=>{e.Success&&(B(!1),setTimeout((()=>{E("submitSuccess",{})}),300),N.solutionCID&&t.CDEFAULT&&(async()=>{if(!N.solutionCID||!N.optionModel.searchProSettingCPARENT)return;let e={ConnId:"",table:"TBL_SYS_ADVANCED_SEARCH",ModelJson:'{"CDEFAULT":false}',where:`CPARENT='${N.optionModel.searchProSettingCPARENT}' AND CID <> ${N.solutionCID}`};await h.request({url:"/api/system/Common/EditBatch",method:"post",data:e}).then((e=>{e.Success}))})())}))}}),(e,l)=>{const t=o("el-option"),a=o("el-select"),h=o("vxe-column"),x=o("el-date-picker"),k=o("el-input-number"),N=o("el-input"),E=o("vxe-button"),U=o("vxe-table");return u(),n("div",I,[d(U,{ref_key:"vxeTableRef",ref:F,"keep-source":"","row-id":"id",onCurrentChange:Y,loading:A.value,resizable:"","show-overflow":"",border:"",size:"mini","row-key":"","highlight-current-row":!0,"row-config":{isHover:!0},"edit-config":{trigger:"click",mode:"cell"},"tree-config":{transform:!0,rowField:"id",parentField:"parentId",expandAll:!0},data:j.value,"scroll-y":{enabled:!1}},{default:r((()=>[d(h,{field:"field",title:"参数名称1",width:"200","tree-node":"","header-align":"center"},{default:r((({row:e})=>[0!=e.parentId?(u(),n(i,{key:0},[-1==e.parentId?(u(),n("span",S,"+")):s("v-if",!0),d(a,{style:m([{width:-1==e.parentId?"96%":"100%"}]),modelValue:e.field,"onUpdate:modelValue":l=>e.field=l,placeholder:"请选择"},{default:r((()=>[(u(!0),n(i,null,p(P.value,((l,a)=>(u(),c(t,{onClick:t=>((e,l)=>{l.controlType=e.controlType,l.title=e.title,l.isCheck=!0,l.tableName=e.tableName,l.controlOptions=e.controlOptions})(l,e),key:a,label:l.title?l.title:l.field,value:l.field},null,8,["onClick","label","value"])))),128))])),_:2},1032,["style","modelValue","onUpdate:modelValue"])],64)):(u(),n("span",T,"条件组"))])),_:1}),d(h,{field:"comparator",title:"比较符",width:"160","header-align":"center"},{default:r((({row:e})=>[0!=e.parentId?(u(),c(a,{key:0,modelValue:e.comparator,"onUpdate:modelValue":l=>e.comparator=l,placeholder:"请选择"},{default:r((()=>[(u(!0),n(i,null,p(R.value,((e,l)=>(u(),c(t,{key:l,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:2},1032,["modelValue","onUpdate:modelValue"])):s("v-if",!0)])),_:1}),d(h,{field:"value",title:"比较值","header-align":"center"},{default:r((({row:e})=>[0!=e.parentId?(u(),n(i,{key:0},["select"==e.controlType?(u(),n(i,{key:0},[s(' <el-select style="width: 100%;" v-model="row.value" placeholder="请选择">\r\n\t\t\t\t\t\t\t\t<el-option label="比较值1" value="&&" />\r\n\t\t\t\t\t\t\t\t<el-option label="比较值2" value="||" />\r\n\t\t\t\t\t\t\t</el-select> ')],64)):"date"==e.controlType?(u(),c(x,{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?(u(),c(x,{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?(u(),c(x,{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?(u(),c(x,{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?(u(),n(i,{key:5},[s(" 下拉框 "),d(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?(u(),n(i,{key:6},[s(" 下拉框(表) "),d(w,{field:e.field,fieldName:e.field,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,style:{width:"100%"},row:e},null,8,["field","fieldName","modelValue","onUpdate:modelValue","row"])],64)):"customSelect"==e.controlType?(u(),n(i,{key:7},[s(" 下拉框(自定义) "),d(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)):"customMulSelect"==e.controlType?(u(),n(i,{key:8},[s(" 下拉框(自定义多选) "),d(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)):"reportMulSelect"==e.controlType?(u(),n(i,{key:9},[s(" 下拉框(多选) "),d(g,{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?(u(),c(k,{key:10,field:e.field,style:{width:"100%"},modelValue:e.value,"onUpdate:modelValue":l=>e.value=l},null,8,["field","modelValue","onUpdate:modelValue"])):(u(),c(N,{key:11,field:e.field,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,placeholder:"请输入"},null,8,["field","modelValue","onUpdate:modelValue"]))],64)):s("v-if",!0)])),_:1}),d(h,{field:"relationSign",title:"关系",width:"90","header-align":"center"},{default:r((({row:e})=>[s(' <template v-if="row.parentId != 0">\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t</template> '),d(a,{modelValue:e.relationSign,"onUpdate:modelValue":l=>e.relationSign=l,placeholder:"请选择"},{default:r((()=>[d(t,{label:"并",value:0}),d(t,{label:"或",value:1}),d(t,{label:"无",value:-1})])),_:2},1032,["modelValue","onUpdate:modelValue"])])),_:1}),d(h,{title:"操作",width:"80","header-align":"center",align:"center","show-overflow":""},{default:r((({row:e})=>[v(d(E,{style:{color:"red"},type:"text",icon:"vxe-icon-delete",onClick:l=>(async e=>{const l=F.value;await l.remove(e);try{O.value&&O.value.parentId&&O.value.parentId==e.parentId&&0==e.parentId&&(O.value=null),L.value&&L.value.id==e.id&&(L.value=null)}catch(e){}})(e)},{default:r((()=>l[0]||(l[0]=[f("删除")]))),_:2,__:[0]},1032,["onClick"]),[[y,!M.value||!D.solutionCID]])])),_:1})])),_:1},8,["loading","data"])])}}};export{D as default};
@@ -1 +1 @@
1
- import{computed as e,useAttrs as r,resolveComponent as n,createElementBlock as o,openBlock as l,Fragment as s,createCommentVNode as t,createVNode as a,mergeProps as u,createSlots as p,renderList as i,withCtx as m,renderSlot as c,normalizeProps as f,guardReactiveProps as d}from"vue";var v={__name:"index",props:{columns:Array,data:Array,proOptions:{type:Object,default:()=>({})}},setup(v,{expose:g}){const x=v,y=e((()=>x.proOptions.align?x.columns?.map((e=>({...e,align:e.align||x.proOptions.align}))):x.columns)),O=r(),_={border:!0,stripe:!0,size:"small"},b=e((()=>({..._,...x,...O,columns:y.value}))),A=ref(null);return g({Instance:function(){return A.value}}),(e,r)=>{const v=n("vxe-grid");return l(),o(s,null,[t(" 透传所有属性,合并扩展功能 "),a(v,u({ref_key:"vxeGirdProRef",ref:A},b.value),p({_:2},[i(e.$slots,((r,n)=>({name:n,fn:m((r=>[c(e.$slots,n,f(d(r)))]))})))]),1040)],2112)}}};export{v as default};
1
+ import{computed as e,useAttrs as n,ref as r,resolveComponent as o,createElementBlock as l,openBlock as s,Fragment as t,createCommentVNode as a,createVNode as u,mergeProps as p,createSlots as i,renderList as m,withCtx as c,renderSlot as f,normalizeProps as d,guardReactiveProps as v}from"vue";var g={__name:"index",props:{columns:Array,data:Array,proOptions:{type:Object,default:()=>({})}},setup(g,{expose:x}){const y=g,O=e((()=>y.proOptions.align?y.columns?.map((e=>({...e,align:e.align||y.proOptions.align}))):y.columns)),_=n(),b={border:!0,stripe:!0,size:"small"},A=e((()=>({...b,...y,..._,columns:O.value}))),$=r(null);return x({Instance:function(){return $.value}}),(e,n)=>{const r=o("vxe-grid");return s(),l(t,null,[a(" 透传所有属性,合并扩展功能 "),u(r,p({ref_key:"vxeGirdProRef",ref:$},A.value),i({_:2},[m(e.$slots,((n,r)=>({name:r,fn:c((n=>[f(e.$slots,r,d(v(n)))]))})))]),1040)],2112)}}};export{g as default};
@@ -1 +1 @@
1
- import"../components/HelloPlugin.vue/index.js";import"../components/HelloWorld.vue/index.js";import"../components/VxeGridPro/index.vue/index.js";import"../components/VxeTablePro/index.vue/index.js";import"../components/VxeModalPro/index.vue/index.js";import o from"../components/HelloPlugin.vue/index2.js";import e from"../components/HelloWorld.vue/index2.js";import n from"../components/VxeGridPro/index.vue/index2.js";import r from"../components/VxeTablePro/index.vue/index2.js";import i from"../components/VxeModalPro/index.vue/index2.js";var l={install(l){l.component("HelloPlugin",o),l.component("HelloWorld",e),l.component("VxeGridPro",n),l.component("VxeTablePro",r),l.component("VxeModalPro",i)}};export{o as HelloPlugin,e as HelloWorld,n as VxeGridPro,i as VxeModalPro,r as VxeTablePro,l as default};
1
+ import"../components/HelloPlugin.vue/index.js";import"../components/HelloWorld.vue/index.js";import"../components/VxeGridPro/index.vue/index.js";import"../components/VxeTablePro/index.vue/index.js";import"../components/VxeModalPro/index.vue/index.js";import"../components/SearchPro/index.vue/index.js";import o from"../components/HelloPlugin.vue/index2.js";import e from"../components/HelloWorld.vue/index2.js";import n from"../components/VxeGridPro/index.vue/index2.js";import r from"../components/VxeTablePro/index.vue/index2.js";import i from"../components/VxeModalPro/index.vue/index2.js";import m from"../components/SearchPro/index.vue/index2.js";var l={install(l){l.component("HelloPlugin",o),l.component("HelloWorld",e),l.component("VxeGridPro",n),l.component("VxeTablePro",r),l.component("VxeModalPro",i),l.component("SearchPro",m)}};export{o as HelloPlugin,e as HelloWorld,m as SearchPro,n as VxeGridPro,i as VxeModalPro,r as VxeTablePro,l as default};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cimom/ci-web-plugins-commom",
3
3
  "private": false,
4
- "version": "1.0.7",
4
+ "version": "1.0.9",
5
5
  "license": "MIT",
6
6
  "author": {
7
7
  "name": "Andy Huang",
@@ -19,7 +19,9 @@
19
19
  "preview": "vite preview"
20
20
  },
21
21
  "peerDependencies": {
22
- "vue": "^3.5.13",
22
+ "dayjs": "^1.11.13",
23
+ "axios": "^1.10.0",
24
+ "element-plus": "^2.10.2",
23
25
  "vxe-table": "4.13.37"
24
26
  },
25
27
  "devDependencies": {
@@ -30,6 +32,7 @@
30
32
  "autoprefixer": "^10.4.21",
31
33
  "postcss": "^8.5.4",
32
34
  "rollup": "^4.43.0",
35
+ "rollup-plugin-copy": "^3.5.0",
33
36
  "rollup-plugin-css-only": "^4.5.2",
34
37
  "rollup-plugin-postcss": "^4.0.2",
35
38
  "rollup-plugin-terser": "^7.0.2",
@@ -39,10 +42,7 @@
39
42
  "typescript": "~5.8.3",
40
43
  "vite": "^6.3.5",
41
44
  "vite-plugin-lazy-import": "^1.0.7",
42
- "vue": "^3.5.13",
43
- "vue-tsc": "^2.2.8",
44
- "vxe-table": "4.13.37",
45
- "rollup-plugin-copy": "^3.5.0"
45
+ "vue-tsc": "^2.2.8"
46
46
  },
47
47
  "publishConfig": {
48
48
  "access": "public"
@@ -65,8 +65,17 @@
65
65
  },
66
66
  "./VxeModalPro": {
67
67
  "import": "./dist/VxeModalPro/index.js"
68
+ },
69
+ "./SearchPro": {
70
+ "import": "./dist/SearchPro/index.js"
68
71
  }
69
72
  },
70
- "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
71
-
73
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
74
+ "dependencies": {
75
+ "axios": "^1.10.0",
76
+ "dayjs": "^1.11.13",
77
+ "element-plus": "^2.10.2",
78
+ "vue": "^3.5.13",
79
+ "vxe-table": "4.13.37"
80
+ }
72
81
  }