1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài 13 xây dựng chương trình quản lý nhân sự của công ty du lịch viettravel

19 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Chương Trình Quản Lý Nhân Sự Của Công Ty Du Lịch Viettravel
Tác giả Nhóm 14
Người hướng dẫn Đinh Thị Hà
Trường học Trường Đại Học Thương Mại
Chuyên ngành Lập Trình Python
Thể loại bài tập lớn
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 19
Dung lượng 1,53 MB

Nội dung

Yêu cầu người dùng nhập tên nhân viên muốn cập nhật và lưu vào biến “ma”.. Yêu cầu người dùng nhập chức vụ muốn cập nhật cho nhân viên và lưu vào biến “chục” c.. - Cần có ít nhất 1 hoặc

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC THƯƠNG MẠI

BÀI TẬP LỚN

NHÓM 14: ĐỀ TÀI 13: XÂY DỰNG

CHƯƠNG TRÌNH QUẢN LÝ NHÂN SỰ CỦA CÔNG TY DU LỊCH VIETTRAVEL

GIÁO VIÊN GIẢNG DẠY: ĐINH THỊ HÀ

MA HOC PHAN: 231_INFO4511 02

HO VA TEN SINH VIEN: DUONG VAN NAM

MON HQC: LAP TRINH PYTHON

Trang 2

LỜI NÓI ĐẦU

Trong khi xã hội ngày càng phát triển, nhu cầu về dịch vụ của con người ngày càng tăng Để đáp ứng nhu cầu đó, các công ty,

doanh nghiệp chuyên về dịch vụ, đặc biệt là dịch vụ du lịch đã ra

đời

Với uy tín và chất lượng vượt trội, sau hơn 20 năm hình thành

và phát triển Vietravel đã chính thức trở thành một trong những công ty lữ hành hàng đầu Châu Á Để đạt được thành tựu đó, không phải chỉ nhờ công sức lao động của một hoặc một vài cá nhân Mà là kết quả của cả một tập thể Một tập thể đông, muốn các hoạt động trở nên hiệu quả thì cần có sự quản lý tốt Vấn đề đặt ra là, với số

lượng người đông, hoặc rất đông thì việc quản lý nên được thực hiện

thế nào cho hiệu quả?

Khi máy móc dần trở nên thân thuộc và gần gũi hơn với con người, việc sử dụng và phát huy năng lực của máy móc sẽ làm giảm

áp lực, giảm thời gian làm việc, tăng cường sự chính xác và hiệu quả Trên cơ sở đó, chúng tôi đã thiết kế và xây dựng một chương

trình quản lý nhân sự cho công ty Vietravel

Chúng tôi xin trân trọng bày tỏ lòng biết ơn đối với giảng viên

Đinh Thị Hà - Trường Đại học Thương mại - Hà Nội đã tận tình hướng

dẫn và giúp đa chúng tôi trong suốt quá trình tạo nên sản phẩm này Nhờ vậy mà chúng tôi có thể hoàn thành tốt bài thảo luận này và mong bài thảo luận sẽ suôn sẻ

Cảm ơn các bạn trong nhóm 14, đã đóng góp công sức của mình nhằm hoàn thiện hơn sản phẩm này

Trang 3

Xin chân thành cảm ơn!

Nhóm 14 - K59S4 - Trường đại học Thương Mại

MỤC LỤC LỜI NÓI ĐẦU LH HH HỦ g1 ng HH gen 1

¡0/201 ằằẰằẰằằằẻ.ẻ 6 2

PHẦN I: ĐẶT BÀI TOÁN c- LH n1 HH HH HH ga 3

0 Giao diện chương trÌnh chén HH HH ưu 3

3 Cập nhật thông tin nhân viên nh nh nền neo 4

4 Tìm kiếm thông tin nhân viên ích neo 5

5 Giải thích các bƯỚC ch nh nh nha tiệt 6

PHAN II: SƠ ĐỒ KHỐI LH 1É BE HH HH HH gu 9

PHAN III: CÀI ĐẶT CHƯƠNG TRÌNH ác nh nh nen 10

1 Module 1: quanlynhanSU.DV: ch nha na 10

PHẦN IV: KẾT LUẬN c nc tì HH ng HH HH Hà rệt 15

BIÊN BẢN ĐÁNH GIÁ NHÓM cọ tt cnn nh nh n HH HH Hà Hàn ng 16

Trang 4

PHẦN I: ĐẶT BÀI TOÁN

0 Giao diện chương trình

- Bước 1: "Thông báo các chức năng và cho người dùng lựa

chọn" với:

