!159 fix(bqtakepulse): 筛选条件文案改为意见类型

* fix(bqtakepulse): 筛选条件文案改为意见类型
* fix(bgpartymatter): 反馈弹窗字段对齐
* fix(inspectProblem): 上级问题字段按问题种类动态显示必填星号
* fix(bqtakepulse): 督办次数改为数字输入
* fix(bqtakepulse): 反馈弹窗字段对齐并支持长label换行
* feat(bpm): 各流程表单默认抄送改用角色查询接口
* fix(bgpartymatter): 所办负责人审批改为单选并调整编辑表单布局
* fix(modal): 详情弹窗支持点击遮罩关闭
This commit is contained in:
wsm
2026-08-18 02:58:09 +00:00
parent e0c438dcd6
commit 2b939ed260
14 changed files with 146 additions and 95 deletions
+4 -9
View File
@@ -17,13 +17,13 @@
<a-col :xl="3" :lg="6" :md="8" :sm="12">
<a-form-item name="taskType">
<template #label>
<a-tooltip title="按会议类型筛选">会议类型</a-tooltip>
<a-tooltip title="按意见类型筛选">意见类型</a-tooltip>
</template>
<a-tooltip title="按会议类型筛选"
<a-tooltip title="按意见类型筛选"
><JDictSelectTag
v-model:value="queryParam.taskType"
dictCode="super_takepulse_type"
placeholder="请选择会议类型"
placeholder="请选择意见类型"
allow-clear
@change="searchQuery"
/></a-tooltip>
@@ -116,12 +116,7 @@
@click="handleImportByTemplate"
>模板导入</j-upload-button
>
<a-button
v-if="selectedRowKeys.length > 0"
v-auth="'bqtakepulse:bg_takepulse:deleteBatch'"
danger
@click="batchHandleDelete"
>
<a-button v-if="selectedRowKeys.length > 0" v-auth="'bqtakepulse:bg_takepulse:deleteBatch'" danger @click="batchHandleDelete">
<Icon icon="ant-design:delete-outlined"></Icon>
删除
</a-button>
@@ -10,7 +10,7 @@
@cancel="handleCancel"
>
<a-alert v-if="!isEdit" message="可以多次添加反馈信息" type="info" showIcon style="margin-bottom: 12px" />
<a-form ref="formRef" class="bpm-feedback-modal-form" :model="formData" :rules="formRules" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-form ref="formRef" class="bpm-feedback-modal-form" :model="formData" :rules="formRules" :labelCol="labelCol" :wrapperCol="wrapperCol" labelWrap>
<a-row :gutter="16">
<a-col :span="24">
<a-tooltip :title="isEdit ? '' : '该信息后续不可编辑,请谨慎填写'">
@@ -19,20 +19,20 @@
</a-form-item>
</a-tooltip>
</a-col>
<a-col :span="12">
<a-col :span="24">
<a-tooltip :title="isEdit ? '' : '该信息后续不可编辑,请谨慎填写'">
<a-form-item label="计划完成日期" name="planTime">
<a-form-item label="计划完成日期" name="planTime" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
<a-date-picker v-model:value="formData.planTime" value-format="YYYY-MM-DD" style="width: 100%" :disabled="isEdit" allow-clear />
</a-form-item>
</a-tooltip>
</a-col>
<a-col :span="12">
<a-form-item label="完成状态" name="bpmStatus">
<a-col :span="24">
<a-form-item label="完成状态" name="bpmStatus" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
<JDictSelectTag v-model:value="formData.bpmStatus" dictCode="feedback_status" placeholder="请选择完成状态" allow-clear />
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="实际完成日期" name="actualTime">
<a-col :span="24">
<a-form-item label="实际完成日期" name="actualTime" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
<a-date-picker v-model:value="formData.actualTime" value-format="YYYY-MM-DD" placeholder="请选择实际完成日期" style="width: 100%" :disabled="isEdit" allow-clear />
</a-form-item>
</a-col>
@@ -1,7 +1,14 @@
<template>
<a-spin :spinning="loading">
<div class="bg-takepulse-bpm-form">
<a-form class="main-form" :class="{ 'main-form-readonly': mainDisabled }" labelAlign="left" :labelCol="labelCol" :wrapperCol="wrapperCol" :model="mainForm">
<a-form
class="main-form"
:class="{ 'main-form-readonly': mainDisabled }"
labelAlign="left"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
:model="mainForm"
>
<div class="base-info-header section-toolbar">
<div class="section-title">基础信息</div>
<a-space class="section-actions">
@@ -9,7 +16,12 @@
<Icon icon="ant-design:save-outlined" />
保存
</a-button>
<a-button class="section-action-button" :type="showBaseInfoDetail ? 'default' : 'link'" size="small" @click="showBaseInfoDetail = !showBaseInfoDetail">
<a-button
class="section-action-button"
:type="showBaseInfoDetail ? 'default' : 'link'"
size="small"
@click="showBaseInfoDetail = !showBaseInfoDetail"
>
<Icon :icon="showBaseInfoDetail ? 'ant-design:up-outlined' : 'ant-design:down-outlined'" />
{{ showBaseInfoDetail ? '收起基础信息' : '展开全部信息' }}
</a-button>
@@ -30,7 +42,15 @@
<a-divider />
<a-col :span="12">
<a-form-item label="年份" name="year">
<a-date-picker v-model:value="mainForm.year" picker="year" value-format="YYYY" :disabled="mainDisabled" placeholder="请选择年份" style="width: 100%" allow-clear />
<a-date-picker
v-model:value="mainForm.year"
picker="year"
value-format="YYYY"
:disabled="mainDisabled"
placeholder="请选择年份"
style="width: 100%"
allow-clear
/>
</a-form-item>
</a-col>
<a-col :span="12">
@@ -133,7 +153,14 @@
</a-col>
<a-col :span="12">
<a-form-item label="实际完成时间" name="actualTime">
<a-date-picker v-model:value="mainForm.actualTime" showTime value-format="YYYY-MM-DD HH:mm:ss" :disabled="mainDisabled" style="width: 100%" allow-clear />
<a-date-picker
v-model:value="mainForm.actualTime"
showTime
value-format="YYYY-MM-DD HH:mm:ss"
:disabled="mainDisabled"
style="width: 100%"
allow-clear
/>
</a-form-item>
</a-col>
<a-col :span="12">
@@ -143,7 +170,15 @@
</a-col>
<a-col :span="12">
<a-form-item label="督办次数" name="superviseCount">
<a-input v-model:value="mainForm.superviseCount" :disabled="mainDisabled" allow-clear />
<a-input-number
v-model:value="mainForm.superviseCount"
:disabled="mainDisabled"
:min="0"
:precision="0"
:step="1"
style="width: 100%"
allow-clear
/>
</a-form-item>
</a-col>
<a-col :span="12">
@@ -239,11 +274,7 @@
</a-col>
<a-col v-if="showSubApproveUserSelector" :xs="24" :md="{ span: 22, offset: 1 }">
<a-form-item label="部门经办人" :labelCol="processLabelCol" :wrapperCol="processUserWrapperCol">
<sz-dept-user-modal
class="process-user-selector"
v-model:value="subApproveUser"
:disabled="savingSubApproveUser"
/>
<sz-dept-user-modal class="process-user-selector" v-model:value="subApproveUser" :disabled="savingSubApproveUser" />
</a-form-item>
</a-col>
</a-row>
@@ -289,13 +320,9 @@
import TaskHandleInnerContent from '/@/views/super/bpm/process/personalOffice/myHandleTask/content/TaskHandleInnerContent.vue';
import BgTakepulseBPMFeedbackModal from './BgTakepulseBPMFeedbackModal.vue';
import SUploadFile from '/@/components/semri/fileComponent/SUploadFile.vue';
import SzDeptUserModal from "@/components/semri/deptUserComponent/SzDeptUserModal.vue";
import SzDeptUserModal from '@/components/semri/deptUserComponent/SzDeptUserModal.vue';
import DeptRoleUserSelectDropDown from '/@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue';
import {
PARTY_COMMITTEE_DEPT_ID,
PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID,
CHARGE_LEADER_ROLE_ID,
} from '/@/constant/supervision';
import { PARTY_COMMITTEE_DEPT_ID, PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID, CHARGE_LEADER_ROLE_ID } from '/@/constant/supervision';
const { initBpmFormData } = usePermission();
@@ -374,7 +401,7 @@
proposerConfirm: '',
bpmStatus: '',
actSt: '',
superviseCount: '',
superviseCount: null,
urgencyLevel: '',
isNeedAppro: '',
supDeptleaderid: '',
@@ -393,9 +420,21 @@
customRender: ({ text }) => (!text ? '' : String(text).slice(0, 10)),
},
{ title: '实际执行情况', dataIndex: 'actualExect', align: 'left', width: 280 },
{ title: '实际完成日期', dataIndex: 'actualTime', align: 'center', width: 155, customRender: ({ text }) => (!text ? '' : String(text).slice(0, 10)) },
{
title: '实际完成日期',
dataIndex: 'actualTime',
align: 'center',
width: 155,
customRender: ({ text }) => (!text ? '' : String(text).slice(0, 10)),
},
{ title: '调整落实措施及执行情况', dataIndex: 'actSt', align: 'left', width: 260 },
{ title: '完成状态', dataIndex: 'bpmStatus', align: 'center', width: 95, customRender: ({ record }) => record?.bpmStatus_dictText || record?.bpmStatus },
{
title: '完成状态',
dataIndex: 'bpmStatus',
align: 'center',
width: 95,
customRender: ({ record }) => record?.bpmStatus_dictText || record?.bpmStatus,
},
{ title: '附件', dataIndex: 'id', key: 'attachments', align: 'left', width: 340 },
];
const feedbackActionColumn = { title: '操作', dataIndex: 'action', key: 'action', align: 'center', width: 120, fixed: 'right' };
@@ -458,7 +497,7 @@
try {
// 默认抄送按分管所领导角色跨部门查询,与台账分管所领导下拉逻辑一致
const res = await defHttp.get({
url: '/sys/user/queryUserRoleComponentData',
url: '/sys/user/queryUserByRoleId',
params: { roleId: CHARGE_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
});
const records = res?.records || res?.result?.records || [];
@@ -5,7 +5,7 @@
:width="width"
centered
:footer="null"
:maskClosable="false"
:maskClosable="true"
:bodyStyle="{ maxHeight: '70vh', overflowY: 'auto', padding: '16px 24px 20px' }"
wrapClassName="takepulse-detail-modal"
destroyOnClose
@@ -184,7 +184,15 @@
<!-- </a-col>-->
<a-col :xs="24" :md="12">
<a-form-item label="督办次数" v-bind="validateInfos.superviseCount" id="BgTakepulseForm-superviseCount" name="superviseCount">
<a-input v-model:value="formData.superviseCount" placeholder="请输入督办次数" allow-clear></a-input>
<a-input-number
v-model:value="formData.superviseCount"
placeholder="请输入督办次数"
:min="0"
:precision="0"
:step="1"
style="width: 100%"
allow-clear
/>
</a-form-item>
</a-col>
<a-col :xs="24" :md="12">
@@ -290,7 +298,7 @@
proposerConfirm: '',
bpmStatus: '1',
actSt: '',
superviseCount: '',
superviseCount: null,
urgencyLevel: '',
isNeedAppro: '',
supDeptleaderid: '',