【需求设计1】VIP积分系统无聊YY
RT,想到什么就写什么呗,这是最简单的方式,顺便给自己做一个记录,反正自己记忆力也不太好。本文是仿陆金所的积分系统,自己YY的一套东西。
首先我想做一个VIP兑换投资卷的功能:

我们先来确定一些我知道的表:
首先是关于“竞拍”相关的表:
0.商品分类表(后台管理员权限创建):
- ID
- 类别名称
- 创建时间
- 备注
1.商品详情表:
商品详情表当中包含如下内容:
- 商品的标题
- 商品的副标题(副标题可以为空)
- 市场参考价
- 当前价格
- 开始时间
- 结束时间
- 起拍价
- 加价幅度
- 竞拍获胜人数
- 出价次数
- 商品详情(TEXT类型)
- 商品类别ID
2.商品 - 用户 - 出价明细表
- ID
- UserId
- 出价价格
- 出价时间
然后是用户和积分相关的表
首先是用户积分表:
- ID
- 用户ID
- 用户总积分
用户积分日志表:
- Id
- 用户ID
- 类型(获取的积分或者消费积分或者过期积分)
- 时间
- 积分操作(如:增加积分+2,或者减少积分-2)
- 详细说明(如:参与抽奖抽中2)
收货地址表(假设一个人最多可以有10个收货地址,需要为收货地址进行,增,删,查,改的操作(后台管理员权限也一样的)):
- ID
- USERID
- 收货人姓名
- 收货人手机号码
- 收货人所在省份
- 收货人所在城市
- 收货人所在区县
- 收货人详细地址(用户自由填写)
- 邮编
- 是否默认地址。
商品订单表:
- ID
- 订单编号
- 商品类别
- 活动编号(对应活动的唯一标识)
- 触发时间
- 状态(比如已完成,代扣款,待发货等等)
用户 - 翻牌():

- ID
- 用户ID
- 抽中积分
- 中奖时间
- 累计签到天数(这个可以讨论下是否要有,因为累计签到天数是要每天点击然后触发一次,那样会频繁更新数据库)
存在的问题:冻结的积分怎么办?竞拍中的积分会被冻结的!
用户可以查询最近3个月,最近6个月,最近1年的积分记录,或者是自选时间,签到表我们怎么设计?这是个问题。
签到规则(仿陆金所):每日签到得6通币;每月累计签到16天奖100通币。
签到是和积分有着密不可分的关系的。首先,签到增加的,就是积分的数量。这是一个UPDATE操作。
签到还必须往积分日志表里面插入一条新的数据。
签到 -> 翻牌 都是可以增加积分的,签到了才可以翻3张卡片。
建立签到表示有实际意义的:

