Files
FlashSaleSystem/sql/flash_sale_db.sql
2026-05-09 17:56:58 +08:00

877 lines
53 KiB
PL/PgSQL
Raw Permalink 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.
/*
Navicat Premium Dump SQL
Source Server : localhost_3306
Source Server Type : MySQL
Source Server Version : 80036 (8.0.36)
Source Host : localhost:3306
Source Schema : flash_sale_db
Target Server Type : MySQL
Target Server Version : 80036 (8.0.36)
File Encoding : 65001
Date: 09/05/2026 17:56:28
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for flash_sales
-- ----------------------------
DROP TABLE IF EXISTS `flash_sales`;
CREATE TABLE `flash_sales`
(
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '秒杀活动ID',
`product_id` bigint NOT NULL COMMENT '商品ID',
`flash_price` decimal(10, 2) NOT NULL COMMENT '秒杀价格',
`flash_stock` int NOT NULL COMMENT '秒杀库存',
`start_time` timestamp NOT NULL COMMENT '开始时间',
`end_time` timestamp NOT NULL COMMENT '结束时间',
`status` tinyint DEFAULT '1' COMMENT '状态1-未开始2-进行中3-已结束',
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_product_id` (`product_id`),
KEY `idx_start_time` (`start_time`),
KEY `idx_end_time` (`end_time`),
KEY `idx_status` (`status`),
KEY `idx_created_at` (`created_at`),
CONSTRAINT `flash_sales_ibfk_1` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE
) ENGINE = InnoDB
AUTO_INCREMENT = 64
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci COMMENT ='秒杀活动表';
-- ----------------------------
-- Records of flash_sales
-- ----------------------------
BEGIN;
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (1, 1, 3.19, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (2, 2, 4.64, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (3, 3, 3.60, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (4, 4, 4.16, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (5, 5, 5.52, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (6, 6, 3.92, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (7, 7, 4.48, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (8, 8, 3.84, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (9, 9, 10.32, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49', '2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (10, 10, 9.44, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (11, 11, 5.52, 80, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (12, 12, 10.88, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (13, 13, 15.92, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (14, 14, 19.92, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (15, 15, 23.04, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (16, 16, 26.32, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (17, 17, 15.12, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (18, 18, 17.44, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (19, 19, 11.12, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (20, 20, 18.24, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (21, 21, 13.44, 30, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (22, 22, 31.92, 30, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (23, 23, 15.04, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (24, 24, 10.32, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (25, 25, 39.92, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (26, 26, 62.40, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (27, 27, 20.72, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (28, 28, 47.92, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (29, 29, 10.24, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (30, 30, 13.52, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (31, 31, 5.52, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
INSERT INTO `flash_sales` (`id`, `product_id`, `flash_price`, `flash_stock`, `start_time`, `end_time`, `status`,
`created_at`, `updated_at`)
VALUES (32, 32, 7.92, 50, '2026-05-09 08:48:49', '2026-05-23 09:48:49', 2, '2026-05-09 09:48:49',
'2026-05-09 09:48:49');
COMMIT;
-- ----------------------------
-- Table structure for group_buying
-- ----------------------------
DROP TABLE IF EXISTS `group_buying`;
CREATE TABLE `group_buying`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`created_at` datetime(6) NOT NULL,
`duration_minutes` int NOT NULL,
`end_time` datetime(6) NOT NULL,
`group_price` decimal(10, 2) NOT NULL,
`max_per_user` int NOT NULL,
`product_id` bigint NOT NULL,
`remaining_stock` int NOT NULL,
`required_members` int NOT NULL,
`start_time` datetime(6) NOT NULL,
`status` int NOT NULL,
`total_stock` int NOT NULL,
`updated_at` datetime(6) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `FK59r61d7iyp2vxxkoyjudk343o` (`product_id`),
CONSTRAINT `FK59r61d7iyp2vxxkoyjudk343o` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`)
) ENGINE = InnoDB
AUTO_INCREMENT = 64
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of group_buying
-- ----------------------------
BEGIN;
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (1, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 3.59, 2, 1, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (2, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 5.22, 2, 2, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (3, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 4.05, 2, 3, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (4, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 4.68, 2, 4, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (5, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 6.21, 2, 5, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (6, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 4.41, 2, 6, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (7, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 5.04, 2, 7, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (8, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 4.32, 2, 8, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (9, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 11.61, 2, 9, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (10, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 10.62, 2, 10, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (11, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 6.21, 2, 11, 100, 2,
'2026-05-09 08:48:49.000000', 2, 100, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (12, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 12.24, 2, 12, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (13, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 17.91, 2, 13, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (14, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 22.41, 2, 14, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (15, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 25.92, 2, 15, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (16, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 29.61, 2, 16, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (17, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 17.01, 2, 17, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (18, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 19.62, 2, 18, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (19, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 12.51, 2, 19, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (20, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 20.52, 2, 20, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (21, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 15.12, 2, 21, 30, 3,
'2026-05-09 08:48:49.000000', 2, 30, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (22, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 35.91, 2, 22, 30, 3,
'2026-05-09 08:48:49.000000', 2, 30, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (23, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 16.92, 2, 23, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (24, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 11.61, 2, 24, 60, 3,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (25, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 44.91, 2, 25, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (26, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 70.20, 2, 26, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (27, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 23.31, 2, 27, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (28, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 53.91, 2, 28, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (29, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 11.52, 2, 29, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (30, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 15.21, 2, 30, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (31, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 6.21, 2, 31, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
INSERT INTO `group_buying` (`id`, `created_at`, `duration_minutes`, `end_time`, `group_price`, `max_per_user`,
`product_id`, `remaining_stock`, `required_members`, `start_time`, `status`, `total_stock`,
`updated_at`)
VALUES (32, '2026-05-09 09:48:49.000000', 1440, '2026-05-23 09:48:49.000000', 8.91, 2, 32, 60, 2,
'2026-05-09 08:48:49.000000', 2, 60, '2026-05-09 09:48:49.000000');
COMMIT;
-- ----------------------------
-- Table structure for group_buying_group
-- ----------------------------
DROP TABLE IF EXISTS `group_buying_group`;
CREATE TABLE `group_buying_group`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`completed_at` datetime(6) DEFAULT NULL,
`created_at` datetime(6) NOT NULL,
`current_members` int NOT NULL,
`expire_time` datetime(6) NOT NULL,
`group_buying_id` bigint NOT NULL,
`group_no` varchar(64) NOT NULL,
`leader_user_id` bigint NOT NULL,
`required_members` int NOT NULL,
`status` int NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `UK_9khnmu1trewcuahx5k2m0am51` (`group_no`),
KEY `FKqa4p2gmyfgv73i1278fncxyjd` (`group_buying_id`),
KEY `FKmc231ojxg44fsobry8h71p7ts` (`leader_user_id`),
CONSTRAINT `FKmc231ojxg44fsobry8h71p7ts` FOREIGN KEY (`leader_user_id`) REFERENCES `users` (`id`),
CONSTRAINT `FKqa4p2gmyfgv73i1278fncxyjd` FOREIGN KEY (`group_buying_id`) REFERENCES `group_buying` (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of group_buying_group
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for group_buying_member
-- ----------------------------
DROP TABLE IF EXISTS `group_buying_member`;
CREATE TABLE `group_buying_member`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`group_id` bigint NOT NULL,
`joined_at` datetime(6) NOT NULL,
`order_id` bigint DEFAULT NULL,
`status` int NOT NULL,
`user_id` bigint NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_group_user` (`group_id`, `user_id`),
KEY `FK2k1d07r2qich4sqquxisdkf7e` (`user_id`),
CONSTRAINT `FK2k1d07r2qich4sqquxisdkf7e` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`),
CONSTRAINT `FKplwuuxax228wqw6nr6pnmmllq` FOREIGN KEY (`group_id`) REFERENCES `group_buying_group` (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of group_buying_member
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for notifications
-- ----------------------------
DROP TABLE IF EXISTS `notifications`;
CREATE TABLE `notifications`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`created_at` datetime(6) NOT NULL,
`link` varchar(255) DEFAULT NULL,
`message` text NOT NULL,
`is_read` bit(1) NOT NULL,
`title` varchar(255) NOT NULL,
`type` varchar(32) NOT NULL,
`user_id` bigint NOT NULL,
PRIMARY KEY (`id`),
KEY `idx_notification_user_read` (`user_id`, `is_read`),
KEY `idx_notification_user_created` (`user_id`, `created_at`)
) ENGINE = InnoDB
AUTO_INCREMENT = 15
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of notifications
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for order_items
-- ----------------------------
DROP TABLE IF EXISTS `order_items`;
CREATE TABLE `order_items`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`created_at` datetime(6) NOT NULL,
`order_id` bigint NOT NULL,
`price` decimal(10, 2) NOT NULL,
`product_id` bigint NOT NULL,
`product_image_url` varchar(500) DEFAULT NULL,
`product_name` varchar(200) NOT NULL,
`quantity` int NOT NULL,
`subtotal` decimal(10, 2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of order_items
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for order_returns
-- ----------------------------
DROP TABLE IF EXISTS `order_returns`;
CREATE TABLE `order_returns`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`admin_remark` varchar(500) DEFAULT NULL,
`cancelled_at` datetime(6) DEFAULT NULL,
`completed_at` datetime(6) DEFAULT NULL,
`created_at` datetime(6) NOT NULL,
`description` text,
`images` varchar(2000) DEFAULT NULL,
`order_id` bigint NOT NULL,
`reason` varchar(500) NOT NULL,
`refund_amount` decimal(10, 2) NOT NULL,
`reject_reason` varchar(500) DEFAULT NULL,
`return_no` varchar(64) NOT NULL,
`return_tracking` varchar(100) DEFAULT NULL,
`reviewed_at` datetime(6) DEFAULT NULL,
`shipped_at` datetime(6) DEFAULT NULL,
`status` int NOT NULL,
`updated_at` datetime(6) DEFAULT NULL,
`user_id` bigint NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `UK_elu6c1jupuay4bgn9gffdsbcx` (`return_no`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of order_returns
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for orders
-- ----------------------------
DROP TABLE IF EXISTS `orders`;
CREATE TABLE `orders`
(
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '订单ID',
`user_id` bigint NOT NULL COMMENT '用户ID',
`product_id` bigint NOT NULL COMMENT '商品ID',
`quantity` int NOT NULL DEFAULT '1' COMMENT '购买数量',
`total_price` decimal(10, 2) NOT NULL COMMENT '总价',
`status` tinyint DEFAULT '1' COMMENT '状态1-待支付2-已支付3-已发货4-已完成5-已取消',
`order_type` tinyint DEFAULT '1' COMMENT '订单类型1-普通订单2-秒杀订单',
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`completed_at` datetime(6) DEFAULT NULL,
`group_no` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`order_no` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
`paid_at` datetime(6) DEFAULT NULL,
`payment_method` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`receiver_address` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`receiver_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`receiver_phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`remark` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`shipped_at` datetime(6) DEFAULT NULL,
`flash_sale_id` bigint DEFAULT NULL,
`group_buying_group_id` bigint DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_product_id` (`product_id`),
KEY `idx_status` (`status`),
KEY `idx_order_type` (`order_type`),
KEY `idx_created_at` (`created_at`),
KEY `idx_user_product` (`user_id`, `product_id`),
CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE,
CONSTRAINT `orders_ibfk_2` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci COMMENT ='订单表';
-- ----------------------------
-- Records of orders
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for product_reviews
-- ----------------------------
DROP TABLE IF EXISTS `product_reviews`;
CREATE TABLE `product_reviews`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`admin_reply` text,
`content` text NOT NULL,
`created_at` datetime(6) NOT NULL,
`order_id` bigint NOT NULL,
`product_id` bigint NOT NULL,
`rating` int NOT NULL,
`replied_at` datetime(6) DEFAULT NULL,
`status` int NOT NULL,
`updated_at` datetime(6) DEFAULT NULL,
`user_id` bigint NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_review_order_user_product` (`order_id`, `user_id`, `product_id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of product_reviews
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for products
-- ----------------------------
DROP TABLE IF EXISTS `products`;
CREATE TABLE `products`
(
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '商品ID',
`name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商品名称',
`description` text COLLATE utf8mb4_unicode_ci COMMENT '商品描述',
`price` decimal(10, 2) NOT NULL COMMENT '商品价格',
`stock` int NOT NULL DEFAULT '0' COMMENT '库存数量',
`image_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '商品图片URL',
`status` tinyint DEFAULT '1' COMMENT '状态1-上架0-下架',
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`category` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_name` (`name`),
KEY `idx_price` (`price`),
KEY `idx_stock` (`stock`),
KEY `idx_status` (`status`),
KEY `idx_created_at` (`created_at`)
) ENGINE = InnoDB
AUTO_INCREMENT = 33
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci COMMENT ='商品表';
-- ----------------------------
-- Records of products
-- ----------------------------
BEGIN;
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (1, '本地小青菜 500g', '社区周边基地直采小青菜,叶片鲜嫩,适合清炒、煮汤。', 3.99, 300, NULL, 1,
'2026-05-09 09:46:26', '2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (2, '有机上海青 500g', '有机种植上海青,口感清甜,适合家庭日常烹饪。', 5.80, 220, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (3, '山东黄瓜 500g', '新鲜脆嫩黄瓜,可凉拌、清炒或制作沙拉。', 4.50, 260, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (4, '番茄 500g', '自然成熟番茄,酸甜适中,适合炒蛋、煮汤。', 5.20, 240, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (5, '西兰花 500g', '精选西兰花,花球紧实,适合清炒或水煮。', 6.90, 180, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (6, '土豆 1kg', '黄心土豆,口感绵密,适合炖煮、清炒。', 4.90, 350, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (7, '胡萝卜 1kg', '新鲜胡萝卜,色泽鲜亮,适合炖汤、炒菜。', 5.60, 280, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (8, '紫皮洋葱 1kg', '紫皮洋葱,辛香浓郁,适合炒菜、凉拌。', 4.80, 260, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '新鲜蔬菜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (9, '红富士苹果 1kg', '脆甜多汁红富士苹果,适合日常水果补充。', 12.90, 200, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '时令水果');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (10, '赣南脐橙 1kg', '当季脐橙,果肉饱满,汁水充足。', 11.80, 180, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '时令水果');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (11, '海南香蕉 1kg', '自然熟香蕉,香甜软糯,适合早餐和加餐。', 6.90, 240, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '时令水果');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (12, '库尔勒香梨 1kg', '果皮薄、口感脆甜,适合家庭分享。', 13.60, 160, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '时令水果');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (13, '精品草莓 500g', '当季新鲜草莓,果香浓郁,建议冷藏保存。', 19.90, 120, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '时令水果');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (14, '阳光玫瑰葡萄 500g', '精选阳光玫瑰葡萄,清甜爽口。', 24.90, 100, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '时令水果');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (15, '鲜鸡蛋 30枚', '农场直供鲜鸡蛋,蛋黄饱满,适合日常烹饪。', 28.80, 180, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '肉禽蛋品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (16, '土鸡蛋 20枚', '精选土鸡蛋,蛋香浓郁,适合蒸蛋、煎蛋。', 32.90, 120, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '肉禽蛋品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (17, '冷鲜猪五花肉 500g', '冷链配送五花肉,肥瘦相间,适合红烧。', 18.90, 160, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '肉禽蛋品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (18, '冷鲜猪里脊 500g', '肉质细嫩,适合炒肉丝、炸猪排。', 21.80, 140, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '肉禽蛋品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (19, '鸡胸肉 500g', '低脂鸡胸肉,适合健身餐、沙拉、煎制。', 13.90, 180, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '肉禽蛋品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (20, '琵琶腿 1kg', '冷鲜琵琶腿,肉质紧实,适合卤制、烤制。', 22.80, 150, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '肉禽蛋品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (21, '鲜活鲫鱼 500g', '鲜活鲫鱼,适合炖汤、红烧。', 16.80, 90, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '水产海鲜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (22, '基围虾 500g', '鲜活基围虾,肉质弹嫩,适合白灼、油焖。', 39.90, 80, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '水产海鲜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (23, '巴沙鱼柳 500g', '去刺巴沙鱼柳,适合煎制、水煮鱼片。', 18.80, 110, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '水产海鲜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (24, '花蛤 500g', '新鲜花蛤,适合爆炒、煮汤。', 12.90, 100, NULL, 1, '2026-05-09 09:46:26', '2026-05-09 09:46:26',
'水产海鲜');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (25, '五常大米 5kg', '东北五常大米,米香浓郁,适合家庭主食。', 49.90, 130, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '米面粮油');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (26, '东北珍珠米 10kg', '颗粒饱满,口感软糯,适合日常家庭用米。', 78.00, 100, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '米面粮油');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (27, '高筋小麦粉 5kg', '适合制作馒头、面条、包子等面食。', 25.90, 150, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '米面粮油');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (28, '非转基因大豆油 5L', '家用桶装大豆油,适合煎炒烹炸。', 59.90, 120, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '米面粮油');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (29, '鲜牛奶 950ml', '低温鲜牛奶,口感醇厚,建议冷藏保存。', 12.80, 160, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '乳品饮品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (30, '原味酸奶 1kg', '家庭装原味酸奶,口感顺滑,适合早餐。', 16.90, 140, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '乳品饮品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (31, '豆浆 1L', '现磨风味豆浆,适合早餐搭配。', 6.90, 160, NULL, 1, '2026-05-09 09:46:26', '2026-05-09 09:46:26',
'乳品饮品');
INSERT INTO `products` (`id`, `name`, `description`, `price`, `stock`, `image_url`, `status`, `created_at`,
`updated_at`, `category`)
VALUES (32, '鲜榨橙汁 300ml', '冷藏鲜榨橙汁,酸甜清爽。', 9.90, 100, NULL, 1, '2026-05-09 09:46:26',
'2026-05-09 09:46:26', '乳品饮品');
COMMIT;
-- ----------------------------
-- Table structure for user_addresses
-- ----------------------------
DROP TABLE IF EXISTS `user_addresses`;
CREATE TABLE `user_addresses`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`address` varchar(255) NOT NULL,
`city` varchar(50) DEFAULT NULL,
`created_at` datetime(6) NOT NULL,
`district` varchar(50) DEFAULT NULL,
`is_default` bit(1) NOT NULL,
`name` varchar(100) NOT NULL,
`phone` varchar(20) NOT NULL,
`province` varchar(50) DEFAULT NULL,
`updated_at` datetime(6) DEFAULT NULL,
`user_id` bigint NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of user_addresses
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for user_favorites
-- ----------------------------
DROP TABLE IF EXISTS `user_favorites`;
CREATE TABLE `user_favorites`
(
`id` bigint NOT NULL AUTO_INCREMENT,
`created_at` datetime(6) NOT NULL,
`product_id` bigint NOT NULL,
`user_id` bigint NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_favorite_user_product` (`user_id`, `product_id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of user_favorites
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Table structure for users
-- ----------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users`
(
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`username` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '用户名',
`password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '密码(加密)',
`email` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '邮箱',
`phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
`status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '用户状态1-正常0-禁用',
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`last_login` datetime DEFAULT NULL COMMENT '最后登录时间',
`avatar` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`role` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`),
KEY `idx_username` (`username`),
KEY `idx_email` (`email`),
KEY `idx_phone` (`phone`),
KEY `idx_status` (`status`),
KEY `idx_created_at` (`created_at`),
KEY `idx_users_status` (`status`),
KEY `idx_users_last_login` (`last_login`),
KEY `idx_users_created_at` (`created_at`)
) ENGINE = InnoDB
AUTO_INCREMENT = 16
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci COMMENT ='用户表';
-- ----------------------------
-- Records of users
-- ----------------------------
BEGIN;
INSERT INTO `users` (`id`, `username`, `password`, `email`, `phone`, `status`, `created_at`, `updated_at`, `last_login`,
`avatar`, `role`)
VALUES (3, 'admin', '$2a$10$3V4zVguC/6eJjkuh78JqeufsNnjtHado/xUpGzrdLylF/TjH1ZoQ6', 'admin@example.com', '13800138000',
1, '2026-03-14 17:51:14', '2026-05-09 17:55:03', '2026-05-09 17:55:03', NULL, 'ADMIN');
COMMIT;
-- ----------------------------
-- View structure for active_flash_sales
-- ----------------------------
DROP VIEW IF EXISTS `active_flash_sales`;
CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `active_flash_sales` AS
select `fs`.`id` AS `id`,
`fs`.`product_id` AS `product_id`,
`p`.`name` AS `product_name`,
`p`.`price` AS `original_price`,
`fs`.`flash_price` AS `flash_price`,
`fs`.`flash_stock` AS `flash_stock`,
`fs`.`start_time` AS `start_time`,
`fs`.`end_time` AS `end_time`,
`fs`.`status` AS `status`,
`p`.`image_url` AS `image_url`
from (`flash_sales` `fs` join `products` `p` on ((`fs`.`product_id` = `p`.`id`)))
where ((`fs`.`status` = 2) and (`fs`.`start_time` <= now()) and (`fs`.`end_time` > now()) and (`p`.`status` = 1));
-- ----------------------------
-- View structure for order_statistics
-- ----------------------------
DROP VIEW IF EXISTS `order_statistics`;
CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `order_statistics` AS
select cast(`orders`.`created_at` as date) AS `order_date`,
count(0) AS `total_orders`,
sum((case when (`orders`.`status` = 1) then 1 else 0 end)) AS `pending_orders`,
sum((case when (`orders`.`status` = 2) then 1 else 0 end)) AS `paid_orders`,
sum((case when (`orders`.`status` = 4) then 1 else 0 end)) AS `completed_orders`,
sum((case when (`orders`.`order_type` = 2) then 1 else 0 end)) AS `flash_sale_orders`,
sum(`orders`.`total_price`) AS `total_amount`
from `orders`
group by cast(`orders`.`created_at` as date)
order by `order_date` desc;
SET FOREIGN_KEY_CHECKS = 1;