feat: 项目导出 + 会议跳转 + 机构软删除 + 供应商账号同步
- 项目/项目评价/报名专家 3 类导出, 勾选透传 projectIds - 项目列表 总场次/已执行/未执行 三列点击跳对应会议列表 (executor 复用后端 role 隔离) - 机构软删除 + 级联软删机构下账号 - 供应商开放接口账号同步 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -110,7 +110,9 @@ const snap = reactive({
|
||||
totalSessions: '',
|
||||
sponsorOrgName: '',
|
||||
createUserName: '',
|
||||
createTime: ''
|
||||
createTime: '',
|
||||
projectStartTime: '',
|
||||
projectEndTime: ''
|
||||
})
|
||||
|
||||
// 期数上限 = 总场次/总期数 (executor 快照 totalSessions 已换成分配给本机构的场次口径)
|
||||
@@ -151,6 +153,8 @@ async function loadProjectSnapshot(pid) {
|
||||
snap.sponsorOrgName = d.sponsorOrgName || ''
|
||||
snap.createUserName = d.createUserName || ''
|
||||
snap.createTime = d.createTime || ''
|
||||
snap.projectStartTime = d.startTime || ''
|
||||
snap.projectEndTime = d.endTime || ''
|
||||
// executor: "总场次" = 分配给本执行方(公司)的场次, 不是项目总场次
|
||||
if (roleSegment.value === 'executor') {
|
||||
try {
|
||||
@@ -196,6 +200,17 @@ async function onSave() {
|
||||
ElMessage.error('会议开始时间不能晚于会议结束时间')
|
||||
return
|
||||
}
|
||||
// 会议时间必须在项目起止时间区间内 (闭区间; 项目未设起止则跳过对应边界)
|
||||
if (snap.projectStartTime && form.startTime
|
||||
&& new Date(form.startTime.replace(' ', 'T')) < new Date(snap.projectStartTime.replace(' ', 'T'))) {
|
||||
ElMessage.error('会议开始时间不能早于项目开始时间')
|
||||
return
|
||||
}
|
||||
if (snap.projectEndTime && form.endTime
|
||||
&& new Date(form.endTime.replace(' ', 'T')) > new Date(snap.projectEndTime.replace(' ', 'T'))) {
|
||||
ElMessage.error('会议结束时间不能晚于项目结束时间')
|
||||
return
|
||||
}
|
||||
// 期数不得高于总场次/总期数 (executor 快照 totalSessions 已换成分配给本机构的场次口径)
|
||||
const pn = Number(form.periodNo)
|
||||
const total = Number(snap.totalSessions)
|
||||
|
||||
Reference in New Issue
Block a user