4.6 KiB
4.6 KiB
前后端数据库状态说明
更新日期: 2025-09-17
概要
- 数据库已落地:已在远程 MySQL
mysql.tonaspace.com的partsinquiry库完成初始化(表结构与触发器已创建)。 - 已生成根目录文档:
/doc/database_documentation.md已同步线上结构(字段、索引、外键、触发器)。 - 后端代码仍未配置数据源依赖与连接,前端无本地结构化存储方案。
已建库与连接信息(用于部署/联调)
- Address:
mysql.tonaspace.com - Database:
partsinquiry - User:
root - 说明:所有结构变更均通过 MysqlMCP 执行并已落地到线上库。
角色与模拟数据策略(统一为店长)
- 当前不进行角色划分,系统仅保留“店长”角色。
- 已将所有用户记录统一为:
role='owner'、is_owner=1。 - 前端/后端权限逻辑暂未启用,后续若引入权限体系,再行扩展角色与边界。
小程序默认用户(可开关,默认关闭)
- 目的:开发/演示阶段,便于免登录联调。
- 机制:前端在请求头附加
X-User-Id(值为张老板 id=2),仅当开关开启时。 - 开关:
- 环境变量:
VITE_APP_ENABLE_DEFAULT_USER=true与VITE_APP_DEFAULT_USER_ID=2 - 或本地存储:
ENABLE_DEFAULT_USER=true与DEFAULT_USER_ID=2
- 环境变量:
- 关闭:不设置/置为
false即可停用(生产环境默认关闭)。 - 完全移除:删除
frontend/common/config.js中默认用户配置与frontend/common/http.js中注入逻辑。
后端(Spring Boot)状态
- 依赖:
pom.xml已包含spring-boot-starter-web、spring-boot-starter-data-jpa、mysql-connector-j。 - 配置:
application.properties使用环境变量注入数据源,已补充 Hikari/JPA;新增附件占位图配置:attachments.placeholder.image-path(env:ATTACHMENTS_PLACEHOLDER_IMAGE)attachments.placeholder.url-path(env:ATTACHMENTS_PLACEHOLDER_URL,默认/api/attachments/placeholder)
- 接口:新增附件相关接口(占位方案):
- POST
/api/attachments:忽略内容,返回{ url: "/api/attachments/placeholder" } - GET
/api/attachments/placeholder:返回本地占位图二进制
- POST
- 迁移:仍建议引入 Flyway/Liquibase;结构变更继续通过 MysqlMCP 并同步
/doc/database_documentation.md。
前端(uni-app)数据库状态
- 数据持久化:未见 IndexedDB/WebSQL/SQLite/云数据库使用;页面数据为内置静态数据。
- 本地存储:未见
uni.setStorage/uni.getStorage的集中封装或结构化键空间设计。 - 结论:前端当前不涉及本地数据库或结构化存储方案。
风险与影响
- 后端未配置数据源与接口,应用无法读写远端库(虽已建表)。
- 无接口契约,前后端仍无法联调涉及数据库的功能。
建议的后续行动(不自动执行)
- 在后端引入依赖:
spring-boot-starter-web、spring-boot-starter-data-jpa、mysql-connector-j。 - 配置数据源:使用环境变量注入
SPRING_DATASOURCE_URL、SPRING_DATASOURCE_USERNAME、SPRING_DATASOURCE_PASSWORD等,指向上述远程库。 - 引入迁移工具(Flyway/Liquibase)管理 DDL;后续所有变更继续通过 MysqlMCP 执行,并同步
/doc/database_documentation.md。 - 增加健康检查与基础 CRUD 接口;在
/doc/openapi.yaml按规范登记并标注实现状态(❌/✅)。
前端默认连接策略
- 默认后端地址:
http://127.0.0.1:8080(可被环境变量/Storage 覆盖) - 多地址重试:按顺序尝试(去重处理):
[ENV, Storage, 127.0.0.1:8080, localhost:8080] - 默认用户:开启(可被环境变量/Storage 关闭),请求自动附带
X-User-Id(默认2)。 - 如需关闭:在 Storage 或构建环境中设置
ENABLE_DEFAULT_USER=false。
占位图策略(当前阶段)
- 说明:所有图片上传与展示均统一使用占位图,实际文件存储暂不开发。
- 本地占位图:
C:\Users\21826\Desktop\Wj\PartsInquiry\backend\picture\屏幕截图 2025-08-14 134657.png - 配置方式:
- PowerShell(当前用户持久化)
setx ATTACHMENTS_PLACEHOLDER_IMAGE "C:\\Users\\21826\\Desktop\\Wj\\PartsInquiry\\backend\\picture\\屏幕截图 2025-08-14 134657.png" setx ATTACHMENTS_PLACEHOLDER_URL "/api/attachments/placeholder" - 应用重启后生效;也可在运行环境变量中注入。
- PowerShell(当前用户持久化)
- 前端影响:
components/ImageUploader.vue上传始终得到{ url: '/api/attachments/placeholder' }- 商品列表/详情展示该占位图地址