-- =============================================================================
-- 订单售后 biz_order_aftersale
-- 用途：C 端提交售后申请；店铺后台「售后订单」处理（待建）
-- 关联文档：doc/消费者APP/我的订单/我的订单技术方案.md §2.3
-- 前置：已执行 sql/biz_order.sql
-- =============================================================================

CREATE TABLE IF NOT EXISTS `biz_order_aftersale` (
  `aftersale_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '售后ID，主键',
  `aftersale_no` varchar(32) NOT NULL COMMENT '售后编号；AS+yyyyMMdd+6位序号',
  `order_id` bigint(20) NOT NULL COMMENT '订单ID（biz_order.order_id）',
  `order_item_id` bigint(20) DEFAULT NULL COMMENT '订单明细行ID；整单售后为NULL',
  `member_id` bigint(20) NOT NULL COMMENT '买家会员ID',
  `shop_id` bigint(20) NOT NULL COMMENT '店铺ID',
  `apply_type` char(1) NOT NULL COMMENT '申请类型：1仅退款-未发货 2仅退款-已发货 3退货退款',
  `apply_reason` varchar(128) NOT NULL COMMENT '售后原因文案',
  `return_quantity` int(11) DEFAULT NULL COMMENT '退货数量；类型1可为NULL',
  `apply_amount` decimal(12,2) NOT NULL COMMENT '申请退款金额',
  `description` varchar(1000) DEFAULT NULL COMMENT '补充描述',
  `evidence_pics` varchar(2000) DEFAULT NULL COMMENT '凭证图片URL，英文逗号分隔',
  `goods_id` bigint(20) NOT NULL COMMENT '商品ID快照',
  `goods_name` varchar(128) NOT NULL COMMENT '商品名称快照',
  `goods_spec` varchar(64) DEFAULT NULL COMMENT '规格快照',
  `goods_image` varchar(512) DEFAULT NULL COMMENT '主图快照',
  `order_no` varchar(32) NOT NULL COMMENT '订单编号快照',
  `pay_amount` decimal(12,2) NOT NULL COMMENT '订单实付快照（校验上限）',
  `member_nick_name` varchar(64) DEFAULT NULL COMMENT '会员昵称快照',
  `consignee_name` varchar(64) DEFAULT NULL COMMENT '收货人快照',
  `consignee_mobile` varchar(20) DEFAULT NULL COMMENT '手机号快照',
  `consignee_address` varchar(512) DEFAULT NULL COMMENT '收货地址快照',
  `aftersale_status` char(1) NOT NULL DEFAULT '1' COMMENT '售后状态：1进行中 2已完结',
  `process_result` varchar(1000) DEFAULT NULL COMMENT '商家处理结果',
  `finish_time` datetime DEFAULT NULL COMMENT '售后完结时间',
  `create_time` datetime NOT NULL COMMENT '申请时间',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`aftersale_id`),
  UNIQUE KEY `uk_aftersale_no` (`aftersale_no`),
  KEY `idx_member_status` (`member_id`,`aftersale_status`,`create_time`),
  KEY `idx_order_item` (`order_id`,`order_item_id`),
  KEY `idx_shop_status` (`shop_id`,`aftersale_status`,`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单售后申请（C端提交；店铺后台处理）';
