11.17 luffycity(7)完结
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)完结的更多相关文章
- International Programming Retreat Day(2018.11.17)
时间:2018.11.17地点:北京国华投资大厦
- Notes of Daily Scrum Meeting(11.17)
Notes of Daily Scrum Meeting(11.17) 今天是第四周的周一,也就是说距离最后发布也只剩下一周的时间,但我们的工程里面还有很多的问题没有解决,我关注过 其他一两个小组,他 ...
- Beta周第8次Scrum会议(11/17)【王者荣耀交流协会】
一.小组信息 队名:王者荣耀交流协会 小组成员 队长:高远博 成员:王超,袁玥,任思佳,王磊,王玉玲,冉华 小组照片 今天拍照的人是王磊.因此他没有出现在照片中. 二.开会信息 时间:2017/11/ ...
- Java编程思想(11~17)
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第十一章 持有对象 11.1 泛型和类型安全的容器>eg: List<St ...
- C++98/11/17表达式类别
目标 以下代码能否编译通过,能否按照期望运行?(点击展开) #include <utility> #include <type_traits> namespace cpp98 ...
- 2016/11/17 周四 <javascript的封装简单示例>
这是一个简单的javascript代码封装的示例以及封装后的调用方法: var ticker={ n:0, add:function() { this.n++; }, show:function() ...
- Sprint1(第四天11.17)
Sprint1第一阶段 1.类名:软件工程-第一阶段 2.时间:11.14-11.23 3.选题内容:web版-餐厅到店点餐系统 4.团队博客地址: http://www.cnblogs.com/qu ...
- 【Alpha版本】 第九天 11.17
一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 完成我要应聘的详情显示,解决头像不能显示的问题,完成了报名及取消操 ...
- 11.14 luffycity项目(6)
2018-11-14 21:26:45 实现了购物车功能! 涉及到了redis的使用 需要在pycharm中下载 django_redis 其他的看一下笔记,有购物车里面数据存储的结构才发现数据 ...
随机推荐
- 使用JfreeChart生成图表遇到的问题
生成的图片不显示 需要在web.xml中配置一个指定的Servlet <servlet> <servlet-name>DisplayChart</servlet-name ...
- JDBC(14)—对DAO进行改进修改
结构: DAO2_7< T >(接口)->DAOTestImpl< T >(实现类)->CustomerDAO(继承的子类)->CustomerDAOTest ...
- Using async-await on .net 4
I'm currently starting to create an application that would profit a lot from C# 5's async-await feat ...
- Chart:Grafana
ylbtech-Chart:Grafana 1.返回顶部 1-1. 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 0. https://grafana.com/ 1. http: ...
- SharePoint Excel Service - Couldn't Open the Workbook.
Error meesage: "Couldn't Open the Workbook. Wow, That's a big workbook. Unfortunately, we can't ...
- centos7下使用mysql离线安装包安装mysql5.7
服务器环境: centos7 x64 需要安装mysql5.7+ 一.卸载CentOS7系统自带mariadb # 查看系统自带的Mariadb [root@CDH-141 ~]# rpm -qa|g ...
- [原创]Delphi XE10 dxLayoutControl 控件应用指南
DevExpress VCL套件是一套非常强大的界面控件,可惜关于Delphi开发方面的说明太少,有些控件使用起来一头雾水,不知从何下手.本节详细介绍在Delphi Xe10 Seattle中如何利用 ...
- [Vuex] Create a Vuex Store using TypeScript
A Vuex store centralizes the state of your app, making it easy to reason about your state flow. In t ...
- ECharts JS应用:图表页面实现
因为要统计数据进行图表展示,所以就简单学习了 ECharts JS 的应用.它是一个纯Javascript图库,它依赖于一个轻量级的Canvas库 ZRender,并提供直观.生动.交互式和高度可定制 ...
- AWStats日志分析系统
1.什么是AWStats AWStats是一款功能强大且功能强大的免费工具,可以图形方式生成高级Web,流媒体,ftp或邮件服务器统计信息.此日志分析器用作CGI或命令行, 并在几个图形网页中显示您的 ...