【新项目】ATM机+商场系统逻辑

新项目,上逻辑

#!/usr/bin/env python
# -*- coding: utf-8 -*-
‘‘‘‘‘‘

#做项目
‘‘‘
1、调研
2、需求分析
3、任务分配
4、写项目demo(架构师)
5、架构分析
6、编写代码
7、测试
8、上线(产品)
‘‘‘

‘‘‘
ATM + 购物车思路构想

一、需要实现的功能
项目需求:
--购物商场需求
1.用户信息由文件存放
2.实现 登录,注册,注销,购物,充值,退出系统 六个功能
3.注册可以完成用户的注册,注册时要提供账号密码,初始财产余额为0
    1)注册先输入账号,要对账号做 输入的是否为空、输入的账号是否已经存在两种判断,都通过进入输入密码,否则重新输入
    2)输入密码,要对密码长度最短为3位的限制,长度3位或以上代表合法,可以完成注册
    3)注册是将账号密码写入文件,财产余额初始为0,
        第一次写入格式:账号|密码|余额
        再次写入格式:,账号|密码|余额
4.用户登录状态需要保存
5.完成用户登录
    1)判断用户是否登录了,如果登录了就提示不需要重复登录,未登录就可以往下走,完成登录
    2)先输入账号,账号为空、不存在都会验证失败,继续输入,3次失败后就可以进入注册功能,验证通过进行玩下
    3)再输入密码,密码必须超过3位,3次登录失败退出登录,成功的记录登录的用户信息到user字典,表示已登录
6.用户注销
7.用购物功能完成购物,
1)必须在登录状态,未登录时,进入登录页面,已登录则可以购物
2)预定义一些商品与价格,每一次完成购物后,提示用户是否继续进行购物
3)如果余额不足则进入充值功能
8.充值功能
1)必须在登录状态才可以操作
2)充值后的金额数据要同步
9.退出系统,将退出系统,但注册的用户和余额都保存在文件中

--ATM需求
模拟实现一个ATM  + 购物商城程序
额度15000或自定义
实现购物商城,买东西加入购物车,调用信用卡接口结账
可以提现,手续费5%
支持多账户登录
支持账户间转账
记录日常消费流水
提供还款接口
ATM记录操作日志
提供管理接口,包括添加账户、东结账户等
用户认证用装饰器
==========================================================
‘‘‘
# 细化需求:
# (文件的存取都要用log日志)

#打开系统
‘‘‘
-----打开系统-----
    0、退出系统
    1、个人中心(修改密码、会员卡中心、收货地址)
    2、储蓄卡管理
    3、信用卡中心(ATM)
    4、购物商城(进入卖家管理、进入官方超级系统)  OK
    5、二手市场(待开发)

    8、登录                    OK
    9、注消                    OK

‘‘‘
#1、个人中心
‘‘‘
判断是否登录
0、返回主菜单
1、会员卡管理
2、收货地址管理
    查询所有收货地址
    0.返回
    1.新增地址
        1)地址接口
    2.修改地址
        1)地址接口
    3.删除地址
        1)地址接口
3、更换手机号
    1.更换手机号接口
4、修改密码
    1.修改密码接口
‘‘‘

#2、储蓄卡管理
‘‘‘
0、返回主菜单
1、查询余额
2、存款
3、转账
4、取款
5、还信用卡
9、流水查询

‘‘‘

#3、信用卡中心(ATM)
‘‘‘
0、返回主菜单
1、选择信用卡
    0.返回
    1.查询额度
    2.取现(%5手续费)
    3.转账
    4.账单查询
2、添加信用卡
3、冻结信用卡
‘‘‘

#4、购物商城
‘‘‘
-----购物商城-----
    0、返回
    1、购物商城(用户版)
    2、卖家之家(卖家版)
    3、官方超级系统(官方维护版、发快递)

零、判断登录用户是什么类型用户,无用户登录,默认进入个人商城
    如果有别的身份,自动进入相应身份系统
‘‘‘
# 4.1、购物商城(用户版)
‘‘‘
一、购物商城(用户版)
    0、返回
    1、查看商品
        0.返回上一级
        1- 9 商品类别
            0)商品列表
            1)查看商品详情
                判断是否登录,登录才能进入下一流程,没登录跳到登录
                (0)返回继续查看其它商品
                (1)加入收藏
                (2)加入购物车
                    (0)取消
                    (1)加入的数量
    2、查看我的收藏
        判断是否登录
        商品列表
        0.返回上一层  1.加入购物车  2.删除第n个收藏  3.清空收藏
    3、进入我的购物车
        判断是否登录
        显示购物车列表
        0、返回上一级
        1、结账
            0)取消
            1)选择需要结账的商品,形成订单号
            2)选择收货地址
            3)支付
                (1)使用储蓄卡
                (2)使用信用卡(随机立减哦!)
        2.删除第n个商品
        3.清空购物车
    4、我的订单
      判断是否登录
        0.返回
        1.查看物流
            查看未到的商品单号
        2.确认收货
            查询到未确认收货的单号
        3.退货
            退货商品
        4.评价商品
            好评,差评
        5.查询我的购物记录
            0.取消查询
            1.选择需要查看的日期
                1)显示购物买记录列表

