267 lines
16 KiB
SQL
267 lines
16 KiB
SQL
-- 基础实体表结构 (BaseDO) 不单独建表,字段会被继承到其他表中
|
|
|
|
-- 交易订单表 (trade_order)
|
|
CREATE TABLE `tz_trade_order`
|
|
(
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '订单编号,主键自增',
|
|
`order_num` varchar(64) NOT NULL COMMENT '订单流水号',
|
|
`order_type` tinyint(4) NOT NULL COMMENT '订单类型 (枚举 TradeOrderTypeEnum)',
|
|
`order_terminal` tinyint(4) NOT NULL COMMENT '订单来源 (枚举 TerminalEnum)',
|
|
`order_status` tinyint(4) NOT NULL COMMENT '订单状态 (枚举 TradeOrderStatusEnum)',
|
|
`user_id` bigint(20) NOT NULL COMMENT '用户编号',
|
|
`user_ip` varchar(64) DEFAULT NULL COMMENT '用户IP',
|
|
`user_remark` varchar(512) DEFAULT NULL COMMENT '用户备注',
|
|
`finish_time` datetime DEFAULT NULL COMMENT '订单完成时间',
|
|
`cancel_time` datetime DEFAULT NULL COMMENT '订单取消时间',
|
|
`cancel_type` tinyint(4) DEFAULT NULL COMMENT '取消类型 (枚举 TradeOrderCancelTypeEnum)',
|
|
`merchant_remark` varchar(512) DEFAULT NULL COMMENT '商家备注',
|
|
`comment_status` tinyint(1) DEFAULT NULL COMMENT '是否评价 (true-已评价, false-未评价)',
|
|
`total_price` int(11) NOT NULL COMMENT '商品原价,单位:分',
|
|
`discount_price` int(11) NOT NULL COMMENT '优惠金额,单位:分',
|
|
`delivery_price` int(11) NOT NULL COMMENT '运费金额,单位:分',
|
|
`adjust_price` int(11) NOT NULL COMMENT '订单调价,单位:分',
|
|
`pay_price` int(11) NOT NULL COMMENT '应付金额(总),单位:分',
|
|
`pay_order_id` bigint(20) DEFAULT NULL COMMENT '支付订单编号',
|
|
`pay_status` tinyint(1) NOT NULL COMMENT '是否已支付 (true-已支付, false-未支付)',
|
|
`pay_time` datetime DEFAULT NULL COMMENT '付款时间',
|
|
`pay_channel_code` varchar(64) DEFAULT NULL COMMENT '支付渠道',
|
|
`delivery_type` tinyint(4) NOT NULL COMMENT '配送方式 (枚举 DeliveryTypeEnum)',
|
|
`logistics_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '发货物流公司编号',
|
|
`logistics_no` varchar(64) DEFAULT '' COMMENT '发货物流单号',
|
|
`delivery_time` datetime DEFAULT NULL COMMENT '发货时间',
|
|
`receive_time` datetime DEFAULT NULL COMMENT '收货时间',
|
|
`receiver_name` varchar(64) NOT NULL COMMENT '收件人名称',
|
|
`receiver_mobile` varchar(20) NOT NULL COMMENT '收件人手机',
|
|
`receiver_area_id` int(11) NOT NULL COMMENT '收件人地区编号',
|
|
`receiver_detail_address` varchar(512) NOT NULL COMMENT '收件人详细地址',
|
|
`pick_up_store_id` bigint(20) DEFAULT NULL COMMENT '自提门店编号',
|
|
`pick_up_verify_code` varchar(64) DEFAULT NULL COMMENT '自提核销码',
|
|
`refund_status` tinyint(4) NOT NULL COMMENT '退款状态 (枚举 TradeOrderRefundStatusEnum)',
|
|
`refund_price` int(11) NOT NULL COMMENT '退款金额,单位:分',
|
|
`after_sale_id` bigint(20) DEFAULT NULL COMMENT '售后单编号',
|
|
`after_sale_status` tinyint(4) NOT NULL COMMENT '售后状态 (枚举 TradeOrderItemAfterSaleStatusEnum)',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_order_num` (`order_num`),
|
|
KEY `idx_user_id` (`user_id`),
|
|
KEY `idx_status` (`order_status`),
|
|
KEY `idx_pay_status` (`pay_status`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='交易订单表';
|
|
|
|
-- 交易订单项表 (trade_order_item)
|
|
CREATE TABLE `tz_trade_order_item`
|
|
(
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
|
|
`user_id` bigint(20) NOT NULL COMMENT '用户编号',
|
|
`order_id` bigint(20) NOT NULL COMMENT '订单编号',
|
|
`cart_id` bigint(20) DEFAULT NULL COMMENT '购物车项编号',
|
|
`prod_id` bigint(20) NOT NULL COMMENT '商品 SPU 编号',
|
|
`prod_name` varchar(256) NOT NULL COMMENT '商品 SPU 名称',
|
|
`sku_id` bigint(20) NOT NULL COMMENT '商品 SKU 编号',
|
|
`properties` json DEFAULT NULL COMMENT '属性数组',
|
|
`pic_url` varchar(512) NOT NULL COMMENT '商品图片',
|
|
`count` int(11) NOT NULL COMMENT '购买数量',
|
|
`price` int(11) NOT NULL COMMENT '商品原价(单),单位:分',
|
|
`discount_price` int(11) NOT NULL COMMENT '优惠金额(总),单位:分',
|
|
`delivery_price` int(11) NOT NULL COMMENT '运费金额(总),单位:分',
|
|
`adjust_price` int(11) NOT NULL COMMENT '订单调价(总),单位:分',
|
|
`pay_price` int(11) NOT NULL COMMENT '应付金额(总),单位:分',
|
|
`serve_ext_info` json DEFAULT NULL COMMENT '扩展服务信息,存储额外的服务相关数据',
|
|
`price_ext_info` json DEFAULT NULL COMMENT '附加费信息',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_order_id` (`order_id`),
|
|
KEY `idx_sku_id` (`sku_id`),
|
|
KEY `idx_user_id` (`user_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='交易订单项表';
|
|
|
|
-- 订单日志表 (trade_order_log)
|
|
CREATE TABLE `tz_trade_order_log`
|
|
(
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
|
|
`user_id` bigint(20) NOT NULL COMMENT '用户编号',
|
|
`user_type` tinyint(4) NOT NULL COMMENT '用户类型 (枚举 UserTypeEnum)',
|
|
`order_id` bigint(20) NOT NULL COMMENT '订单号',
|
|
`before_status` int(11) DEFAULT NULL COMMENT '操作前状态',
|
|
`after_status` int(11) DEFAULT NULL COMMENT '操作后状态',
|
|
`operate_type` tinyint(4) NOT NULL COMMENT '操作类型 (枚举 TradeOrderOperateTypeEnum)',
|
|
`content` varchar(1024) NOT NULL COMMENT '订单日志信息',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_order_id` (`order_id`),
|
|
KEY `idx_user_id` (`user_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单日志表';
|
|
|
|
-- 售后订单表 (tz_trade_after_sale)
|
|
CREATE TABLE `tz_trade_after_sale` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '售后编号,主键自增',
|
|
`no` varchar(64) NOT NULL COMMENT '售后单号',
|
|
`status` tinyint(4) NOT NULL COMMENT '退款状态 (枚举 AfterSaleStatusEnum)',
|
|
`way` tinyint(4) NOT NULL COMMENT '售后方式 (枚举 AfterSaleWayEnum)',
|
|
`type` tinyint(4) NOT NULL COMMENT '售后类型 (枚举 AfterSaleTypeEnum)',
|
|
`user_id` bigint(20) NOT NULL COMMENT '用户编号',
|
|
`apply_reason` varchar(256) NOT NULL COMMENT '申请原因',
|
|
`apply_description` varchar(512) DEFAULT NULL COMMENT '补充描述',
|
|
`apply_pic_urls` json DEFAULT NULL COMMENT '补充凭证图片',
|
|
`order_id` bigint(20) NOT NULL COMMENT '交易订单编号',
|
|
`order_no` varchar(64) NOT NULL COMMENT '订单流水号',
|
|
`order_item_id` bigint(20) NOT NULL COMMENT '交易订单项编号',
|
|
`prod_id` bigint(20) NOT NULL COMMENT '商品 SPU 编号',
|
|
`prod_name` varchar(256) NOT NULL COMMENT '商品 SPU 名称',
|
|
`sku_id` bigint(20) NOT NULL COMMENT '商品 SKU 编号',
|
|
`properties` json DEFAULT NULL COMMENT '属性数组',
|
|
`pic_url` varchar(512) DEFAULT NULL COMMENT '商品图片',
|
|
`count` int(11) NOT NULL COMMENT '退货商品数量',
|
|
`audit_time` datetime DEFAULT NULL COMMENT '审批时间',
|
|
`audit_user_id` bigint(20) DEFAULT NULL COMMENT '审批人',
|
|
`audit_reason` varchar(512) DEFAULT NULL COMMENT '审批备注',
|
|
`refund_price` int(11) NOT NULL COMMENT '退款金额,单位:分',
|
|
`pay_refund_id` bigint(20) DEFAULT NULL COMMENT '支付退款编号',
|
|
`refund_time` datetime DEFAULT NULL COMMENT '退款时间',
|
|
`logistics_id` bigint(20) DEFAULT NULL COMMENT '退货物流公司编号',
|
|
`logistics_no` varchar(64) DEFAULT NULL COMMENT '退货物流单号',
|
|
`delivery_time` datetime DEFAULT NULL COMMENT '退货时间',
|
|
`receive_time` datetime DEFAULT NULL COMMENT '收货时间',
|
|
`receive_reason` varchar(512) DEFAULT NULL COMMENT '收货备注',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_no` (`no`),
|
|
KEY `idx_user_id` (`user_id`),
|
|
KEY `idx_order_id` (`order_id`),
|
|
KEY `idx_order_item_id` (`order_item_id`),
|
|
KEY `idx_status` (`status`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='售后订单表';
|
|
|
|
-- 交易售后日志表 (tz_trade_after_sale_log)
|
|
CREATE TABLE `tz_trade_after_sale_log` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
|
|
`user_id` bigint(20) NOT NULL COMMENT '用户编号',
|
|
`user_type` tinyint(4) NOT NULL COMMENT '用户类型 (枚举 UserTypeEnum)',
|
|
`after_sale_id` bigint(20) NOT NULL COMMENT '售后编号',
|
|
`before_status` tinyint(4) DEFAULT NULL COMMENT '操作前状态',
|
|
`after_status` tinyint(4) DEFAULT NULL COMMENT '操作后状态',
|
|
`operate_type` tinyint(4) NOT NULL COMMENT '操作类型 (枚举 AfterSaleOperateTypeEnum)',
|
|
`content` varchar(512) NOT NULL COMMENT '操作明细',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_after_sale_id` (`after_sale_id`),
|
|
KEY `idx_user_id` (`user_id`),
|
|
KEY `idx_operate_type` (`operate_type`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='交易售后日志表';
|
|
|
|
|
|
-- 快递公司表 (trade_delivery_express)
|
|
CREATE TABLE `tz_trade_delivery_express` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号,自增',
|
|
`code` varchar(64) NOT NULL COMMENT '快递公司 code',
|
|
`name` varchar(128) NOT NULL COMMENT '快递公司名称',
|
|
`logo` varchar(512) DEFAULT NULL COMMENT '快递公司 logo',
|
|
`sort` int(11) DEFAULT NULL COMMENT '排序',
|
|
`status` tinyint(4) NOT NULL COMMENT '状态 (枚举 CommonStatusEnum)',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_code` (`code`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='快递公司表';
|
|
|
|
-- 快递运费模板表 (trade_delivery_express_template)
|
|
CREATE TABLE `tz_trade_delivery_express_template` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号,自增',
|
|
`name` varchar(128) NOT NULL COMMENT '模板名称',
|
|
`charge_mode` tinyint(4) NOT NULL COMMENT '配送计费方式 (枚举 DeliveryExpressChargeModeEnum)',
|
|
`sort` int(11) DEFAULT NULL COMMENT '排序',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='快递运费模板表';
|
|
|
|
-- 快递运费模板计费配置表 (trade_delivery_express_template_charge)
|
|
CREATE TABLE `tz_trade_delivery_express_template_charge` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号,自增',
|
|
`template_id` bigint(20) NOT NULL COMMENT '配送模板编号',
|
|
`area_ids` varchar(512) NOT NULL COMMENT '配送区域编号列表',
|
|
`charge_mode` tinyint(4) NOT NULL COMMENT '配送计费方式',
|
|
`start_count` double NOT NULL COMMENT '首件数量(件数,重量,或体积)',
|
|
`start_price` int(11) NOT NULL COMMENT '起步价,单位:分',
|
|
`extra_count` double NOT NULL COMMENT '续件数量(件, 重量,或体积)',
|
|
`extra_price` int(11) NOT NULL COMMENT '额外价,单位:分',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_template_id` (`template_id`),
|
|
CONSTRAINT `fk_express_template_charge_template_id` FOREIGN KEY (`template_id`) REFERENCES `tz_trade_delivery_express_template` (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='快递运费模板计费配置表';
|
|
|
|
-- 快递运费模板包邮配置表 (trade_delivery_express_template_free)
|
|
CREATE TABLE `tz_trade_delivery_express_template_free` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
|
|
`template_id` bigint(20) NOT NULL COMMENT '配送模板编号',
|
|
`area_ids` varchar(512) NOT NULL COMMENT '配送区域编号列表',
|
|
`free_price` int(11) DEFAULT NULL COMMENT '包邮金额,单位:分',
|
|
`free_count` int(11) DEFAULT NULL COMMENT '包邮件数',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_template_id` (`template_id`),
|
|
CONSTRAINT `fk_express_template_free_template_id` FOREIGN KEY (`template_id`) REFERENCES `tz_trade_delivery_express_template` (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='快递运费模板包邮配置表';
|
|
|
|
-- 自提门店表 (trade_delivery_pick_up_store)
|
|
CREATE TABLE `tz_trade_delivery_pick_up_store` (
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
|
|
`name` varchar(128) NOT NULL COMMENT '门店名称',
|
|
`introduction` varchar(512) DEFAULT NULL COMMENT '门店简介',
|
|
`phone` varchar(20) NOT NULL COMMENT '门店手机',
|
|
`area_id` int(11) NOT NULL COMMENT '区域编号',
|
|
`detail_address` varchar(512) NOT NULL COMMENT '门店详细地址',
|
|
`logo` varchar(512) DEFAULT NULL COMMENT '门店 logo',
|
|
`opening_time` time NOT NULL COMMENT '营业开始时间',
|
|
`closing_time` time NOT NULL COMMENT '营业结束时间',
|
|
`latitude` double DEFAULT NULL COMMENT '纬度',
|
|
`longitude` double DEFAULT NULL COMMENT '经度',
|
|
`verify_user_ids` varchar(512) DEFAULT NULL COMMENT '核销员工用户编号数组',
|
|
`status` tinyint(4) NOT NULL COMMENT '门店状态 (枚举 CommonStatusEnum)',
|
|
`create_time` datetime NOT NULL COMMENT '创建时间',
|
|
`update_time` datetime NOT NULL COMMENT '最后更新时间',
|
|
`creator` varchar(64) NOT NULL COMMENT '创建者',
|
|
`updater` varchar(64) NOT NULL COMMENT '更新者',
|
|
`deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_area_id` (`area_id`),
|
|
KEY `idx_status` (`status`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='自提门店表';
|
|
|
|
|