您的位置:首页 > 移动开发 > 微信开发

微信小程序拼团功能之表结构

2017-12-07 19:14 561 查看
做拼团功能首先我对需求看了一下,对于单个的拼团商品要求有拼团的人数限制,拼团的活动时间倒计时,以及开团后参团时间倒计时等需求。开团人是团长与参团人加以区分,同时一个拼团有多人参加,付款与未付款对拼团成功的影响,以及未付款订单(微信支付接口要求同一个订单的支付价格必须相同,否则再次调用时返回订单重复的报错)再次支付时价格改变问题等,研究后设了四个表如下:

拼团表的设计:拼团商品表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(11) DEFAULT NULL COMMENT '拼团人数',

  `addtime` datetime DEFAULT NULL COMMENT '创建日期',

  `endtime` datetime DEFAULT NULL COMMENT '结束时间',

  `ptstatus` tinyint(1) DEFAULT '0' COMMENT '0:未付款 1:拼团中,2:拼团成功, 3:拼团失败, ',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=75 DEFAULT CHARSET=utf8 COMMENT='用户拼团表';

CREATE TABLE `jkd_ptcode_info` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `uid` int(11) DEFAULT NULL COMMENT '用户id',

  `ptgoods_norm_id` int(11) DEFAULT NULL COMMENT '拼团商品规格id',

  `pid` varchar(50) DEFAULT NULL COMMENT '拼团id',

  `ptcode` varchar(50) DEFAULT NULL COMMENT '拼团编号',

  `ptordercodeTrue` varchar(52) DEFAULT NULL,

  `ptordercode` varchar(50) DEFAULT NULL COMMENT '拼团虚拟订单',

  `ptrefundcode` varchar(50) DEFAULT NULL COMMENT '退款单编号',

  `ptgoods_name` varchar(250) DEFAULT NULL COMMENT '商品名称',

  `norm_name` varchar(250) DEFAULT NULL COMMENT '规格名称',

  `per_price` varchar(20) DEFAULT NULL COMMENT '单价',

  `price` varchar(20) DEFAULT NULL COMMENT '付款金额',

  `name` varchar(20) DEFAULT NULL COMMENT '收货人',

  `addtime` datetime DEFAULT NULL COMMENT '参团日期',

  `province` varchar(50) DEFAULT NULL COMMENT '省',

  `city` varchar(50) DEFAULT NULL COMMENT '市',

  `county` varchar(50) DEFAULT NULL COMMENT '县',

  `address` varchar(255) DEFAULT NULL COMMENT '详细地址',

  `tel` varchar(15) DEFAULT NULL COMMENT '手机号码',

  `orderstatus` tinyint(1) DEFAULT '0' COMMENT '0:初始,1:已付款, 2-已发货 3-已收货 4-已评价,5:已退款',

  `is_header` tinyint(1) DEFAULT '0' COMMENT '是否团长 0-不是 1-是',

  `lack` tinyint(1) DEFAULT '0' COMMENT '是否缺货(0:否,1:是)',

  `number` int(10) DEFAULT '0' COMMENT '数量',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=95 DEFAULT CHARSET=utf8 COMMENT='拼团明细表';

CREATE TABLE `jkd_ptgoods` (

  `ptgoods_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT '拼团商品自增id',

  `ptgoods_name` varchar(120) DEFAULT '' COMMENT '拼团商品名称',

  `price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '商品价格(默认价格)',

  `pt_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '拼团价格',

  `pt_size` int(10) DEFAULT '2' COMMENT '拼团人数(2-10)',

  `pt_validhours` int(10) DEFAULT '24' COMMENT '拼团有效期(默认24小时)',

  `start_time` datetime NOT NULL COMMENT '拼团开始时间',

  `end_time` datetime NOT NULL COMMENT '拼团结束时间',

  `ptgoods_number` smallint(5) NOT NULL DEFAULT '0' COMMENT '商品库存数量',

  `description` varchar(255) NOT NULL DEFAULT '' COMMENT '商品剪短描述',

  `content` text COMMENT '商品详细描述',

  `ptgoods_thumb` varchar(255) DEFAULT NULL COMMENT '商品微缩图',

  `ptgoods_imgs` varchar(255) DEFAULT NULL COMMENT '商品详情轮播图',

  `sort` smallint(4) DEFAULT '0' COMMENT '该商品显示顺序(越大越靠后)',

  `addtime` int(11) DEFAULT '0' COMMENT '商品添加
8e07
时间',

  `uptime` int(10) DEFAULT '0' COMMENT '修改时间',

  `is_sale` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '销售,1,是;0,否',

  `pt_times` mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '拼团次数',

  PRIMARY KEY (`ptgoods_id`)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='商品表';

CREATE TABLE `jkd_ptgoods_norm` (

  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,

  `ptgoods_id` int(11) unsigned NOT NULL COMMENT '商品自增id',

  `norm_id` int(10) DEFAULT NULL COMMENT '规格id',

  `number` varchar(50) DEFAULT '' COMMENT '规格商品数量',

  `is_show` tinyint(1) DEFAULT NULL COMMENT '是否显示 0 隐藏 1 显示',

  `price` varchar(50) DEFAULT NULL COMMENT '规格价格',

  `pt_price` varchar(50) DEFAULT NULL COMMENT '拼团价格',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='拼团商品规格表';

建立这几个表后基本可以满足拼团功能的要求了。下篇说说我具体实现的过程。。。。。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: