2018-11-17 15:59:01

路飞项目已经完结!后面已是flask的学习!然后还有十几天的课程等回学校再看

明天归校!!  开始全面整理自己学习的知识,整理博客!还有好多面试题!233333333333333333

越努力,越幸运!永远不要高估自己!!

放上github连接: https://github.com/TrueNewBee/luffycity_demo

说一下路飞项目的整体 思路

luffycity项目简介:
1. 一开始的课程和深科技用前后端结合用的vue
2. 后面只注重写接口,不写vue
3. 后面接口 购物车,支付相关,重点的使用了redis的方法
4. 剩下一个支付宝相关支付功能,只有伪代码未实现,有空实现一下
5. 其余的看代码 代码里有详细注释

也不算太难!主要有redis部分 ,详情可以看代码,代买里面有详细注释!

贴上笔记!

s9day114 

内容回顾:
1. 为什么要开发“学城”?
- 提高在线 完课率(学成率)。
- 具体:
- 购买时间周期
- 闯关式学习
- 考核
- 导师筛选
- 导师监督(跟进记录)
- 答疑时间(12小时)
- 奖惩措施
- 时间
- 作业 2. 开发周期和团队?
团队:
- 开发
- 导师后台,stark组件+rbac : 1人
- 管理后台,stark组件+rbac : 1人
- 主站
- vue.js 1人
- api 村长+1/2文州+1/2Alex+其他 + 村长
- 运维(1人)
- 测试(1人)
- 产品经理(1人)
- UI设计(1人)
- 运营(1人)
- 销售(4人)
- 全职导师(2人)
- 签约讲师(...)
周期:
- 7月份
- 11月份上线
- 11月份~次年5月份: 修Bug,活动支持,广告。。。
- 6月份:开发题库系统 3. 购买流程
- 加入购物车
- 去结算
- 去支付 今日内容:
- 去支付
- Flask
- 基础
- 第三方组件
- 上下文管理聊源码 内容详细:
1. 去支付(面向专题课) POST请求:
URL:
https://www.luffycity.com/course/order/?token=123879shdfkjshdf123
请求体:
{
balance:1000,
money:900
}
业务处理:
...
2. Flask
- pip3 install flask - 短小精悍、可扩展强 的一个Web框架。 注意:上下文管理机制 - 依赖wsgi:werkzurg - 学习werkzurg:
示例一:
from werkzeug.wrappers import Request, Response
from werkzeug.serving import run_simple def run(environ,start_response): return [b"asdfasdf"] if __name__ == '__main__': run_simple('localhost', 4000, run) 示例二:
from werkzeug.wrappers import Request, Response @Request.application
def hello(request):
return Response('Hello World!') if __name__ == '__main__':
from werkzeug.serving import run_simple
run_simple('localhost', 4000, hello) - 学习Flask 作业:
"""
1. 获取用户提交数据
{
balance:1000,
money:900
}
balance = request.data.get("balance")
money = request.data.get("money") 2. 数据验证
- 大于等于0
- 个人账户是否有1000贝里 if user.auth.user.balance < balance:
账户贝里余额不足 优惠券ID_LIST = [1,3,4]
总价
实际支付
3. 去结算中获取课程信息
for course_dict in redis的结算中获取:
# 获取课程ID
# 根据course_id去数据库检查状态 # 获取价格策略
# 根据policy_id去数据库检查是否还依然存在 # 获取使用优惠券ID
# 根据优惠券ID检查优惠券是否过期 # 获取原价+获取优惠券类型
- 立减
0 = 获取原价 - 优惠券金额
或
折后价格 = 获取原价 - 优惠券金额
- 满减:是否满足限制
折后价格 = 获取原价 - 优惠券金额
- 折扣:
折后价格 = 获取原价 * 80 / 100 4. 全站优惠券
- 去数据库校验全站优惠券的合法性
- 应用优惠券:
- 立减
0 = 实际支付 - 优惠券金额
或
折后价格 =实际支付 - 优惠券金额
- 满减:是否满足限制
折后价格 = 实际支付 - 优惠券金额
- 折扣:
折后价格 = 实际支付 * 80 / 100
- 实际支付
5. 贝里抵扣 6. 总金额校验
实际支付 - 贝里 = money:900 7. 为当前课程生成订单 - 订单表创建一条数据 Order
- 订单详细表创建一条数据 OrderDetail EnrolledCourse
- 订单详细表创建一条数据 OrderDetail EnrolledCourse
- 订单详细表创建一条数据 OrderDetail EnrolledCourse - 如果有贝里支付
- 贝里金额扣除 Account
- 交易记录 TransactionRecord - 优惠券状态更新 CouponRecord 注意:
如果支付宝支付金额0, 表示订单状态:已支付
如果支付宝支付金额110,表示订单状态:未支付
- 生成URL(含订单号)
- 回调函数:更新订单状态 """

11.17 luffycity(7)完结的更多相关文章

  1. International Programming Retreat Day(2018.11.17)

    时间:2018.11.17地点:北京国华投资大厦

  2. Notes of Daily Scrum Meeting(11.17)

    Notes of Daily Scrum Meeting(11.17) 今天是第四周的周一,也就是说距离最后发布也只剩下一周的时间,但我们的工程里面还有很多的问题没有解决,我关注过 其他一两个小组,他 ...

  3. Beta周第8次Scrum会议(11/17)【王者荣耀交流协会】

    一.小组信息 队名:王者荣耀交流协会 小组成员 队长:高远博 成员:王超,袁玥,任思佳,王磊,王玉玲,冉华 小组照片 今天拍照的人是王磊.因此他没有出现在照片中. 二.开会信息 时间:2017/11/ ...

  4. Java编程思想(11~17)

    [注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第十一章 持有对象 11.1 泛型和类型安全的容器>eg: List<St ...

  5. C++98/11/17表达式类别

    目标 以下代码能否编译通过,能否按照期望运行?(点击展开) #include <utility> #include <type_traits> namespace cpp98 ...

  6. 2016/11/17 周四 <javascript的封装简单示例>

    这是一个简单的javascript代码封装的示例以及封装后的调用方法: var ticker={ n:0, add:function() { this.n++; }, show:function() ...

  7. Sprint1(第四天11.17)

    Sprint1第一阶段 1.类名:软件工程-第一阶段 2.时间:11.14-11.23 3.选题内容:web版-餐厅到店点餐系统 4.团队博客地址: http://www.cnblogs.com/qu ...

  8. 【Alpha版本】 第九天 11.17

    一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 完成我要应聘的详情显示,解决头像不能显示的问题,完成了报名及取消操 ...

  9. 11.14 luffycity项目(6)

    2018-11-14 21:26:45 实现了购物车功能! 涉及到了redis的使用  需要在pycharm中下载   django_redis 其他的看一下笔记,有购物车里面数据存储的结构才发现数据 ...

随机推荐

  1. Mac安装Linux的KVM管理工具virt-manager

    安装: brew tap jeffreywildman/homebrew-virt-manager brew install virt-manager virt-viewer 中途会碰到很多问题,可以 ...

  2. pygame-KidsCanCode系列jumpy-part3-重力及碰撞检测

    这个游戏叫jumpy,大致玩法就是模拟超级玛丽一样,可以不停在各个档板上跳动,同时受到重力的作用,会向下掉,如果落下时,没有站在档板上,就挂了. 这节,我们加入重力因素,继续改造sprites.py ...

  3. spring中的多线程aop方法拦截

    日常开发中,常用spring的aop机制来拦截方法,记点日志.执行结果.方法执行时间啥的,很是方便,比如下面这样:(以spring-boot项目为例) 一.先定义一个Aspect import org ...

  4. gdb调试动态链接so

    http://blog.csdn.net/weed_hz/article/details/12710429 gdb) file <你的exe>(gdb) load <你的so> ...

  5. flink 有状态udf 引起血案一

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/rlnLo2pNEfx9c/article/details/83422587 场景 近期在做一个画像的 ...

  6. 使用scp命令在多个Linux系统间进行文件复制

    一,什么是scp scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令.scp命令可以在linux服务器之间复制文件和目录.scp使用ssh安全协议传输数据,具有和ssh一样的验证机制,从 ...

  7. QPS从0到4000请求每秒,谈达达后台架构演化之路(转载)

    https://blog.csdn.net/czbing308722240/article/details/52350219 QPS从0到4000请求每秒,谈达达后台架构演化之路   达达是全国领先的 ...

  8. Java高并发和多线程系列 - 1. 线程基本概念

    1. 什么是线程? 线程和进程的区别 在了解线程的概念前,我们应该先知道什么是进程? 进程是操作系统的基本概念之一, 它是正在执行的程序实例. * 下面的一些进程的基本概念你可以了解下 ------- ...

  9. 一步步教你轻松学奇异值分解SVD降维算法

    一步步教你轻松学奇异值分解SVD降维算法 (白宁超 2018年10月24日09:04:56 ) 摘要:奇异值分解(singular value decomposition)是线性代数中一种重要的矩阵分 ...

  10. (原)tensorflow使用eager在mnist上训练的简单例子

    转载请注明出处: https://www.cnblogs.com/darkknightzh/p/9989586.html 代码网址: https://github.com/darkknightzh/t ...