!157 style(bqtakepulse): 意见主题输入框改为整行放大显示
* style(bqtakepulse): 意见主题输入框改为整行放大显示 * fix(bpm): 首页待阅查看详情补传增补意见tab显示参数 * style(bpm): 办理界面抄送人选择框自适应宽度并支持展示更多 * feat(bpm): 各流程表单默认抄送统一按分管所领导角色查询 * fix(bpm): 首页待办办理弹窗标题回显业务标题
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
:disabled="disabled"
|
||||
:open="false"
|
||||
mode="multiple"
|
||||
:maxTagCount="3"
|
||||
:maxTagCount="maxTagCount"
|
||||
style="width: 100%"
|
||||
@update:value="handleSelectRemove"
|
||||
@click="openModal()"
|
||||
@@ -23,7 +23,7 @@
|
||||
:disabled="disabled"
|
||||
:open="false"
|
||||
mode="multiple"
|
||||
:maxTagCount="3"
|
||||
:maxTagCount="maxTagCount"
|
||||
style="width: 100%"
|
||||
@update:value="handleSelectRemove"
|
||||
/>
|
||||
@@ -81,6 +81,7 @@ const props = withDefaults(
|
||||
title?: string;
|
||||
hideTrigger?: boolean;
|
||||
triggerMode?: 'button' | 'input';
|
||||
maxTagCount?: number;
|
||||
}>(),
|
||||
{
|
||||
value: '',
|
||||
@@ -94,6 +95,7 @@ const props = withDefaults(
|
||||
title: '选择人员',
|
||||
hideTrigger: false,
|
||||
triggerMode: 'button',
|
||||
maxTagCount: 3,
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
@@ -286,7 +286,7 @@
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { computed, onMounted, reactive, ref, watch } from 'vue';
|
||||
import { computed, onMounted, provide, reactive, ref, watch } from 'vue';
|
||||
import { defHttp } from '/@/utils/http/axios';
|
||||
import { getUserList, queryDepartTreeSync } from '/@/api/common/api';
|
||||
import { useMessage } from '/@/hooks/web/useMessage';
|
||||
@@ -304,9 +304,6 @@
|
||||
PARTY_COMMITTEE_DEPT_ID,
|
||||
PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID,
|
||||
CHARGE_LEADER_ROLE_ID,
|
||||
SDW_LEADER_ROLE_ID,
|
||||
SUOBAN_DEPT_ID,
|
||||
MEASURE_RES_LEADER_ROLE_ID,
|
||||
} from '/@/constant/supervision';
|
||||
const { initBpmFormData } = usePermission();
|
||||
|
||||
@@ -356,6 +353,8 @@
|
||||
const isEnd = ref(0);
|
||||
const isFinish = ref('0');
|
||||
const defaultCcUsers = ref<Array<{ username: string; realname: string }>>([]);
|
||||
// 办理内容组件通过 inject 读取默认抄送,需与 defaultCc 开关保持一致地提供
|
||||
provide('defaultCcUsers', defaultCcUsers);
|
||||
const lastGeneratedNumber = ref('');
|
||||
|
||||
const mainForm = reactive<Record<string, any>>({
|
||||
@@ -508,19 +507,13 @@
|
||||
|
||||
async function fetchDefaultCcUsers() {
|
||||
try {
|
||||
const [res1, res2] = await Promise.all([
|
||||
defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { departId: PARTY_COMMITTEE_DEPT_ID, roleId: SDW_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
}),
|
||||
defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { departId: SUOBAN_DEPT_ID, roleId: MEASURE_RES_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
}),
|
||||
]);
|
||||
const records1 = res1?.records || res1?.result?.records || [];
|
||||
const records2 = res2?.records || res2?.result?.records || [];
|
||||
defaultCcUsers.value = [...records1, ...records2];
|
||||
// 默认抄送按分管所领导角色跨部门查询,与台账分管所领导下拉逻辑一致
|
||||
const res = await defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { roleId: CHARGE_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
});
|
||||
const records = res?.records || res?.result?.records || [];
|
||||
defaultCcUsers.value = records.sort((a, b) => (a.sortno ?? Infinity) - (b.sortno ?? Infinity));
|
||||
} catch {
|
||||
defaultCcUsers.value = [];
|
||||
}
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
</a-space>
|
||||
</div>
|
||||
<a-row class="base-info-row" :gutter="[12, 4]">
|
||||
<a-col :xs="24" :md="12">
|
||||
<a-form-item label="意见主题" name="title">
|
||||
<a-col :span="24">
|
||||
<a-form-item label="意见主题" name="title" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-input v-model:value="mainForm.title" :disabled="mainDisabled" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
@@ -275,7 +275,7 @@
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { computed, onMounted, reactive, ref, watch } from 'vue';
|
||||
import { computed, onMounted, provide, reactive, ref, watch } from 'vue';
|
||||
import { defHttp } from '/@/utils/http/axios';
|
||||
import { getUserList, queryDepartTreeSync } from '/@/api/common/api';
|
||||
import { useMessage } from '/@/hooks/web/useMessage';
|
||||
@@ -295,9 +295,6 @@
|
||||
PARTY_COMMITTEE_DEPT_ID,
|
||||
PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID,
|
||||
CHARGE_LEADER_ROLE_ID,
|
||||
SDW_LEADER_ROLE_ID,
|
||||
SUOBAN_DEPT_ID,
|
||||
MEASURE_RES_LEADER_ROLE_ID,
|
||||
} from '/@/constant/supervision';
|
||||
|
||||
const { initBpmFormData } = usePermission();
|
||||
@@ -348,6 +345,8 @@
|
||||
const isEnd = ref(0);
|
||||
const isFinish = ref('0');
|
||||
const defaultCcUsers = ref<Array<{ username: string; realname: string }>>([]);
|
||||
// 办理内容组件通过 inject 读取默认抄送,需与 defaultCc 开关保持一致地提供
|
||||
provide('defaultCcUsers', defaultCcUsers);
|
||||
|
||||
const mainForm = reactive<Record<string, any>>({
|
||||
id: '',
|
||||
@@ -457,19 +456,13 @@
|
||||
|
||||
async function fetchDefaultCcUsers() {
|
||||
try {
|
||||
const [res1, res2] = await Promise.all([
|
||||
defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { departId: PARTY_COMMITTEE_DEPT_ID, roleId: SDW_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
}),
|
||||
defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { departId: SUOBAN_DEPT_ID, roleId: MEASURE_RES_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
}),
|
||||
]);
|
||||
const records1 = res1?.records || res1?.result?.records || [];
|
||||
const records2 = res2?.records || res2?.result?.records || [];
|
||||
defaultCcUsers.value = [...records1, ...records2];
|
||||
// 默认抄送按分管所领导角色跨部门查询,与台账分管所领导下拉逻辑一致
|
||||
const res = await defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { roleId: CHARGE_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
});
|
||||
const records = res?.records || res?.result?.records || [];
|
||||
defaultCcUsers.value = records.sort((a, b) => (a.sortno ?? Infinity) - (b.sortno ?? Infinity));
|
||||
} catch {
|
||||
defaultCcUsers.value = [];
|
||||
}
|
||||
|
||||
@@ -47,8 +47,16 @@
|
||||
<sz-dept-user-modal v-model:value="formData.proposer" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :md="12">
|
||||
<a-form-item label="意见主题" v-bind="validateInfos.title" id="BgTakepulseForm-title" name="title">
|
||||
<a-col :span="24">
|
||||
<a-form-item
|
||||
class="full-width-aligned-form-item"
|
||||
label="意见主题"
|
||||
v-bind="validateInfos.title"
|
||||
id="BgTakepulseForm-title"
|
||||
name="title"
|
||||
:labelCol="wideLabelCol"
|
||||
:wrapperCol="wideWrapperCol"
|
||||
>
|
||||
<a-input v-model:value="formData.title" placeholder="请输入意见主题" allow-clear></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
|
||||
@@ -285,7 +285,7 @@
|
||||
import BgXiSpeakBPMFeedbackModal from './BgXiSpeakBPMFeedbackModal.vue';
|
||||
import SUploadFile from '/@/components/semri/fileComponent/SUploadFile.vue';
|
||||
import DeptRoleUserSelectRadioGroup from '/@/components/semri/userComponent/DeptRoleUserSelectRadioGroup.vue';
|
||||
import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID } from '/@/constant/supervision';
|
||||
import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID, CHARGE_LEADER_ROLE_ID } from '/@/constant/supervision';
|
||||
import {
|
||||
buildApproveReason,
|
||||
buildDeptHandlerFeedbackReason,
|
||||
@@ -540,9 +540,10 @@ import {
|
||||
|
||||
async function fetchDefaultCcUsers() {
|
||||
try {
|
||||
// 默认抄送按分管所领导角色跨部门查询,与 bgpartymatter/bqtakepulse 保持一致
|
||||
const res = await defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { departId: PARTY_COMMITTEE_DEPT_ID, roleId: SDW_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
params: { roleId: CHARGE_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
});
|
||||
const records = res?.records || res?.result?.records || [];
|
||||
defaultCcUsers.value = records.sort((a, b) => (a.sortno ?? Infinity) - (b.sortno ?? Infinity));
|
||||
|
||||
@@ -182,7 +182,7 @@
|
||||
async function handleProcess(record) {
|
||||
let { formData, formUrl } = await getTaskNodeInfo(record);
|
||||
formData['PROCESS_TAB_TYPE'] = 'run';
|
||||
openHandleModal(true, { formData, formUrl, title: '流程办理' });
|
||||
openHandleModal(true, { formData, formUrl, title: record.bpmBizTitle || '流程办理' });
|
||||
}
|
||||
|
||||
async function getTaskNodeInfo(record) {
|
||||
@@ -276,7 +276,7 @@
|
||||
}
|
||||
let { formData, formUrl } = await getTaskInfoForHistory(record);
|
||||
formData['PROCESS_TAB_TYPE'] = 'history';
|
||||
openHandleModal(true, { formData, formUrl, title: '流程历史' });
|
||||
openHandleModal(true, { formData, formUrl, title: '流程历史', showSupplementApprovalOpinion: true });
|
||||
if (record?.ccId) {
|
||||
await reloadCc();
|
||||
await fetchCcTotal();
|
||||
|
||||
@@ -270,7 +270,7 @@
|
||||
import { saveBpmForm, setProcessVariable, specificProblemOptions } from '../DqInspectTask.api';
|
||||
import { list as progressList, deleteOne as progressDelete } from '../../inspectProgress/DqInspectProgress.api';
|
||||
import { usePermission } from '/@/hooks/web/usePermission';
|
||||
import { PARTY_COMMITTEE_DEPT_ID, SDW_LEADER_ROLE_ID } from '/@/constant/supervision';
|
||||
import { CHARGE_LEADER_ROLE_ID } from '/@/constant/supervision';
|
||||
import { useSelectNameResolver } from '/@/composables/useSelectNameResolver';
|
||||
import { useSubApproveUserResolver } from '/@/composables/useSubApproveUserResolver';
|
||||
import { buildDeptLeaderAssignReason, normalizeDeptNames } from '/@/composables/useDefaultApprovalReason';
|
||||
@@ -505,9 +505,10 @@
|
||||
|
||||
async function fetchDefaultCcUsers() {
|
||||
try {
|
||||
// 默认抄送按分管所领导角色跨部门查询,与 bgpartymatter/bqtakepulse/bgxispeak 保持一致
|
||||
const res = await defHttp.get({
|
||||
url: '/sys/user/queryUserRoleComponentData',
|
||||
params: { departId: PARTY_COMMITTEE_DEPT_ID, roleId: SDW_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
params: { roleId: CHARGE_LEADER_ROLE_ID, searchSecurityLevel: 5, pageNo: 1, pageSize: 999 },
|
||||
});
|
||||
const records = res?.records || res?.result?.records || [];
|
||||
defaultCcUsers.value = records.sort((a, b) => (a.sortno ?? Infinity) - (b.sortno ?? Infinity));
|
||||
|
||||
@@ -68,9 +68,10 @@
|
||||
<a-list-item style="line-height: 32px" v-show="checkedCc">
|
||||
<span>抄送给:</span>
|
||||
<SzDeptUserModal
|
||||
style="display: inline-block; width: 500px"
|
||||
style="display: inline-block; flex: 1; min-width: 500px; max-width: 100%"
|
||||
triggerMode="button"
|
||||
title="选择抄送人"
|
||||
:maxTagCount="10"
|
||||
v-model:value="ccUserIds"
|
||||
@confirm="handleSelectCcUser"
|
||||
/>
|
||||
|
||||
Reference in New Issue
Block a user