微服务改造

This commit is contained in:
litianxiang
2026-04-27 11:47:17 +08:00
parent 1504e86b35
commit 0019ae01ea
30 changed files with 1258 additions and 105 deletions

View File

@@ -1,87 +1,91 @@
-- 商品表
CREATE TABLE seller_listing (
id BIGINT PRIMARY KEY COMMENT '商品ID',
seller_id BIGINT NOT NULL COMMENT '卖家ID',
title VARCHAR(255) NOT NULL COMMENT '商品标题',
description TEXT COMMENT '商品描述',
price DECIMAL(10,2) COMMENT '价格',
stock INT COMMENT '库存数量',
cover VARCHAR(200) COMMENT '封面图URL',
view_count INT DEFAULT 0 COMMENT '浏览量',
status INT(1) DEFAULT 0 COMMENT '状态: 0-草稿, 1-已发布, 2-已删除',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted INT(1) DEFAULT 0 COMMENT '是否删除0-否1-是',
design_for VARCHAR(50) COMMENT '适用性别: male/female',
product_category JSON COMMENT '商品分类列表',
INDEX idx_seller_id (seller_id),
INDEX idx_status (status),
INDEX idx_deleted (deleted)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品表';
-- 商品图片表
CREATE TABLE seller_listing_image (
id BIGINT PRIMARY KEY COMMENT '图片ID',
listing_id BIGINT NOT NULL COMMENT '商品ID',
category VARCHAR(50) NOT NULL COMMENT '图片类别: cover/main_product/product/sketch/apparel',
image_url VARCHAR(500) NOT NULL COMMENT '图片URL',
sort_order INT DEFAULT 0 COMMENT '排序',
is_selected INT(1) DEFAULT 0 COMMENT '是否选中: 0-未选中, 1-选中(仅product有效)',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
INDEX idx_listing_id (listing_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品图片表';
CREATE DATABASE IF NOT EXISTS aida_seller DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE aida_seller;
-- ==================== 1. 设计师表 ====================
DROP TABLE IF EXISTS `designer`;
CREATE TABLE `designer` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '设计师ID',
`user_id` BIGINT DEFAULT NULL COMMENT '用户ID(关联用户表)',
`shop_name` VARCHAR(100) NOT NULL COMMENT '店铺名称',
`owner_name` VARCHAR(50) NOT NULL COMMENT '所有者全名',
`email` VARCHAR(100) DEFAULT NULL COMMENT '邮箱',
`mobile` VARCHAR(20) NOT NULL COMMENT '手机号',
`social_links` TEXT DEFAULT NULL COMMENT '作品集/社交媒体链接(JSON数组)',
`apply_status` TINYINT NOT NULL DEFAULT 0 COMMENT '申请状态: 0-待审核, 1-审核通过, 2-审核拒绝',
`audit_remark` VARCHAR(500) DEFAULT NULL COMMENT '审核备注',
`audit_time` DATETIME DEFAULT NULL COMMENT '审核时间',
`status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态: 0-禁用, 1-启用',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
PRIMARY KEY (`id`),
KEY `idx_mobile` (`mobile`),
KEY `idx_email` (`email`),
KEY `idx_apply_status` (`apply_status`),
KEY `idx_status` (`status`)
-- 设计师表
CREATE TABLE seller_designer (
id BIGINT PRIMARY KEY COMMENT '设计师ID',
user_id BIGINT NOT NULL COMMENT '用户ID',
shop_name VARCHAR(100) NOT NULL COMMENT '店铺名称',
avatar VARCHAR(200) COMMENT '店铺头像URL',
brand_banner VARCHAR(200) COMMENT '品牌Banner URL',
owner_name VARCHAR(100) COMMENT '所有者全名',
email VARCHAR(100) COMMENT '邮箱',
mobile VARCHAR(30) COMMENT '手机号',
social_links JSON COMMENT '作品集/社交媒体链接',
description TEXT COMMENT '设计师简介',
apply_status INT(1) DEFAULT 0 COMMENT '申请状态: 0-待审核, 1-审核通过, 2-审核拒绝',
audit_remark VARCHAR(500) COMMENT '审核备注',
audit_time DATETIME COMMENT '审核时间',
status INT(1) DEFAULT 1 COMMENT '状态: 0-禁用, 1-启用',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted INT(1) DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
INDEX idx_user_id (user_id),
INDEX idx_apply_status (apply_status),
INDEX idx_status (status),
INDEX idx_deleted (deleted)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='设计师表';
-- ==================== 2. 订单表 ====================
-- 注意: 代码中 OrderInfoEntity 使用 @TableName("order_info")
-- 若生产库表名为 "orders" 请改为 "order_info",列名 "order_no" 建议改为 "order_id"
DROP TABLE IF EXISTS `orders`;
CREATE TABLE `orders` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`order_id` VARCHAR(32) NOT NULL COMMENT '订单',
`seller_id` BIGINT NOT NULL COMMENT '家ID',
`buyer_id` BIGINT NOT NULL COMMENT '买家ID',
`buyer_name` VARCHAR(100) DEFAULT NULL COMMENT '买家名称',
`total_price` DECIMAL(12,2) NOT NULL DEFAULT 0.00 COMMENT '商品总金额',
`order_status` TINYINT NOT NULL DEFAULT 0 COMMENT '订单状态: 0-待支付, 1-已支付, 2-已发货, 3-已完成, 4-已取消, 5-退款中',
`total_views` BIGINT NOT NULL DEFAULT 0 COMMENT '商品浏览量(订单关联商品的总浏览数)',
`shipping_address` TEXT DEFAULT NULL COMMENT '收货地址',
`receiver_name` VARCHAR(50) DEFAULT NULL COMMENT '收货人',
`receiver_phone` VARCHAR(20) DEFAULT NULL COMMENT '联系电话',
`receiver_address` VARCHAR(500) DEFAULT NULL COMMENT '详细地址',
`tracking_number` VARCHAR(100) DEFAULT NULL COMMENT '快递单号',
`tracking_company` VARCHAR(100) DEFAULT NULL COMMENT '快递公司',
`pay_time` DATETIME DEFAULT NULL COMMENT '支付时间',
`ship_time` DATETIME DEFAULT NULL COMMENT '发货时间',
`receive_time` DATETIME DEFAULT NULL COMMENT '收货时间',
`cancel_time` DATETIME DEFAULT NULL COMMENT '取消时间',
`cancel_reason` 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 '更新时间',
`deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_order_id` (`order_id`),
KEY `idx_seller_id` (`seller_id`),
KEY `idx_buyer_id` (`buyer_id`),
KEY `idx_order_status` (`order_status`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单表';
-- 订单主表
CREATE TABLE seller_orders (
id BIGINT PRIMARY KEY COMMENT '主键ID',
order_id VARCHAR(50) NOT NULL COMMENT '订单唯一标识(如 SP897772698',
seller_id BIGINT NOT NULL COMMENT '卖家ID',
total_price DECIMAL(10,2) COMMENT '订单总金额(HK$)',
buyer_username VARCHAR(100) COMMENT '买家账',
total_items INT COMMENT '品总数量',
total_views BIGINT DEFAULT 0 COMMENT '总浏览量',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '下单时间',
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted INT(1) DEFAULT 0 COMMENT '是否删除0-否1-是',
INDEX idx_order_id (order_id),
INDEX idx_seller_id (seller_id),
INDEX idx_deleted (deleted),
INDEX idx_create_time (create_time)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单主表';
-- ==================== 3. 订单项表 ====================
DROP TABLE IF EXISTS `order_item`;
CREATE TABLE `order_item` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '订单ID',
`order_id` BIGINT NOT NULL COMMENT '订单ID(关联orders.id)',
`order_no` VARCHAR(32) NOT NULL COMMENT '订单号',
`product_id` BIGINT NOT NULL COMMENT '商品ID',
`sku_id` BIGINT DEFAULT NULL COMMENT 'SKU ID',
`product_name` VARCHAR(200) NOT NULL COMMENT '商品名称',
`sku_name` VARCHAR(200) DEFAULT NULL COMMENT 'SKU名称',
`product_image` VARCHAR(500) DEFAULT NULL COMMENT '商品图片',
`price` DECIMAL(12,2) NOT NULL DEFAULT 0.00 COMMENT '商品单价',
`quantity` INT NOT NULL DEFAULT 1 COMMENT '购买数量',
`total_amount` DECIMAL(12,2) NOT NULL DEFAULT 0.00 COMMENT '小计金额',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
PRIMARY KEY (`id`),
KEY `idx_order_id` (`order_id`),
KEY `idx_order_no` (`order_no`),
KEY `idx_product_id` (`product_id`),
KEY `idx_sku_id` (`sku_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单项表';
-- 订单商品明细表
CREATE TABLE seller_order_item (
id BIGINT PRIMARY KEY COMMENT '主键ID',
order_id VARCHAR(50) NOT NULL COMMENT '订单ID',
product_id BIGINT NOT NULL COMMENT '商品ID',
product_name VARCHAR(255) COMMENT '商品名称',
thumbnail_url VARCHAR(200) COMMENT '商品缩略图URL',
price DECIMAL(10,2) COMMENT '成交单价(HK$)',
quantity INT NOT NULL COMMENT '购买数量',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
deleted INT(1) DEFAULT 0 COMMENT '是否删除0-否1-是',
INDEX idx_order_id (order_id),
INDEX idx_product_id (product_id),
INDEX idx_deleted (deleted)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单商品明细表';