yxk-20260519-YHJY004-党委会增加协办部门字段

发起流程的时候,合并主办部门和协办部门字段,去重后合并为被督办部门供用户确认
This commit is contained in:
ye1023
2026-05-19 10:48:53 +08:00
parent 29551246f1
commit 1cd3ab9918
4 changed files with 50 additions and 10 deletions
@@ -50,10 +50,15 @@ export const columns: BasicColumn[] = [
dataIndex: 'matterCode' dataIndex: 'matterCode'
}, },
{ {
title: '责任部门', title: '主办部门',
align:"center", align:"center",
dataIndex: 'responDeptid_dictText' dataIndex: 'responDeptid_dictText'
}, },
{
title: '协办部门',
align:"center",
dataIndex: 'assistDeptid_dictText'
},
{ {
title: '实际执行情况', title: '实际执行情况',
align:"center", align:"center",
@@ -139,7 +139,7 @@
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, bgPartymatterFeedbackList, saveOrUpdate } from './BgPartymatter.api'; import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, bgPartymatterFeedbackList, saveOrUpdate } from './BgPartymatter.api';
const FLOW_CODE = 'dev_task_task_001'; const FLOW_CODE = 'dev_task_task_001';
const FLOW_NAME = '党委会决议事项'; const FLOW_NAME = '党委会决议事项督办';
const BUSINESS_TABLE_NAME = 'bg_partymatter'; const BUSINESS_TABLE_NAME = 'bg_partymatter';
const FORM_URL = 'bg/bgpartymatter/components/BgPartymatterBPMForm'; const FORM_URL = 'bg/bgpartymatter/components/BgPartymatterBPMForm';
@@ -449,12 +449,34 @@
} }
function getResponsibleDeptOptions(record): DeptOption[] { function getResponsibleDeptOptions(record): DeptOption[] {
const deptIds = splitDeptValue(record?.responDeptid); const optionMap = new Map<string, DeptOption>();
const deptNames = splitDeptValue(record?.responDeptid_dictText || record?.responDeptname); [
return deptIds.map((deptId, index) => ({ {
value: deptId, ids: splitDeptValue(record?.responDeptid),
label: deptNames[index] || deptId, names: splitDeptValue(record?.responDeptid_dictText || record?.responDeptname),
})); },
{
ids: splitDeptValue(record?.assistDeptid),
names: splitDeptValue(record?.assistDeptid_dictText || record?.assistDeptname),
},
].forEach(({ ids, names }) => {
ids.forEach((deptId, index) => {
if (optionMap.has(deptId)) {
return;
}
optionMap.set(deptId, {
value: deptId,
label: names[index] || deptId,
});
});
});
return Array.from(optionMap.values());
}
function getResponsibleDeptIds(record) {
return getResponsibleDeptOptions(record)
.map((item) => item.value)
.join(',');
} }
function getNextSuperviseCount(value) { function getNextSuperviseCount(value) {
@@ -482,6 +504,7 @@
}; };
const nextSuperviseCount = getNextSuperviseCount(record.superviseCount); const nextSuperviseCount = getNextSuperviseCount(record.superviseCount);
const selectedDeadline = options.deadline || record.deadline; const selectedDeadline = options.deadline || record.deadline;
const defaultDeptIds = getResponsibleDeptIds(record);
const flowJsonData = { const flowJsonData = {
...record, ...record,
isNeedAppro: options.isNeedAppro ?? record.isNeedAppro ?? '', isNeedAppro: options.isNeedAppro ?? record.isNeedAppro ?? '',
@@ -508,7 +531,7 @@
title: record.title, title: record.title,
content: record.content, content: record.content,
urgencyLevel: record.urgencyLevel, urgencyLevel: record.urgencyLevel,
deptId: options.deptId || record.responDeptid, deptId: options.deptId || defaultDeptIds,
deptLeaderId: record.responDeptid, deptLeaderId: record.responDeptid,
requireFinishDate: formatDate(selectedDeadline, 'YYYY-MM-DD'), requireFinishDate: formatDate(selectedDeadline, 'YYYY-MM-DD'),
deadline: formatDeadlineDateTime(selectedDeadline), deadline: formatDeadlineDateTime(selectedDeadline),
@@ -59,6 +59,11 @@
<j-select-dept v-model:value="mainForm.responDeptid" :disabled="mainDisabled" :multiple="true" checkStrictly allow-clear /> <j-select-dept v-model:value="mainForm.responDeptid" :disabled="mainDisabled" :multiple="true" checkStrictly allow-clear />
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12">
<a-form-item label="协办部门" name="assistDeptid">
<j-select-dept v-model:value="mainForm.assistDeptid" :disabled="mainDisabled" :multiple="true" checkStrictly allow-clear />
</a-form-item>
</a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="要求完成日期" name="deadline"> <a-form-item label="要求完成日期" name="deadline">
<a-date-picker v-model:value="mainForm.deadline" value-format="YYYY-MM-DD" :disabled="mainDisabled" style="width: 100%" allow-clear /> <a-date-picker v-model:value="mainForm.deadline" value-format="YYYY-MM-DD" :disabled="mainDisabled" style="width: 100%" allow-clear />
@@ -224,6 +229,7 @@
content: '', content: '',
matterCode: '', matterCode: '',
responDeptid: '', responDeptid: '',
assistDeptid: '',
actualExect: '', actualExect: '',
bpmStatus: '', bpmStatus: '',
superviseCount: '', superviseCount: '',
@@ -40,10 +40,15 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="责任部门" v-bind="validateInfos.responDeptid" id="BgPartymatterForm-responDeptid" name="responDeptid"> <a-form-item label="主办部门" v-bind="validateInfos.responDeptid" id="BgPartymatterForm-responDeptid" name="responDeptid">
<j-select-dept v-model:value="formData.responDeptid" :multiple="true" checkStrictly allow-clear /> <j-select-dept v-model:value="formData.responDeptid" :multiple="true" checkStrictly allow-clear />
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12">
<a-form-item label="协办部门" v-bind="validateInfos.assistDeptid" id="BgPartymatterForm-assistDeptid" name="assistDeptid">
<j-select-dept v-model:value="formData.assistDeptid" :multiple="true" checkStrictly allow-clear />
</a-form-item>
</a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="实际执行情况" v-bind="validateInfos.actualExect" id="BgPartymatterForm-actualExect" name="actualExect"> <a-form-item label="实际执行情况" v-bind="validateInfos.actualExect" id="BgPartymatterForm-actualExect" name="actualExect">
<a-input v-model:value="formData.actualExect" placeholder="请输入实际执行情况" allow-clear ></a-input> <a-input v-model:value="formData.actualExect" placeholder="请输入实际执行情况" allow-clear ></a-input>
@@ -149,6 +154,7 @@
content: '', content: '',
matterCode: '', matterCode: '',
responDeptid: '', responDeptid: '',
assistDeptid: '',
actualExect: '', actualExect: '',
bpmStatus: '1', bpmStatus: '1',
superviseCount: '0', superviseCount: '0',