使用Python实现管理系统附源码

目录
  • 0. 前言
  • 1. 题目要求
  • 2. 要求分析
  • 3.效果展示
    • 3.1 主界面
    • 3.2 注册界面
    • 3.3 管理员
      • 3.3.1 管理员登陆界面
      • 3.3.2 管理员——疫苗信息管理界面
      • 3.3.3 管理员——社区医院管理界面
    • 3.4 社区医院
      • 3.4.1 社区医院登陆界面
      • 3.4.2 社区医院——医院信息管理界面
      • 3.4.3 社区医院——用户预约界面
      • 3.4.5 社区医院——接种信息管理界面
      • 3.4.6 社区医院——不良反应反馈界面
    • 3.5 普通用户
      • 3.5.1 普通用户登陆界面
      • 3.5.2 普通用户——个人信息管理界面
      • 3.5.3 普通用户——家庭信息管理界面
      • 3.5.4 普通用户——接种预约界面
      • 3.5.5 普通用户——不良反应反馈界面
  • 4. 源码及使用说明
    • 4.1 需要的环境(第三方库)
    • 4.2 创建数据库
      • (1)登录mysql
      • (2)创建vaccine_info数据库
      • (3)创建user_info表格
      • (4)在user_info表格中插入管理员
      • (5)创建commonuser_info表格
      • (6)创建vaccines_info:
      • (7)创建hospital_info表格:
      • (8)创建 inoculate_info表格:
  • 5. 总结

0. 前言

这几天在写软件工程课设,题目是:设计一款疫苗管理系统,于是用PyQT5写GUI,MySQL做数据库写了一个demo出来。

做完之后,给我的感觉是像这种管理系统类的东西本质上就是对数据库的增删改查,界面是为了方便普通用户操作而存在的。

其实一开始前端想过用web,但后来还是偷懒用了PyQT5写GUI。下次有机会可能会尝试一下web前端(之前从来没用过)。

这次主要代码量有1200多行(不带UI界面代码),整体写的有些乱,代码复用和代码管理方面做得不太行,不过写了详细的注释。写这个博客主要为了记录和总结,同时可以互相学习交流。

1. 题目要求

先来看看课设的题目要求:

2. 要求分析

首先把题目直接说出的要求列出来,用户和需求模块如下:

接着做更进一步的分析,补充了一些功能,最终的大致流程如下:

确定了大致流程后,需要开始创建数据库了。我的代码中数据库是需要手动创建的,很简单,在第4部分“源码及其使用”中我会具体介绍。先分析需要创建的数据库(database)及表格(table):

创建的数据库和表格如下:

3.效果展示

先来看看代码的效果如何(所有在前端的操作都会同步到数据库更新),这里只展示部分效果,还有些错误提示什么的细节就不展示了。

3.1 主界面

3.2 注册界面

3.3 管理员

3.3.1 管理员登陆界面

3.3.2 管理员——疫苗信息管理界面

3.3.3 管理员——社区医院管理界面

3.4 社区医院

3.4.1 社区医院登陆界面

3.4.2 社区医院——医院信息管理界面

3.4.3 社区医院——用户预约界面

3.4.5 社区医院——接种信息管理界面

3.4.6 社区医院——不良反应反馈界面

3.5 普通用户

3.5.1 普通用户登陆界面

3.5.2 普通用户——个人信息管理界面

3.5.3 普通用户——家庭信息管理界面

3.5.4 普通用户——接种预约界面

3.5.5 普通用户——不良反应反馈界面

4. 源码及使用说明

源码链接:链接: https://pan.baidu.com/s/1qQehJ8P_nouEIzGqqBkmNA

提取码:v9d6

首先看下文件结构:

control.py是主代码,UI文件夹里是UI文件的代码,不用管,assets里是一些图片,我本来想给界面加些背景和图标的,但后来发现一直有问题,就没加。

理论上讲只要配置好环境,按要求创建好数据库就可以运行了。

4.1 需要的环境(第三方库)

看一下我的运行环境

没太多额外的库,用anaconda创建虚拟环境,然后额外安装好pyqt5和pymysql库(为了和数据库相连)就行了。如何安装,百度就能解决。

4.2 创建数据库

需要首先安装好mysql数据库,安装教程有很多,不说了。

然后需要手动创建我之前说的数据库和那几个表格,具体代码如下:

(数据库和表的名字不能错,因为代码和数据库和表的名字连接)

(1)登录mysql

mysql -u root -p

(2)创建vaccine_info数据库

create database vaccine_info;

(3)创建user_info表格

create table user_info(
id varchar(20) primary key,
password varchar(20),
role varchar(1));

(4)在user_info表格中插入管理员

这么做是因为从安全的角度考虑,管理员这一权限最大的用户由数据库操作者手动添加最为合适。

insert into user_info (id, password, role) values ('admin1', '123456', 'A');

(5)创建commonuser_info表格

