Files
MTKJPAY/mt-pay/database/customer_order_schema.sql
qiube 84f74861bb feat(database): 初始化客户订单表结构
- 创建 customer_order 表,包含订单基本信息、客户信息、收货地址、支付信息等字段
- 设置订单状态和支付状态的默认值及注释说明
- 添加索引以优化查询性能,包括订单号、商品ID、状态和创建时间
- 指定表的存储引擎为 InnoDB,字符集为 utf8mb4

feat(common): 新增SKU状态枚举类

- 定义 SkuStatus 枚举,包含 ACTIVE 和 INACTIVE 两种状态
- 提供 getCode 和 getDescription 方法获取状态码和描述
- 实现 fromCode 静态方法用于根据状态码获取对应的枚举实例

docs(startup): 编写后端服务启动说明文档

- 添加启动后端服务的详细步骤和注意事项
- 说明正确的启动类位置及如何验证启动是否成功
- 提供常见问题诊断方法和解决方案
- 包含使用IDE、Maven命令和打包后的启动方式

feat(util): 新增字符串工具类

- 实现 isEmpty、isNotEmpty、isBlank、isNotBlank 等判断方法
- 提供 trim 方法去除字符串两端空白
- 添加 defaultIfEmpty 方法在字符串为空时返回默认值

docs(architecture): 编写系统架构完整性说明文档

- 描述后端和前端的完整架构组成及检查清单
- 说明系统的统一规范、代码复用、可扩展性和可维护性特点
- 展示包结构总览和最佳实践建议
- 对系统完整性进行评分并给出总结评价

docs(troubleshooting): 编写后端启动问题排查指南

- 针对前端无法连接后端的问题提供详细的排查流程
- 介绍多种启动后端服务的方法及常见失败原因
- 提供快速诊断命令和日志检查建议
- 列出需要提供的错误信息以便进一步协助

feat(config): 新增Web配置类支持跨域访问

- 配置 CORS 跨域资源共享规则,允许所有来源访问 /api/** 路径
- 设置允许的请求方法、请求头和凭证信息
- 添加日志记录跨域配置的过程和结果
2025-12-22 18:13:33 +08:00

44 lines
2.2 KiB
SQL
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.
CREATE TABLE `customer_order` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`order_no` VARCHAR(64) NOT NULL UNIQUE COMMENT '订单号(全局唯一)',
`product_id` BIGINT NOT NULL COMMENT '商品ID',
`product_name` VARCHAR(500) NOT NULL COMMENT '商品名称',
`sku_id` BIGINT NOT NULL COMMENT 'SKU ID',
`sku_name` VARCHAR(500) NOT NULL COMMENT 'SKU名称/描述',
`quantity` INT NOT NULL COMMENT '购买数量',
`unit_price` DECIMAL(10, 2) NOT NULL COMMENT '单价',
`total_amount` DECIMAL(10, 2) NOT NULL COMMENT '订单总金额',
`currency` VARCHAR(3) NOT NULL COMMENT '货币代码',
`status` VARCHAR(20) NOT NULL DEFAULT 'PENDING' COMMENT '订单状态PENDING-待支付PAID-已支付SHIPPED-已发货COMPLETED-已完成CANCELLED-已取消',
-- 客户信息
`customer_name` VARCHAR(100) NOT NULL COMMENT '客户姓名',
`customer_phone` VARCHAR(20) NOT NULL COMMENT '客户电话',
`customer_email` VARCHAR(100) COMMENT '客户邮箱',
-- 收货地址
`shipping_name` VARCHAR(100) NOT NULL COMMENT '收货人姓名',
`shipping_phone` VARCHAR(20) NOT NULL COMMENT '收货人电话',
`shipping_country` VARCHAR(50) NOT NULL COMMENT '收货国家',
`shipping_state` VARCHAR(50) COMMENT '收货州/省',
`shipping_city` VARCHAR(50) NOT NULL COMMENT '收货城市',
`shipping_street` VARCHAR(200) NOT NULL COMMENT '收货街道地址',
`shipping_postcode` VARCHAR(20) COMMENT '收货邮编',
-- 支付信息
`payment_order_id` BIGINT COMMENT '关联的支付订单ID',
`payment_status` VARCHAR(20) DEFAULT 'UNPAID' COMMENT '支付状态UNPAID-未支付PAID-已支付FAILED-支付失败',
-- 备注
`remark` VARCHAR(500) COMMENT '订单备注',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_order_no` (`order_no`),
KEY `idx_product_id` (`product_id`),
KEY `idx_status` (`status`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户订单表';