BẢNG ĐÁNH GIÁ CÔNG VIỆC CỦA CÁC THÀNH VIÊNBảng đánh giá công việc của các thành viên nhóm 14Môn: Lập trình với python – Lớp: 231_INFO4511_03STT Tên thành viênMã sinh viênPhần công việc Đ
ĐẶT BÀI TOÁN
Hệ thống chuỗi siêu thị điện máy thế giới di động thuộc một trong những tập đoàn bán lẻ lớn với lĩnh vực kinh doanh chính là bán lẻ điện thoại di động, thiết bị số, và điện tử tiêu dùng Trong hệ thống Siêu thị điện máy Thế giới di động, một yếu tố cốt lõi đem lại sự thành công vượt bậc và giúp doanh nghiệp dẫn đầu trên thị trường chính là quản trị nhân lực Bởi lẽ việc đào tạo, phát triển đội ngũ nhân viên sẽ đem lại những trải nghiệm tốt nhất cho khách hàng, từ đó gia tăng sự hài lòng và tăng doanh số công ty Tuy nhiên, việc quản lý nguồn nhân lực tại các hệ thống Siêu thị điện máy Thế giới di động không phải là điều dễ dàng khi với đặc thù có nhiều cửa hàng và chi nhánh trên toàn quốc, doanh nghiệp cần đảm bảo nhân viên làm việc đầy đủ và chính xác theo ca đã đăng ký trước, đặc biệt là bộ phận kinh doanh – đội ngũ đi thị trường nhiều Thêm vào đó, với số lượng lớn nhân viên phân bổ tại nhiều nơi cùng với việc phải thay đổi nhân sự diễn ra thường xuyên nên công tác tuyển dụng, đào tạo nhân sự tốn rất nhiều thời gian và công sức
Vì vậy nên cần phải nhập thông tin chính xác của từng nhân sự để dễ dàng hơn trong việc quản lý Việc tạo ra một chương trình quản lý nhân sự cho chuỗi hệ thống là vô cần cần thiết Chương trình này cần phải thật đơn giản, dễ dàng sử dung cho người dùng đồng thời cần phải đươc tổ chức có tính tái sử dụng, linh hoạt, dễ dàng trong việc quản lý và nâng cấp Bởi hệ thống Siêu thị điện máy Thế giới di động là một tổ chức doanh nghiệp có nhiều cửa hàng trải dài khắp trong và ngoài nước và có sư tham gia nhiều cá thể, không thể tránh khỏi việc bị cạnh tranh nên chương trình này cũng cần có tính bảo mật cũng như mã hóa thông tin của nhân viên, tránh bị rò rị thông tin hoặc khiến doanh nghiệp thiệt hại về cả trăm đến hàng nghìn tỉ đồng.
PHÂN TÍCH
Phân tích bài toán
Hệ thống quản lý nhân sự của Siêu Thị Điện Máy Thế Giới Di Động Hệ thống quản lý nhân sự đóng vai trò quan trọng trong việc tổ chức và điều hành các hoạt động liên quan đến nguồn nhân lực trong một tổ chức Được thiết kế với những chức năng đa dạng, hệ thống này không chỉ giúp quản lý tối ưu hóa các quy trình mà còn đảm bảo hiệu suất và sự hài lòng của nhân viên Dưới đây là phân tích về một số hệ thống và chức năng quan trọng của hệ thống quản lý nhân sự.
Hệ thống con số 1: Hệ thống nhân sự
+ Hiển thị toàn bộ nhân viên của doanh nghiệp
+ Xóa nhân viên ra khỏi danh sách
+ Cập nhật thông tin nhân viên
+ Tìm kiếm và in thông tin của nhân viên
Hệ thống con số 2: Kế hoạch nhân sự - Tuyển dụng
+ Hiển thị toàn bộ thông tin của ứng viên
+ Xóa ứng viên ra khỏi danh sách ứng tuyển
Hệ thống con số 3: Tài chính – Lương nhân viên
+ Thêm nhân viên mới vào hệ thống lương cuối tháng
+ Xuất báo cáo tổng hợp ra excel
+ Xuất báo cáo lương cá nhân cho từng nhân viên
Hệ thống con số 4: Đào tạo nhân viên(Dành cho các nhân viên mới)
+ Giới thiệu về tổ chức và giá trị của tổ chức
+ Quy tắc ứng xử trong doanh nghiệp
Hệ thống con số 5: Đóng góp ý kiến hoàn thiện tổ chức
+ Hiển thị toàn bộ ý kiến đóng góp
Sơ đồ các chức năng của hệ thống
2.2.1 Sơ đồ hệ thống con số 1: Hệ thống nhân sự
Hình 1: Sơ đồ hệ thống con hệ thống nhân sự
Thông tin nhân viên bao gồm thông tin cá nhân, lịch sử công việc và kỹ năng chuyên môn Hệ thống quản lý nhân sự cung cấp quản lý hồ sơ, tìm kiếm nhân viên, cập nhật thông tin và xóa nhân viên Tính năng này cho phép quản lý theo dõi sự phát triển và đánh giá hiệu suất của nhân viên.
2.2.2 Sơ đồ hệ thống con số 2: Kế hoạch nhân sự - Tuyển dụng
Hình 2: Sơ đồ chức năng ứng tuyển nhân viên
Một trong những chức năng chính của hệ thống là quản lý quy trình tuyển dụng Hệ thống này hỗ trợ từ việc đăng tuyển đến quản lý hồ sơ ứng viên, giúp rút ngắn thời gian tuyển dụng và tăng cường khả năng tìm kiếm ứng viên phù hợp Thông tin nhân viên được lưu trữ và cập nhật liên tục, bao gồm thông tin cá nhân, kinh nghiệm làm việc và các bằng cấp, tạo nền tảng cho quản lý hiệu quả và đáng tin cậy.
2.2.3 Hệ thống con số 3: Tài chính – Lương nhân viên
Hình 3: Sơ đồ hệ thống lương
Chức năng tính lương của hệ thống cũng đóng một vai trò quan trọng Tích hợp các thông tin về lương cơ bản, ngày nghỉ, hệ thống giúp tự động hóa quy trình lương, giảm thiểu sai sót và tăng tính minh bạch Điều này không chỉ giúp quản lý tiết kiệm thời gian mà còn đảm bảo công bằng và nhất quán trong việc chi trả lương cho nhân viên.
2.2.4 Sơ đồ hệ thống con số 4: Quản lý đào tạo cho nhân viên mới
Hình 4: Sơ đồ hệ thống đào tạo nhân viên mới
Chức năng đào tạo của hệ thống quản lý nhân sự chịu trách nhiệm đảm bảo rằng nhân viên có cơ hội phát triển nghề nghiệp của mình Hệ thống này giúp theo dõi và đánh giá kỹ năng, tự động hóa quy trình đăng ký và thực hiện các chương trình đào tạo Điều này không chỉ cung cấp lợi ích cho cá nhân mà còn tăng cường năng suất và chất lượng lao động cho tổ chức.
2.2.5 Sơ đồ hệ thống con số 5: Đóng góp ý kiến nhân viên
Hình 5: Sơ đồ chức năng đóng góp ý kiến
Hệ thống còn cung cấp chức năng quản lý đóng góp của nhân viên Việc theo dõi và đánh giá công việc hàng ngày giúp xác định hiệu suất cá nhân, từ đó tạo ra cơ hội phát triển và thưởng cho nhân viên xuất sắc Đồng thời, hệ thống này cũng tạo điều kiện cho việc thu thập ý kiến và đề xuất từ nhân viên, nâng cao tinh thần đồng đội và sự cam kết.
Mô tả chi tiết các chức năng của hệ thống
2.3.1 Các chức năng của hệ thống thông tin nhân viên
- Chức năng thêm thông tin nhân viên mới vào danh sách nhân viên công ti + Yêu cầu người dùng nhập thông tin cá nhân và chức vụ của nhân viên
Thông tin cá nhân của nhân viên gồm có:
Thông tin về chức vụ của doanh nghiệp:
Nhân viên tư vấn khách hàng
Nhân viên phát triển bán hàng trực tuyến
Nhân viên hỗ trợ kỹ thuật
+ Sau khi nhập xong chương trình sẽ tự động lưu tất cả các thông tin đã nhập dưới dạng tệp csv trên chương trình và tệp excel trong bộ nhớ
- Chức năng hiển thị danh sách nhân viên:
+ Sau khi chọn chức năng hệ thống sẽ tự động in ra toàn bộ danh sách của công ti
- Chức năng xóa nhân viên ra khỏi danh sách nhân viên của công ti
+ Chương trình yêu cầu người dùng nhập ID của nhân viên cần xóa
Nếu ID nhập vào có trong danh sách thì nhân viên đó bị xóa khỏi danh sách hệ thống trả về “ Đã xóa thành công”
Nếu ID người dùng nhập không có trong danh sách thì hệ thống trả về “ Không tìm thấy nhân viên”
Sau khi xóa xong hệ thống tự động cập nhật về tệp csv và tệp excel
- Chức năng cập nhật thông tin nhân viên
+ Chức năng cho phép cập nhật 3 thông tin chính là số điện thoại, Email và chức vụ
+ Đầu tiên hệ thống yêu cầu người chọn thông tin muốn cập nhật
+ Nhập ID nhân viên muốn cập nhật thông tin
+ Nếu ID có trong danh sách, tiếp tục nhập thông tin mới cần cập nhật Nếu ID không có trong danh sách trả về “Không tìm thấy nhân viên”
- Chức năng tìm kiếm nhân viên
+ Nhập ID nhân viên cần tìm kiếm, nếu ID tồn tại thì in ra thông tin của nhân viên có ID đó, nếu ID không tồn tại thì trả về “Không có kết quả phù hợp”
2.3.2 Các chức năng của hệ thống Kế hoạch nhân sự - Tuyển dụng
- Chức năng điền đơn ứng tuyển
+ Hệ thống yêu cầu người dùng nhập thông tin cá nhân và thông tin ứng tuyển:
Thông tin cá nhân gồm có:
Thông tin ứng tuyển gồm có:
Kinh nghiệm làm việc khác
+ Sau khi điền đầy đủ thông tin thì chương trình sẽ trả về “ Thông tin của bạn đã được lưu trên hệ thống !” , Hệ thống tự động lưu tệp và lưu trên excel
- Chức In thông tin ứng tuyển
+ Sau khi sử dụng chức năng, hệ thống sẽ in ra toàn bộ thông tin ứng tuyển của từng người cho tới khi hết danh sách
- Chức năng xóa thông tin ứng viên
+ Hệ thống sẽ in ra toàn bộ tên của ứng viên, sau đó nhập ứng viên cần xóa xuống bên dưới
+ Sau khi xóa thành công, hệ thống tự động cập nhật dữ liệu trong tệp.
2.3.3 Các chức năng của hệ thống Tài chính – Lương nhân viên
- Chức năng thêm nhân viên mới vào hệ thống lương cuối tháng
+ Hệ thống yêu cầu người dùng nhập các thông tin cơ bản:
ID cửa nhân viên mới
Họ và tên của nhân viên mới
Số ngày nghỉ trong tháng
Sau đó hệ thống sẽ trả về mức lương cơ bản cho mỗi chức vụ, số tiền bị trừ do nghỉ và Tổng tiền lương nhận được của tháng đó
- Chức năng xuất ra file excel
+ Chắc năng này cho phép xuất file ra excel, lưu trữ ở bộ nhớ, đảm bảo tính minh bạch rõ ràng
- Chức năng xuất báo cáo cá nhân của từng nhân viên
+ Hệ thống in toàn bộ ID và tên nhân viên tương ứng
+ Nhập ID của nhân viên cần xuất vào, hệ thống sẽ trả về tất cả thông tin theo mẫu
2.3.4 Các chức năng của hệ thống đào tạo nhân viên mới
- Sau khi chọn hệ thống sẽ tự động in ra 4 khóa đào tạo cơ bản
- Chọn 1 trong các khóa đào tạo đó sẽ có thêm 2 chức năng trong đó
- Chức năng thêm nhân viên vào danh sách đi đào tạo
+ Hệ thống yêu cầu người dùng lên lịch, sắp xếp phòng cho các khóa đào tạo và yêu cầu nhập thông tin nhân viên đi đào tạo gồm cho
ID nhân viên đi đào tạo
Tên của nhân viên đi đào tạo
- Chức năng hiển thị toàn bộ 1 nhân viên trong 1 lớp đào tạo
+ Sau khi sử dụng, hệ thống sẽ in ra toàn bộ danh sách nhân viên trong 1 lớp đào tạo
2.3.5 Các chức năng của hệ thống đóng góp ý kiến của nhân viên
- Chức năng nhập ý kiến đóng góp của nhân viên
+ Khi sử dụng chức năng hệ thống yêu cầu nhập ID , tên nhân viên và những đóng góp của họ lên hệ thống và được lưu tự động lên file
- Chức năng hiển thị thông đóng góp của nhân viên ra màn hình chính
+ Sau khi chọn chức năng này, hệ thống sẽ in ra màn hình toàn bộ những đóng góp của nhân viên lên hệ thống
CÀI ĐẶT CHƯƠNG TRÌNH
Tổ chức chương trình
Chương trình được tổ chức dưới dạng các hàm và module Chương trình hệ thống quản lý nhân lực được chia làm 7 module
Module main.py dùng để chạy chương trình chính, chọn các hệ thống con.
Module creat_save_file.py dùng để tạo file csv và chuyển file csv thành file excel lưu trên hệ thống
Module hethongnhansu.py chứa các hàm của các chức năng trong Thông tin nhân sự
Module tuyen_dung.py chứa các hàm của các chức năng trong Kế hoạch nhân sự - Tuyển dụng
Module luong.py chứa các hàm của các chức năng trong Hệ thống tài chính – Lương nhân viên
Module dao_tao.py chứa các hàm của các chức năng Đào tạo nhân viên mới
Module dong_gop.py chứa các hàm của các chức năng trong Các đóng góp của nhân viên lên hệ thống
Cài đặt chương trình
# mở 1 file nếu file rỗng thì ghi thanh tiêu đề vào import csv import pandas as pd def tao_file(tenfile, tieu_de): f = open(tenfile, "a", encoding="utf-8") with open(tenfile, "r", newline="", encoding="utf-8") as f: file = csv.reader(f) line1 = next(file, None) # Dòng 1 có phải trống không, nếu đúng trả về None if line1 == None: with open(tenfile, "a+", newline="", encoding="utf-8") as f: a = csv.writer(f) a.writerow(tieu_de) f.close()
# Lưu file dưới dạng excel def save_file(file, filexl): f = open(file, "r", encoding="utf-8") df = pd.read_csv(file) df.to_excel(filexl)
42 import pandas as pd import csv
'''Hệ thống nhân sự''' def tao_ket_noi(): try: df = pd.read_csv('quanlynhansu.csv') except FileNotFoundError: df = pd.DataFrame(columns=['ID', 'Họ tên', 'Ngày sinh', 'Giới tính', 'Email', 'SDT', 'Chức vụ']) return df def luu_tep_csv(df): df.to_csv('quanlynhansu.csv', indexse) def them_nhan_su(df, ID, ho_ten, ngay_sinh, gioi_tinh, email, sdt, chuc_vu): new_id =ID new_row = pd.DataFrame([[new_id, ho_ten, ngay_sinh, gioi_tinh, email, sdt, chuc_vu]], columns=['ID', 'Họ tên', 'Ngày sinh', 'Giới tính', 'Email', 'SDT', 'Chức vụ']) df = pd.concat([df, new_row], ignore_index=True) print(f"Thêm nhân viên thành công ID nhân viên: {new_id}") return df def hien_thi_danh_sach(df): print("\tDanh sách nhân viên:") with open("quanlynhansu.csv" "r", ,encoding="utf-8") as f: file = csv.reader(f) for line in file: if line[0] == “ID” : pass else: print(f"ID:\n\t {line[0]}" f"\n\t Họ và tên: {line[1]}" f"\n\tNgày sinh: {line[2]}" f"\n\tGiới tính: {line[3]}" f"\n\tEmail: {line[4]}" f"\n\tSố điện thoại: {line[4]}" f"\n\tChức vụ: {line[5]}") def xoa_nhan_su(df, nhan_su_id):
89 if nhan_su_id in df['ID'].values: df = df[df['ID'] != nhan_su_id].reset_index(drop=True) print("Xoá nhân viên thành công.") else: print("Không tìm thấy nhân viên.") return df def cap_nhat_nhan_su(df, nhan_su_id): print("1 Chức vụ") print("2 Số điện thoại") print("3 Email") chon=input("Nhập đơn vị muốn cập nhật thông tin") if chon=="1": chuc_vu=input("Cập nhật chức vụ mới") if nhan_su_id in df['ID'].values: df.loc[df['ID'] == nhan_su_id, ['Chức vụ']] = [ chuc_vu] print("Cập nhật thông tin nhân viên thành công.") else: print("Không tìm thấy nhân viên.") return df elif chon=="2": so_dt=input('Nhập số điện thoại mới') if nhan_su_id in df['ID'].values: df.loc[df['ID'] == nhan_su_id, ['SDT']] = [so_dt] print("Cập nhật thông tin nhân viên thành công.") else: print("Không tìm thấy nhân viên.") return df elif chon=="3": email=input("Cập nhật email mới: ") if nhan_su_id in df['ID'].values: df.loc[df['ID'] == nhan_su_id, ['SDT']] = [email] print("Cập nhật thông tin nhân viên thành công.") else: print("Không tìm thấy nhân viên.") return df def tim_kiem_nhan_su(df, keyword): result = df[df.apply(lambda row: keyword.lower() in row.astype(str).str.lower().values, axis=1)] if not result.empty: print("Kết quả tìm kiếm:") print(result) else: print("Không có kết quả nào phù hợp.")
49 import csv def them_ung_vien(): print("\tNhập thông tin cá nhân: ") name=input("Họ và tên: ") date=input("Ngày sinh DD-MM-YYYY: ") sdt=input("SDT: ") email=input("Email: ") print("\t Thông tin ứng tuyển:") print("Chúng tôi hiện tại còn trống các vị trí sau:"
"\n Nhân viên tư vấn khách hàng"
"\n Nhân viên phát triển bán hàng trực tuyến"
"\n Nhân viên hỗ trợ kỹ thuật"
"\n Bảo vệ") vitri=input("Vị trí ứng tuyển: ") vanhoa=input("Trình độ văn hóa Y/12: ") hocvan=input("Trình độ học vấn: ") daotao=input("Chuyên ngành đào tạo: ") xeploai=input("Xếp loại đào tạo: ") noi=input("Nơi đào tạo: ") nam=input("Số năm kinh nghiệm: ") kinhnghiem=input("kinh nghiệm làm việc khác: ") luong=input("Mức lương mong muốn: ") with open("ung_vien.csv", "a", newline='', encoding="utf-8") as f: writer = csv.writer(f) writer.writerow([f"{name}",f"{date}",f"{sdt}",f"{email}", f"{vitri}",f"{vanhoa}",f"{hocvan}",f"{daotao}", f"{xeploai}",f"{noi}", f"{nam}",f"{kinhnghiem}",f"{luong}"]) print("Thông tin của bạn đã được lưu trên hệ thống !") def hienthiungvien(): with open("ung_vien.csv", "r", encoding="utf-8") as f: file = csv.reader(f) for line in file: if line[0] == "Tên": pass else: print(f'''
Vị trí ứng tuyển: {line[4]}
Trình độ văn hóa: {line[5]}
Trình độ học vấn: {line[6]}
Chuyên ngành đào tạo: {line[7]}
Xếp loại đào tạo: {line[8]}
Kinh nghiệm làm việc khác: {line[11]}
Mức lương mong muốn cho công việc này:
{line[12]}''') def xoaungvien(): ten=input("Nhập tên ứng viên cần xóa: ") with open("ung_vien.csv", "r", encoding="utf-8") as f: file = csv.reader(f) dulieu=list(file) for hang in dulieu: if ten in hang: dulieu.remove(hang) with open("ung_vien.csv", "w",newline="", encoding="utf-8") as f: writer = csv.writer(f) writer.writerows(dulieu) def inten(): with open("ung_vien.csv", "r", encoding="utf-8") as f: file = csv.reader(f) dulieu = list(file) for hang in dulieu: print(f"{hang[0]}"
ID = input("Nhập ID nhân viên: ") name = input("Họ và tên nhân viên: ") chuc = input("Chức vụ:"
"\n \t1 Nhân viên tư vấn khách hàng"
"\n \t2 Nhân viên phát triển bán hàng trực tuyến" "\n \t3 Nhân viên thu ngân"
"\n \t4 Nhân viên hỗ trợ kỹ thuật"
"\nLựa chọn (từ 1-5): ") chucvu = "" luong = 0 if chuc == "1": luong += 20000000 print('Lương cơ bản của nhân viên tư vấn khách hàng là 20 triệu') chucvu = "Nhân viên tư vấn khách hàng" elif chuc == "2": luong += 25000000 print('Lương cơ bản của nhân viên phát triển bán hàng trực tuyến là 20,5 triệu') chucvu = "Nhân viên phát triển bán hàng online" elif chuc == "3": luong += 18000000 print("Lương cơ bản của nhân viên thu ngân là 18 triệu") chucvu = "Nhân viên thu ngân"
69 elif chuc == "4": luong += 23000000 print('Lương cơ bản của nhân viên hỗ trợ kỹ thuật là 23 triệu') chucvu = "Nhân viên hỗ trợ kỹ thuật" elif chuc == "5": luong += 10000000 print("Lương cơ bản của bảo vệ là 10 triệu") chucvu = "bảo vệ" else: print(" Yêu cầu nhập lại chức vụ(1-5)") ngay_nghi = int(input("Số ngày nghỉ của nhân viên(mỗi ngày nghỉ trừ 500000VND): ")) tien_tru = ngay_nghi * 500000 print("Số tiền bị trừ: ", tien_tru, "VND") tongtien = luong - tien_tru print(f"Tổng lương của nhân viên {name} là: {tongtien} ") with open("bang_luong.csv", "a", newline='', encoding="utf-8") as f: writer = csv.writer(f) writer.writerow([f"{ID}", f"{name}", f"{chucvu}", f"{luong} VND", f"{ngay_nghi} ngày", f"{tien_tru} VND", f"{tongtien} VND"]) def xuatid(): with open("bang_luong.csv", "r", encoding="utf-8") as f: file = csv.reader(f) for line in file: print(f"{line[0]}-{line[1]}") def xuatbaocaoluong():
ID = input("Nhập ID của nhân viên cần xuất báo cáo lương") with open("bang_luong.csv", "r", encoding="utf-8") as f: file = csv.reader(f) for line in file: if line[0] == ID: print(f'''
BÁO CÁO LƯƠNG CÁ NHÂN CỦA NHÂN VIÊN
\tSố tiền bị trừ ngày nghỉ: {line[5]}
==> Tổng tiền lương nhận được là: {line[6]}''')
*dao_tao.py import csv import pandas as pd import creat_save_file as csf def add_employee(file1): ngay_dien_ra = input("Nhập ngày diễn ra khóa đào tạo: ") thoi_gian_dao_tao = input("Nhập thời gian đào tạo: ") phong_dao_tao = input("Nhập phòng đào tạo: ") n = int(input("Nhập số lượng nhân viên đi đào tạo")) for i in range(n):
ID = input("nhập ID nhân viên: ") name = input("Nhập tên nhân viên tham gia khóa đào tạo: ") print("Thêm nhân viên thành công!") with open(f"{file1}" "a+", ,newline='',encoding="utf-8") as f: writer=csv.writer(f) writer.writerow([f"{ID}",f"{name}",f"{ngay_dien_ra}",f"{thoi_gian_dao_tao}",f" {phong_dao_tao}"]) def hienthi(file): try: with open(f"{file}" "r", ,encoding="utf-8") as f : df=pd.read_csv(f"{file}") print(df) except FileNotFoundError: print("\tDanh sách hiện tại đang trống, vui lòng chọn chức năng 1 để thêm người vào danh sách") def quanlydaotao(file1,file2): while True: print('\t CHỌN CHỨC NĂNG MONG MUỐN ') print("1.Thêm nhân viên vào danh sách đi đào tạo ") print("2.Hiển thị toàn bộ danh sách nhân viên tham gia khóa đào tạo này") print("3.Thoát") choice = int(input("Vui lòng nhập chức năng (1-3)")) if choice==1: tieu_de=["ID", "Tên", "Ngày diễn ra","Thời gian đào tạo","Phòng đào tạo"] csf.tao_file(file1,tieu_de) add_employee(file1) csf.save_file(file1,file2) elif choice==2: hienthi(file1) else: break
4 import csv import pandas as pd def themdonggop(file):
ID = input("Nhập ID của bạn: ")
14 name = input("Nhập tên của bạn: ") dong_gop = input("Nhập ý kiến của bạn: ") print("Đã tiếp nhận ý kiến đóng góp! Chúng tôi sẽ cố gắng khắc phục những khó khăn và phát huy những điểm mạnh!!") with open(file, "a", newline='', encoding="utf-8") as f: writer = csv.writer(f) writer.writerow([f"{ID}", f"{name}", f"{dong_gop}"]) def hien_thi_dong_gop(): with open("dong_gop.csv", "r", newline='', encoding="utf-8") as f: df = pd.read_csv("dong_gop.csv") print(df)
40 import hethongnhansu as nhan_su import creat_save_file as csf import luong,dao_tao,tuyen_dung,dong_gop while True: print("") print("Menu") print("\t1 Hệ thống nhân sự ") print("\t2 Kế hoạch nhân sự - Tuyển dụng") print("\t3 Tài chính-Lương nhân viên") print("\t4 Đào tạo nhân viên") print("\t5 Đóng góp từ nhân viên") print("\t0 Thoát chương trình") chon=input("\tHãy nhập hệ thống bạn lựa chọn: ") if chon=="1": df_nhan_su = nhan_su.tao_ket_noi() print("\n===== Hệ thống Quản lý Nhân sự =====") print("1 Thêm nhân viên") print("2 Hiển thị danh sách nhân viên") print("3 Xoá nhân viên") print("4 Cập nhật thông tin nhân viên") print("5 Tìm kiếm nhân viên") print("0 Thoát") while True: choice = input("Chọn chức năng (0-5): ") if choice == '1': print("\t Thông tin nhân viên")
ID = input("Nhập ID của nhân viên: ") ho_ten = input("Nhập họ tên: ") ngay_sinh = input("Nhập ngày sinh (YYYY-MM-DD): ") gioi_tinh = input("Nhập giới tính: ") email = input("Nhập email: ") sdt = input('Nhập số điện thoại: ') chuc_vu = input("\n Nhân viên thu ngân"
"\n Nhân viên tư vấn khách hàng" "\n Nhân viên phát triển bán hàng trực tuyến"
"\n Nhân viên hỗ trợ kỹ thuật"
"\nNhập chức vụ: ") df_nhan_su = nhan_su.them_nhan_su(df_nhan_su, ID, ho_ten, ngay_sinh, gioi_tinh, email, sdt, chuc_vu) nhan_su.luu_tep_csv(df_nhan_su) csf.save_file("quanlynhansu.csv" "quan_ly_nhan_su.xlsx", ) a = input("ấn enter để quay lại") elif choice == '2': nhan_su.hien_thi_danh_sach(df_nhan_su) a = input("ấn enter để quay lại") elif choice == '3': nhan_su_id = input("Nhập ID nhân viên cần xoá: ") df_nhan_su = nhan_su.xoa_nhan_su(df_nhan_su, nhan_su_id) nhan_su.luu_tep_csv(df_nhan_su) csf.save_file("quanlynhansu.csv", "quan_ly_nhan_su.xlsx") a = input("ấn enter để quay lại") elif choice == '4': nhan_su_id =input("Nhập ID nhân viên cần cập nhật: ") df_nhan_su = nhan_su.cap_nhat_nhan_su(df_nhan_su, nhan_su_id) nhan_su.luu_tep_csv(df_nhan_su) csf.save_file("quanlynhansu.csv", "quan_ly_nhan_su.xlsx") a = input("ấn enter để quay lại") elif choice == '5': keyword = input("Nhập ID của nhân viên muốn tìm kiếm: ") nhan_su.tim_kiem_nhan_su(df_nhan_su, keyword) a = input("ấn enter để quay lại") elif choice == '0': print("Thoát hệ thống Hẹn gặp lại!") nhan_su.luu_tep_csv(df_nhan_su) break else: print("Chức năng không hợp lệ Vui lòng chọn lại.") elif chon=="2": print("===QUẢN LÝ ỨNG TUYỂN===") print("\t1 Điền đơn ứng tuyển") print("\t2 In ra toàn bộ thông tin ứng viên") print("\t3 Xóa thông tin ứng viên") print("\t0 thoát") while True: chon = input("Mời bạn chọn chức năng(0-3): ") if chon == "1": csf.tao_file("ung_vien.csv",
["Tên", " Năm sinh", " SDT", " Email", " Vị trí ứng tuyển", " Trình độ văn hóa",
" Chuyên ngành đào tạo", " Xếp loại đào tạo",
"Nơi đào tạo", " Số năm kinh nghiệm ",
" Các kinh nghiệm khác ", "Mức lương mong muốn"]) print("\tĐƠN XIN ỨNG TUYỂN CÔNG VIỆC")
Kết quả chạy chương trình
Sau khi chạy chương trình sẽ có các hệ thống để chúng ta lựa chọn, Nếu chọn không đúng hệ thống sẽ yêu cầu nhập lại chức năng.
Thêm thông tin nhân viên
Nhập các thông tin cơ bản của nhân viên: Giả sử ta thêm 2 nhân viên A và Thanh
Sau khi nhập đầy đủ thông tin của nhân viên, hệ thống tự động lưu vào file excel và file excel được lưu ở bộ nhớ máy tính
Hiển thị danh sách nhân viên
Sau khi chọn chức năng 2 in toàn bộ danh sách nhân viên ra màn hình:
Tìm kiếm thông tin nhân viên
Giả sử ta tìm kiếm thông tin của nhân viên Nguyễn Văn A mà trước đó ta đã thêm vào:
Nếu khi nhập ID mà trong danh sách không có nhân viên mang ID đó thì hệ thống trả về “ không tìm thấy nhân viên’
Cập nhật thông tin nhân viên
- Giả sử ta cập nhật chức vụ cho nhân viên ‘Thanh’ từ chức vụ bảo vệ lên chức vụ nhân viên thu ngân
Tìm kiếm thông tin nhân viên
- Giả sử tìm kiếm nhân viên “Thanh” có ID là 12F4
Nếu trong trường hợp không có nhân viên nào có ID phù hợp, hệ thống sẽ trả về
“Không có kết quả nào phù hợp”
3.3.2 Kế hoạch nhân sự - Tuyển dụng
- Giả sử ta có thông tin của Hoài Nam điền đơn ứng tuyển
Sau khi điền đơn xong, thông tin của ứng viên tự động được lưu trên file excel tự tạo
In ra toàn bộ thông tin ứng viên
Khi sử dụng chức năng, hệ thống sẽ tự động in ra toàn bộ tên của ứng viên có trong danh sách, người dùng chỉ cần điền đúng tên ứng viên muốn xóa, sau đó hệ thống sẽ trả về kết quả tương ứng.
3.3.3 Tài chính-Lương nhân viên
Thêm nhân viên vào hệ thống lương cuối tháng
Hệ thống lương sẽ yêu cầu chúng ta nhập thông tin nhân viên cơ bản và nhập các chức vụ có sẵn, với các chức vụ sẽ có số tiền lương cơ bản tương ứng, nếu chọn sai hệ thống sẽ yêu cầu chúng ta nhập lại Với mỗi số ngày nghỉ thì sẽ bị trừ 500000vnd, nếu là nghỉ phép thì sẽ là bỏ qua và không tính vào số ngày nghỉ
Lưu thành file excel lưu trong bộ nhớ
Xuất báo cáo lương cá nhân
Khi chọn chức năng, hệ thống sẽ tự động in toàn bộ ID và tên của toàn bộ nhân viên trong danh sách ra, và chúng ta chỉ cần nhập ID sao cho đúng, khi đó chương trình sẽ trả về báo cáo lương cá nhân của nhân viên đó.
3.3.4 Hệ thống đào tạo nhân viên
Hệ thống cung cấp bốn khóa đào tạo cho nhân viên: Giới thiệu về tổ chức và giá trị, Đạo đức nghề nghiệp, Quy tắc ứng xử, Kỹ năng chuyên môn Mỗi khóa đào tạo đều có tính năng thêm nhân viên và in danh sách tất cả nhân viên đang tham gia khóa học.
Thêm nhân viên vào 1 trong 4 khóa đào tạo
Sau khi chọn chức năng ta cần lên lịch cho khóa đào tạo cụ thể là: Ngày diễn ra, thời gian đào tạo và phòng đào tạo.
Sau khi nhập xong thông tin cho khóa đào tạo, hệ thống yêu cầu nhập số lượng học viên cho mỗi lớp Thông tin 1 học viên gồm có ID và Tên.
In toàn bộ thông tin học viên trong 1 khóa đào tạo
Sau khi chọn chức năng in toàn bộ thông tin trong khóa đào tạo ra:
Sau khi in ra mà hình xong, hệ thống tự động quay lại chọn chức năng để người dùng chọn Ngoài ra hệ thống này cũng được tích hợp khả năng lưu tự động về file excel
3.3.5 Đóng góp của nhân viên lên hệ thống
Hệ thống con này được tạo ra nhằm thu thập những ý kiến của nhân viên về công việc, những đóng góp… Các ý kiến này góp phần hoàn thiện tổ chức cũng như đáp ứng các nhu cầu thiếu sót của nhân viên
Khi sử dụng chức năng này, người dùng có thể thỏa mái đóng góp những ý kiến cá nhân lên tổ chức. Để đóng góp được ý kiến, hệ thống yêu cầu người dùng nhập ID và tên của mình để báo cáo lên tổ chức.
In toàn bộ ý kiến đóng góp của nhân viên
Chức năng cho phép in ra toàn bộ ý kiến của nhân viên, kèm theo ID và tên
Bên cạnh đó hệ thống con này cũng được tích hợp khả năng lưu tự động về file excel