Lựa chọn 0: Kết thúc chương trình

Lựa chọn 1: Thêm nhân viên

Lựa chọn 2: Xoá bỏ nhân viên

Lựa chọn 3: Cập nhật thông tin nhân viên

Lựa chọn 4: Tìm kiếm thông tin nhân viên

1 Thêm nhân viên

- Bước 1: "Nhập mã nhân viên”:

a Yêu cầu người dùng nhập mã nhân viên và lưu vào biến

“ ma” n

b Tim kiém trong list “nv” value “ma”:

+ Nếu mã nhân viên da tồn tại trong danh sách, chuyển sang bước 4

+ Nếu mã nhân viên không tồn tại, chuyển sang bước 2

- Bước 2: "Thêm thông tin của nhân viên”:

a Yều cầu người dùng nhập tên nhân viên và lưu tên vào

biến “ten”,

b Yêu cầu người dùng nhập chức vụ nhân viên và lưu vào

biến “chục”

c Yêu cầu người dùng nhập mức lương của nhân viên và lưu vào biến “luong”

d Tạo từ điền “moi” và đưa vào 4 cặp key và value tương

ứng: “ma”: ma, “ten”: ten, “chục”: chục, “luong”: luong

e Mở thêm vùng chứa cho biến list “nv”,

Trang 5

f Đưa tất cả các cặp key và value trong từ điển “moi” vào

list “nv” tại vùng nhớ mới tạo

g Dừng 0.5s

h Thông báo đã thêm nhân viên thành công

- Bước 4: "Hỏi người dùng có muốn tiếp tục chương trình

không?"

a Nếu người dùng chọn có, quay về mục 0

b Nếu người dùng chọn không, chuyển đến bước 5

- Bước 5: "Kết thúc chương trình"

2 Xóa nhân viên

- Bước 1: "Nhập mã nhân viên muốn xoá":

a Yêu cầu người dùng nhập mã nhân viên và lưu vào biến

“ ma” n

b Tìm kiếm trong list “nv” value “ma”:

+ Nếu mã nhân viên đã tồn tại trong danh sách, chuyển đến bước 2

+ Nếu mã nhân viên không tồn tại trong danh sách, thông báo rằng không tìm thấy mã nhân viên và chuyển đến bước 3

- Bước 2: "Xóa thông tin nhân viên”:

a Xoá trong list “nv” phần từ có “ma” tương ứng với mã

vừa nhập tại bước 1

b Dung 0.5s

c Théng bao da xoa nhan vién thanh céng

d Dung 0.5s

- Bước 3: "Hỏi người dùng có muốn tiếp tục chương trình

khéng?":

a Nếu người dùng chọn có, quay về mục 0

Trang 6

b Nếu người dùng chọn không, chuyển đến bước 4

- Bước 4: "Kết thúc chương trình”:

3 Cập nhật thông tin nhân viên

- Bước 1: "Nhập mã nhân viên muốn cập nhật":

a Yêu cầu người dùng nhập mã nhân viên muốn cập nhật

rồi lưu vào biến “ma”

b Tìm kiếm trong list “nv” value “ma”:

+ Nếu mã nhân viên đã tồn tại trong danh sách, chuyển đến bước 2

+ Nếu mã nhân viên không tồn tại trong danh sách, chuyển đến bước 3

- Bước 2: “Cập nhật thông tin nhân viên”:

a Yêu cầu người dùng nhập tên nhân viên muốn cập nhật

và lưu vào biến “ma”

b Yêu cầu người dùng nhập chức vụ muốn cập nhật cho

nhân viên và lưu vào biến “chục”

c Yêu cầu người dùng nhập mức lương muốn cập nhật cho nhân viên và lưu vào biến “luong”

d Thay thế lần lượt các giá trị biến “ten”, “chục”, “luong”

vào value tương ứng với các key “ten”, “chục”, “luong”

tại vị trí tìm được ở bước 1

e Dừng 0.5s

f Thông báo đã cập nhật thông tin nhân viên thành công

g Dừng 0.5s

- Bước 3: Hỏi người dùng có muốn tiếp tục chương trình

khéng?":

a Nếu người dùng chọn có, quay về mục 0

b Nếu người dùng chọn không, chuyển đến bước 4

Trang 7

4

- Bước 4: "Kết thúc chương trình”:

Tìm kiếm thông tin nhân viên

- Bước 1: "Nhập mã nhân viên muốn tìm kiếm”:

a Yêu cầu người dùng nhập mã nhân viên muốn tìm kiếm

rồi lưu vào biến “ma”

b Tim kiém trong list “nv” value “ma”:

