# 星枢StarHub **Repository Path**: superluckman/starhub ## Basic Information - **Project Name**: 星枢StarHub - **Description**: 让每个问题都有归处,让每项进度清晰可见 问题全流程追踪 进度甘特可视化 组织权限精细管控 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-09 - **Last Updated**: 2026-08-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 星枢 StarHub · 问题追踪与项目管理平台 > 让每个问题都有归处,让每项进度清晰可见。 基于 **Vue 3 + TypeScript + Ant Design Vue + AntV G2Plot** 的前端 + **Spring Boot 3.4 + MySQL** 后端的问题追踪与项目管理平台(前后端完整打通,数据持久化到 MySQL)。 ## ✨ 功能总览 - **项目/子项目审批工作流**:新建、编辑、删除项目与子项目均需提交审批;审批人自动解析(申请人直属部门负责人 → 逐级向上 → 兜底管理员);审批中心提供「待我审批 / 我发起的」双视图与变更数据对比,同意后变更生效、驳回不生效,全程站内通知联动 - **问题全流程管理**:反馈问题(可上传音视频/文档附件)、指派 / 认领 / 转派、状态流转(待处理 → 处理中 → 已解决 → 关闭 / 延期)、问题池(责任不清晰自动进入、可认领或指派)、问题详情时间线(进展描述、进度百分比、预计完成时间、下一步计划、流转记录、评论) - **站内通知联动**:问题发布 / 指派 / 转派后通知责任人及双方主管,审批提交/通过/驳回通知相关人员,未读红点、点击直达、全部已读 - **进度可视化**:项目 / 子项目甘特图(G2Plot 区间条 + 今日线)、统计看板(项目维度、子项目维度、解决 / 未解决 / 延期分布、延期 TOP、解决率)、工作台概览图表 - **组织与权限**:组织架构树管理、用户管理(分配角色 / 组织归属 / 启停)、角色权限矩阵(菜单 + 按钮级权限,实时生效)、主管可查看下级问题与进度 - **中英文国际化**:国旗下拉切换(🇨🇳 / 🇺🇸),全界面统一语言包管理,语言选择本地持久化 - **通用列表能力**:固定表头(sticky)、上下双分页控制器(每页条数可调)、动态列配置(勾选显隐 + 一键还原、持久化)、固定操作列 ## 🎨 设计 - 清爽浅色科技风:蓝紫渐变主色(`#4f7cff → #7c5cff`)、浅灰白底,无暗黑主题 - 品牌 LOGO:轨道环 + 星核 SVG(favicon / 登录页 / 侧边栏) - 登录页:科技感动态背景视频(ffmpeg 本地生成)+ Canvas 粒子兜底 + 测试账号一键登录 ## 🔑 测试账号(密码统一 `123456`) | 角色 | 账号 | 姓名 | 说明 | |---|---|---|---| | 超级管理员 | `qiuchengxiang` | 邱呈祥 | 拥有系统全部权限 | | 管理员 | `wanghui` | 王慧 | 系统管理 + 全量数据 | | 项目经理 | `litao` / `zhangmin` | 李涛 / 张敏 | 管理所属项目的全部问题 | | 上级主管 | `zhaohong` | 赵宏 | 查看研发中心下级问题与进度甘特 | | 主管 | `chenqiang` / `liufang` | 陈强 / 刘芳 | 查看本组下级问题与进度甘特 | | 普通成员 | `zhoujie` / `wuqian` / `sunhao` / `qianyu` / `zhengshuang` / `linjing` / `hewei` | 周杰 等 | 反馈 / 认领 / 处理自己的问题 | > 登录页右下角「测试账号」下拉可一键登录,无需手动输入。 ## 🚀 启动方式 ```bash ./deploy/start.sh # 一键启动:MySQL(如未运行)→ 后端 jar(8080)→ 前端 preview(4173) ./deploy/stop.sh # 停止前端与后端 ``` 访问: - 前端: http://127.0.0.1:4173 (开发模式 `npm run dev` 为 http://127.0.0.1:5173) - 后端健康检查: http://127.0.0.1:8080/api/health - 接口文档(Swagger UI): http://127.0.0.1:8080/swagger-ui.html 其他命令: ```bash npm test # 前端单元测试(vitest,23 用例) npm run typecheck # 前端类型检查(vue-tsc) npm run build # 前端生产构建 cd backend && mvn -Dmaven.repo.local=/tmp/m2repo test # 后端接口集成测试(17 用例) ``` ## 🗂️ 目录结构 ``` src/ ├── api/ # 领域模型、HTTP 客户端、数据服务层(对接真实后端 REST API) ├── components/ # 通用组件(ProTable、ChartBox、IssueTimeline、附件、LOGO、语言切换等) ├── directives/ # v-permission 按钮权限指令 ├── layouts/ # 主布局(侧边菜单 / 顶栏) ├── locales/ # i18n 语言包(zh-CN / en-US,含完整性测试) ├── router/ # 路由与登录守卫、动态权限路由 ├── stores/ # Pinia(认证 / 应用状态) ├── styles/ # 全局主题(浅色科技风) └── views/ # 业务页面(工作台/项目/问题/甘特/统计/组织/用户/角色/通知/个人中心) backend/ # Spring Boot 后端(controller/service/repository/entity 分层) deploy/ # 一键启动/停止脚本 docs/api/ # 接口手册 + OpenAPI 存档 ``` ## 📌 说明 - 数据持久化于 MySQL(`starhub` 库),后端启动时自动建表并幂等灌入演示种子数据(与前端 mock 时代同一套:10 部门/14 用户/6 角色/5 项目/12 子项目/约 49 问题/53 通知)。 - 登录为后端签发 token(内存存储,重启后端需重新登录);用户密码不在接口响应中返回。 - 附件沿用前端 dataURL 内嵌方案,存于问题 JSON 字段。 - 接口手册见 `docs/api/README.md`;在线调试见后端 `/swagger-ui.html`。