数据库设计
1. 订单表（payment_order）
----------------------------------------------------
CREATE TABLE `payment_order` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `out_trade_no` varchar(64) NOT NULL COMMENT '商户订单号',
  `trade_no` varchar(64) DEFAULT NULL COMMENT '支付平台订单号',
  `pid` int(11) NOT NULL COMMENT '商户ID',
  `pay_type` varchar(32) DEFAULT NULL COMMENT '支付方式',
  `name` varchar(255) NOT NULL COMMENT '商品名称',
  `money` decimal(10,2) NOT NULL COMMENT '商品金额',
  `trade_status` varchar(32) DEFAULT NULL COMMENT '支付状态',
  `param` varchar(500) DEFAULT NULL COMMENT '业务扩展参数',
  `client_ip` varchar(45) DEFAULT NULL COMMENT '用户IP地址',
  `device` varchar(32) DEFAULT 'pc' COMMENT '设备类型',
  `notify_url` varchar(500) DEFAULT NULL COMMENT '异步通知地址',
  `return_url` varchar(500) DEFAULT NULL COMMENT '跳转通知地址',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `pay_time` datetime DEFAULT NULL COMMENT '支付时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_out_trade_no` (`out_trade_no`),
  KEY `idx_trade_no` (`trade_no`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='支付订单表';
