积分商城功能表结构设计

1、会员积分记录表(qing_score)
来自的用户user_id,签到和兑换记录字段score(签到为正值,兑换为负值),积分信息info

CREATE TABLE `qing_score` (`id` int(10) NOT NULL AUTO_INCREMENT,`user_id` int(10) NOT NULL,`score` int(10) NOT NULL,`time` int(10) NOT NULL,`info` varchar(30) DEFAULT NULL,`source` tinyint(1) NOT NULL DEFAULT '1' COMMENT '1签到2推荐',PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=72 DEFAULT CHARSET=utf8 COMMENT='会员积分';

2、积分兑换商品表qing_score_goods
记录兑换的商品需要多少积分,字段score表示需要的积分数量才能兑换的商品

CREATE TABLE `qing_score_goods` (`id` int(11) NOT NULL AUTO_INCREMENT,`title` varchar(110) NOT NULL,`thumb` varchar(110) NOT NULL,`description` varchar(100) DEFAULT NULL,`content` text,`time` int(10) NOT NULL,`score` int(10) NOT NULL,`listorder` int(10) NOT NULL DEFAULT '0',PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='积分商品表';

3、积分换取商品记录表score_record
user_id记录哪个用户,goode_id记录哪个商品,score使用的积分数

CREATE TABLE `qing_score_record` (`id` int(11) NOT NULL AUTO_INCREMENT,`score` int(11) NOT NULL,`goods_id` int(11) NOT NULL,`status` int(11) NOT NULL DEFAULT '1',`empress` varchar(100) DEFAULT NULL,`time` int(11) NOT NULL,`user_id` int(10) NOT NULL,PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COMMENT='积分兑换记录';

会员签到功能实现

1、检测已登录的该用户今天是否签到,已经签到则今天不再签到
2、今天未签到则插入score积分记录表中

//会员签到public function sign(){//验证用户是否登录$sessionUserData=$this->isLogin();//先检测今天是否签到$scoreData=Db::name('score')->where('user_id',$sessionUserData['id'])->whereDay('time')->where('source',1)->order('id desc')->find();if(!empty($scoreData)){return alert('你今天已经签到了','index',5);}$res=Db::name('score')->insert(['user_id'=>$sessionUserData['id'],'time'=>time(),'score'=>10,'info'=>'签到赚取积分']);if($res){return alert('签到成功','index',6);}else{return alert('签到失败','index',5);}}

积分换购流程

1、积分商品详情
1)根据id查找积分商品
2)统计该用户积分

实现代码:

public function score_goods_detail(){$sessionUserData=$this->isLogin();$id=input('id');//1、根据id查找积分商品$scoreGoodsData=Db::name('score_goods')->find($id);if(empty($scoreGoodsData)){return alert('没有改商品','score_shop',5);}//2、统计该用户积分$total_socre=Db::name('score')->where('user_id',$sessionUserData['id'])->sum('score');return view('',['scoreGoodsData'=>$scoreGoodsData,'total_socre'=>$total_socre,'left_menu'=>32]); }

2、积分换购
1)根据id查找积分商品
2)统计用户积分并判断该用户积分是否大于积分商品里选中的商品的积分
3)开启异常捕捉,积分换购的积分换取商品记录表score_record插入一条记录,同时插入会员积分记录表负数积分信息

实现代码:

