做拼团功能首先我对需求看了一下,对于单个的拼团商品要求有拼团的人数限制,拼团的活动时间倒计时,以及开团后参团时间倒计时等需求。开团人是团长与参团人加以区分,同时一个拼团有多人参加,付款与未付款对拼团成功的影响,以及未付款订单(微信支付接口要求同一个订单的支付价格必须相同,否则再次调用时返回订单重复的报错)再次支付时价格改变问题等,研究后设了四个表如下:
拼团表的设计:拼团商品表jkd_ptgoods 用户拼团表 jkd_ptcode 拼团商品规格表 jkd_ptgoods_norm 规格表 jkd_norm
CREATE TABLE jkd_norm (
norm_id int(11) unsigned NOT NULL AUTO_INCREMENT,
norm_name varchar(50) DEFAULT NULL COMMENT ‘规格名’,
is_show tinyint(1) DEFAULT NULL COMMENT ‘是否显示 0 隐藏 1 显示’,
sort smallint(5) DEFAULT NULL COMMENT ‘排序 越打越靠后’,
PRIMARY KEY (norm_id)
) ENGINE=MyISAM AUTO_INCREMENT=21 DEFAULT CHARSET=utf8 COMMENT=’规格详情表’;
CREATE TABLE jkd_ptcode (
id int(11) NOT NULL AUTO_INCREMENT,
uid int(11) DEFAULT NULL COMMENT ‘团长id’,
ptgoods_id int(11) DEFAULT NULL COMMENT ‘拼团商品id’,
ptcode varchar(50) DEFAULT NULL COMMENT ‘拼团编号’,
ptnumber int