先上流程图,还得27寸4K显示器,画图各种爽:

Day4作业:蛋疼CRM系统

ReadMe:

运行程序前的提示:
    1.抱歉,你得装prettytable模块......
    2.还得抱歉,如果shell中运行,最好把字体调得小点,表格比较长......蛋疼

为什么写两个版本:
    武sir这期的作业不是很难,但有一个需求的逻辑个人感觉不是很合理:普通用户可以选择管理员操作的选项。
    当然银角的目的是为了我们把装饰器运用到实际程序中。
    一般页面展示中,管理员操作选项对于普通用户会做两种处理:
    1、将选项灰色显示或者不能点击
    2、普通用户登录后不显示管理员操作选项,如果管理员登录后则显示
    出于以上原因,我写了两个版本。
    所以写代码注释时,我只写了第一个版本的,即crm.py

两个版本区别:
    第一个版本crm.py 基本是按武sir的需求写的,略有不同的是,我把登陆和注册作为入口
    第二个版本crm_v2.py 是在第一个版本基础上稍作修改,只是判断登录用户的是否为管理员,如果管理员登录则比普通用户多显示管理操作选项

文件说明:
    crm.py:第一个版本,管理员以及普通用户操作均显示在主菜单
    crm_v2.py:第二个版本,主菜单根据登录用户的角色判断是否显示管理员操作的选项
    user_info:用户信息,以管道符隔开:账号|密码|邮箱|电话|用户角色

测试账号:
    可以自己注册,也可以使用现成的。
    管理员:admin/admin     alex/3714
    普通用户:chengchen/123  cc/123

操作流程:
    登录/注册---->用户操作主菜单(普通用户操作【查看账户信息,修改帐户信息】,管理员操作【搜索,遍历用户,提升权限,重置密码】)

功能:
    1.程序入口为登录、注册页面,用户可选择对应操作
    2.登录时添加了随机验证码的功能
    3.登录后显示操作主菜单,普通用户可查看本帐户信息,也可修改帐户信息
    4.管理员操作权限做了限制,如果普通用户选择会提示用户权限不足
    5.管理员可对所有用户进行搜索、遍历所有用户、提升权限、重置所有用户密码、增加删除用户等操作
    6.管理员提升用户权限时,会对账号角色进行判断,如果已为管理员,会提示
    7.用户做修改操作时,避免了多个用户账号前几个字母相同时出现的用户越权现象:比如管理员为chengchen,普通用户为chengc
    8.显示用户信息时,对密码加密显示,并且查找时,对密码字段不进行查找
View Code

相关文章: