首页 > 其他分享 >ATM+购物车开发流程

ATM+购物车开发流程

时间:2022-10-31 20:12:30浏览次数:68  
标签:转账 ATM 登录 账户 流程 py 用户 购物车

ATM项目开发流程

1.项目需求分析

ATM一系列小功能:
注册,登录,提现,转账,充值,查看流水,购物车,管理员

2.ATM架构设计

第一层
与用户直接打交道 不参与核心逻辑的编写(数据展示与获取)
cmd终端
浏览器(前端)
第二层
项目核心逻辑
py文件
后端框架(后端)
第三层
数据库
py文件 json文件
数据库(MySQL)

3.ATM目录搭建

bin文件夹——用于存储程序的启动文件
start.py
conf文件夹——用于存储程序的配置文件
settings.py
core文件夹——用于存储程序的主体逻辑
src.py
interface文件夹——用于存储程序的接口文件
user_interfface.py
shop_interface.py
back_interface.py
admin_interface.py
lib文件夹——用于存储程序的公共功能
common.py
log文件夹——用于存储程序的日志文件
log.log
db文件夹——用于存储程序的数据文件
db_handler.py
readme文件(txt文件——用于编写程序的说明
requirements.txt ——用于存储程序的第三方模块名称和 版本

ATM+购物车逻辑分享

ATM+购物车逻辑分享
1.ATM注册功能
面条版
获取用户数据(用户名 密码 确认密码)
比对两次密码是否一致
构建用户字典数据
利用json序列化到文件中
架构版
第一层:获取用户数据
第二层:校验用户是否存在;构造用户字典;完成用户注册
第三层:保存用户数据的方法(序列化功能>>>:将字典写入文本文件中)
2.ATM登录功能
第一层:获取用户数据
第二层:校验用户是否存在;获取用户字典数据;比对密码是否一致
第三层:提取用户数据的方法(反序列功能>>>:将json文件里面的数据转成字典)

3.代码封装与优化
settings.py

4.ATM密码加密功能
common.py

5.校验用户登陆装饰器
装饰器模板
全局变量
6.查看余额功能
查看的应该是当前登录用户的账户余额
也就意味着查看余额的功能需要用户登录 并且登录之后需要保存用户状态
1.如何保存用户状态
全局变量存储用户登录信息
2.如何校验用户登录
装饰器
如何区分用户是否登录成功
我们可以在第二层函数的返回值上添加一个布尔值 用于标识是否成功
为了保证统一和后期编写方便 我们将第二层所有的函数返回值全部变成两个
第一个是布尔值 第二个是具体的数据值
针对全局变量的存储位置
第一层更合适
7.提现功能
在第一层获取提现金额
调用第二层提现接口,传入当前登录用户名和金额
第二层获取当前用户账户余额,判断是否充足
如果充足的话则完成提现期间可以加上提现手续费
完成账户余额扣款 记录流水 并保存数据 添加日志
8.转账功能
在第一层获取用户想要转账的目标账户名和金额数
调用第二层转账接口 传入当前登录用户、转账用户、转账金额
获取登录用户数据、转账用户数据
判断转账金额是否小于登录用户的账户余额
账户余额大于转账金额则扣去相应的转账金额、目标账户余额增加
双方账户都记录流水 保存用户数据 并添加日志
9.查看账单
直接查询当前登录用户数据并返回账单信息即可
我们针对用户的提现、转账、消费 都象征性的在用户字典的flow键对于的值列表中记录一条信息即可.
10.日志功能
配置文件拷贝日志字典
公用文件编写日志函数
接口文件导入日志函数
11.购物车功能
直接CV即可 然后核对代码需要修改的地方(数据的获取和保存)
12.管理员功能
1.只有管理员才可以触发
2.冻结账户
3.移除账户
4.查看指定账户的余额
5.充值执行账户的余额
6.查看指定账户的账单
7.查看指定账户的购物车
ps:4567也可以直接合并 返回指定用户的字典数据

标签:转账,ATM,登录,账户,流程,py,用户,购物车
From: https://www.cnblogs.com/wwssadadbaba/p/16845587.html

相关文章

  • ATM+购物车项目实战练习
    ATM+购物车项目实战练习项目开发流程在实际的项目开发中,我们通常要经历项目需求分析,架构设计,分组开发,提交测试,交付上线等环节,而作为程序员的我们就可能要经历前三个环节......
  • ATM购物车项目概要
    目录ATM购物车项目概要项目开发流程项目需求分析(具体功能)项目架构设计ATM购物车项目概要项目开发流程需求分析架构设计分组开发提交测试交付上线项目需求分析(......
  • 苹果iOS App上架流程,非iOS开发人员上架教程
     iOS应用上线发布流程一般包含相关证书文件的配置、Xcode的设置、AppStoreConnect填写App的相关信息、ipa包上传、审核结果以及相关邮件回复。相关证书文件的配置与Xco......
  • ATM+购物车(思路流程)
    ATM+购物车(思路流程)启动文件首先,创建一个start.py作为整个项目启动的启动文件然后导入os和sys模块,从core中导入src,也就是展示给用户看的在src.py用户视图层中,先......
  • ATM项目的编写
    目录ATM项目的编写项目流程开发项目需求分析项目架构设计项目目录搭建项目功能搭建ATM项目的编写项目流程开发1.需求分析2.架构设计3.分组开发4.提交测试5.交付上线......
  • VMware WorkStation Pro 16安装MacOS 13 ,12手把手图文教程(全流程详细图解)
    因为工作需要使用VMwarePro16虚拟机进行安装MacOS12系统(macOS13安装同样教程,同样附了macOS13的下载,这里就以12为例进行了安装)下面我就把自己安装的过程以及需要的文......
  • iOS上架流程
    1准备2申请AppID2.1打开[苹果开发者官网](https://developer.apple.com),点击Account登陆账号。2.2进入ID申请3创建证书请求文件(*.cerSigningRequest文件......
  • iOS上架流程
    1准备2申请AppID2.1打开[苹果开发者官网](https://developer.apple.com),点击Account登陆账号。2.2进入ID申请3创建证书请求文件(*.cerSigningRequest文件)4添加软件开......
  • Java Web开发流程的学习
    一开始我只是想学习一下WEB界面的JAVA变成,看了这个文章:https://blog.csdn.net/java_0000/article/details/124480210要创建Web应用程序,告诉大家需要以下Java开发工具:I......
  • PDU分析-ping命令流程
    PDU分析-ping命令流程习题:有如下一个ping命令生成的PDU信息,从图片中的信息,从协议体系结构角度分析,可以分析出此PDU哪些信息?提示:从PDU的当前所在设备,PDU的目标设备,IP地......