+ Nếu mã nhân viên da tồn tại trong danh sách, chuyển đến bước 2

+ Nếu mã nhân viên không tồn tại trong danh sách, chuyển đến bước 3

- Bước 2: “Tìm kiếm thông tin nhân viên”:

a In lần lượt các value “ma”, “ten”, “chục”, “luong” tại vị trí

tìm được ở bước 1 Với mỗi thông tin in ra đều dừng lại

0.55

- Bước 3: Hỏi người dùng có muốn tiếp tục chương trình

khéng?":

a Nếu người dùng chọn có, quay về mục 0

b Nếu người dùng chọn không, chuyển đến bước 4

- Bước 4: "Kết thúc chương trình"

Giải thích các bước

Để giải quyết bài toán quản lý nhân sự, ta cần xác định một vài thông tin cần thiết của nhân viên

Bởi vì một vài thông tin của nhân viên trong quá trình làm

việc có thể thay đổi Nên các thông tin mà người dùng cần đưa vào trong bài toàn phải đảm bảo các yêu cầu sau:

Trang 8

-_ Cần có ít nhất 1 thông tin luôn cố định, đặc trưng cho từng nhân viên để thuận tiện trong việc tìm kiếm, sửa đổi hay xoá các thông tin (nếu cần)

- Cần có ít nhất 1 hoặc một vài thông tin linh động để

trong quá trình một nhân viên làm việc, tuỳ vào nhu cầu, mong muốn hoặc năng lực làm việc của nhân viên mà:

+ Nhân viên đó có thể muốn dừng làm việc, hoặc bị sa thải > Phần mềm quản lý nhân sự cần chức năng xoá bỏ

nhân viên

+ Các nhà quản lý có thể tăng giảm (thay đổi) chức vụ cũng như mức lương cho nhân viên > Phan mềm quản lý nhân sự cần có chức năng cập nhật thông tin nhân viên + Các nhà quản lý hoặc khách hàng, có thể cần thông tin của một nhân viên nào đó nhằm phục vụ mục đích cá nhân hoặc doanh nghiệp ¬> Cần xây dựng chức năng tìm kiếm thông tin nhân viên cho phần mềm quản lý

Xét các điều kiện trên, ta thấy các thông tin cần đưa vào các thông tin gồm mã nhân viên (trong bài toán này sẽ có vai trò

là thông tin cố định) và các thông tin như tên nhân viên, chức

vụ nhân viên và mức lương của nhân viên (thông tin linh động)

là có thể giải quyết bài toán

Mục 0: Để có một chương trình dễ tiếp cận người dùng, cần

có một giao diện thân thiện gồm đầy đủ thông tin và chức năng của chương trình mang lại

Mục 1: Ta cần xây dựng mục 1 với đầy đủ thông tin nhân

viên và và đưa chúng vào một danh sách quản lý Vì mục

một là điều kiện tiên quyết và phải có để xử lý các mục sau (phải tồn tại nhân viên và thông tin của nhân viên thì mới có thể xoá bỏ, chỉnh sửa hoặc tìm kiếm thông tin của nhân viên đó)

Bước 1:

-_ Với chức năng thêm nhân viên, như các giải thích phía trên, ta cần đưa vào và xử lý các thông tin gồm mã nhân

Trang 9

viên, tên nhân viên, chức vụ nhân viên và mức lương

nhân viên

Các thông tin như tên nhân viên, chức vụ nhân viên và

mức lương của nhân viên có thể trùng nhau Tuy nhiên, vì

mã nhân viên là một mã cố định, đặc trưng cho từng nhân viên, nên mã nhân viên không được phép trùng nhau > Cần đưa ra giải pháp xử lý trong các trường hợp người dùng nhập nhầm hoặc cố tình nhập một mã trùng với mã của nhân viên đã tồn tại

Bước 2:

Ta đưa các thông tin vào một dictionary và đưa các

dictionary vào một Iist (các mục từ a đến f) vì:

+ Dictionary chứa các key và value tương ứng với các

thông tin như mã, tên, chức vụ và mức lương nhân viên

sẽ thuận tiện trong việc thay đổi và dễ dàng lấy các thông tin nếu cần

+ Do một doanh nghiệp sẽ có nhân viên, và mỗi nhân

viên cần được xác định các thông tin cụ thể Nên ta xây

dựng một list chứa các thông tin đó (đã chứa trong

dictionary), để có thể quản lý một lúc toàn bộ nhân viên của doanh nghiệp

Các bước dùng lại (time.sleep) và thông báo thực hiện

nhiệm vụ thành công:

