小程序项目业务逻辑回忆4

用户查询积分

积分获取规则如下:

邀请其他用户购票参会,将获取该用户花费金额的10%获取积分。

邀请用户注册参观展览,需注册并现场签到,将获取10分的奖励积分。

邀请企业用户参展,将获取企业参展金额的5%获取到积分。

上述3条积分获取规则分条进行计算

用户在邀请其他用户注册或者购票时会将自己的邀请码拼接到分享的注册或购票的请求地址处,其他用户通过链接进行操作时,字符串截取可获得到邀请码

情况1:邀请的是展商,根据邀请码去exhibitor_applications展商报名表中遍历查询是否存在被邀请的展商,如果存在则将events中point_time注册展览获应取积分计入该用户的总积分当中

情况2:邀请的是个人用户,这时需根据被邀请人的用户ID,去signin_record签到信息表中去查询被邀请人所拥有的门票,然后通过signin_records表中的ticket_type去判断是会议门票还是展览门票

情况2.1:如果是展览门票,即不花钱的那种,先判断登记时间sign_in_time登记时间即门票生成时间是否在被邀请人注册的14日以内,如果是则在用户获取积分列表中展示该项记录,此时将events表中的point_time注册展览获取积分(此项是商家通过后台系统输入的)作为积分数量进行显示,将signin_records签到信息表中的sign_in_status签到状态作为状态显示在列表上,其实就相当于列出用户积分获取的明细列表,但是否计入为有效积分还需进行逻辑判断,判断sign_in_status的签到状态,如果签到了即签到状态为是,才将events表中的point_time作为积分计入到邀请人用户user表中的points中

情况2.2:如果为会议门票,即花钱的那种,同样首先判断登记时间sigin_in_time门票激活时间是否在邀请人注册14日内,(情况2.1与情况2.2中注册时间与门票生效时间超过14天,积分分数都不作数,有鼓励是否参展摇摆不定的人买票的意思),如果在14天以内,查询门票的折后价格discount乘上events表中的point_proportion付款返还率(10%,商家可以后台修改)作为积分数量显示在拟获取积分列表中,默认签到状态为是(毕竟花钱了,来不来都应算作积分),最后将积分计入到邀请人用户user表中的points里

上述业务其实积分查询最合理的方式,应该是将积分获取过程分散写在各个业务中,用户激活票劵参展签到积分应及时生效,将积分明细中的积分获取过程的数据记录在一张专门记录积分明细的表中.但是为简化业务,参展二维码签到为人工验票,没有使用物联设备,情况1与情况2.1没法实时更新数据,展商入住状态status与用户展览签到状态sign_in_status是展会过去后期通过人工在后台将状态进行修改的,这与展会举办时长有关,举办时长不长人工验票更为合算,举办时长够长机器验票数据更新更为安全可靠.

积分在展会过后还存在提现过程,根据UI设计积分是能够分段提取的,因此存在withdrawal_requests积分提现请求表,此时累计积分应减去提现积分,并且提现积分理应显示在积分明细列表中

数据库设计过程中,应将一些通过UI界面看不见的字段合理设计到数据库各个表中,比如user用户信息表中除了看的见的字段姓名、电话号等,还应将注册时间registration_time,邀请码invitation_user邀请人的邀请码,points积分余额等字段记录在内,方便逻辑判断与查询,展商入驻状态与用户签到状态都应设计在对应的数据表中

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/857339.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

诸茅的黄昏

内容提要 白酒大陆的坍塌终于到达茅台的地盘,一切发生得太快了。突然间,深厚的护城河消失了,医药茅、眼科茅、牙科茅、疫苗茅、酱油茅都挣扎于内需的泥沼中。旧茅衰退,新茅生长,在下行周期,内需仍有结构性…

c++中的substr函数

在C++中,substr() 是 std::string 类的一个成员函数,用于从字符串中提取子字符串。以下是 substr() 函数的一些基本用法: 语法 substr(size_t pos = 0, size_t len = npos) pos 是子字符串开始的位置(基于 0 的索引)。如果不提供,它默认为 0,即从字符串的开头开始。le…

C#修改 EXE 文件图标和 winForm 窗口图标

修改 EXE 文件图标 1.准备好图片,转换为 Icon 图片; 2.右键工程,选择属性; 3.选择 Icon 图标即可; 4.重新生成可执行文件,查看。 修改 winForm 窗口图标 1.选中 winForm ,查看属性&#x…

计算机的发展简史

目录 1. 计算机的五代变化 2. 半导体存储器的发展 3. 微处理器的发展 4. 计算机的性能指标 总结 计算机的发展史是一部技术革新与应用拓展的壮丽篇章。自20世纪中叶以来,计算机经历了五代变革,每一代都带来了性能的飞跃和使用模式的变革。同时&…

「51媒体」时尚类媒体邀约宣发资源

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 时尚类媒体邀约宣发资源可以多样化且针对性地满足品牌或活动的推广需求。以下是一些主要的资源及其特点: 时尚杂志:国内外知名时尚杂志,如《Vogue》、…

关于单片机那些事?

