项目开发约定
以下是用户明确、反复要求的代码标准,后续开发必须持续遵守。
- 优先保证代码简洁、可读、可维护。使用有意义的变量名;不把多条语句挤在一行。PHP 按现有格式化配置整理后交付。
- 控制器只处理 HTTP 输入和输出、调用服务,不写业务规则和数据库查询。
- 服务层组织业务、权限、状态、事务;所有数据读写使用 Eloquent 模型及模型关联。不得以 Db::table、裸 SQL、PDO 绕过模型(数据库迁移的 DDL 除外)。
- 公共逻辑集中复用,尤其是鉴权、校验、分页、响应、事务、幂等、审计和公共返回字段。
- 在实际变化点使用设计模式:外部登录采用适配器接口;司机动作采用命令接口与简单工厂;共用状态前置条件采用模板方法。不要以模式名称为由引入无业务作用的 Repository 或多层转发。
- 新动作扩展独立处理器,避免把控制器或服务不断堆成大型条件分支。
- Webman 进程常驻,不在可复用控制器的属性或静态变量中保存本次请求的用户、身份或业务资源。
- 用户于2026-09-19明确开始建设 uni-app 小程序前端,独立目录为
water-mini(Vue 3 + TypeScript,微信小程序及 H5 预览)。UI 来源为 D:\水后台UI\mobile;前端运行说明见 water-mini/README.md,接口边界、业务差异、配置和测试命令见 server/docs/WATER_MINI_API.md。
- 不覆盖其他未提交的改动。业务回归使用可回滚数据;未配置的真实支付、佣金、硬件功能不得伪造成功。