Files
xiaocai/DEV.md
wangxiaogang 21f4d81959 feat: 用户信息完善 + 一起记功能
- users 表添加 nickname、avatar_url 字段
- 用户信息 API(GET/PUT /me)+ 头像上传(multer)
- 头像通过 API 路由获取(公开,不经过 auth)
- 登录接口返回用户昵称和头像
- 用户信息 Store + 个人资料编辑页面
- 我的页面和首页显示真实用户信息
- 群组表(groups、group_members)+ transactions 添加 group_id
- 群组 API(创建/加入/退出/解散)
- 交易和统计 API 支持 group_id 视图切换
- 群组客户端 Store + 身份切换
- 群组管理页面
- App 初始化群组 Store
- UPLOAD_DIR 配置化
- Node.js 备份替代 mysqldump
- 统一前端 BASE_URL(config.ts)
- uploads 加入 .gitignore
- 修复 trust proxy 警告
2026-06-03 17:50:32 +08:00

51 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 通用原则
- 优先保持现有代码风格与架构模式,不要无理由重构。
- 任何功能或修复变更,需确保现有测试通过,必要时补充新测试。
- 所有输出(代码、注释、文档、提交信息)默认使用**简体中文**,专有名词或技术术语可保留英文。
## 编码规范
### 文件与编码
- 所有文件必须保持 UTF-8编码。
- 修改包含中文的文件时,不得造成中文注释、中文文案、错误提示乱码。
- 如果发现文件已有乱码,不要擅自猜测业务含义,应标记出来让人工确认。
## 测试要求
- 新增功能必须编写对应的单元测试或集成测试。
- 修复 Bug 时,先添加能复现问题的测试用例,再修复。
- 测试覆盖率不应低于当前项目基线(若未设置,尽量保持 ≥80%)。
- 测试命名清晰,能描述场景,如 should return error when user not found。
## 注释与文档
### 注释要求
- **保留**已有的重要注释如文件头说明、JSDoc、业务解释
- 新增复杂逻辑、公共 API、关键算法时必须补充**简洁的中文注释**,解释“为什么这么做”而非“做了什么”。
- 不要为了注释而注释,避免冗余的废话(例如 `i++; // 自增 i`)。
- 多行 JSDoc/文档注释保持可读性,**不要压缩成单行**。
## 小程序适配要点
- 页面顶部右侧有元素时,使用 `capsuleRight` 避开胶囊按钮
- 新页面需要加载数据时,在 `onMounted` 中先 `await waitForReady()` 再请求
- API 地址统一在 `config.ts` 中配置,不要在各文件中硬编码
- 头像等用户文件 URL 只存文件名,前端拼接 `API_BASE + 路径 + 文件名`
## Never 规则
- Never 修改 dist/ 目录
- Never 使用内联样式,除非需要动态计算(胶囊 padding 等除外)
- Never 在渲染路径中执行耗时操作
- Never 在列表渲染中省略 key 属性
- Never 修改 lock 文件
- Never 使用 git stash
- Never 切换分支
- Never 过度封装,保持代码简洁明了
## Requirements
- 代码提交前必须检查代码,包括但不限于代码格式、注释、测试覆盖率、文档更新等。
- 影响到历史数据吧,必须要准备好数据迁移方案。