周期 时钟周期:也叫振荡周期,就是单片机外接晶振的倒数,如12Mhz,周期就是1/12us,最小的时间单位。频率越高,速度越快 指令周期:执行一条指令需要的时间,一般由若干个机器周期组成 …

【单片机】msp430g2553单片机, 用TA0定时器,让小灯P1.6呼吸灯,P1.6是TA0.1

要实现用MSP430G2553单片机的TA0定时器控制P1.6(TA0.1)的呼吸灯效果,可以按照以下步骤进行: 配置时钟系统:设置时钟源和分频器,以便定时器工作在合适的频率。 配置P1.6引脚:将P1.6引脚设置为TA…

【代码随想录训练营】【Day 52】【动态规划-11】| Leetcode 1143, 1035, 53,392

【代码随想录训练营】【Day 52】【动态规划-11】| Leetcode 1143, 1035, 53,392 需强化知识点 题目 1143. 最长公共子序列 注意还是要从0-i-1, 0-j-1 定义,因为我们需要遍历 0 class Solution:def longestCommonSubsequence(self, text1: str, text…

手机怎么自动切换ip地址

在数字化时代,网络IP地址不仅是设备在网络世界的标识,也是确保用户网络安全和数据隐私的关键因素。对于手机用户来说,在某些情境下可能需要自动切换IP地址,本文将为您介绍手机怎么自动切换IP地址。 随着网络技术的发展&#xff0c…

一些使用注意(XPTable控件使用说明十)

当XPTABLE放到线程中,列数据很多,不出现滚动条的解决代码: /// 这里神奇的代码,解决线程中XPTABLE 不出滚动条问题 , 执行UI相关的操作this.Invoke(new Action(() >{ // 列头,一行空的,这里列头设置…

前端面试题(基础篇六)

一、什么是事件代理 事件代理(Event Delegation ),又称事件委托。是JavaScript中常用的绑定事件的技巧。顾名思义,事件代理就是将原本要绑定的事件委托给父元素,让父元素担当事件监听的职务。原理就是DOM元素的事件冒…

蓝桥杯 经典算法题 求解完全背包问题

题目: 题解: 和01背包基本完全一样。小局部最优的策略也是一样:是否选当前局部的最后一项。唯一的不同点在于物品是无线的导致在表示选择当前物品的状态写法发生了改变:由dp[i-1][j-w[i]]变为了dp[i][j-w[i]]因为这样能够表示最后…

读AI新生:破解人机共存密码笔记08超级智能

1. 发现动作 1.1. 时间跨度长的智能行为,需要具备在多个抽象层次上分层规划和管理活动的能力,从攻读博士学位(可能涉及1万亿个动作),到给一根手指发送一个运动控制指令,从而键入求职信的字符,无…

用户态协议栈04-定时arp-table的实现

之前有写过arp reply的实现,其中有写道,我们的系统内核中会维护一张ARP表,可以通过终端arp -a查看: 其中的dynamic和static是动态arp的类型,之前的udp实验就是添加了一条静态arp达到了发送的目的。在我们需要发送一个数…

压缩机吸/排气温度与压力异常的原因

一、排气压力过高(主要是冷凝压力偏高造成的) 危害:排气压力过高,运行电流过大,易烧坏电机,会使润滑油消耗变大,变稀而影响润滑,排气温度过高会导致润滑油碳化等问题。 排气压力过高…

探索Java Scanner类:全面解析及实用示例

在Java编程中,处理用户输入和文件读取是常见的任务。Scanner类是Java提供的一个强大的工具类,用于简化这些操作。本文将详细介绍Scanner类的基本用法、常见应用场景和高级功能,并提供代码示例帮助理解。 一、什么是Scanner类 Scanner类属于…

AI播客下载:Machine Learning Street Talk(AI机器学习)

该频道由 Tim Scarfe 博士、Yannic Kilcher 博士和 Keith Duggar 博士管理。 他们做了出色的工作,对每个节目进行了彻底的研究,并与机器学习行业中一些受过最高教育、最全面的嘉宾进行了双向对话。 每一集都会教授一些新内容,并且提供未经过滤…

C++入门超详细解释

C入门 文章目录 C入门框架命名空间 namespace &#xff08;不常用&#xff09;命名空间的使用方式&#xff08;三种&#xff09;using namespace std;\<iostream>coutendlcincout的使用命名冲突缺省参数&#xff08;省钱的省&#xff09;缺省参数分类全缺省参数半缺省参数…

VTK\QT\VS编译环境搭建记录(实时更新)

VTK\QT\VS编译环境搭建记录 最近这个阶段要跑一个基于QT的项目 环境要求&#xff1a; 1、QT &#xff08;版本5.15.2以上&#xff09; 注意5.15以上不再是离线安装包&#xff0c;在线安装包运行后还要在线下载&#xff0c;建议使用国内镜像源&#xff08;清华QT清华源、阿里…

论文浅读之Mamba: Linear-Time Sequence Modeling with Selective State Spaces

介绍 这篇论文提出了一种新型的"选择性状态空间模型"(Selective State Space Model, S6)来解决之前结构化状态空间模型(SSM)在离散且信息密集的数据&#xff08;如文本&#xff09;上效果较差的问题。 Mamba 在语言处理、基因组学和音频分析等领域的应用中表现出色。…