1. 数据库设计 ```sql -- 优惠券表 CREATE TABLE coupons ( id VARCHAR(32) PRIMARY KEY, code VARCHAR(16) UNIQUE NOT NULL, type ENUM(discount, cash, percentage) NOT NULL, value DECIMAL(10,2) NOT NULL, min_order_amount DECIMAL(10,2) DEFAULT 0, start_time DATETIME NOT NULL, end_time DATETIME NOT NULL, status ENUM(active, used, expired) DEFAULT active, created_at DATETIME DEFAULT CURRENT_TIMESTAMP );
-- 用户优惠券关联表 CREATE TABLE user_coupons ( id VARCHAR(32) PRIMARY KEY, user_id VARCHAR(32) NOT NULL, coupon_id VARCHAR(32) NOT NULL, obtained_at DATETIME DEFAULT CURRENT_TIMESTAMP, used_at DATETIME, order_id VARCHAR(32), FOREIGN KEY (coupon_id) REFERENCES coupons(id), INDEX (user_id), INDEX (status) );
-- 用户互动记录表 CREATE TABLE user_interactions ( id VARCHAR(32) PRIMARY KEY, user_id VARCHAR(32) NOT NULL, type ENUM(signin, share, task, game) NOT NULL, interaction_data JSON, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, INDEX (user_id), INDEX (type) ); ```
2. 后端API设计 ``` GET /api/coupons/available - 获取用户可用优惠券 POST /api/coupons/claim - 领取优惠券 POST /api/interactions/signin - 用户签到 GET /api/interactions/tasks - 获取可完成任务 POST /api/interactions/share - 记录分享行为 ```