mysql實現體溫管理系統
阿新 • • 發佈:2020-11-11
體溫管理系統
目標:根據頁面設計系統功能
設計專案資料庫
程式碼實現
專案介紹:登入學生每天的低溫資訊並記錄異常情況
頁面介紹:
首頁:生成每個學生當天的體溫名單,按照日期查詢
體溫狀態修改頁面:實現修改某個人的體溫狀態
展示:
1.所有資訊
2.統計功能(正常多少人,異常多少人,特殊因為什麼特殊)
專案功能需求分析:登入,註冊,展示首頁,生成今日體溫記錄(id,學生id,名字,日期,異常狀態,說明),根據名字和日期修改體溫記錄情況,根據日期統計體溫正常或者異常
資料庫設計:
核心物件:
1.使用者物件
2.學生物件
3.記錄物件
表:
1.使用者表
2.學生表
3.****學生記錄表
物件/表之間的關係
實現表
from my_d import MysqlHelper #匯入第三方模組 import datetime #匯入time模組 current_day = datetime.date.today() db = MysqlHelper('localhost',13306,'root','root','students') #建立連線 def login_menu(): #登陸選單 print('##########歡迎使用北網體溫管理系統###########') print('1. 登陸') print('2. 註冊') print('##########################################') def login(name,pwd): #登入 sql ="select * from users where uname =%s and pwd =%s" params =[name,pwd] result =db.get_one(sql,params) return result def sys_menu(): #登入裡面的列表選單 print('**************************************') print('1. 生成今日體溫記錄') print('2. 根據名字修改體溫記錄') print('3.根據日期查詢統計') print('*************************************') num = int(input('請選擇選單:')) if num==1: gener_jilu() elif num==2: update_jilu() elif num==3: mycount() else: print('輸入錯誤!') def gener_jilu(): #生成體溫記錄 print(f'生成:{current_day}體溫記錄!') db = MysqlHelper('localhost', 13306, 'root', 'root', 'students') result = db.get_one('select * from flag where create_time=%s', (current_day)) if result is None: try: students = db.get_all("select * from students", None) list_jilu = [] for stu in students: jilu = (stu[0], current_day, 1, '正常') # 記錄 list_jilu.append(jilu) sql = "insert into jilu(sid,create_time,status,shuoming,temp) values(%s,%s,%s,%s,36.1)" db.my_execute(sql, list_jilu) db.my_execute('insert into flag(create_time,flag) values(%s,%s)', (current_day, 1)) print('無錯誤生成成功!!') except Exception as e: print(e) else: print('今日已生成!') def update_jilu(): #修改體溫記錄 print('根據名字修改記錄資料') name = input('請輸入體溫異常人名字:') status = input('輸入體溫狀態(1正常2,異常3缺失):') shuoming = input('請輸入說明:') temp = input('請輸入體溫:') try: sql = 'select id from students where name = %s' result = db.get_one(sql,[name]) sid = result[0] sql2 = 'update jilu set status =%s, shuoming = %s,temp=%s where sid=%s and create_time =%s' params =(status,shuoming,temp,sid,current_day) db.my_execute(sql2,params) print('修改成功') except Exception as e: print(e) def mycount(): #統計體溫記錄 print('統計,') current_day = input('請輸入日期(xxxx-xx-xx):') sql ='select status,count(*) from jilu where create_time=%s group by status' result = db.get_all(sql,(current_day)) print(f'日期:{current_day}') print('狀態1:正常 2.異常 3缺失!') for item in result: print(f'狀態:{item[0]}\t,人數:{item[1]}') if __name__ == '__main__': # 1. 顯示選單 login_menu() num =int( input("請選擇選單:")) if num==1: name = input('請輸入名字:') pwd = input('請輸入密碼:') if login(name, pwd) is not None: print('登陸成功;') sys_menu() else: print('使用者名稱或密碼錯誤!') elif num==2: print('註冊功能') else: print('輸入有誤!')