+ Các bước dừng lại nên có để tạo cảm giác chương trình được thực hiện bài bản và tuần tự cho người dùng

+ Bước thông báo thực hiện nhiệm vụ thành công cũng

cần thiết vì ta cần cho người dùng biết mong muốn của người dùng đã được thực hiện hay chưa

-> Tạo cảm giác thân thiện với người dùng

Bước 3:

Trang 10

-_ Tuỳ nhu cầu của từng người sử dụng, mà khi thực hiện xong bước 2, người dùng có thể mong thực hiện tiếp các công việc hoặc không Nên khi đó Cần đưa ra các chức năng nhằm tìm hiểu nhụ cầu người sử dụng rồi đưa ra

quyết định có tiếp tục chương trình hay không (trong quá

trình yêu cầu người dùng lựa chọn chức năng cũng có thể người dụng nhập nhầm hoặc cố tình nhập sai chức năng

— Cần đưa ra giải pháp xử lý trong các trường hợp này) Nếu người dùng muốn tiếp tục sử dụng: Ta sẽ quay về mục 0 nhằm tuần tự thực hiện lại các chức năng của chương trình

Bước 4:

Một chương trình khi xây dựng nếu không có phần kết

thúc, chương trình sẽ thực hiện mãi mãi và không dừng

lại Khi đó sẽ gây ra sự khó chịu với người sử dụng, đồng thời tiêu tốn tài nguyên — Cần kết thúc chương trình

Mục 2:

Xoá nhân viên là thực hiện xoá hết các thông tin của nhân viên đó (bao gồm cả thông tin cố định) Vì mã nhân viên đã xác định từ trước (mã nhân viên muốn xoá do người dùng nhập vào), nên ta chỉ cần tìm kiếm trong list các key “ma” chứa value vừa được người dùng nhập, rồi thực hiện xoá phần tử đó là đã thiết kế thành công việc xoá thông tin nhân viên

Các bước khác giải thích tương tự như đã giải thích trong

mục 1

Mục 3:

cần xác định được các key “ma” chứa value được người dùng nhập vào rồi thay thế các tất cả các value thuộc tất

cả các key (trừ key “ma”) là đã giải quyết thành công bài

toán cập nhật thông tin nhân viên

Các bước khác giải thích tương tự như đã giải thích trong

mục 1

Trang 11

ti

- Bai todn tim kiếm thông tin th viên Thực:tế¡là bài toán

đưa ra màn hình các, thông tih ¿ủa;hhẩn viễn Nên |tuong

tự như mục 2 và mục -3,'do mã nhân viễn là độc nhất, nên

khi đã xác định được phần từ với key “ma” với value là giá trị được nhập vào, chỉ-cần in ra các value tương ứng với các key HỆ ĐH: >3)

-_ Các bước khác giải thích tương tự như đã igiai thich trang

mục 1

Trang 12

PHẦN III: CÀI ĐẶT CHƯƠNG TRÌNH

1 Module 1: quanlynhansu.py

import time

def delay():

print()

time.sleep(0.5)

def them(nv):

ma=input("Nhập mã nhân viên của nhân viên muốn thêm: ") for iin nv:

if iọ'ma'ò==ma:

delay() print("Mã nhân viên đã tồn tại.") delay()

return

ten=input("Nhập tên nhân viên của nhân viên muốn thêm:

")

chuc=input("Nhập chức vụ của nhân viên muốn thêm: ")

luong=input("Nhập mức lương của nhân viên muốn thêm: ")

moi={'ma': ma, ten': ten,'chục': chuc, 'luong': luong}

nv.append(moi)

delay()

print("Đã thêm nhân viên thành công.")

delay()

def xoa(nv):

ma=input("Nhập mã nhân viên muốn xoá: ")

Trang 13

for iin nv:

if iọ'ma'ò==ma:

nv.remove(i) delay() print("Đã xoá nhân viên thành công.") delay()

return

delay()

print("Không tìm thấy nhân viên có mã",ma)

delay()

def cn(nv):

ma=input("Nhập mã nhân viên muốn cập nhật: ")

for iin nv:

if iọ'ma'ò==ma:

ten=input("Nhập tên nhân viên mới: ") chuc=input("Nhập chức vụ nhân viên mới: ")

luong=input("Nhập mức lương nhân viên mới: ")

iọ'ten'ò=ten

ig'chuc'6=chuc io'luong'ò=luong

delay()

print("Đã cập nhật thông tin nhân viên thành công.")

delay()

return

delay()

print("Không tìm thấy nhân viên cé ma",ma)

delay()

Ngày đăng: 23/01/2025, 12:17

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN