style(bqtakepulse): 统一搜索表单布局,简化筛选为4项,牵头/协办部门支持多选
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -2,50 +2,32 @@
|
|||||||
<div class="p-2">
|
<div class="p-2">
|
||||||
<!--查询区域-->
|
<!--查询区域-->
|
||||||
<div class="jeecg-basic-table-form-container">
|
<div class="jeecg-basic-table-form-container">
|
||||||
<a-form ref="formRef" @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
|
<a-form ref="formRef" @keyup.enter="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :lg="6">
|
<a-col :lg="6" :md="8" :sm="12">
|
||||||
<a-form-item name="year">
|
<a-form-item label="意见主题" name="title">
|
||||||
<template #label><span title="年份">年份</span></template>
|
<JInput v-model:value="queryParam.title" type="like" placeholder="请输入意见主题" allow-clear trim @change="searchQuery" />
|
||||||
<j-select-multiple placeholder="请选择年份" v-model:value="queryParam.year" dictCode="super_year" allow-clear />
|
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :lg="6">
|
<a-col :lg="6" :md="8" :sm="12">
|
||||||
<a-form-item name="taskType">
|
<a-form-item label="分管所领导" name="manageSuoleader">
|
||||||
<template #label><span title="会议类型:行政线、技术线">会议类型</span></template>
|
<DeptRoleUserSelectDropDown v-model:value="queryParam.manageSuoleader" :deptId="PARTY_COMMITTEE_DEPT_ID" :roleId="CHARGE_LEADER_ROLE_ID" placeholder="请选择分管所领导" allow-clear style="width: 100%" @change="searchQuery" />
|
||||||
<j-select-multiple placeholder="请选择会议类型:行政线、技术线" v-model:value="queryParam.taskType" dictCode="super_takepulse_type" allow-clear />
|
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<template v-if="toggleSearchStatus">
|
<a-col :lg="6" :md="8" :sm="12">
|
||||||
<a-col :lg="6">
|
<a-form-item label="牵头部门" name="responDeptid">
|
||||||
<a-form-item name="type">
|
<sz-select-dept placeholder="请选择牵头部门" v-model:value="selectedResponDept" checkStrictly allow-clear @change="handleResponDeptChange" />
|
||||||
<template #label><span title="类别:党的建设等其他">类别:</span></template>
|
|
||||||
<a-input placeholder="请输入类别:党的建设等其他" v-model:value="queryParam.type" allow-clear ></a-input>
|
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :lg="6">
|
<a-col :lg="6" :md="8" :sm="12">
|
||||||
<a-form-item name="responDeptid">
|
<a-form-item label="协办部门" name="assistDeptid">
|
||||||
<template #label><span title="牵头部门">牵头部门</span></template>
|
<sz-select-dept placeholder="请选择协办部门" v-model:value="selectedAssistDept" checkStrictly allow-clear @change="handleAssistDeptChange" />
|
||||||
<sz-select-dept placeholder="请选择牵头部门" v-model:value="queryParam.responDeptid" checkStrictly allow-clear />
|
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :lg="6">
|
<a-col :lg="6" :md="8" :sm="12">
|
||||||
<a-form-item name="assistDeptid">
|
<span class="table-page-search-submitButtons">
|
||||||
<template #label><span title="协办部门">协办部门</span></template>
|
|
||||||
<sz-select-dept placeholder="请选择协办部门" v-model:value="queryParam.assistDeptid" checkStrictly allow-clear />
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
|
||||||
</template>
|
|
||||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
|
||||||
<span style="float: left; overflow: hidden" class="table-page-search-submitButtons">
|
|
||||||
<a-col :lg="6">
|
|
||||||
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
|
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
|
||||||
<a-button preIcon="ant-design:reload-outlined" @click="searchReset" style="margin-left: 8px">重置</a-button>
|
<a-button preIcon="ant-design:reload-outlined" style="margin-left: 8px" @click="searchReset">重置</a-button>
|
||||||
<a @click="toggleSearchStatus = !toggleSearchStatus" style="margin-left: 8px">
|
|
||||||
{{ toggleSearchStatus ? '收起' : '展开' }}
|
|
||||||
<Icon :icon="toggleSearchStatus ? 'ant-design:up-outlined' : 'ant-design:down-outlined'" />
|
|
||||||
</a>
|
|
||||||
</a-col>
|
|
||||||
</span>
|
</span>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
@@ -87,6 +69,11 @@
|
|||||||
</template>
|
</template>
|
||||||
<!--字段回显插槽-->
|
<!--字段回显插槽-->
|
||||||
<template v-slot:bodyCell="{ column, record, index, text }">
|
<template v-slot:bodyCell="{ column, record, index, text }">
|
||||||
|
<template v-if="column.dataIndex === 'title'">
|
||||||
|
<a-tooltip title="点击查看详情">
|
||||||
|
<a style="font-weight: 500" @click="handleDetail(record)">{{ text }}</a>
|
||||||
|
</a-tooltip>
|
||||||
|
</template>
|
||||||
</template>
|
</template>
|
||||||
<!-- 嵌套反馈信息表,仅展示当前事项下的执行情况反馈记录。 -->
|
<!-- 嵌套反馈信息表,仅展示当前事项下的执行情况反馈记录。 -->
|
||||||
<template #expandedRowRender="{ record }">
|
<template #expandedRowRender="{ record }">
|
||||||
@@ -161,8 +148,10 @@
|
|||||||
import { showImportValidationErrors } from '/@/utils/helper/importError';
|
import { showImportValidationErrors } from '/@/utils/helper/importError';
|
||||||
import { useMessage } from '/@/hooks/web/useMessage';
|
import { useMessage } from '/@/hooks/web/useMessage';
|
||||||
import { countFeedbackStatus } from '/@/views/bg/utils/feedbackStatusCount';
|
import { countFeedbackStatus } from '/@/views/bg/utils/feedbackStatusCount';
|
||||||
import JSelectMultiple from '/@/components/Form/src/jeecg/components/JSelectMultiple.vue';
|
|
||||||
import SzSelectDept from '/@/components/Form/src/jeecg/components/SzSelectDept.vue';
|
import SzSelectDept from '/@/components/Form/src/jeecg/components/SzSelectDept.vue';
|
||||||
|
import JInput from '/@/components/Form/src/jeecg/components/JInput.vue';
|
||||||
|
import DeptRoleUserSelectDropDown from '/@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue';
|
||||||
|
import { PARTY_COMMITTEE_DEPT_ID, CHARGE_LEADER_ROLE_ID } from '/@/constant/supervision';
|
||||||
import Icon from '/@/components/Icon/index';
|
import Icon from '/@/components/Icon/index';
|
||||||
import { startProcessSchedules } from '/@/api/common/api';
|
import { startProcessSchedules } from '/@/api/common/api';
|
||||||
import { dateUtil } from '/@/utils/dateUtil';
|
import { dateUtil } from '/@/utils/dateUtil';
|
||||||
@@ -179,6 +168,8 @@
|
|||||||
|
|
||||||
const formRef = ref();
|
const formRef = ref();
|
||||||
const queryParam = reactive<any>({});
|
const queryParam = reactive<any>({});
|
||||||
|
const selectedResponDept = ref([]);
|
||||||
|
const selectedAssistDept = ref([]);
|
||||||
const expandedRowKeys = ref<Array<string | number>>([]);
|
const expandedRowKeys = ref<Array<string | number>>([]);
|
||||||
const feedbackTableData = reactive<Record<string, Recordable[]>>({});
|
const feedbackTableData = reactive<Record<string, Recordable[]>>({});
|
||||||
const statsData = reactive({ notStarted: 0, inProgress: 0, overdue: 0, completed: 0 });
|
const statsData = reactive({ notStarted: 0, inProgress: 0, overdue: 0, completed: 0 });
|
||||||
@@ -607,7 +598,6 @@
|
|||||||
|
|
||||||
/* ----------------------以下为原生查询需要添加的-------------------------- */
|
/* ----------------------以下为原生查询需要添加的-------------------------- */
|
||||||
const { createMessage } = useMessage();
|
const { createMessage } = useMessage();
|
||||||
const toggleSearchStatus = ref<boolean>(false);
|
|
||||||
const labelCol = reactive({
|
const labelCol = reactive({
|
||||||
xs:24,
|
xs:24,
|
||||||
sm:4,
|
sm:4,
|
||||||
@@ -675,9 +665,29 @@
|
|||||||
await defHttp.uploadFile({ url: getImportExcelByEasyExcelUrl }, { file: data.file }, { success: isReturn });
|
await defHttp.uploadFile({ url: getImportExcelByEasyExcelUrl }, { file: data.file }, { success: isReturn });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleResponDeptChange(values) {
|
||||||
|
if (values && values.length > 0) {
|
||||||
|
queryParam.responDeptid = values.join(',');
|
||||||
|
} else {
|
||||||
|
delete queryParam.responDeptid;
|
||||||
|
}
|
||||||
|
searchQuery();
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleAssistDeptChange(values) {
|
||||||
|
if (values && values.length > 0) {
|
||||||
|
queryParam.assistDeptid = values.join(',');
|
||||||
|
} else {
|
||||||
|
delete queryParam.assistDeptid;
|
||||||
|
}
|
||||||
|
searchQuery();
|
||||||
|
}
|
||||||
|
|
||||||
function searchReset() {
|
function searchReset() {
|
||||||
formRef.value.resetFields();
|
formRef.value.resetFields();
|
||||||
selectedRowKeys.value = [];
|
selectedRowKeys.value = [];
|
||||||
|
selectedResponDept.value = [];
|
||||||
|
selectedAssistDept.value = [];
|
||||||
resetFeedbackExpand();
|
resetFeedbackExpand();
|
||||||
//刷新数据
|
//刷新数据
|
||||||
reload({ page: 1 });
|
reload({ page: 1 });
|
||||||
@@ -688,11 +698,7 @@
|
|||||||
* @param key
|
* @param key
|
||||||
* @param value
|
* @param value
|
||||||
*/
|
*/
|
||||||
function handleFormJoinChange(key, value) {
|
|
||||||
if (typeof value != 'string') {
|
|
||||||
queryParam[key] = value.join(',');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.jeecg-basic-table-form-container {
|
.jeecg-basic-table-form-container {
|
||||||
|
|||||||
Reference in New Issue
Block a user