!92 feat(bgpartymatter,bqtakepulse): 新增默认抄送人功能

Merge pull request !92 from wsm/feature/add_default_cc
This commit is contained in:
wsm
2026-07-13 06:44:32 +00:00
committed by Gitee
2 changed files with 70 additions and 0 deletions
@@ -237,6 +237,7 @@
:claim="claim" :claim="claim"
:beforeHandle="saveMainFormBeforeProcessHandle" :beforeHandle="saveMainFormBeforeProcessHandle"
:defaultReason="defaultHandleReason" :defaultReason="defaultHandleReason"
:defaultCc="defaultCcUsers"
@success="handleProcessSuccess" @success="handleProcessSuccess"
@claimSuccess="handleClaimSuccess" @claimSuccess="handleClaimSuccess"
/> />
@@ -261,8 +262,10 @@
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 DeptRoleUserSelectDropDown from '/@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue';
import { import {
PARTY_COMMITTEE_DEPT_ID,
PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID, PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID,
CHARGE_LEADER_ROLE_ID, CHARGE_LEADER_ROLE_ID,
SDW_LEADER_ROLE_ID,
} from '/@/constant/supervision'; } from '/@/constant/supervision';
const { isDisabledAuth, hasPermission, initBpmFormData} = usePermission(); const { isDisabledAuth, hasPermission, initBpmFormData} = usePermission();
@@ -312,6 +315,7 @@
const userResolveVersion = ref(0); const userResolveVersion = ref(0);
const isEnd = ref(0); const isEnd = ref(0);
const isFinish = ref('0'); const isFinish = ref('0');
const defaultCcUsers = ref<Array<{ username: string; realname: string }>>([]);
const lastGeneratedNumber = ref(''); const lastGeneratedNumber = ref('');
const mainForm = reactive<Record<string, any>>({ const mainForm = reactive<Record<string, any>>({
@@ -451,6 +455,37 @@
} }
); );
async function fetchDefaultCcUsers() {
try {
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,
},
});
const records = res?.records || res?.result?.records || [];
defaultCcUsers.value = records;
} catch {
defaultCcUsers.value = [];
}
}
watch(
() => processInfo.value.taskDefKey,
(key) => {
if (key === 'Task_137y5vq') {
fetchDefaultCcUsers();
} else {
defaultCcUsers.value = [];
}
},
{ immediate: true }
);
async function initFormData() { async function initFormData() {
const dataId = props.formData?.dataId; const dataId = props.formData?.dataId;
if (!dataId) { if (!dataId) {
@@ -262,6 +262,7 @@
:claim="claim" :claim="claim"
:beforeHandle="saveMainFormBeforeProcessHandle" :beforeHandle="saveMainFormBeforeProcessHandle"
:defaultReason="defaultHandleReason" :defaultReason="defaultHandleReason"
:defaultCc="defaultCcUsers"
@success="handleProcessSuccess" @success="handleProcessSuccess"
@claimSuccess="handleClaimSuccess" @claimSuccess="handleClaimSuccess"
/> />
@@ -288,8 +289,10 @@
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 DeptRoleUserSelectDropDown from '/@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue';
import { import {
PARTY_COMMITTEE_DEPT_ID,
PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID, PARTY_COMMITTEE_DEPT_ID as CHARGE_LEADER_DEPT_ID,
CHARGE_LEADER_ROLE_ID, CHARGE_LEADER_ROLE_ID,
SDW_LEADER_ROLE_ID,
} from '/@/constant/supervision'; } from '/@/constant/supervision';
const { initBpmFormData } = usePermission(); const { initBpmFormData } = usePermission();
@@ -337,6 +340,7 @@
const userResolveVersion = ref(0); const userResolveVersion = ref(0);
const isEnd = ref(0); const isEnd = ref(0);
const isFinish = ref('0'); const isFinish = ref('0');
const defaultCcUsers = ref<Array<{ username: string; realname: string }>>([]);
const mainForm = reactive<Record<string, any>>({ const mainForm = reactive<Record<string, any>>({
id: '', id: '',
@@ -442,6 +446,37 @@
watch([() => props.formData?.dataId, () => processInfo.value.processInstanceId], () => initFormData()); watch([() => props.formData?.dataId, () => processInfo.value.processInstanceId], () => initFormData());
async function fetchDefaultCcUsers() {
try {
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,
},
});
const records = res?.records || res?.result?.records || [];
defaultCcUsers.value = records;
} catch {
defaultCcUsers.value = [];
}
}
watch(
() => processInfo.value.taskDefKey,
(key) => {
if (key === 'Task_137y5vq') {
fetchDefaultCcUsers();
} else {
defaultCcUsers.value = [];
}
},
{ immediate: true }
);
watch( watch(
() => props.formData?.vars?.isEnd, () => props.formData?.vars?.isEnd,
(value) => { (value) => {