create table commonuser_info(
id varchar(20) primary key,
name varchar(20),
family_code varchar(8),
age int(3),
sex varchar(1),
phone varchar(20),
IDCard varchar(30),
is_book varchar(1),
book_time varchar(11),
is_bad_reaction varchar(1),
what_bad_reaction varchar(60));

看看commonuser_info长什么样子:

(6)创建vaccines_info:

create table vaccines_info(
type varchar(10),
company varchar(20),
user_type varchar(20),
user_age varchar(20),
price varchar(7));

(7)创建hospital_info表格:

create table hospital_info(
id varchar(20) primary key,
name varchar(20),
num varchar(10),
is_book varchar(1),
time varchar(20));

(8)创建 inoculate_info表格:

create table inoculate_info(
id varchar(20) primary key,
vaccine_type varchar(200),
time varchar(200));

至此,数据库配置完成,总共有5个表格:

之后直接运行control.py就可以了。

5. 总结

这次课设还是学到了一些东西的,主要是数据库的一些基本使用,以前一直不太清楚数据库到底要怎么用。

不过说实话学到的东西和花费的时间不成正比,当会用数据库操作和写界面时,之后的工作就是在重复了。当然,我写的也只是demo水平,仅供娱乐参考。

另外,部署环境和数据库配置等我已经说得比较详细了,如果配置过程出了问题相信百度就可以解决。

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • 基于Python实现一个简易的数据管理系统

    目录 创建mysql数据表 增删改查 启动应用  为了方便的实现记录数据.修改数据没有精力去做一个完整的系统去管理数据.因此,在python的控制台直接实现一个简易的数据管理系统,包括数据的增删改查等等.只需要在控制台层面调用相应的功能调用查询.修改等功能,这里记录一下实现过程. 创建mysql数据表 使用比较熟悉的数据库客户端来进行操作,这里使用的是navicate客户端来创建好相应的数据表. 创建数据库并指定编码字符集. CREATE DATABASE `data_boc` CHARACTE

  • python基于Tkinter实现人员管理系统

    前言 Tkinter是python内置的标准GUI库,基于Tkinter实现了简易人员管理系统,所用数据库为Mongodb 代码 时间宝贵!直接上代码! from tkinter import * from tkinter.messagebox import * from tkinter import ttk import pymongo import tkinter as tk import re import time import datetime import pandas as pd

  • Python函数实现学员管理系统

    本文实例为大家分享了Python函数实现学员管理系统的具体代码,供大家参考,具体内容如下 这个是一个简单的管理程序 输入姓名,年龄,性别(也可以添加其他类别例如性取向),然后以列表的形式保存(默认为空列表).功能如下: 按1添加成员 按2删除成员 按3修改成员信息(目前不包括姓名但是可以添加) 按4检索并打印某个成员的全部信息 按5打印全部成员的信息 按6退出程序 大概就是这样子.下面是代码: import time def main(): '''主函數''' while True: sl(),

  • 一篇文章教你用Python实现一个学生管理系统

    目录 片头 源码: 总结 片头 Python看了差不多三四天吧,基本上给基础看差不多了.写个管理系统吧,后续不出意外SQL.文件存储版本都会更. 学习Python感想: 人生苦短,我用Python 人生苦短,我用Python 人生苦短,我用Python 人生苦短,我用Python Python实在太爽了 源码: 使用Python3 ''' 学生成绩管理系统 时间:2021.9.9 作者:sunbeam ''' import time import os student_list = [] #定义

  • Python制作基础学生信息管理系统

    目录  一.前言 二.开发环境: 三.涉及知识点 四.接下来我们开始敲代码 第一步:制作学生信息管理系统的界面 第二步:新建学生信息 第三步:显示全部学生信息 第四步:查询学生信息 第五步:修改学生信息 第六步: 删除学生信息 五.最后代码  一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3.8 Pycharm 2021.2 三.涉及知识点 Pyt

  • 使用Python实现管理系统附源码

    目录 0. 前言 1. 题目要求 2. 要求分析 3.效果展示 3.1 主界面 3.2 注册界面 3.3 管理员 3.3.1 管理员登陆界面 3.3.2 管理员——疫苗信息管理界面 3.3.3 管理员——社区医院管理界面 3.4 社区医院 3.4.1 社区医院登陆界面 3.4.2 社区医院——医院信息管理界面 3.4.3 社区医院——用户预约界面 3.4.5 社区医院——接种信息管理界面 3.4.6 社区医院——不良反应反馈界面 3.5 普通用户 3.5.1 普通用户登陆界面 3.5.2 普通用

  • java实现简易超市管理系统 附源码下载

    java超市管理系统 1.0(含源文件,后续会继续优化~) 前言 一个月零零散散的时间学习了java,通过这次"超市管理系统"的练习,希望可以给一同开始学习java的朋友一些参考,更希望大佬们多多指点和批评~ 一.确定需求 程序概述: 小型超市商品销售管理系统选择小型超市的四类商品进行管理. 这四类商品是:食品.化妆品.生活用品和饮料(四个类). 每类商品都包含有商品名和商品利润 (其中包括商品的售价.进价.库存量).(五个属性) 每类不同的商品还有区别于其他商品的特殊信息(子类特有属

  • C#图书管理系统 附源码下载

    用来练手还是不错的,分享大家看一下,还是一些新颖点的   !哈哈 就是自定义DataGridView,方便每个功能部分调用!简单!再次重申!!!后面源码会送上! 首先看一下登录,上图吧! 只有超级管理员跟管理员 接下来看一下主界面 更改DataGridView数据列 datagridView自定义类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.

  • 基于javaweb+jsp的游泳馆会员管理系统(附源码)

    目录 适用 运行环境 开发工具 技术框架 适用 功能说明 源代码 基于javaweb+jsp的游泳馆会员管理系统 JavaWeb JavaBean JSP MVC MySQL Tomcat JavaScript Bootstrap Ajax 基础JSP+Servlet或JSP+SSM(Spring.SpringMVC.MyBatis)框架或JSP+SSM+Maven(pom.xml)框架或SpringBoot…均可 开发工具:eclipse/idea/myeclipse/sts等均可配置运行 适

  • 100行Python代码实现自动抢火车票(附源码)

    前言 又要过年了,今年你不妨自己写一段代码来抢回家的火车票,是不是很Cool.下面话不多说了,来一起看看详细的介绍吧. 先准备好: 12306网站用户名和密码 chrome浏览器及下载chromedriver 下载Python代码,来自网络整理 [点击下载 |  本地下载 ] 代码用的Python+Splinter开发,Splinter是一个使用Python开发的开源Web应用测试工具,它可以帮你实现自动浏览站点和与其进行交互. Splinter官网:http://splinter.readth

  • Python编写一个验证码图片数据标注GUI程序附源码

    做验证码图片的识别,不论是使用传统的ORC技术,还是使用统计机器学习或者是使用深度学习神经网络,都少不了从网络上采集大量相关的验证码图片做数据集样本来进行训练. 采集验证码图片,可以直接使用Python进行批量下载,下载完之后,就需要对下载下来的验证码图片进行标注.一般情况下,一个验证码图片的文件名就是图片中验证码的实际字符串. 在不借助工具的情况下,我们对验证码图片进行上述标注的流程是: 1.打开图片所在的文件夹: 2.选择一个图片: 3.鼠标右键重命名: 4.输入正确的字符串: 5.保存 州

  • 使用Python给头像加上圣诞帽或圣诞老人小图标附源码

    随着圣诞的到来,想给给自己的头像加上一顶圣诞帽.如果不是头像,就加一个圣诞老人陪伴. 用Python给头像加上圣诞帽,看了下大概也都是来自2017年大神的文章:https://zhuanlan.zhihu.com/p/32283641 主要流程 素材准备 人脸检测与人脸关键点检测 调整大小,添加帽子 用dlib的正脸检测器进行人脸检测,用dlib提供的模型提取人脸的五个关键点 调整帽子大小,带帽 选取两个眼角的点,求中心作为放置帽子的x方向的参考坐标,y方向的坐标用人脸框上线的y坐标表示.然后我

  • python opencv实现直线检测并测出倾斜角度(附源码+注释)

    由于学习需要,我想要检测出图片中的直线,并且得到这些直线的角度.于是我在网上搜了好多直线检测的代码,但是没有搜到附有计算直线倾斜角度的代码,所以我花了一点时间,自己写了一份直线检测并测出倾斜角度的代码,希望能够帮助到大家! 注:这份代码只能够检测简单结构图片的直线,复杂结构的图片还需要设置合理的参数 下面展示 源码. import cv2 import numpy as np def line_detect(image): # 将图片转换为HSV hsv = cv2.cvtColor(image

  • python绕过图片滑动验证码实现爬取PTA所有题目功能 附源码

    最近学了python爬虫,本着学以致用的态度去应用在生活中.突然发现算法的考试要来了,范围就是PTA刷过的题.让我一个个复制粘贴?不可能,必须爬它! 先开页面,人傻了,PTA的题目是异步加载的,爬了个寂寞(空数据).AJAX我又不熟,突然想到了selenium. selenium可以模拟人的操作让浏览器自动执行动作,具体的自己去了解,不多说了.干货来了: 登录界面有个图片的滑动验证码 破解它的最好方式就是用opencv,opencv巨强,自己了解. 思路开始: 1.将背景图片和可滑动的图片下载

  • python 制作网站筛选工具(附源码)

    一.思路 1.整体思路 2.代码思路 思路很简单,就是用python发送请求,提取响应体中的状态码加以判断,最后保存到本地txt文本中,以实现网站信息的筛选. 二.撰写代码 import time import requests import urllib3 from concurrent.futures import ThreadPoolExecutor #取源文件中的网址并且去重 def get_url(old_file): with open(old_file,'r',encoding='

随机推荐