带上数据表,分析一下拼团活动该如何设计「终于解决」

带上数据表,分析一下拼团活动该如何设计「终于解决」拼团活动该如何设计 后台创建拼团活动 一个成熟的拼团活动包含的四个要素: 1 拼团成团商品 必须要带上或者关联商品,设置拼团时商品的价格,与原价格肯定要低,这样才能吸引更多的人拼团。 2 拼团人数 既

带上数据表,分析一下拼团活动该如何设计

拼团活动该如何设计

带上数据表,分析一下拼团活动该如何设计「终于解决」

 

后台创建拼团活动

一个成熟的拼团活动包含的四个要素:

1 拼团成团商品

必须要带上或者关联商品,设置拼团时商品的价格,与原价格肯定要低,这样才能吸引更多的人拼团。

 

2 拼团人数

既然是拼着购买,这里设置的人数肯定是不能低于2人的。要不然就不成团了。

 

3 拼团活动有效时间

一个拼团活动在开启到失效,需要设置一定时间,既然是一个活动,也就是商品在一定的时间段里能更好的达到促销。

 

这里就要设置一个可开团的时间,比如是24小时有效,用户进入商品详情可开团购买。

 

4 成团的有效时间

用户开团后与其他人组团的时间,该时间内如果没有组团成功那就是拼团失败,系统会自动退款。

 

实际拼团结束时间=发起拼团时间+成团有效时间(发起拼团时间=发起拼团人的支付时间)

 

看上面图片基本是要具备的。而其他的比如:拼团类型,拼团渠道,拼团方式,团长奖励等则根据业务需求来决定。

 

有注意到商品的图片还有另一种模式:助力拼团,助力人数,助力类型,这要针对返现拼团而设计。其实这种就类似就近的抖音或者拼多多开出的大额红包,而需要更多人去分享,助力得到红包那样,按照自己的需求来。

 

拼团创建成功后,拼团活动列表新增一条记录。

带上数据表,分析一下拼团活动该如何设计「终于解决」

 

 

 

拼团活动有各种状态,这里根据活动时间,比如:

拼团活动未开始(设置的时间大于现在的时间)

活动中:拼团活动开始时间大于当前时间且拼团活动结束时间大于当前时间;

已结束:拼团活动结束时间大于当前时间;

 

拼团的有效与否,这里用上下架字段来判断。如果活动未上架,不管活动有没有开始,还是活动中,都是不可开团的。

前端发起拼团

带上数据表,分析一下拼团活动该如何设计「终于解决」

 

 

 

 

从商品详情拼团,这是一个入口。开团后就有不同的拼团状态,订单ID个数和已参团人数不同,假设成团人数为2人。

 

1 待成团:发起者(团长)发起拼团但未支付,订单ID有该用户的下单数据,但是是未支付,表示拼团不成功的。

2 拼团中:发起者支付成功,开团成功,已参团人数为1。“拼团中”状态的订单不可取消,需拼团成功后才可取消。

3 拼团成功:成团人满且都支付成功,此时一个团购ID对应2个订单ID。

4 拼团失败:成团有效时间内,成团人数未满,拼团失败,系统自动退款。

 

开团后,则就有了拼团订单表,拼团订单有拼团失败,拼团成功的状态来断定这个拼团是否成功。

 

拼团设计根据具体问题具体分析,但是一定要具备以上4个要素。弄清楚需求后,根据需求编码基本不是什么问题。这里就不贴上代码了

 

而比较重要的还是数据表的设计,这里贴上数据表

相关数据表

数据表仅供参考,因为很多还是要根据自己的业务需要来。

拼团活动列表

CREATE TABLE `pintuan_activity_rewards` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `user_id` int(10) unsigned NOT NULL COMMENT "用户ID",
  `range` tinyint(3) unsigned NOT NULL DEFAULT "1" COMMENT "拼团位置:1. 线上拼团 2. 线下拼团",
  `group_activity_order_id` int(10) unsigned NOT NULL COMMENT "拼团订单ID",
  `order_id` int(10) NOT NULL COMMENT "销售单id",
  `order_status` tinyint(3) unsigned NOT NULL DEFAULT "0" COMMENT "奖励人:1, 团长奖励     2. 失败奖励 3. 返现拼团",
  `send_time` datetime DEFAULT NULL COMMENT "发放时间",
  `reward_type` tinyint(3) unsigned NOT NULL COMMENT "奖励类型
1:实物奖励-充值到账户
2:实物奖励-直接发货
3:优惠券奖励
4:积分奖励
5:现金返利
6.返利拼团",
  `reward_value` varchar(255) NOT NULL COMMENT "奖励 (reward_type=6时为返现金额)",
  `reward_send_type` tinyint(3) unsigned DEFAULT NULL COMMENT "奖励发放类型: 1=成团立即发送 2=配送单完成之后15天 3=订单完成后七天",
  `reward_expect_time` datetime DEFAULT NULL COMMENT "奖励预计发送时间",
  `status` tinyint(3) DEFAULT "1" COMMENT "发放状态 1.待发放 2.已发放 3.待审核",
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=855 DEFAULT CHARSET=utf8 COMMENT="拼团奖励表";

