软件项目资源登记平台

C a0943f6ca3 feat(resource): 新增「购买时长」字段(按量/月/季度/半年/年) 2 hónapja
backend a0943f6ca3 feat(resource): 新增「购买时长」字段(按量/月/季度/半年/年) 2 hónapja
docs c8bfac8376 init: 软件项目资源登记平台初始代码提交 2 hónapja
frontend a0943f6ca3 feat(resource): 新增「购买时长」字段(按量/月/季度/半年/年) 2 hónapja
sql a0943f6ca3 feat(resource): 新增「购买时长」字段(按量/月/季度/半年/年) 2 hónapja
.gitignore c8bfac8376 init: 软件项目资源登记平台初始代码提交 2 hónapja
README.md c8bfac8376 init: 软件项目资源登记平台初始代码提交 2 hónapja
package-lock.json c8bfac8376 init: 软件项目资源登记平台初始代码提交 2 hónapja
start-backend.bat 54a6ebf1a5 feat(frontend): UI全面升级 — 科技蓝主题 + 暗色模式 + ECharts可视化 + CSV导出 2 hónapja

README.md

软件项目资源登记平台

面向团队内部的云资源 / 服务套餐台账系统:登记每个项目用了哪些资源、什么时候到期、谁负责,到期前自动发邮件提醒。

技术栈

  • 后端:Java 17 + Spring Boot 3 + MyBatis-Plus + MySQL + Spring Security(JWT)
  • 前端:Vue 3 + Vite + Element Plus + Pinia
  • 数据库:MySQL 8.0+

目录结构

.
├── sql/schema.sql      数据库表结构 + 初始数据
├── backend/            Spring Boot后端项目
└── frontend/           Vue前端项目

快速开始

  1. 用MySQL执行 sql/schema.sql
  2. 启动后端:进入 backend/,改好 application.yml 里的数据库和邮箱配置,mvn spring-boot:run
  3. 启动前端:进入 frontend/,npm install && npm run dev
  4. 浏览器打开前端地址,默认账号 admin / admin123

详细说明见 backend/README.md 和 frontend/README.md。

已实现的核心功能

  • 登录鉴权(JWT)、密码修改
  • 项目管理(增删改查)
  • 资源管理(增删改查),支持一个资源关联多个项目
  • 资源类型/服务商字典,可自行扩展新分类
  • 工作台:概览统计 + 到期关注列表 + 类型分布
  • 到期状态自动刷新 + 邮件提醒(分"提前30天/提前7天/已过期"三阶段,各发一次)
  • 费用统计(按项目/按资源类型)
  • 用户管理(管理员/普通用户两级权限)
  • 操作日志
  • 资源列表Excel导出

已知待打磨的点(建议后续迭代)

  • 权限目前只有"管理员/普通用户"两级,普通用户能看到全部数据,还没做"只能管自己负责的资源"这种细粒度控制
  • 前端的项目/资源下拉选择目前是一次性全量加载,数据量很大时需要改成远程搜索
  • 邮箱密码等敏感配置建议改成读环境变量,不要直接写在 application.yml 里提交到代码仓库
  • 还没写自动化测试,建议后续按核心接口补充