feat: OA(ecology)项目拉取 + 会议邀请函PDF/微信分享 + 参会人/执行意向增强

OA ecology:
- BizEcologyController + EcologyProjectService: 项目编号搜索/详情回填, 负责人静默建档
- ComplianceLoginService: 合规/负责人登录校验 + 视图 role 匹配
- application-prod/test.yml: ecology 只读库数据源

会议邀请函/分享:
- InvitationPdfService + WxShareService: 邀请函 PDF 生成 + 微信分享
- PdfViewer.vue (pdfjs-dist) + MeetingInvitation.vue: PDF 预览 + 邀请函页

参会人/执行意向:
- BizMeetingAttendee*: 参会人模块增强
- BizExecutionIntent*: 执行意向增强

签到/劳务/导入:
- BizSignServiceImpl + SignFill.vue: 签到劳务
- FieldMismatch/ImportMismatch: 导入校验 VO

公示/会议详情:
- PublicityDetail.vue / MeetingDetail.vue 等前端增强

配置:
- test 短信 mock + 供应商/招标接口切生产域名
This commit is contained in:
郭庆泰
2026-09-03 20:12:15 +08:00
parent beb9799a06
commit 56615f9806
55 changed files with 3296 additions and 516 deletions
@@ -365,9 +365,10 @@ function goBack() {
if (role === 'sponsor') router.push('/sponsor/my-projects')
else if (role === 'executor') router.push('/executor/projects')
else if (role === 'admin') router.push('/admin/projects')
else if (role === 'leader') router.push('/leader/projects')
else router.push('/manager/projects')
}
function goEdit() { router.push(`/manager/projects/edit/${projectId.value}`) }
function goEdit() { router.push(`/${roleType.value}/projects/edit/${projectId.value}`) }
// ===================== 预览 =====================
function openPreview(url, title) {