代码100分

总结

拼团活动的设计基本要素上面已经说到,离不开:拼团人数,拼团有效时间,拼团成团时间,成团商品。更多的扩展就要看需求了,上面的设计仅做参考,也希望能帮助到你。

代码100分CREATE TABLE `pintuan_activities` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `activity_title` varchar(255) NOT NULL COMMENT "活动标题",
  `activity_cover` varchar(255) NOT NULL COMMENT "活动封面",
  `share_title` varchar(255) NOT NULL COMMENT "分享标题",
  `share_desc` varchar(255) NOT NULL COMMENT "分享描述",
  `share_cover` varchar(255) NOT NULL COMMENT "分享封面",
  `start_time` datetime DEFAULT NULL COMMENT "活动开始时间",
  `end_time` datetime DEFAULT NULL COMMENT "活动结束时间",
  `expire_hour` tinyint(3) unsigned NOT NULL DEFAULT "24" COMMENT "成团有效时间",
  `is_on_sale` tinyint(3) unsigned NOT NULL DEFAULT "0" COMMENT "是否上架 1:上架 0:下架",
  `sort` tinyint(3) unsigned NOT NULL COMMENT "排序",
  `mode` tinyint(3) unsigned NOT NULL DEFAULT "1" COMMENT "拼团方式:1. 老带新 2. 所有用户",
  `type` tinyint(3) unsigned NOT NULL COMMENT "拼团类型:1. 普通拼团 2. 阶梯拼团 3. 加价拼团 4. 返现拼团",
  `range` tinyint(3) unsigned NOT NULL DEFAULT "1" COMMENT "拼团位置:1. 线上拼团 2. 线下拼团",
  `recommend` tinyint(3) NOT NULL DEFAULT "0" COMMENT "推荐",
  `goods_package_id` int(10) unsigned NOT NULL COMMENT "商品套餐ID",
  `original_price` decimal(10,2) unsigned NOT NULL COMMENT "原价",
  `active_rule` text COMMENT "拼团规则JSON格式",
  `is_help` tinyint(4) NOT NULL DEFAULT "0" COMMENT "是否助力0否,1是",
  `help_user_type` tinyint(4) NOT NULL DEFAULT "1" COMMENT "助力用户类型 1 老用户 2所有用户",
  `help_people_num` tinyint(4) unsigned NOT NULL DEFAULT "1" COMMENT "助力人数",
  `success_reward_rule` text COMMENT "成功奖励规则JSON格式 
reward_type:奖励类型
1:实物奖励-充值到账户
2:实物奖励-直接发货
3:优惠券奖励
4:积分奖励
5:现金返利
reward_value:奖励物品
reward_send_type:发放时间类型
1:成团立即发放
2:下一次配送完成后15天
3:订单完成后7天",
  `failure_reward_rule` text COMMENT "失败奖励规则JSON格式 
