目录

基层公务员政务服务效能协同管理平台

本项目是一个覆盖“群众办事 + 公务员审批 + 跨部门协同 + 数据共享 + 管理评估”的全流程政务服务平台,目标是让流程可配置、过程可追踪、结果可评估。

1. 技术栈

后端

  • Java 17
  • Spring Boot 2.7.18
  • MyBatis-Plus 3.5.5
  • Spring Security + JWT
  • MySQL 8.x
  • Redis
  • Flowable 6.8.0
  • Spring WebSocket
  • PDFBox 2.0.30(PDF 导出)

前端

  • Vue 3
  • Vite 5
  • Element Plus
  • Pinia
  • Vue Router
  • Axios
  • ECharts
  • bpmn-js
  • SockJS + STOMP

2. 已实现模块总览

模块 说明 关键能力
认证与权限 统一登录与角色权限 JWT、路由守卫、菜单权限、RBAC
群众端在线办事大厅 群众提交业务申请 业务套餐、动态表单、材料上传、申请记录
进度实时追踪 群众查看申请进度 当前节点、历史节点、WebSocket 实时推送
公务员端任务中心 审批任务处理 待办/已办、详情、通过/驳回/补正
跨部门协同 任务协办闭环 协办发起、反馈、站内信、实时通知
数据共享查询 外部数据查询与审计 户籍/社保/医保、权限校验、脱敏、日志入库
管理端流程配置 BPMN 流程管理 bpmn-js 设计、XML 保存部署、节点表单绑定
管理端数据看板 多维统计展示 7天趋势、满意度、办理指标、Redis 缓存
管理端效能评估 绩效生成与导出 月/季评估、综合得分、排名、PDF 导出

3. 目录结构

.
├─ backend
│  ├─ pom.xml
│  └─ src/main
│     ├─ java/com/gov/platform
│     │  ├─ config
│     │  ├─ common
│     │  ├─ security
│     │  └─ modules
│     │     ├─ auth
│     │     ├─ user / department / rbac
│     │     ├─ hall
│     │     ├─ taskcenter
│     │     ├─ collaboration
│     │     ├─ datashare
│     │     ├─ notice
│     │     ├─ workflow
│     │     ├─ dashboard
│     │     └─ performance
│     └─ resources
│        ├─ application.yml
│        ├─ application-dev.yml
│        ├─ processes/
│        └─ sql/
│           ├─ init-auth.sql
│           └─ mock-data.sql
└─ frontend
   ├─ package.json
   ├─ .env.development
   ├─ .env.development.example
   ├─ .env.production.example
   └─ src
      ├─ api
      ├─ layouts
      ├─ router
      ├─ store
      ├─ utils
      └─ views

4. 本地启动顺序(按此顺序可直接跑通)

