人事管理系統介紹:
1.展示頁面:
①首頁:
==========歡迎來到簡歷管理系統v2.1.1==========
1.管理員登錄
2.專員登錄
3.退出
②管理員操作頁面
==========歡迎來到簡歷管理系統v2.1.1==========
1.查看專員信息
2.添加專員
3.退出
③專員操作頁面
==========歡迎來到簡歷管理系統v2.1.1==========
1.查看簡歷
2.添加簡歷
3.退出
2.功能介紹:
①。管理員可以查看數據庫中所有專員信息:ID 名字
可以根據名字查看屬於該名字操作的簡歷的簡歷信息
②。管理員可以添加專員賬戶
③。專員可以新建簡歷
④。專員查看自己操作的簡歷
數據庫介紹:
用戶表user_t:
id_ 主鍵自增長
user_reg 賬號
user_pwd 密碼
user_name 姓名
user_parent 父節點,所屬上級,關聯用戶id
user_roleId 角色id,關聯角色表
角色表role_t:
id_ 主鍵自增長
role_name 角色名
簡歷表resum_t:
id_ 主鍵自增長
resume_user_name 姓名
resume_user_sex 性別
resume_user_phone 電話
resume_user_email 郵箱
resume_user_skill 專業
resume_user_graduationTime 畢業時間
resume_user_graduationSchool 畢業學校
resume_user_interviewTime 面試時間
resume_user_remarks 備注
resume_operation_userId 操作人關聯user表的id
resume_operationTime 操作時間
#coding = utf-8 import pymysql import time #展示頁面 def printinfo(info1,info2): print('''==========歡迎來到管理系統v2.1.1========== 1.%s 2.%s 3.退出 '''% (info1, info2)) a = input("請以數字形式輸入您的操作:") return a #鏈接數據庫 def connectsql(): conn = pymysql.connect( host = '192.168.1.110', port = 3306, user = 'root', passwd = 'root', db = 'recruitdb', charset ='utf8' ) cor = conn.cursor() #返回游標 return conn, cor #登錄操作 def login(a, acor, aconn): a1 = int(a) lcor = acor lconn = aconn req = input('請輸入賬號:') passwd = input('請輸入用戶密碼:') id = 0 user_reg = '' user_pwd = '' user_name = '' user_parent = 0 user_roleId = 0 #定義一個旗幟,判斷是否登錄成功 flag = False #查詢管理員(專員)數據 a1 = 1為管理員 2 為專員 sql = lcor.execute('select * from user_t where user_roleId = %d'% a1 ) info = lcor.fetchmany(sql) for f,g,h,j,k,l in info: if req == g and passwd == h : flag = True id = f user_reg = g user_pwd = h user_name = j user_parent = k user_roleId = l aconn.commit() return [flag, id, user_reg, user_pwd, user_name, user_parent, user_roleId] class People(object): def __init__(self,cor,aconn, id, name): self.cor = cor self.conn = aconn self.id = id self.name = name def add_resume(self): self.r_name = input('姓名:') self.r_sex = input('性別:') self.r_phone = input('聯系方式:') self.r_email = input('郵箱:') self.r_skill = input('技能方向:') #畢業時間 self.time1 = input('畢業時間(yyyy-mm-dd):') self.timeStruct1 = time.strptime(self.time1, "%Y-%m-%d") self.timeStamp1 = int(time.mktime(self.timeStruct1)) self.r_graduationTime = time.strftime('%Y-%m-%d',time.localtime(self.timeStamp1)) self.r_graduationSchool = input('畢業院校:') #面試時間 self.time2 = input('面試時間(yyyy-mm-dd hh:mm:ss):') self.timeStruct2 = time.strptime(self.time2, "%Y-%m-%d %H:%M:%S") self.timeStamp2 = int(time.mktime(self.timeStruct2)) self.r_interviewTime = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(self.timeStamp2)) print('創建人:%s'% self.name) print('操作人:%s'% self.name) #操作時間,獲取當前時間 self.r_operationTime = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) self.cor.execute('insert into resume_t(resume_user_name,resume_user_sex,\ resume_user_phone,resume_user_email,resume_user_skill,\ resume_user_graduationTime,resume_user_graduationSchool,\ resume_user_interviewTime,resume_user_remarks,resume_operation_userId,resume_operationTime)\ values ("%s","%s","%s","%s","%s","%s","%s","%s","%s",%d,"%s")'\ %(self.r_name,self.r_sex,self.r_phone,self.r_email,self.r_skill,self.r_graduationTime,\ self.r_graduationSchool,self.r_interviewTime,self.name,self.id,self.r_operationTime)) self.conn.commit() #數據提交給數據庫 self.conn.close() print('插入成功!') def search_resume(self): self.k = input("請選擇1.電話,郵箱查詢 2.模糊查詢:") if self.k == '1': self.sel = input('請選擇你需要進行查詢的方式(1-電話號碼,2-郵箱):') if self.sel == '1': self.sql = self.cor.execute('select resume_user_phone from resume_t') self.all_phone = self.cor.fetchmany(self.sql) self.l = [] for self.i in self.all_phone: self.l.append(self.i[0]) self.phone = input('請輸入電話號碼:') if self.phone in self.l: self.sql_phone = self.cor.execute('select * from resume_t where resume_user_phone\ = "%s"'%self.phone) self.info = self.cor.fetchmany(self.sql_phone) for self.res in self.info: print('姓名:%s'%self.res[1]) print('性別:%s'%self.res[2]) print('聯系方式:%s'%self.res[3]) print('郵箱:%s'%self.res[4]) print('技能方向:%s'%self.res[5]) print('畢業時間:%s'%self.res[6]) print('畢業院校:%s'%(self.res[7])) print('面試時間:%s'%(self.res[8])) print('創建人:%s'%(self.res[9])) print('操作員:%s'%(self.name)) print('操作時間:%s'%(self.res[11])) else: print('沒有該電話號碼的簡歷') elif self.sel == '2': self.sql = self.cor.execute('select resume_user_phone from resume_t') self.all_email = self.cor.fetchmany(self.sql) self.l = [] for self.i in self.all_email: self.l.append(self.i[0]) self.email = input('請輸入郵箱:') if self.email in self.l: self.sql_email = self.cor.execute('select * from resume_t where \ resume_user_email = "%s"'%self.email) self.info = self.cor.fetchmany(self.sql_email) for self.res in self.info: print('姓名:%s'%self.res[1]) print('性別:%s'%self.res[2]) print('聯系方式:%s'%self.res[3]) print('郵箱:%s'%self.res[4]) print('技能方向:%s'%self.res[5]) print('畢業時間:%s'%self.res[6]) print('畢業院校:%s'%(self.res[7])) print('面試時間:%s'%(self.res[8])) print('創建人:%s'%(self.res[9])) print('操作員:%s'%(self.name)) print('操作時間:%s'%(self.res[11])) else: print('沒有該郵箱的簡歷') if self.k == '2': choose = input('選擇要進行模糊查詢的字段(1-姓名,2-技能方向,3-畢業院校):') if choose == '1': self.key = input('輸入姓名關鍵字:') self.arg = '%'+self.key+'%' self.sql = self.cor.execute('select * from resume_t where resume_user_name like "%s"'%self.arg) self.info = self.cor.fetchmany(self.sql) if self.info is not None: for self.res in self.info: print('姓名:%s'%self.res[1]) print('性別:%s'%self.res[2]) print('聯系方式:%s'%self.res[3]) print('郵箱:%s'%self.res[4]) print('技能方向:%s'%self.res[5]) print('畢業時間:%s'%self.res[6]) print('畢業院校:%s'%self.res[7]) print('面試時間:%s'%self.res[8]) print('創建人:%s'%self.res[9]) print('操作員:%s'%(self.name)) print('操作時間:%s'%self.res[11]) else: print('沒有該姓名的簡歷') elif choose == '2': self.key = input('輸入技能方向關鍵字:') self.arg = '%'+self.key+'%' self.sql = self.cor.execute('select * from resume_t where resume_user_skill like "%s"'%self.arg) self.info = self.cor.fetchmany(self.sql) if self.info is not None: for self.res in self.info: print('姓名:%s'%self.res[1]) print('性別:%s'%self.res[2]) print('聯系方式:%s'%self.res[3]) print('郵箱:%s'%self.res[4]) print('技能方向:%s'%self.res[5]) print('畢業時間:%s'%self.res[6]) print('畢業院校:%s'%self.res[7]) print('面試時間:%s'%self.res[8]) print('創建人:%s'%self.res[9]) print('操作員:%s'%(self.name)) print('操作時間:%s'%self.res[11]) else: print('沒有該姓名的簡歷') elif choose == '3': self.key = input('輸入畢業院校關鍵字:') self.arg = '%'+self.key+'%' self.sql = self.cor.execute('select * from resume_t where resume_user_graduationSchool like "%s"'%self.arg) self.info = self.cor.fetchmany(self.sql) if self.info is not None: for self.res in self.info: print('姓名:%s'%self.res[1]) print('性別:%s'%self.res[2]) print('聯系方式:%s'%self.res[3]) print('郵箱:%s'%self.res[4]) print('技能方向:%s'%self.res[5]) print('畢業時間:%s'%self.res[6]) print('畢業院校:%s'%self.res[7]) print('面試時間:%s'%self.res[8]) print('創建人:%s'%self.res[9]) print('操作員:%s'%(self.name)) print('操作時間:%s'%self.res[11]) else: print('沒有該畢業院校的簡歷') class Admin(object): def __init__(self, cor, aconn, id, name ): self.cor = cor self.conn = aconn self.id = id self.name = name def adduser(self): self.user_reg = input('請輸入賬號:') self.user_reg = input('請輸入密碼:') self.user_reg = input('請輸入姓名:') self.cor.execute('insert into user_t(id_, user_reg, user_pwd, user_name, user_parent, user_roleId) values(NULL, "%s", "%s", "%s",NULL ,2)'%(self.user_reg,self.user_reg,self.user_reg)) self.conn.commit() def search(self): sql = self.cor.execute('select id_, user_name from user_t where user_roleId = 2') info = self.cor.fetchmany(sql) for i in info: print('id:%d 名字:%s' % i) self.a = input('請輸入想要查看員工所操作簡歷的員工名字:') self.sql = self.cor.execute('select * from resume_t where resume_user_remarks = "%s"'% self.a) self.info = self.cor.fetchmany(sql) for self.i in self.info: print('ID: %d, 姓名:%s,性別:%s,聯系方式:%s,郵箱:%s,技能方向:%s,畢業時間:%s,畢業院校:%s,面試時間:%s,創建人:%s,操作員:%d,操作時間:%s'% self.i) def action(a, cor, conn): acor = cor aconn = conn if a == '1': #登錄 infoList = login(a, acor, conn) if infoList[0]: b = printinfo('查看專員信息','添加專員') admin = Admin(acor,aconn, infoList[1],infoList[4]) if b == '1': admin.search() elif b == '2': admin.adduser() else: print('已成功退到登錄頁面!') else: print('登錄失敗!') if a == '2': #登錄 infoList = login(a, acor,aconn) if infoList[0]: #登錄后的展示頁面 b = printinfo('查看簡歷','新建簡歷') user = People(acor,aconn, infoList[1],infoList[4]) if b == '1': user.search_resume() elif b == '2': user.add_resume() else: print('已成功退到登錄頁面!') else: print('登錄失敗!') while True: #鏈接數據庫 conn,cor = connectsql() #頁面展示 a = printinfo('管理員登錄', '專員登錄') #用戶操作 action(a, cor, conn) if a == '3': break cor.close() conn.close()