Tải bản đầy đủ (.pdf) (23 trang)

Bài thảo luận lập trình với python đề tài “xây dựng chương trình quản lý nhân sự của công ty sữa th true milk

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.84 MB, 23 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>BÀI THẢO LUẬN LẬP TRÌNH VỚI PYTHON</b>

<b>ĐỀ TÀI: “XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ NHÂN SỰ CỦA CÔNGTY SỮA TH TRUE MILK”</b>

<b>TRƯỜNG ĐẠI HỌC THƯƠNG MẠI</b>

<b> KHOA HỆ THỐNG THÔNG TIN KINH TẾ VÀ THƯƠNG MẠI ĐIỆN TỬ</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>LỜI CẢM ƠN</b>

Trước khi vào bài tập lớn, nhóm 15 chúng em xin gửi lời cảm ơn sâu sắc đến thầy Cù Nguyên Giáp với sự hướng dẫn và giảng dạy nhiệt tình. Thầy đã truyền đạt lại cho chúng em vô vàn kiến thức và đó là hành trang quý giá trên con đường phát triển sau này của mỗi chúng em.

Về học phần Lập trình Python, đây là học phần có tính thực tế vô cùng cao, cung cấp một lượng lớn kiến thức và gắn liền với nhu cầu thực tiễn của sinh viên cũng như xã hội. Tuy vậy, do vốn kiến thức còn nhiều hạn chế và còn bỡ ngỡ với phương thức học của môi trường mới nên khơng thể tránh khỏi những thiếu sót và chưa hồn thiện một cách chỉn chu nhất. Kính mong thầy sẽ xem xét và góp ý để bài tập lớn được hồn thiện hơn.

Nhóm em xin chân thành cảm ơn!

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

II. PHÂN TÍCH BÀI TỐN VÀ TRÌNH BÀY QUY TRÌNH CÁC THAO TÁC DƯỚI DẠNG SƠ ĐỒ KHỐI ………. 6

1. Phân tích bài tốn ……… 6

1.1. Nhập thơng tin sinh viên ……….. 6

1.2. Xóa thơng tin sinh viên ……… 6

1.3. Cập nhật thơng tin sinh viên ……… 6

1.4. Tìm kiếm thơng tin sinh viên ………... 6

2. Sơ đồ khối thể hiện các chức năng chính của chương trình ……… 7

3. Đặc tả các chức năng chính của chương trình ………. 7

3.1. Chức năng nhập thông tin sinh viên ……….. 7

3.2. Chức năng xóa thơng tin sinh viên ……… 8

3.3. Chức năng cập nhật thông tin sinh viên ……… 8

3.4. Chức năng tìm kiếm thơng tin sinh viên ……… .. 9

III. CÀI ĐẶT CHƯƠNG TRÌNH ……… 10

1. Tạo mảng và thêm dữ liệu mẫu ………... 11

2. Xóa thơng tin nhân viên ……….. 12

3. Thêm nhân viên ……….. 12

4. Tìm kiếm nhân viên ………. 13

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

5. Cập nhật thông tin nhân viên ……… 13

6. Chương trình chính ………... 14

7. Code Python ……….. 15

IV. KẾT LUẬN ………. 19

V. TÀI LIỆU THAM KHẢO……….. 20

BIÊN BẢN HỌP NHĨM PHÂN CHIA CƠNG VIỆC ……….. 21

BẢNG ĐÁNH GIÁ THÀNH VIÊN ………... 23

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>LỜI MỞ ĐẦU </b>

Chúng ta đang trong thời kỳ cơng nghiệp hóa hiện đại hóa đất nước, xã hội ngày càng phát triển vì thế cuộc cách mạng cơng nghệ 4.0 vẫn đang phát triển không ngừng và nắm giữ được một vị trí quan trọng. Sau sự phát triển đó chúng ta đã đạt được những thành tựu nhất định và gây ra được sự thay đổi không nhỏ đến cuộc sống, công việc và học tập. Một trong ba yếu tố trụ cột của cuộc cách mạng 4.0 phải kể tới ở đây là Big data, giúp con người phân tích thu thập và phân tích lượng dữ liệu lớn có thể giải quyết nhiều vấn đề trong lĩnh vực nhân sự.