‘‘‘
# 4.2、卖家之家(卖家版)
‘‘‘
二、卖家之家(卖家版)
    0、返回主菜单
    1、客服
    2、查询新订单
    3、查看已完成订单
        0.返回
        1.发货
        2.查看物流
    4、商品维护
        0.返回
        1.查询库存
        2.添加库存
        3.添加商品
    5、查看退货
        显示查看退货订单
        0.返回  1.查看退货物流
    6、查看评价
        订单评价
    9、查看业绩
        输入查询业绩时间
‘‘‘
# 4.3、官方超级系统(官方维护版)
‘‘‘
三、官方超级系统(官方维护版)
    0、返回主菜单
    1、物流管理
        0.返回
        1.查看未到物流
        2.查看已完成物流
‘‘‘

# 8、登录接口
‘‘‘
-----登录接口------
1.登录  2.注册  3.忘记密码

一、注册
    0、取消注册
    1、输入用户名
        0.取消注册
        1.限制用户名至少为3位并且为英文和数字
        2.判断文件中数据用户信息是否存在,
            1)已存在就重新输入
            2)不存在继续

    2、输入密码
        0.取消注册
        1.限制密码为6位
    3、输入注册手机号
        0.取消注册
        1.输入手机号是否为11位,并且纯数字
        2.判断手机号是否在文件中被别的用户使用
    4、注册成功
        1.设置初始数据( 初始金额)
        返回上一级菜单

二、登录
    0、取消登录
    1、输入名户名
        1.限制用户名至少为3位并且为英文和数字
        2.判断文件中数据用户信息是否存在,
            1)已存在继续
            2)不存在提示无此用户,返回选择界面
    2、输入密码
        0.取消登录
        1.限制密码为6位
    3、判断用户状态是否为锁定状态

    4、判断密码和文件中存储的是否一致
        0.取消登录
        1.不一致
            1)判断输入错误多少次,够三次锁定账户10分钟
            2)再次重新输入用户名密码
        2.一致
            1)把登录次数重置
            2)判断账户为什么类型操作员(个人购物系统、卖家管理系统、官方超级系统)
            2)继续进入相应的界面
    5、登录成功
        返回主菜单和登录成功标志

三、忘记密码
    0、取消重置密码
    1、输入忘记密码的账户
        1.判断账户是否存在,不存在重新输入
    2、输入账户的手机号
        0.取消重置密码
        1.输入手机号是否为11位,并且纯数字
        2.判断手机号是否是此用户绑定的手机号
            1)不是重新输入
            2)是,继续
    3、输入新密码
        0.取消输入
        1.限制密码为6位
        2.判断两次输入的是否一致
    4、重置密码成功
        返回上一级菜单
‘‘‘
# 9、注销

‘‘‘    

最后、文件夹管理的构思
ATM                 主文件
·bin                可执行文件 - 项目入口
·conf               配置文件
·——settings_log.py  配置日志文件的py
·core               核心代码
·db                 数据库操作
·interface          接口操作
·lib                共有模块(功能)
·log                日志文件目录
·——my_log.py        存储日志py文件
·plan               规划设计思路

‘‘‘

原文地址:https://www.cnblogs.com/tyler-bog/p/10693465.html

时间: 2024-10-11 12:27:39

【新项目】ATM机+商场系统逻辑的相关文章

ATM机无线采集监控系统解决方案

1.解决方案介绍 本系统采用采用厦门为那通信TD-LTE ROUTER 2026工业4G无线路由器,连接DVR/NVR设备,可上传本地视屏和抓拍图像监测的同时,上传和监测ATM多个敏感传感器正常状态.通过运营商APN/VPDN专网卡(SIM),与银行服务器机房建立专网隧道,保证数据认证安全加密,采用LTE 4G高速网络制式,保证视频图像数据大数据传输可靠性,达到统一管理,统一监控目的.实时保护ATM机正常运行和取款公民的人身安全. 采用的传感器包括人体感应器.配钞传感器.震动传感器等,在加上针孔

模拟ATM机银行系统