public function score_exchange(){$sessionUserData=$this->isLogin();$id=input('id');//1、根据id查找积分商品$scoreGoodsData=Db::name('score_goods')->find($id);if(empty($scoreGoodsData)){return json(['status'=>-1,'msg'=>'没有该商品']);}//2、统计用户积分并判断该用户积分是否大于积分商品里选中的商品的积分$total_socre=Db::name('score')->where('user_id',$sessionUserData['id'])->sum('score');if($total_socre>$scoreGoodsData['score']){//3、开启异常捕捉,积分换购的积分换取商品记录表score_record插入一条记录,同时插入会员积分记录表负数积分信息try{//积分换购表Db::name('score_record')->insert(['user_id'=>$sessionUserData['id'],'score'=>$scoreGoodsData['score'],'time'=>time(),'goods_id'=>$id]);Db::name('score')->insert(['user_id'=>$sessionUserData['id'],'score'=>0-$scoreGoodsData['score'],'time'=>time(),'info'=>'商品换购']);}catch (\Exception $e){return json(['status'=>-1,'msg'=>'服务端异常,换购失败']);}return json(['status'=>1,'msg'=>'商品换购成功']);}else{return json(['status'=>-1,'msg'=>'积分不足']);}}

积分商城功能表设计结构以及积分功能模块相关推荐

  1. mysql设计积分兑换表_积分系统数据库表设计.docx

    积分系统数据库表设计 文件编号:JHDZ/SJ 密 级: 云上城积分功能数据库设计文档 项目名称:<云上城>项目代号:XXX版 本:V1.0编制单位:平台运营编制日期:2014-10-08 ...

  2. 积分商城系统开发_专业提供积分商城系统定制解决方案

    积分商城系统开发_专业提供积分商城系统定制解决方案 一.什么是积分商城? 1.积分商城的第一种理解,偏重于"积分".即积分商城是专门为消化"积分"这一奖励而特设 ...

  3. 产品需求文档、需求结构图、数据字典、全局说明、用例描述、需求描述、逻辑流程、原型设计、页面交互、登录注册、词汇表、数据统计、用户表设计、接口需求、功能清单、业务流程图、Axure原型、prd、文档实例

    产品需求文档.需求结构图.数据字典.全局说明.用例描述.逻辑流程.原型设计.页面交互.登录注册.词汇表.数据统计.用户表设计.接口需求.功能清单.业务流程图.Axure原型.prd.产品需求文档实例 ...

  4. atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 1.音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能。 铃声 功能。。 音频切割(按

    atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能. 铃声 功能.. 音频切割(按照副歌部分 ...

  5. atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能。 铃声 功能。。 音频切割(按照副歌部

    atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能. 铃声 功能.. 音频切割(按照副歌部分 ...

  6. 积分运营系列—一款优秀积分商城产品需具备的准则与功能梳理

    我们常说的商业积分的应用,往往有两个核心目的: 给予商业预期的用户行为予回报,导向更深入.更频繁的核心业务. 维护用户(客户),绑定客户,引导低价值用户转化为高价值用户. 积分体系是否能够达到企业期待 ...

  7. 商城数据库表设计介绍

    前言 一个商城系统,需要有,用户表,商品表,商品分类表,购物车表,订单表,订单明细表,支付信息表,以及物流信息表. 使用PowerDesigner对数据表以及他们之间的关系进行了粗略的设计得出了如下E ...

  8. 关于商商城商品表设计(二)

    上一节<关于商城系统中商品表的设计>中我说数据库设计有一块硬伤,到底在哪儿?今天我们来进行分析. 看下图: 看上图中有什么地方是相同的? "品牌"→"三星&q ...

  9. java评论回复表设计_评论回复功能数据表设计

    CREATE TABLE `comment` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `topic_id` int(10) unsigned ...

  10. 商品属性与商品产品之间的表设计结构,供参考!

    这张表为[属性表] 这张表为[产品-属性]表(关联表)

最新文章

  1. 怀卡托大学硕士计算机科学,2020年怀卡托大学研究生一般几年毕业
  2. Matlab guide菜单+快捷菜单的使用
  3. 桥接模式Bridge
  4. 2021辽宁省大学生程序设计竞赛题解
  5. 有哪些开源的 BI 工具
  6. 采集器 mysql_搜索结果 : mysql - 火车采集器帮助中心
  7. SEO入门知识3:不能传递权重的链接
  8. 24点小游戏(C语言实现)
  9. 宝塔部署网站无法访问
  10. Gps测量两点之间的距离
  11. c# 数字转换为中文数字
  12. python列表lambda表达式排序sort(key=lambda x:x[1])
  13. 二维码生成、扫描、图片识别(Zxing)
  14. python积木式编程_TurnipBit—MicroPython开发板:从积木式编程语言开始学作小小创客...
  15. 【极坐标下牛顿—拉夫逊潮流计算(matlab版+python版)】
  16. elementui解决input show-word-limit挡住文字问题
  17. FPGA学习5-PL和PS互联
  18. 处理Emoji表情(unicode)
  19. 《CISP》(十)软件安全开发
  20. Linux之inode

热门文章

  1. 为什么我们要用密码生成器?
  2. Vue - 选择器拼音快速检索目标(pinyin-match)
  3. Chrome谷歌浏览器Flash Player被屏蔽如何解决
  4. 【数学建模】随机抽样的三种方法(简单随机抽样、分层抽样、系统抽样),自定义封装函数直接调用
  5. apkg格式怎么打开_jpg怎么转换成pdf?再不学就晚了
  6. 使用PS旋转单个图层
  7. 如何快速抠图?图片怎样去底色变透明?
  8. 网站搭建教程(详细步骤 )
  9. 深入浅出DDR系列(二)--DDR工作原理
  10. 多视图几何三维重建实战系列之COLMAP