第 1 步:准备依赖

  1. 启动 MySQL 8.x,创建数据库:gov_platform
  2. 启动 Redis(默认 127.0.0.1:6379
  3. 安装 JDK 17
  4. 安装 Maven 3.8+
  5. 安装 Node.js 20+

第 2 步:启动后端

cd backend
mvn spring-boot:run

说明:

  • 开发环境会自动执行:
    • classpath:sql/init-auth.sql
    • classpath:sql/mock-data.sql
  • 自动初始化表结构、账号权限、示例业务与联调数据。

第 3 步:启动前端

cd frontend
npm install
npm run dev

默认访问:

  • 前端:http://127.0.0.1:5173
  • 后端:http://127.0.0.1:8080

健康检查:

  • GET http://127.0.0.1:8080/api/health/ping

5. 默认账号密码

角色 用户名 密码 默认首页
管理员 admin Admin@123456 /dashboard/admin
负责人 leader 123456 /dashboard/leader
办事员 staff 123456 /dashboard/staff
群众 citizen 123456 /hall/businesses

6. 联调测试数据说明

新增脚本:backend/src/main/resources/sql/mock-data.sql

覆盖数据:

  • t_business_apply:近 7 天申请记录(多状态)
  • t_collaboration:协同状态流转样例
  • t_site_message:站内信样例
  • t_process_node_form:流程节点与表单绑定样例
  • t_performance:效能评估样例

用途:

  • 数据看板图表直接有数据
  • 群众端“我的申请/详情/进度”可直接查看
  • 协同页面与站内信可直接演示
  • 效能评估列表可直接展示

7. API 接口清单(完整)

7.1 认证与系统

方法 路径 说明 鉴权
POST /api/auth/login 登录
GET /api/auth/me 当前登录用户信息
GET /api/system/me 当前认证信息(调试)
GET /api/health/ping 健康检查

7.2 管理后台(用户/部门/角色)

方法 路径 说明
GET /api/admin/users 用户分页
GET /api/admin/users/{id} 用户详情
POST /api/admin/users 新增用户
PUT /api/admin/users/{id} 更新用户
PUT /api/admin/users/{id}/password 重置密码
DELETE /api/admin/users/{id} 删除用户
GET /api/admin/departments 部门列表
POST /api/admin/departments 新增部门
PUT /api/admin/departments/{id} 更新部门
DELETE /api/admin/departments/{id} 删除部门
GET /api/admin/role-permissions/roles 角色代码列表
GET /api/admin/role-permissions/{roleCode} 角色权限列表
PUT /api/admin/role-permissions/{roleCode} 保存角色权限

7.3 群众端在线办事大厅

方法 路径 说明
GET /api/hall/businesses 业务套餐列表
GET /api/hall/businesses/{businessId}/form-config 业务表单配置
POST /api/hall/upload 材料上传(图片/PDF)
POST /api/hall/applications 提交申请(写库 + 启动流程)
GET /api/hall/applications/my 我的申请分页
GET /api/hall/applications/{applyId} 申请详情
GET /api/hall/applications/{applyId}/progress 申请进度
POST /api/hall/applications/{applyId}/demo/advance 演示推进流程(管理员)

7.4 公务员端任务中心

方法 路径 说明
GET /api/gov/tasks/todo 待办任务分页
GET /api/gov/tasks/done 已办任务分页
GET /api/gov/tasks/{taskId} 任务详情
POST /api/gov/tasks/{taskId}/approve 任务审批(PASS/REJECT/RECTIFY)
POST /api/gov/tasks/demo/seed 生成审批流转示例数据

7.5 跨部门协同 + 站内信

方法 路径 说明
GET /api/gov/collaborations/tasks 协同任务分页
GET /api/gov/collaborations/{id} 协同详情
POST /api/gov/collaborations/initiate 发起协办
POST /api/gov/collaborations/{id}/feedback 协办反馈
GET /api/gov/collaborations/collaborators 协办人列表
POST /api/gov/collaborations/upload 协办材料上传
GET /api/system/messages 站内信分页
PUT /api/system/messages/{id}/read 站内信标记已读

7.6 数据共享查询

方法 路径 说明
POST /api/gov/data-share/query 查询户籍/社保/医保(含权限校验、脱敏、审计日志)

7.7 管理端流程配置

方法 路径 说明
POST /api/admin/workflow/deploy BPMN XML 部署并保存节点表单绑定
GET /api/admin/workflow/definitions 流程定义列表
GET /api/admin/workflow/definitions/{processDefinitionId}/xml 获取流程 XML
GET /api/admin/workflow/node-forms 查询流程节点绑定(processKey
GET /api/admin/workflow/form-config-options 表单配置选项

7.8 管理端数据看板

方法 路径 说明
GET /api/admin/dashboard/overview 看板汇总(趋势 + 指标,Redis 缓存)

7.9 管理端效能评估

方法 路径 说明
POST /api/admin/performance/generate 生成评估报告(部门/个人、月/季)
GET /api/admin/performance/list 查询评估报告
GET /api/admin/performance/export 导出 PDF

8. WebSocket 主题

  • 端点:/ws
  • 群众进度推送:/topic/hall/progress/{applyId}
  • 协同/站内信推送:/topic/system/user/{userId}

9. 前后端字段命名一致性(已核对)

已核对并保持一致的高频字段:

  • 分页:currentsizetotalrecords
  • 申请:applyIdapplyNobusinessIdbusinessNamestatus
  • 协同:statusstatusNamecollaboratorUserIdreferenceMaterials
  • 看板:businessTrendcollaborationTrendsatisfactionDistribution
  • 评估:periodTypeperiodValuescopeTypetotalScorerankNo

10. 截图建议页面(用于项目汇报/验收)

页面 路由 截图建议
登录页 /login 默认账号输入 + 登录按钮
群众办事大厅 /hall/businesses 业务套餐卡片列表
在线申请 /hall/apply/1001 动态表单 + 材料上传
我的申请 /hall/my-applications 分页状态列表
进度追踪 /hall/applications/{id}/progress 时间轴 + 当前节点
任务中心 /gov/tasks 待办/已办 Tab 切换
任务办理 /gov/tasks/{taskId}/handle 群众表单 + 审批操作
跨部门协同 /gov/collaborations 协同列表 + 站内信
数据共享查询 /gov/data-share 查询条件 + 脱敏结果
流程配置 /workflow/designer bpmn-js 设计器 + 节点表单绑定
数据看板 /monitor/service-map 折线图 + 饼图 + 指标卡片
效能评估 /monitor/performance 评分生成 + 排名 + PDF 导出

11. 关键配置文件

  • 后端开发配置:backend/src/main/resources/application-dev.yml
  • 后端生产配置:backend/src/main/resources/application-prod.yml
  • SQL 初始化:backend/src/main/resources/sql/init-auth.sql
  • 联调数据:backend/src/main/resources/sql/mock-data.sql
  • 生产环境变量模板:backend/.env.production.example
  • 前端开发环境:frontend/.env.development
  • 前端示例环境:frontend/.env.development.example

12. 当前可运行性结论

  • 前端:npm run build 已通过(可运行)
  • 后端:代码结构与接口完整,需本地具备 JDK 17 + Maven 3.8+ 后执行 mvn spring-boot:run

13. 生产部署基线(2026-04-08 更新)

13.1 配置基线

  • 默认启动配置已调整为:prod(可通过 SPRING_PROFILES_ACTIVE 覆盖)
  • 新增生产配置文件:backend/src/main/resources/application-prod.yml
  • 生产环境已关闭自动 SQL 初始化:spring.sql.init.mode=never
  • CORS 与 WebSocket 来源改为白名单配置,禁止 * 通配

13.2 必填环境变量

变量名 说明 示例
DB_URL MySQL 连接串 jdbc:mysql://10.0.0.10:3306/gov_platform?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false
DB_USERNAME MySQL 用户名 gov_app
DB_PASSWORD MySQL 密码 StrongPassword
REDIS_HOST Redis 地址 10.0.0.11
APP_JWT_SECRET JWT 密钥(至少 32 字符) replace_with_strong_random_secret
APP_CORS_ALLOWED_ORIGIN_PATTERNS 允许的前端域名(逗号分隔) https://gov.example.com,https://ops.example.com

推荐补充:

  • APP_WS_ALLOWED_ORIGIN_PATTERNS(默认继承 APP_CORS_ALLOWED_ORIGIN_PATTERNS
  • APP_UPLOAD_DIRECTORY(默认 /data/gov-platform/uploads
  • LOG_LEVEL_ROOTLOG_LEVEL_APP

13.3 启动方式(生产)

Linux:

export SPRING_PROFILES_ACTIVE=prod
java -jar backend/target/gov-collaboration-backend-0.0.1-SNAPSHOT.jar

Windows CMD:

set SPRING_PROFILES_ACTIVE=prod
java -jar backend\target\gov-collaboration-backend-0.0.1-SNAPSHOT.jar

13.4 发布前验收建议

# 后端
cd backend
mvn clean package -DskipTests

# 前端
cd ../frontend
npm ci
npm run build
npm audit --omit=dev

13.5 WebSocket 安全说明

  • STOMP CONNECT 必须携带 Authorization(Bearer Token)
  • 订阅目的地已做服务端授权校验:
    • /topic/system/user/{userId}:仅本人/管理员
    • /topic/hall/user/{userId}:仅本人/管理员
    • /topic/hall/progress/{applyId}:仅申请人/管理员
    • /topic/system/message/{messageId}:仅消息接收人/管理员 基层公务员政务服务效能协同管理平台项目提交说明
关于

基于 Spring Boot、Vue 3 和 Flowable 的政务服务效能协同管理平台,覆盖群众办事、公务员审批、跨部门协同、数据共享、流程配置、实时进度追踪和效能评估等场景

1.9 MB
邀请码