Bằng việc sử dụng dữ liệu lớn, nhà quản lí nhân sự có thể đưa ra quyết định chính xác hơn. Nhờ vậy, tổ chức/doanh nghiệp đạt được mục tiêu một cách hiệu quả hơn. Để làm được điều đó việc xây dựng một hệ thống quản trị thơng tin đóng vai trị khá quan trọng.

Thế nhưng với lượng dữ liệu lớn như vậy thì việc lưu trữ, bảo quản và sử dụng chúng sẽ trở nên khá khó khăn. Qua bài tập lớn này chúng em đã được tiếp cận với cơng việc đó. Chính vì sự cần thiết của công việc này nên chúng em đã quyết định xây dựng chương trình “XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ NHÂN SỰ CỦA CÔNG TY SỮA TH TRUE MILK” sử dụng những kiến thức mà bản thân và cả nhóm đã tìm hiểu và nắm bắt để hồn thành đề tài một cách tốt nhất có thể.

Để xây dựng được chương trình sau đây, chúng em đã cùng phân tích và chia bài tập lớn này thành các phần:

Phần I: Đặt bài toán

Phần II: Phân tích bài tốn bằng sơ đồ khối Phần III: Chương trình viết bằng ngôn ngữ Python Phần IV: Kết luận

<b>I,. ĐẶT BÀI TOÁN </b>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

TH True Milk - tên đầy đủ là Công ty Cổ phần thực phẩm sữa TH, là một cơng ty thuộc tập đồn TH được thành lập vào năm 2009 tại Nghệ An. Đây là thương hiệu sữa Việt 100% chuyên sản xuất, cung cấp sữa và những sản phẩm từ sữa; mặc dù mới có mặt tại thị trường được hơn 10 năm nhưng TH True Milk đã chứng minh được sự vượt trội của mình trên thị trường sữa tại Việt Nam. Chính vì thế nên cơng ty đã thu hút được một lượng nhân sự lơn có chun mơn khá cao. Thế nên, để quản lí dễ dàng thì phải nhập thông tin của từng nhân sự một cách chính xác vào hệ thống.

Các thông tin của nhân sự khi nhập vào dữ liệu bao gồm: - Họ và tên nhân viên

- Tuổi - Chức vụ - Lương

<b>II. PHÂN TÍCH BÀI TỐN VÀ TRÌNH BÀY QUY TRÌNH CÁC THAO TÁC DƯỚI DẠNG SƠ ĐỒ KHỐI </b>

<b>1. Phân tích bài tốn</b>

Chương trình bao gồm các chức năng chính sau đây:

<i><b>1.1. Nhập thông tin sinh viên: </b></i>

Người quản lý điền các thông tin cơ bản: Họ và tên nhân viên , tuổi, chức vụ, lương, …để nhập thông tin nhân viên.

1.2. <i><b>Xố thơng tin sinh viên:</b></i>

Cho phép người quản lý xố thơng tin nhân viên đã thêm trước đó. 1.3. <i><b>Cập nhật thơng tin sinh viên:</b></i>

Cho phép người quản lý cập nhật thông tin nhân viên đã thêm trước đó khi cần chỉnh sửa.

1.4 <i><b>Tìm kiếm thơng tin sinh viên:</b></i>

Người quản lý có thể tìm kiếm thơng tin sinh viên theo họ và tên nhân viên.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>2. Sơ đồ khối thể hiện các chức năng chính của chương trình </b>

<b> Hình 1: Sơ đồ khối các chức năng chính3. Đặc tả các chức năng chính của chương trình</b>

<i><b>3.1 Chức năng nhập thơng tin nhân viên</b></i>

Mơ tả: chương trình cho phép người quản lý điền các thông tin cơ bản: Họ và tên nhân viên , Tuổi, Chức vụ, Lương, …để nhập thông tin nhân viên.

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<b> Hình 2: Biểu đồ hoạt động của chức năng nhập thông tin sinh viên </b>

<i><b>3.2. Chức năng xóa thơng tin sinh viên</b></i>

Mơ tả: Chương trình cho phép người quản lý xố thơng tin nhân viên bằng Tên nhân viên.

<b> Hình 3: Biểu đồ hoạt động của chức năng xóa thơng tin sinh viên </b>

<i><b>3.3. Chức năng cập nhật thông tin sinh viên</b></i>

Mơ tả: Chương trình cho phép người quản lý cập nhật thông tin nhân viên bằng tên.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>Hình 4: Biểu đồ hoạt động của chức năng cập nhật thông tin sinh viên </b>

<i><b>3.4. Chức năng tìm kiếm thơng tin sinh viên</b></i>

Mơ tả: Chương trình cho phép người quản lý tìm kiếm thông tin nhân viên bằng tên.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<b>Hình 5: Biểu đồ hoạt động của chức năng tìm kiếm thơng tin sinh viênIII. CÀI ĐẶT CHƯƠNG TRÌNH</b>

Khi làm bài tập này, nhóm em đã sử dụng module os và module sys.

- Module sys trong Python cung cấp các hàm và các biến được sử dụng để thao tác các phần khác nhau của mơi trường chạy Python. Nó cho phép chúng ta truy cập các tham số và chức năng cụ thể của hệ thống.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

- Module os trong Python cung cấp các chức năng được sử dụng để tương tác với hệ điều hành và cũng có được thơng tin liên quan về nó. OS đi theo các Module tiện ích tiêu chuẩn của Python. Module này cung cấp một cách linh động sử dụng chức năng phụ thuộc vào hệ điều hành. Module os trong python cho phép chúng ta làm việc với các tập tin và thư mục.

<b>1. Tạo mảng và thêm dữ liệu mẫu </b>

Hàm TaoDuLieuMau() có chức năng thêm dữ liệu mẫu vào danh sách nhân viên.

Hàm này được gọi trong hàm main() để tạo dữ liệu mẫu khi chương trình chạy Mơ tả:

- Hàm sử dụng cấu trúc từ điển để lưu thông tin nhân viên. - Hàm sử dụng cấu trúc vòng lặp for để thêm dữ liệu

<b>2. Xóa thơng tin nhân viên </b>

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

Hàm có chức năng xóa thơng tin nhân viên.

Hàm này được gọi trong hàm main() khi người dùng chọn chức năng xóa thơng tin nhân viên

Mơ tả:

- Hàm sẽ yêu cầu người dùng nhập tên nhân viên cần xóa. - Hàm sử dụng cấu trúc vịng lặp for để tìm nhân viên cần xóa. - Hàm sử dụng cấu trúc từ điển để lưu thông tin nhân viên. - Hàm sử dụng cấu trúc vịng lặp for để xóa dữ liệu.

