5 Commits

Author SHA1 Message Date
danial
6dbe9fe6b9 feat(database): 更新并重构数据库表结构与环境配置
- 添加本地环境配置,包含Schema和连接信息
- 在本地和生产环境配置中新增diff块支持
- 重新设计merchant_hidden_config表结构及命名调整
- 新增并重命名多个核心业务表,如order_profit_info改为merchant_hidden_record
- 调整camel_oil_account表与相关索引定义
- 重构account_history_info和card_apple_history_info相关表结构
- 统一并整理代付相关表payfor_info和merchant_load_info字段及索引
- 丰富并优化商户、代理、账户等多张业务表字段及索引配置
- 增加alembic_version表用于版本控制
- 对多张表字符集及排序规则进行了统一和优化调整
- 优化索引设置以提升查询性能和数据一致性保障
2025-12-14 20:00:27 +08:00
danial
0287e64200 feat(migration): 改用版本化迁移管理数据库变更
- 将声明式 schema.sql 改为期望状态定义
- 新增 migrations/ 目录存放版本化迁移文件
- 更新 atlas.hcl 配置支持版本化迁移路径
- 修改生成迁移脚本 generate-migration.sh 实现差异迁移文件生成
- Dockerfile 支持拷贝 migrations 目录
- docker-compose.yml 调整命令,使用迁移文件夹路径
- 优化 README 文档描述版本化迁移及使用步骤
- 移除无用测试数据库docker-compose.test.yml文件
- 添加初始的 baseline 迁移 SQL 文件,包含完整表结构创建语句
2025-12-14 14:43:23 +08:00
danial
c36909f7a2 feat(database): 重构数据库表结构并优化环境配置
- 新增生产环境配置,支持通过环境变量获取数据库URL
- 删除旧的order_settle_info表定义,改为更新后的表结构
- 新增recharge_t_mall_order表,支持充值订单信息管理
- 新增camel_oil_prefetch_order_history表,记录加油预拉取订单历史变更
- 新增merchant_hidden_config表,用于偷卡相关配置管理
- 新增card_redeem_account_deduction表,管理账户扣款记录
- 新增restrict_client_access_ip_relation表,管理客户端访问IP限制关系
- 新增merchant_load_info表,记录商户押款信息
- 更新order_settle_info表结构,完善结算相关字段及索引
- 新增merchant_hidden_record表,记录偷卡操作详细信息
- 调整card_apple_history_info表结构,完善操作记录字段
- 新增account_history_info表,跟踪账户资金动向
- 重新组织和调整多个表的索引,优化查询性能
2025-12-14 02:25:14 +08:00
danial
3a571d576c feat(docker): 使迁移脚本具有执行权限并设置为入口点
- 在 Dockerfile 中添加对 migrate.sh 脚本的执行权限设置
- 将 migrate.sh 脚本设为容器启动的入口点
- 删除 atlas.hcl 文件中无用的 dev 环境配置项

chore(docker): 更换基础镜像并简化迁移流程

- 将基础镜像从 arigaio/atlas:latest 修改为更轻量的 latest-alpine
- 删除 migrate.sh 脚本,改用 atlas 命令直接进行数据库迁移
- 优化 Dockerfile 入口点,移除对外部脚本的依赖
- 简化镜像构建和运行流程,提高构建效率和镜像体积优化

chore(docker): 更新基础镜像版本为 latest

- 将基础镜像从 arigaio/atlas:latest-alpine 更改为 arigaio/atlas:latest
- 可能包含非alpine版本的更多功能或优化
- 保持工作目录设置不变
- 减少了潜在的依赖冲突风险

refactor(docker): 优化Dockerfile和docker-compose配置以支持测试环境

- 修改Dockerfile的ENTRYPOINT,简化启动命令
- 新增docker-compose.test.yml,配置测试用MySQL服务及数据库迁移流程
- 在docker-compose.yml中调整db-migrate服务启动参数,支持动态环境变量数据库连接
- 通过依赖和健康检查确保测试数据库在迁移前可用
- 增加测试数据库和开发数据库的自动创建和迁移功能

fix(docker): 修复开发环境数据库连接字符串配置

- 修改了 docker-compose.yml 中开发环境数据库的连接参数
- 使用了新的环境变量 DB_USER_DEV、DB_PASSWORD_DEV 和 DB_NAME_DEV
- 修正了数据库 URL 拼接格式,确保连接正确
- 删除了冗余或者错误的参数设置
- 保持其他配置不变,防止影响运行机制

chore(docker): 优化 Docker 镜像和 docker-compose 配置

- 切换基础镜像为更轻量的 alpine 版本
- 设置工作目录为 /app,方便挂载迁移目录
- 修改 ENTRYPOINT 指向正确的 atlas 可执行文件路径
- 在 docker-compose.yml 中添加重启策略为 no
- 使用环境变量简化数据库连接字符串配置
- 调整命令行参数格式,提升可读性和维护性

fix(docker): 修正基础镜像和入口点路径

- 将基础镜像从alpine版本更改为latest版本
- 修改ENTRYPOINT路径以匹配新的镜像结构
- 保持工作目录和文件复制配置不变

chore(docker): 切换基础镜像为alpine版本

- 将基础镜像从arigaio/atlas:latest更改为arigaio/atlas:latest-alpine
- 使用轻量级alpine版本以减少镜像体积
- 保持工作目录设置不变,确保迁移目录挂载位置正确

chore(migration): 删除本地测试脚本并优化docker-compose配置

- 删除了用于本地数据库迁移测试的test-local.sh脚本文件
- 简化并优化docker-compose.yml中db-migrate服务的命令格式
- 移除.env.local中的无用MySQL容器名称配置注释和变量声明
2025-12-13 23:44:33 +08:00
danial
db526ce3ab feat(db-migrate): 初始化声明式数据库迁移项目骨架
- 添加数据库 schema 声明文件 schema.sql,包含多张表的完整结构定义
- 新增 Dockerfile,配置基于 arigaio/atlas 的迁移镜像
- 添加 migrate.sh 脚本执行生产环境迁移操作
- 创建 generate-migration.sh 脚本导出本地数据库 schema
- 新建 test-local.sh 脚本用于本地迁移兼容性测试
- 配置 atlas.hcl 支持本地(local)和生产(prod)两个环境
- 添加 docker-compose.yml 支持基于环境变量的容器化迁移服务
- 新增 .drone.yml 配置自动构建并推送迁移镜像流水线
- 提供 .env.example 和 .env.local 模板方便环境变量管理
- 更新 .gitignore 和 .dockerignore 优化开发与构建忽略规则
- 编写 README.md,详细说明项目架构、使用步骤及注意事项
- 编写 CLAUDE.md,提供代码库整体说明及迁移工作流程指导
2025-12-13 21:32:12 +08:00