From c2f4f52f344c07b446336fcfd809401c8c14bd83 Mon Sep 17 00:00:00 2001 From: qq787203167 <787203167@qq.com> Date: Thu, 21 Apr 2022 13:58:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=99=9A=E6=8B=9F=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E7=9A=84=E9=AB=98=E7=BA=A7=E6=A3=80=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/globalAdvancedQuery/index.vue | 661 ++++++++++++++++++ .../components/virtualListDetails.vue | 97 ++- .../components/listOfRegulations.vue | 71 +- 3 files changed, 821 insertions(+), 8 deletions(-) create mode 100644 jero-web/src/components/globalAdvancedQuery/index.vue diff --git a/jero-web/src/components/globalAdvancedQuery/index.vue b/jero-web/src/components/globalAdvancedQuery/index.vue new file mode 100644 index 000000000..00991ce9a --- /dev/null +++ b/jero-web/src/components/globalAdvancedQuery/index.vue @@ -0,0 +1,661 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue b/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue index 79f08a9b0..794a5d4c4 100644 --- a/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue +++ b/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue @@ -72,6 +72,9 @@ + {{$t('query')}} {{$t('reset')}} @@ -210,6 +213,7 @@ import editModel from './editModel' import UpdateLog from '@/components/UpdateLog/index' import batSetting from './batSetting' + import globalAdvancedQuery from '@/components/globalAdvancedQuery/index' import { getAction, postAction, downloadFile } from '@/api/manage' import { Base64 } from 'js-base64' @@ -220,14 +224,15 @@ addModel, editModel, UpdateLog, - batSetting + batSetting, + globalAdvancedQuery }, data() { return { title: '维护虚拟清单', queryParam: {}, - visibleFile:false, - dataSourceFile:[], + visibleFile: false, + dataSourceFile: [], columnsFile: [ { title: this.$t('deliverableTemplate'), @@ -445,7 +450,73 @@ } ], selectedRowKeys: [], - isTrue: false + isTrue: false, + queryParamQuery:{}, + // fieldList | array |✔| 需要查询的列集合示例如下,type类型有:date/datetime/string/int/number + fieldList: [ + { + type: 'date', + value: 'shi4Yong4Fan4Wei2', + text: this.$t('scopeOfApplication'), + dictCode: 'apply_scope'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: 'date', + value: 'status', + text: this.$t('status'), + dictCode: 'state'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: 'string', + value: 'correspondingStandard', + text: this.$t('correspondingStandard') + }, + { + type: 'date', + value: 'region', + text: this.$t('zoneOfApplication'), + dictCode: 'region'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: 'date', + value: 'implementType', + text: this.$t('implementationCategory'), + dictCode: 'implement_type'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: 'date', + value: 'xin1Che1Xing2Shi2Shi1Ri4Qi1', + text: this.$t('ImplementationDate') + }, + { + type: 'date', + value: 'implementTime', + text: this.$t('vehicleInProductionDate') + }, + { + type: 'string', + value: 'wvtaId', + text: 'WVTA ID' + }, + { + type: '', + value: 'attestationType', + text: this.$t('certificationType'), + dictCode: 'attestation_type'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: '', + value: 'attestationRank', + text: this.$t('certificationLevel'), + dictCode: 'attestation_rank'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: '', + value: 'dutyTerritory', + text: this.$t('areaOfResponsibility'), + dictCode: 'duty_territory'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + } + ] } }, mounted() { @@ -468,6 +539,19 @@ } }, methods: { + handleSuperQuery(params, matchType) { + let sqp = {} + if (!params || (params && params.length == 0)) { + sqp['superQueryParams'] = '' + this.$refs.globalAdvancedQueryRef.superQueryFlag = false + } else { + this.$refs.globalAdvancedQueryRef.superQueryFlag = true + sqp['superQueryParams'] = encodeURI(JSON.stringify(params)) + sqp['superQueryMatchType'] = matchType + } + this.queryParamQuery = sqp + this.getList() + }, UpdateLogClick() { this.$refs.UpdateLogRef.getList() }, @@ -525,7 +609,8 @@ }, getList() { let query = { - ...this.queryParam + ...this.queryParam, + ...this.queryParamQuery } this.loading = true getAction(this.url.list, query).then((res) => { @@ -648,7 +733,7 @@ this.loading = false } }) - }, + } } } diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index cbcf7d507..fd6498229 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -34,6 +34,9 @@ + {{ $t('query') }} {{ $t('reset') }} @@ -240,6 +243,7 @@ import listAddModel from './listAddModel' import listEditModel from './listEditModel' import batSetting from './batSetting' import transferList from './transferList' +import globalAdvancedQuery from '@/components/globalAdvancedQuery/index' import {getAction, postAction, downloadFile, deleteAction} from '@/api/manage' import moment from 'moment' import {mapGetters} from 'vuex' @@ -252,7 +256,8 @@ export default { listAddModel, listEditModel, batSetting, - transferList + transferList, + globalAdvancedQuery }, data() { return { @@ -475,6 +480,7 @@ export default { visibleFile: false, dataSourceFile: [], confirmLoading: false, + queryParamQuery:{}, isDisplay: true, selectedRowKeys: [], visible: false, @@ -504,7 +510,54 @@ export default { transferUrl: ''//调取 }, loading: false, - dataSource: [] + dataSource: [], + // fieldList | array |✔| 需要查询的列集合示例如下,type类型有:date/datetime/string/int/number + fieldList: [ + { + type: 'string', + value: 'correspondingStandard', + text: this.$t('correspondingStandard') + }, + { + type: 'date', + value: 'implementType', + text: this.$t('implementationCategory'), + dictCode: 'implement_type'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: 'date', + value: 'xin1Che1Xing2Shi2Shi1Ri4Qi1', + text: this.$t('ImplementationDate') + }, + { + type: 'date', + value: 'implementTime', + text: this.$t('vehicleInProductionDate') + }, + { + type: 'string', + value: 'wvtaId', + text: 'WVTA ID' + }, + { + type: '', + value: 'attestationType', + text: this.$t('certificationType'), + dictCode: 'attestation_type'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: '', + value: 'attestationRank', + text: this.$t('certificationLevel'), + dictCode: 'attestation_rank'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + }, + { + type: '', + value: 'dutyTerritory', + text: this.$t('areaOfResponsibility'), + dictCode: 'duty_territory'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框 + } + ] } }, @@ -619,8 +672,22 @@ export default { addModelList() { this.getList() }, + handleSuperQuery(params, matchType) { + let sqp = {} + if (!params || (params && params.length == 0)) { + sqp['superQueryParams'] = '' + this.$refs.globalAdvancedQueryRef.superQueryFlag = false + } else { + this.$refs.globalAdvancedQueryRef.superQueryFlag = true + sqp['superQueryParams'] = encodeURI(JSON.stringify(params)) + sqp['superQueryMatchType'] = matchType + } + this.queryParamQuery = sqp + this.getList() + }, getList() { let query = { + ...this.queryParamQuery, ...this.queryParam, projectLibraryId: this.$route.query.id }