淄博汉企Java基础考核项目 模拟银行自助终端系统 一. 本系统模拟银行用户使用ATM机开户.查询.存款.取款功能,要求使用java语言编程实现. 说明: 1. 对于数据输入异常,可使用java异常处理机制进行处理. 2. 评分将以功能实现与代码规范性相结合的方式进行考核. 3. 如果对项目需求有疑问,可以随时以QQ留言方式联系我进行咨询. 4. 国庆放假期间,每天都有老师在公司值班,10月4日是我在公司值班,10月7日正常上班,欢迎大家到公司来做项目. 二. 项目功能要求: 项目开始运行显示主

文件及输入输出流模拟ATM机

题目:两部分要求都要实现. 一.ATM机的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,操作日期(Date),操作类型,账户密码(六位的数字,可以用0开头),当前的余额(可以为0). 模拟ATM的功能设计,用户插卡后显示选择语言界面,输入密码界面,用户输入正确密码(用户输入错误密码,则提示该卡已被锁定,无法操作),则弹出选择界面:存款.取款.转账汇款.修改密码.查询余额. 选择"取款",则显示100元.500元.1000元.1500元.2000元

语言模拟ATM自动取款机系统

C语言实验报告       题目名称:C语言模拟ATM自动取款机系统 C语言模拟实现ATM自动取款机功能:输入密码,余额查询,取款,存款,转账,修改密码,退出功能: 代码实现的功能: 账号及密码输入:用户输入密码,才能进入. 登陆成功界面:共有六个选项,查询余额.取款.存款.转账,修改密码,退出分别对应1,2,3,4,5,6选项,若序号输入不正确会予以提示. 选定1后,进入查询余额界面: 选定2后,进入取款界面: 选定3后,进入存款界面: 选定4后,修改密码,选定5,进入转账:选定6,退出界面:

摩根大通银行被黑客攻克, ATM机/网银危在旦夕,winxp退市灾难来临了

winxp4月退市到如今还不到半年,就出现故障了 7600多万个消费者银行账户被黑.此外还有700万个小企业账户的信息也被黑客窃取,这个算不算灾难呢?假设等到银行业彻底崩溃,资金彻底丧失,那不仅仅是灾难,而是末日. 因为越来越多黑客受雇于组织.针对winxp退市的唾手可得的攻击成了他们的巨大狂欢.我觉得黑客可能利用winxp漏洞入侵atm机后再进入银行网络.在没有安全操作系统(windows不安全众人皆知)情况下把数据放到云服务.等于把安全钥匙交给了黑客.摩根发布这些事件是想获得针对账户攻击的免

经验浅谈,新人如何快速上手一个新项目

经验浅谈,总结下自己如何接手一个新项目: 1.向同事问清楚当前的开发环境,而且现今的发展,要区分64位和32位2.搞明白当前项目的运行环境,如果是多项目的话,要搞清楚依赖关系3.让同事帮忙搞定本机可运行项目的环境4.当环境都弄好.项目能启动后,开始代码之旅,也是最重要的一步. a)看配置.通看一遍配置文件,了解当前项目用了哪些框架,做到心中有数 b)学业务(重点*).了解各页面间的跳转及异步请求,写一个临时Filter,拦截/*的所有请求,在doFilter()方法中,打印出每次请求的路径( S

如何向Openstack社区提交一个新项目

前几天有个朋友问我:自己有一个idea不错的项目,也把基本的框架写好了,想贡献到Openstack社区,却不知道应该怎么做.正好之前我有过类似的经历,那么来分享一下我是如何向Openstack社区提交一个新项目. Openstack的整套系统就是一个开源项目的“大杂烩”,社区把所有项目划分为两类:核心和孵化.除非出身特别牛逼或者从其他核心项目独立出来的项目会在设计之初就被列为核心项目(例如Nuetron,Ironic等):其他项目一般划分到孵化类,在通过一个或多个大版本的发展后,如果变得成熟满足

cocos2d-x3.2创建新项目失败的一种可能性(cygwin自带的python2.6被抢先执行)

之前一直使用cocos2d-x2.2写游戏,写了几个游戏后,想尝试下3.x版本的新功能,就下载了cocos2d-x3.2版本. 参照官方文档的说法,cocos2d-x3.x版本需要python2.7环境支持,python2.6以及python3.x版本都不行,所以特意去python官网下载了2.7.8版本,安装好后进入目录: cocos2d-x-3.2\tools\cocos2d-console\bin 执行命令: python cocos.py new HelloCpp -p com.hell

菜鸡程序猿的开始:java基础知识之一个简单ATM机

import java.util.Scanner; public class Atm{ static int allmoney=150000; //ATM现有余额 static int all=200000; // ATM最大量 static int money =10000; // 初始化用户的余额 public static void main(String[] args) { System.out.print("*********************************"