注意:翻牌实际上是一个先减少积分,然后增加积分的过程。减少积分是同步的操作,增加积分可以做成异步的。
难点:
1.实时更新IFRAME上面的积分数字。
2.牌后面的奖券的不确定性,因为不能实时载入在页面中。
3.网站的安全性(此处被攻击的可能性比较大)
4.翻牌等操作需要AC端的登陆操作,如果SESSION过期,然后翻牌操作结束。
注意:如果是兑换商品的话,那么有一个问题,就是有些商品并不是全额积分去兑换。而是积分+现实货币。
这部分,怎么去设计,怎么去平衡也是一个问题。
【需求设计1】VIP积分系统无聊YY的更多相关文章
- 搭建属于自己的VIP积分系统(1)
很久没写博客了,如果有写得不好的地方,还请多多见谅. 架构设计 需求分析 这篇文章主要是介绍此VIP系统的基础架构.说实在的,我其实对 架构方面也不是很懂,我这套框架 还是拿别人的东西改过来的,并不是 ...
- Java生鲜电商平台-会员积分系统的设计与架构
Java生鲜电商平台-会员积分系统的设计与架构 说明:互联网平台积分体系主要用于激励和回馈用户在平台的消费行为和活动行为,一个良好的积分体系可以很好的提升用户的粘性及活跃度. 一.互联网平台积分体系设 ...
- Oracle数据库设计实例-实时生产效率系统数据库设计
Oracle数据库设计实例-实时生产效率系统数据库设计 引言 1.1 设计前提 某部门经理要求IT部门设计一个流水线实时生产效率系统,用来统计实时的生产量和效率.流水线有数百条,实时间隔为1min. ...
- 基于ZooKeeper,Spring设计实现的参数系统
一.简介 基于ZooKeeper服务端.ZooKeeper Java客户端以及Spring框架设计的用于系统内部进行参数维护的系统. 二.设计背景 在我们日常开发的系统内部,开发过程中最常见的一项工作 ...
- 设计和开发ETL系统(一)——ETL过程综述
在这部分将按照设计和实现ETL系统的流程展开,将上一个部分的那些子系统按照提取数据.清洗和一致化.向呈现服务器提交以及管理ETL环境等四个方面进行了分类.(是不是说对ETL主要就是掌握这四个方面的内容 ...
- UI设计中蕴涵着系统重要的数据结构与功能设计
UI设计中蕴涵着系统重要的数据结构与功能设计 UI设计中的用户需求,事件(用例)驱动
- [需求设计]从一个小需求感受Redis的独特魅力
分享一个简单的小需求应该怎么设计实现以及有关Redis的使用 Redis在实际应用中使用的非常广泛,本篇文章就从一个简单的需求说起,为你讲述一个需求是如何从头到尾开始做的,又是如何一步步完善的.之前写 ...
- 基于STM32+华为云IOT设计智能称重系统
摘要:选择部署多个重量传感器和必要的算法.通过WiFi 通信模块.GPS定位模块,采集车辆称重数据一地理位置信息,并通过网络发送至云平台,设计图形化UI界面展示称重.地图位置等重要信息,实现对称重系统 ...
- 性能测试day06_需求设计的学习(性能重中之重,思维方向永远重于工具)
今天接着来学习下性能知识,本来是应该先学习一下LR的用法的,不过听完云层大大的课之后,我感觉工具没有这一篇来的重要,我们知道性能有三大步骤:负载->监控->调优,但是在这个之前我们首先要搞 ...
随机推荐
- vue2.0实践的一些细节
最近用vue2.0做了个活动.做完了回头发现,好像并没有太多的技术难点,而自己好像又做了比较久...只能说效率有待提升啊...简单总结了一些比较细节的点. 1.对于一些已知肯定会有数据的模块,先用一个 ...
- 关于开启.NET在线提升教育培训的通知! - 可在此页面观看在线直播!
年前在线公开课程通知: 近期在开启VIP课程,隔天讲一次,年前其它时间插空讲公开课,主题:设计模式系列 1:培训 - 大概不会讲的内容: 1:不讲系列. 2:不讲入门. 3:不讲我不懂的! 2:培训 ...
- 一次修改闭源 Entity Provider 程序集以兼容新 EntityFramework 的过程
读完本文你会知道,如何在没有源码的情况下,直接修改一个 DLL 以去除 DLL 上的强命名限制,并在该程序集上直接添加你的“友元程序集(一种特殊的 Attribute,将它应用在程序集上,使得程序集内 ...
- .Net多线程编程—预备知识
1 基本概念 共享内存的多核架构:一个单独的封装包内封装了多个互相连接的未处理器,且所有内核都可以访问主内存.共享内存的多核系统的一些微架构,例如内核暂停功能,超频. 内核暂停功能:当使用内核不多的时 ...
- ExtJS 4.2 Grid组件的单元格合并
ExtJS 4.2 Grid组件本身并没有提供单元格合并功能,需要自己实现这个功能. 目录 1. 原理 2. 多列合并 3. 代码与在线演示 1. 原理 1.1 HTML代码分析 首先创建一个Grid ...
- ActionContext.getContext().getSession()
ActionContext.getContext().getSession() 获取的是session,然后用put存入相应的值,只要在session有效状态下,这个值一直可用 ActionConte ...
- 易用BPM时代,软件开发者缘何选择H3?
近年来,企业级软件开发市场暗流汹涌,呈现出多种态势.软件开发团队规模趋于小型化,工作方式趋于快捷化,超过半数的软件开发者在工作中会选择使用易用的软件开发工具.随着流程管理越来越受到企业的重视,流程开发 ...
- 基于Ubuntu Hadoop的群集搭建Hive
Hive是Hadoop生态中的一个重要组成部分,主要用于数据仓库.前面的文章中我们已经搭建好了Hadoop的群集,下面我们在这个群集上再搭建Hive的群集. 1.安装MySQL 1.1安装MySQL ...
- IIS启动失败,启动Windows Process Activation Service时,出现错误13:数据无效 ;HTTP 错误 401.2 - Unauthorized 由于身份验证头无效,您无权查看此页
因为修改过管理员账号的密码后重启服务器导致IIS无法启动,出现已下异常 1.解决:"启动Windows Process Activation Service时,出现错误13:数据无效&quo ...
- Outfit7 庆祝其开发工作大获丰收
走不寻常路之经验总结 每位合格应用开发人员都拥有相同的目标:灵机一动,构建独创性原型,克服各种困难,最终吸引投资者将其想法推向市场. 名声.财富以及构建更多应用的机会将接踵而至. 焦虑.改善和重复是开 ...