reward_type:奖励类型
1:实物奖励-充值到账户
2:实物奖励-直接发货
3:优惠券奖励
4:积分奖励
5:现金返利
reward_value:奖励物品
reward_send_type:发放时间类型
1:失败立即发放
2:退款审核后发放",
  `return_money_rule` text COMMENT "返现规则",
  `created_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=128 DEFAULT CHARSET=utf8 COMMENT="拼团活动表";

拼团订单表

CREATE TABLE `pintuan_activity_orders` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `order_sn` varchar(255) NOT NULL DEFAULT "" COMMENT "拼团订单SN",
  `business_id` int(10) NOT NULL COMMENT "商家ID",
  `user_id` int(10) unsigned NOT NULL COMMENT "拼主",
  `group_activity_id` int(10) unsigned NOT NULL COMMENT "拼团活动ID",
  `success_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `goods_package_id` int(10) unsigned NOT NULL COMMENT "拼团套餐ID",
  `status` int(10) unsigned NOT NULL DEFAULT "1" COMMENT "状态:1. 未支付 2.拼团中 3. 拼团成功 4. 拼团失败",
  `range` tinyint(3) unsigned NOT NULL DEFAULT "1" COMMENT "拼团位置:1. 线上拼团 2. 线下拼团",
  `people_number` int(10) unsigned NOT NULL COMMENT "成团人数",
  `remaining_people_number` int(10) unsigned NOT NULL COMMENT "剩余人数",
  `expire_hour` tinyint(3) unsigned NOT NULL COMMENT "成团有效时间",
  `created_at` datetime DEFAULT NULL COMMENT "创建时间",
  `updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1127 DEFAULT CHARSET=utf8 COMMENT="拼团订单表";

如果拼团有设置,比如拼团成功,团长有啥奖励,则就有拼团奖励表

 

CREATE TABLE `pintuan_activity_rewards` (
  `id` int(10unsigned NOT NULL AUTO_INCREMENT,
  `user_id` int(10unsigned NOT NULL COMMENT “用户ID”,
  `range` tinyint(3unsigned NOT NULL DEFAULT “1” COMMENT “拼团位置:1. 线上拼团 2. 线下拼团”,
  `group_activity_order_id` int(10unsigned NOT NULL COMMENT “拼团订单ID”,
  `order_id` int(10NOT NULL COMMENT “销售单id”,
  `order_status` tinyint(3unsigned NOT NULL DEFAULT “0” COMMENT “奖励人:1, 团长奖励     2. 失败奖励 3. 返现拼团”,
  `send_time` datetime DEFAULT NULL COMMENT “发放时间”,
  `reward_type` tinyint(3unsigned NOT NULL COMMENT “奖励类型 1:实物奖励-充值到账户 2:实物奖励-直接发货 3:优惠券奖励 4:积分奖励 5:现金返利 6.返利拼团”,
  `reward_value` varchar(255NOT NULL COMMENT “奖励 (reward_type=6时为返现金额)”,
  `reward_send_type` tinyint(3unsigned DEFAULT NULL COMMENT “奖励发放类型: 1=成团立即发送 2=配送单完成之后15天 3=订单完成后七天”,
  `reward_expect_time` datetime DEFAULT NULL COMMENT “奖励预计发送时间”,
  `status` tinyint(3DEFAULT “1” COMMENT “发放状态 1.待发放 2.已发放 3.待审核”,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
ENGINE=InnoDB AUTO_INCREMENT=855 DEFAULT CHARSET=utf8 COMMENT=“拼团奖励表”;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8973.html

(0)
上一篇 2023-02-18
下一篇 2023-02-18

相关推荐

  • 使用PyCharm编写Python程序

    使用PyCharm编写Python程序Python是一种高级语言,因其简单易学、可读性强、跨平台、强大的库等特点在各个领域应用广泛。而PyCharm是一个功能强大的Python IDE,提供了丰富的工具和环境,方便快捷地编写、调试和测试Python程序。本文将会详细介绍如何使用PyCharm编写Python程序,并让读者更深入的了解这个强大而又易用的工具。

    2024-08-08
    31
  • Mysql主从复制_sqlserver主从复制

    Mysql主从复制_sqlserver主从复制主从复制是msql数据库的高可用 读写分离 容灾备份 等的基本要求 在这主从复制之前我们需要准备以下条件 保证master数据库和从数据库的mysql版本一致 matser和从数据防火墙关闭 数据库端

    2023-01-24
    168
  • 用pip安装OpenCV

    用pip安装OpenCVOpenCV是一个基于BSD协议开源发行的跨平台计算机视觉库,它是专门用于图像处理和计算机视觉方面的开源库。随着计算机视觉的热度不断升温,OpenCV也变得越来越重要。本文将详细介绍如何使用pip来安装OpenCV。

    2024-08-20
    30
  • SQLPro Studio for Mac 2020.45 数据库管理器[通俗易懂]

    SQLPro Studio for Mac 2020.45 数据库管理器[通俗易懂]SQLPro Studio mac 是Mac上一款简单,强大的macOS 数据库管理器,使用sqlpro studio mac可以创建表格,自定义查询,自动完成和语法突出显示,同时可以执行多个查询,…

    2023-02-28
    148
  • 安装hadoop前的准备工作_hadooplinux搭建

    安装hadoop前的准备工作_hadooplinux搭建这个hadoop的搭建是以比赛前的练习为目的的,所以我直接以root用户来搭建hadoop,主要也是方便我自己以后复习用的 需要的软件:vmware15.5,xshell6,xftp6,jdk Lin

    2022-12-21
    141
  • tomcat配置oracle数据源_怎么在oracle下载jdk

    tomcat配置oracle数据源_怎么在oracle下载jdk仅限于自己学习使用 新进公司,需要安装jdk1.6,tomcat6, oracle和pl/sql 先是jdk1.6,安装后配置环境变量,都在系统变量里,在cmd,分别打出 java -version,

    2023-02-21
    151
  • MySQL 异常—— InnoDB 引擎故障

    MySQL 异常—— InnoDB 引擎故障异常来源 机房服务器异常掉电,通电后,MySQL无法启动。报错如下: 2020-05-11T10:30:09.270993Z 0 [ERROR] InnoDB: Unable to lock ./i…

    2023-03-28
    167
  • ElasticSearch 分词器,了解一下「建议收藏」

    ElasticSearch 分词器,了解一下「建议收藏」这篇文章主要来介绍下什么是 Analysis ,什么是分词器,以及 ElasticSearch 自带的分词器是怎么工作的,最后会介绍下中文分词是怎么做的。 首先来说下什么是 Analysis: 什么是

    2023-02-03
    163

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注