一、概述

前段时间帮公司写了一个资产管理的网站,(https://www.cnblogs.com/ddzj01/p/11316837.html),系统运行的比较稳定,小白的第一个项目得到了领导的肯定。果不其然,第二个需求就来了,需要帮公司再写一个文件管理的系统。

二、过程

1. 由于公司属于跟钱有关的行业,监管严格。所以公司的所有电脑U盘,网盘全都被限制了。不要说把公司的文件拷走,就连从外网把文件拷贝到公司的电脑上都不行,但实际上这个需求是有的,这咋办呢?
2. 以前的办法是如果需要拷贝文件到公司电脑,需要填申请单,层层审批,最后把u盘交给管理员,管理员再把文件拷进来,这他妈的是多么蛋疼的做法!
3. 所以亟需一个网站解决这个问题。现在通过开放几台公共电脑的U盘端口,用户可以通过自己的U盘在该电脑上传文件,上传的文件全部集中存放在公司的存储服务器中,然后在自己的办公电脑下载。监察员通过网站能够查看到每一个用户的上传下载记录。这样就解决了用户自由上传下载,又能实现留痕的功能。

三、网站介绍

登录

用户名填写工号或者姓名,初始密码是“123456”

网站角色

网站一共有三种角色:普通用户、系统管理员、稽核监察员

普通用户拥有的功能:
a 上传和下载文件
b 修改密码

系统管理员拥有的功能:
a 上传和下载文件
b 修改密码
c 对人员进行管理,添加用户,分配角色,密码重置
d 对文件进行终审,但不能对自身上传的文件进行终审
e 填写开放了USB端口的电脑IP地址

系统管理员拥有的功能:
a 上传和下载文件
b 修改密码
c 对文件进行审批,根据子角色的不同分为一审和二审
d 能查看所有人上传的文件
e 能将所有人上传的文件名称导出为excel
f 能查看所有人的上传和下载记录

文件上传和下载
文件上传限定在每个文件500M以内,并且不允许上传bat和exe格式文件。文件如需在公用电脑下载,需要经过一审、二审、终审都通过后,方可下载。文件在一审和二审的过程中,一审员和二审员可以查看该文件的具体内容。

四、相关截图

项目地址:https://github.com/YangBaohust/wjgl

相关截图是初始版本,后面又经过了很大的修改,图片我就懒得重传了,有兴趣可以去看github上面的详细介绍

五、总结

当我发现我第一个python项目在github上面竟然有别人在用的时候,不知道有多开心,这算是对自己的一个鼓励吧。

Python - 文件管理系统的更多相关文章

  1. python 全栈开发,Day29(昨日作业讲解,模块搜索路径,编译python文件,包以及包的import和from,软件开发规范)

    一.昨日作业讲解 先来回顾一下昨日的内容 1.os模块 和操作系统交互 工作目录 文件夹 文件 操作系统命令 路径相关的 2.模块 最本质的区别 import会创建一个专属于模块的名字, 所有导入模块 ...

  2. 4、Python文件对象及os、os.path和pickle模块(0530)

    文件系统和文件 1.文件系统是OS用于明确磁盘或分区上的文件的方法和数据结构---即在磁盘上组织文件的方法: 文件系统模块:os 2.计算机文件(称文件.电脑档案.档案),是存储在某种长期储存设备或临 ...

  3. python名片管理系统V2

    主程序: #! /usr/bin env python3 # -*- coding: utf-8 -*- # 项目三: # 1.要求:编写一个名片管理系统,功能如下: # 用户输入相对应的指令,实现对 ...

  4. python员工管理系统(基础版)

    各位小伙伴们大家好,最近自学python已经差不多把基础学完了,现在运用这些基础知识写了一个简单版本的员工管理系统 因为在大学里我是学过java的,所以,当有了一定的基础和熏陶外,真心觉得python ...

  5. Linux下Python 文件内容替换脚本

    Linux下Python 文件替换脚本 import sys,os if len(sys.argv)<=4: old_text,new_text = sys.argv[1],sys.argv[2 ...

  6. 【Python文件处理】递归批处理文件夹子目录内所有txt数据

    因为有个需求,需要处理文件夹内所有txt文件,将txt里面的数据筛选,重新存储. 虽然手工可以做,但想到了python一直主张的是自动化测试,就想试着写一个自动化处理数据的程序. 一.分析数据格式 需 ...

  7. Python文件使用“wb”方式打开,写入内容

    Python文件使用"wb"方式打开,写入字符串会报错,因为这种打开方式为:以二进制格式打开一个文件只用于写入.如果该文件已存在则将其覆盖.如果该文件不存在,创建新文件. 所以写入 ...

  8. Python 文件操作函数

    这个博客是 Building powerful image classification models using very little data 的前期准备,用于把图片数据按照教程指示放到规定的文 ...

  9. python文件I/O(转)

    Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...

随机推荐

  1. 中标麒麟neokylin信息查看

    中标麒麟Neokylin系统版本信息: # nkvers ############## NeoKylin Linux Version################# Release: NeoKyli ...

  2. Feign超时设置

    转-原文:https://xli1224.github.io/2017/09/22/configure-feign/ 在分析 Feign 源码的时候,我们看到 Feign 构建代理对象是分了几层的,一 ...

  3. 2019-2020-1 20199304《Linux内核原理与分析》第九周作业

    第八章 进程的切换和系统的一般执行过程 知识点 1.进程调度的时机 1.1硬中断和软中断 中断是指在计算机执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而 ...

  4. 2019-2020-1 20199304《Linux内核原理与分析》第二周作业

    计算机工作原理 存储程序计算机模型 冯·诺依曼体系结构 冯·诺依曼体系结构如图所示: 冯·诺依曼体系结构包含五大部分 运算器:在控制器的统一控制下,负责对数据进行加工.完成各种运算,如算术运算.逻辑运 ...

  5. 在文件夹下所有文件中查找字符串(linux/windows)

    在linux下可以用 grep "String" filename.txt#字符串 文件名grep -r "String" /home/#递归查找目录下所有文件 ...

  6. 【我的物联网成长记6】由浅入深了解NB-IoT

    [摘要] 什么是NB-IoT?NB-IoT有什么优势?NB-IoT能做什么?本文将会从NB-IoT技术的发展历程,技术特点,通信协议,应用场景等方面为您全方面解读NB-IoT技术,了解NB-IoT的独 ...

  7. ST MCU的UID

    ST MCU芯片中的绝大部分都内置一串96位唯一标识码[unique ID].时不时有人问起这个东西,尤其最近感,觉询问它的人甚是热闹.这里跟大家一起简单分享下. 上面说了ST MCU芯片中的绝大部分 ...

  8. 【数据结构05】红-黑树基础----二叉搜索树(Binary Search Tree)

    目录 1.二分法引言 2.二叉搜索树定义 3.二叉搜索树的CRUD 4.二叉搜索树的两种极端情况 5.二叉搜索树总结 前言 在[算法04]树与二叉树中,已经介绍过了关于树的一些基本概念以及二叉树的前中 ...

  9. Linux源码编译安装httpd

    Linux安装软件采用源码编译安装灵活自由,适用于不同平台,维护也十分方便. 源码编译的安装方式一般由3个步骤组成: 1.配置(configure) 2.编译(make) 3.安装(make inst ...

  10. 深入探索Java设计模式(二)之策略模式

    策略设计模式是Java API库中常见的模式之一.这与另一个设计模式(称为状态设计模式)非常相似.本文是在学习完优锐课JAVA架构VIP课程—[框架源码专题]中<学习源码中的优秀设计模式> ...