=> Sau khi thực hiện hàm này, danh sách nhân viên sẽ có 1 nhân viên bị xóa. => Xem thông tin cập nhật bằng hàm TimKiemThongTinHocVien(

<b>3. Thêm nhân viên </b>

Hàm có chức năng nhập thơng tin nhân viên và thêm vào danh sách. Hàm này được gọi trong hàm main() khi người dùng chọn chức năng nhập thông tin nhân viên.

Mô tả:

- Hàm sử dụng hàm append() để thêm dữ liệu vào danh sách - Hàm sử dụng cấu trúc từ điển để lưu thông tin nhân viên

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

- Hàm sử dụng cấu trúc vòng lặp for để thêm dữ liệu.

=> Sau khi thực hiện hàm này, danh sách nhân viên sẽ có 1 nhân viên mới.

<b>4. Tìm kiếm nhân viên </b>

Hàm có chức năng tìm kiếm thơng tin nhân viên

Hàm này được gọi trong hàm main() khi người dùng chọn chức năng tìm kiếm thơng tin nhân viên

Mô tả:

- Hàm sẽ yêu cầu người dùng nhập tên nhân viên cần tìm - Hàm sử dụng cấu trúc vịng lặp for để tìm kiếm nhân viên cần tìm - Hàm sử dụng cấu trúc từ điển để lưu thông tin nhân viên - Hàm sử dụng cấu trúc vòng lặp for để in dữ liệu

=> Sau khi thực hiện hàm này, danh sách nhân viên sẽ không thay đổi và hiển thị thơng tin nhân viên cần tìm

<b>5. Cập nhật thơng tin nhân viên </b>

Hàm có chức năng cập nhật thông tin nhân viên

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Hàm này được gọi trong hàm main() khi người dùng chọn chức năng cập nhật thông tin học viên

Mô tả:

- Hàm sẽ yêu cầu người dùng nhập tên nhân viên cần cập nhật - Hàm sử dụng cấu trúc vịng lặp for để tìm kiếm học viên cần cập nhật - Hàm sử dụng cấu trúc từ điển để lưu thông tin học viên

- Hàm sử dụng cấu trúc vòng lặp for để cập nhật dữ liệu

- Sau khi thực hiện hàm này, danh sách nhân viên sẽ có thêm thơng tin mới - Xem thông tin cập nhật bằng hàm TimKiemNhanVien()

<b>6, Chương trình chính</b>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>7, Code Python </b>

# _Hệ thống quản lí nhân sự của cơng ty sữa TH True Milk # __init__ khởi tạo,gán giá trị

def __init__(self, ten, tuoi): self.ten = ten

self.tuoi = tuoi

def hien_thi_thong_tin(self): # hiển thị tên & tuổi return f"{self.ten} tên, {self.tuoi} tuổi"

thêm thông tin về chức vụ và lương

def __init__(self, ten, tuoi, chuc_vu, luong): super().__init__(ten, tuoi)

self.chuc_vu = chuc_vu self.luong = luong def hien_thi_thong_tin(self):

thong_tin_co_ban = super().hien_thi_thong_tin()

return f"{thong_tin_co_ban}, self.chuc_vu}, Lương: {self.luong} VND"

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

def cap_nhat_thong_tin(self, ten_nhan_vien): for nhan_vien in self.nhan_viens: if nhan_vien.ten == ten_nhan_vien: print("Thong tin hien tai cua nhan vien:") print(nhan_vien.hien_thi_thong_tin()) # Nhập thông tin mới từ người dùng ten_moi = input("Nhap ten moi: ") tuoi_moi = int(input("Nhap tuoi moi: ")) chuc_vu_moi = input("Nhap chuc vu moi: ") luong_moi = int(input("Nhap luong moi: ")) # Cập nhật thông tin cho nhân viên nhan_vien.ten = ten_moi nhan_vien.tuoi = tuoi_moi nhan_vien.chuc_vu = chuc_vu_moi nhan_vien.luong = luong_moi

print("Da cap nhat thong tin cho nhan vien.") def tim_kiem_nhan_vien(self, ten_nhan_vien): for nhan_vien in self.nhan_viens:

if nhan_vien.ten == ten_nhan_vien: return nhan_vien

return None

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

def xoa_nhan_vien(self, ten_nhan_vien): for nhan_vien in self.nhan_viens: if nhan_vien.ten == ten_nhan_vien: self.nhan_viens.remove(nhan_vien)

print(f"Nhan vien {ten_nhan_vien} da bi xoa.") return

def ghi_vao_tep(self, ten_tep): with open(ten_tep, ) file: 'w' as

for nhan_vien in self.nhan_viens:

file.write(f"{nhan_vien.ten},{nhan_vien.tuoi} {,nhan_vien.chuc_vu}, {nhan_vien.luong}\n")

def doc_tu_tep(ten_tep):

he_thong_nhan_su = HeThongNhanSu() try:

with open(ten_tep, ) file: 'r' as

for line in file:

thong_tin line.strip().split(','= ) if len(thong_tin) == : 4

ten, tuoi, chuc_vu, luong = thong_tin

nhan_vien = NhanVien(ten, int(tuoi chuc_vu, int(luong)) ), he_thong_nhan_su.them_nhan_vien(nhan_vien)

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

print("1. Liệt kê nhân viên") print("2. Xóa nhân viên") print("3. Thêm nhân viên") print("4. Tìm kiếm nhân viên") print("5. Cập nhật thông tin")

ten = input("Nhap ten nhan vien: ") tuoi = int input( ("Nhap tuoi nhan vien: ")) chuc_vu = input("Nhap chuc vu nhan vien: ")

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

luong = int input( ("Nhap luong nhan vien: ")) nhan_vien_moi = NhanVien(ten, tuoi, chuc_vu, luong) nhan_vien_tim_kiem if is not None:

print("Tìm thấy nhân viên", nhan_vien_tim_kiem.hien_thi_thong_tin())

Ngày nay việc ứng dụng công nghệ thông tin đã trở nên phổ biến hầu hết ở mọi cơ quan, doanh nghiệp, đặc biệt là việc áp dụng tin học ở trong mọi công tác quản lý. Trong đó, cơng tác quản lý doanh nghiệp là một trong những lĩnh vực cần thiết và quan trọng. Để thực hiện tốt công việc quản lý thì việc hồn thiện và xây dựng một hệ thống thông tin quản lý là không thể thiếu.

Qua bài thảo luận trên, nhóm chúng em đã xây dựng được phần nào một hệ thống quản lý nhân sự của công ty sữa TH True Milk. Trong điều kiện kinh tế

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

ngày càng phát triển, khoa học kĩ thuật ngày càng hiện đại, cơng ty cần phải hồn thiện cơng tác quản lý nhân sự để vừa mang tính khoa học, khách quan, dễ dàng quản lí, vừa xây dựng môi trường làm việc tốt nhất dành cho các nhân sự. Từ đó giúp nhân sự phát huy tốt nhất năng lực của mình, giúp sức khiến cho công ty ngày càng phát triển hơn.

Do trình độ bản thân cịn nhiều hạn chế và bước đầu áp dụng lý thuyết vào thực hành nên bài báo cáo này khơng tránh khỏi những thiếu sót, hạn chế trong q trình viết bài. Nhóm 15 chúng em rất mong nhận được sự đóng góp quý báu của thầy các bạn để bài viết của nhóm được hồn thiện hơn.

<b>V. TÀI LIỆU THAM KHẢO</b>

class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<b>CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</b> Địa điểm: MS Team

Nội dung: Thảo luận về việc lên hướng giải quyết cho đề tài của nhóm, các thành viên đưa ra ý kiến, nhóm trưởng tập hợp ý kiến và thống nhất, phân chia nhiệm vụ sao cho phù hợp.

Phân công nhiệm vụ cho từng thành viên cụ thể như sau: 1. Trần Thị Lương:

- Xây dựng ý tưởng cho bài tập lớn - Vẽ sơ đồ khối, cài đặt chương trình - Chỉnh sửa word

2. Nguyễn Văn Hoàng Nam: - Xây dựng ý tưởng cho bài tập lớn - Vẽ sơ đồ khối cài đặt chương trình 3. Đinh Đức Tâm:

- Xây dựng ý tưởng cho bài tập lớn

- Lời cảm ơn, lời mở đầu, đặt bài toán, kết luận 4. Triệu Thị Mỹ Tâm:

- Xây dựng ý tưởng cho bài tập lớn

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

- Vẽ sơ đồ khối, cài đặt chương trình - Chỉnh sửa word

5. Trần Anh Thư:

- Xây dựng ý tưởng cho bài tập lớn - Vẽ sơ đồ khối, cài đặt chương trình - Chỉnh sửa word

Các thành viên trong nhóm có mặt đầy đủ

Hà Nội, ngày 15 tháng 12 năm 2023 Nhóm trưởng

Thư Trần Anh Thư

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<b>Bảng đánh giá và phân công nhiệm vụ thành viên</b>

44 Trần Thị Lương 23D192023 Vẽ sơ đồ khối, viết

</div>

×