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

[ĐỒ ÁN TỐT NGHIỆP] XÂY DỰNG WEBSITE VÀ QUẢN LÝ GIA CÔNG CƠ KHÍ CHO CÔNG TY TNHH TM&DV CƠ KHÍ HIỆP HÒA

115 2 0
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 WEBSITE VÀ QUẢN LÝ GIA CÔNG CƠ KHÍ CHO CÔNG TY TNHH TM&DV CƠ KHÍ HIỆP HÒA
Tác giả Nguyễn Thị Minh Thắm
Người hướng dẫn TS. Phan Ngọc Hoàng
Trường học Trường Đại học Bà Rịa – Vũng Tàu
Chuyên ngành Công nghệ thông tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2021
Thành phố Bà Rịa - Vũng Tàu
Định dạng
Số trang 115
Dung lượng 4,6 MB

Nội dung

Bảng 3-1 Bảng mô tả chức năng quản lý loại sản phẩm 1 Tạo mới Cho phép tạo mới loại sản phẩm 2 Cập nhật thông tin Cho phép cập nhật thông tin 3 Xóa Cho phép xóa loại sản phẩm trong danh

Trang 1

TRƯỜNG ĐẠI HỌC BÀ RỊA – VŨNG TÀU

KHOA CNKT – NN - CNC

- -

BÁO CÁO ĐỒ ÁN TỐT NGHIỆP

ĐỀ TÀI: XÂY DỰNG WEBSITE VÀ QUẢN LÝ GIA CÔNG

CƠ KHÍ CHO CÔNG TY TNHH TM&DV CƠ KHÍ HIỆP HÒA

Trình độ đào tạo : Đại học

Chuyên ngành : Công nghệ thông tin

Trang 2

LỜI CẢM ƠN

Để hoàn thành đề tài báo cáo đồ án này trước hết, em xin gửi đến quý thầy, cô giáo trong khoa Công nghệ kỹ thuật – Nông nghiệp công nghệ cao trường Đại học Bà Rịa – Vũng Tàu lời cảm ơn chân thành

Đặc biệt, em xin gửi đến thầy Phan Ngọc Hoàng, người đã tận tình hướng dẫn, giúp

đỡ em hoàn thành đề tài đồ án tốt nghiệp lời cảm ơn sâu sắc nhất

Em xin chân thành cảm ơn Ban Lãnh Đạo, các phòng ban của công ty TNHH TM &

DV Cơ Khí Hiệp Hòa, đã tạo điều kiện thuận lợi cho em được tìm hiểu thực tiễn trong suốt quá trình thực tập tại công ty

Đồng thời xin chân thành cảm ơn Ban lãnh đạo trường Đại học Bà Rịa – Vũng Tàu

đã cho môi trường học tập lành mạnh và năng động Kính chúc Trường Đại học Bà Rịa – Vũng Tàu tiếp túc gặt hái nhiều thành công trên con đường giáo dục thế hệ trẻ

Vì kiến thức bản thân còn hạn chế và trình độ lý luận cũng như kinh nghiệm thực tiễn còn hạn chế nên bài báo cáo không thể tránh khỏi những thiếu sót, em rất mong nhận được

ý kiến đóng góp thầy, cô để em học thêm được nhiều kinh nghiệm và sẽ hoàn thiện bản thân đáp ứng với nhu cầu công việc thực tế trong tương lai

Em xin chân thành cảm ơn!

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt được trong đồ án là sản phẩm của riêng cá nhân, không sao chép lại của người khác Trong toàn bộ nội dung của luận văn, những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp

Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình

Vũng Tàu, ngày 01 tháng 01 năm 2021

Sinh viên thực hiện

Nguyễn Thị Minh Thắm

Trang 4

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Vũng Tàu, ngày … tháng … năm 20…

Người hướng dẫn

TS Phan Ngọc Hoàng

Trang 5

NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN

Trang 6

1.2 Mục tiêu và chức năng của hệ thống 1

1.2.1 Mục tiêu _ 1

1.2.2 Chức năng _ 2

1.3 Mô tả bài toán 2

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 42.1 Giới thiệu ngôn ngữ Python _ 4

2.2.2 Giới thiệu Werkzeug _ 9

2.2.3 Giới thiệu Jinja2 _ 10

2.2.4 Giới thiệu Flask-WTForms _ 10

2.2.5 Giới thiệu Flask-SQLALchemy _ 10

Trang 7

2.2.6 Giới thiệu về SQLite 11

2.2.7 Một số thư việc khác 11

CHƯƠNG 3 PHÂN TÍCH HỆ THỐNG _ 123.1 Mô tả hệ thống 12

3.1.1 Website giới thiệu 12

3.1.2 Quản trị website 12

3.1.3 Quản lý thiết bị 13

3.1.4 Quản lý nhân công 13

3.1.5 Quản lý danh sách yêu cầu _ 14

3.1.6 Quản lý phiếu báo giá/hóa đơn 14

3.2 Xây dựng các chức năng của hệ thống 15

3.2.1 Mô tả các chức năng chi tiết 15

3.2.2 Xác định use case 183.2.3 Đặc tả các use case _ 203.2.4 Quy trình nghiệp vụ _ 24

4.2 Giao diện và chức năng Admin _ 37

4.3 Giao diện báo lỗi _ 67

CHƯƠNG 5 KẾT LUẬN _ 68

Trang 8

5.1 Kết quả đạt được _ 68

5.2 Hướng phát triển _ 68CHƯƠNG 6 TÀI LIỆU THAM KHẢO 70PHỤ LỤC _ 71

Sơ đồ cấu trúc 71Code xử lý _ 72

File models.py _ 72

File forms.py _ 75

File main.py _ 77

Trang 9

DANH MỤC BẢNG

Bảng 3-1 Bảng mô tả chức năng quản lý loại sản phẩm _ 15Bảng 3-2 Bảng mô tả chức năng quản lý sản phẩm 15Bảng 3-3 Bảng mô tả chức quản lý ảnh của sản phẩm 15Bảng 3-4 Bảng mô tả chứa năng quản lý loại thiết bị 16Bảng 3-5 Bảng mô tả chức năng quản lý thiết bị 16Bảng 3-6 Bảng mô tả chức năng quản lý nhân công _ 16Bảng 3-7 Bảng mô tả chức năng điểm danh 17Bảng 3-8 Bảng mô tả chức năng quản lý bảng lương _ 17Bảng 3-9 Bảng mô tả chức năng quản lý phiếu yêu cầu _ 17Bảng 3-10 Bảng mô tả chức năng quản lý phiếu báo giá 18Bảng 3-11 Bảng mô tả chức năng quản lý hóa đơn _ 18Bảng 3-12 Cơ sở dữ liệu bảng loại sản phẩm _ 26Bảng 3-13 Cơ sở dữ liệu bảng sản phẩm _ 26Bảng 3-14 Cơ sở dữ liệu bảng ảnh sản phẩm _ 26Bảng 3-15 Cơ sở dữ liệu bảng loại thiết bị _ 27Bảng 3-16 Cơ sở dữ liệu bảng thiết bị _ 27Bảng 3-17 Cơ sở dữ liệu bảng phiếu yêu cầu _ 27Bảng 3-18 Cơ sở dữ liệu bảng nhân công 28Bảng 3-19 Cơ sở dữ liệu bảng lương 28Bảng 3-20 Cơ sở dữ liệu bảng phiếu báo giá/chiết tính _ 28Bảng 3-21 Cơ sở dữ liệu bảng hóa đơn 29

Trang 10

DANH MỤC SƠ ĐỒ

Sơ đồ 3-1 Sơ đồ Use case của ADMIN 19

Sơ đồ 3-2 Sơ đồ Use case của User _ 20

Sơ đồ 3-3 Sơ đồ tuần tự đăng nhập thành công 20

Sơ đồ 3-4 Sơ đồ hợp tác đăng nhập thành công _ 21

Sơ đồ 3-5 Sơ đồ tuần tự đăng nhập thất bại _ 21

Sơ đồ 3-6 Sơ đồ hợp tác đăng nhập thất bại 21

Sơ đồ 3-7 Sơ đồ tuần tự quá trình quản lý 22

Sơ đồ 3-8 Sơ đồ hợp tác quá trình quản lý _ 22

Sơ đồ 3-9 Sơ đồ tuần tự quá trình điểm danh _ 23

Sơ đồ 3-10 Sơ đồ hợp tác quá trình điểm danh 23

Sơ đồ 3-11 Quy trình kiểm tra máy móc thiết bị _ 24

Sơ đồ 3-12 Sơ đồ cơ sở dữ liệu 25

Trang 11

DANH MỤC HÌNH

Hình 2.1 Biểu tượng của Python 4Hình 2.2 Đặc điểm của ngôn ngữ Python _ 6Hình 2.3 Tại sao nên chọn Python _ 8Hình 2.4 Biểu tượng của Flak framework _ 9Hình 2.5 Biểu tượng của Werkzeug _ 9Hình 2.6 Biểu tượng của Jinja2 10Hình 2.7 Biểu tượng của SQLALchemy _ 10Hình 2.8 Biểu tượng của SQLite _ 11Hình 3.1 Mô hình ER quản lý sản phẩm _ 12Hình 3.2 Mô hình ER quản lý thiết bị _ 13Hình 3.3 Mô hình ER quản lý nhân công 13Hình 3.4 Mô hình ER quản lý phiếu công việc 14Hình 3.5 Mô hình ER quản lý phiếu công việc/Hóa đơn 14Hình 4.1 Phần header, navbar và slider của trang chủ _ 30Hình 4.2 Phần sứ mệnh và lý tưởng 30Hình 4.3 Phần kinh nghiệm sau 10 năm hoạt động của công ty _ 31Hình 4.4 Phần giới thiệu các kỹ thuật cơ khí sử dụng trong các dự án 32Hình 4.5 Phần nhận xét của khách hàng trong trang chủ 32Hình 4.6 Phần footer của trang chủ _ 33Hình 4.7 Giao diện trang giới thiệu _ 33Hình 4.8 Giao diện hiển thị tất cả các sản phẩm _ 34Hình 4.9 Giao diện sản phẩm theo loại “Kệ trang trí” 35Hình 4.10 Giao diện trang liên hệ 35Hình 4.11 Giao diện trang tìm kiếm sản phẩm 36Hình 4.12 Giao diện ảnh khi tìm theo tên và lọc giá 37Hình 4.13 Giao diện trang đăng nhập _ 38Hình 4.14 Giao diện trang đăng nhận không thành công 38

Trang 12

Hình 4.15 Thống kê số lượng sản phẩm, thiết bị, nhân viên trang dashboard 39Hình 4.16 Chức năng thông kế phiếu công việc quá hạn 39Hình 4.17 Các biểu đồ thông kê trong trang dashboard _ 39Hình 4.18 Menu quản lý sản phẩm _ 40Hình 4.19 Danh sách loại sản phẩm 40Hình 4.20 Chức năng tìm kiếm trong danh sách loại sản phẩm _ 41Hình 4.21 Chức năng thêm mới loại sản phẩm 41Hình 4.22 Chức năng chỉnh sửa loại sản phẩm 42Hình 4.23 Danh sách sản phẩm 42Hình 4.24 Chức năng tìm kiếm trong danh sách sản phẩm _ 43Hình 4.25 Chức năng thêm mới sản phẩm _ 43Hình 4.26 Chức năng chỉnh sửa sản phẩm _ 44Hình 4.27 Danh sách quản lý ảnh 44Hình 4.28 Chức năng tìm kiếm trong danh sách ảnh _ 45Hình 4.29 Chức năng thêm ảnh cho sản phẩm 45Hình 4.30 Menu quản lý thiết bị _ 46Hình 4.31 Danh sách loại thiết bị 46Hình 4.32 Chức năng tìm kiếm trong danh sách loại thiết bị _ 47Hình 4.33 Chức năng thêm mới loại thiết bị 47Hình 4.34 Chức năng chỉnh sửa loại thiết bị 47Hình 4.35 Danh sách quản lý thiết bị _ 48Hình 4.36 Chức năng tìm kiếm trong danh sách thiết bị _ 48Hình 4.37 Chức năng thêm mới thiết bị _ 49Hình 4.38 Chức năng chỉnh sửa thiết bị _ 50Hình 4.39 Giao diện hiển thị lịch sử sửa chữa/thay thế 50Hình 4.40 Menu quản lý nhân công _ 51Hình 4.41 Danh sách quản lý nhân công _ 51Hình 4.42 Chức năng tìm kiếm trong danh sách nhân công 52

Trang 13

Hình 4.43 Chức năng thêm mới nhân công _ 52Hình 4.44 Giao diện chỉnh sửa nhân công 53Hình 4.45 Chức năng tính lương của nhân công không được thực hiện _ 53Hình 4.46 Bảng lương nhân công 54Hình 4.47 Giao diện chức năng thưởng 54Hình 4.48 Giao diện bảng lương xuất ra Pdf 55Hình 4.49 Menu điểm danh _ 55Hình 4.50 Giao diện chức năng điểm danh _ 56Hình 4.51 Giao diện điểm danh không thành công _ 56Hình 4.52 Menu quản lý danh sách yêu cầu 56Hình 4.53 Giao diện thêm mới phiếu yêu cầu _ 57Hình 4.54 Danh sách phiếu yêu cầu 57Hình 4.55 Chức năng tìm kiếm trong danh sách phiếu yêu cầu _ 58Hình 4.56 Lọc theo phiếu yêu cầu thay thế _ 58Hình 4.57 Lọc theo phiếu yêu cầu mua mới 59Hình 4.58 Chức năng chỉnh sửa phiếu công việc 59Hình 4.59 Giao diện phiếu công việc xuất ra file Pdf _ 60Hình 4.60 Menu quản lý phiếu báo giá/hóa đơn _ 60Hình 4.61 Danh sách phiếu báo giá _ 61Hình 4.62 Chức năng tìm kiếm trong danh sách phiếu báo giá 61Hình 4.63 Chức năng thêm mới phiếu báo giá 62Hình 4.64 Giao diện xem trước phiếu báo giá _ 62Hình 4.65 Giao diện phiếu báo giá xuất fle Pdf _ 63Hình 4.66 Chức năng chỉnh sửa phiếu báo giá 63Hình 4.67 Danh sách quản lý hóa đơn _ 64Hình 4.68 Chức năng tìm kiếm trong danh sách hóa đơn 65Hình 4.69 Chức năng thêm mới hóa đơn _ 65Hình 4.70 Giao diện tất cả hóa đơn xuất file Pdf 66

Trang 14

Hình 4.71 Giao diện hóa đơn trong tháng hiện tại xuất file Pdf _ 66Hình 4.72 Chức năng chỉnh sửa hóa đơn _ 67Hình 4.73 Giao diện báo lỗi không tìm thấy trang 404 67

Trang 15

LỜI NÓI ĐẦU

Trong thế giới ngày nay, công nghệ thông tin (CNTT) là một công cụ quan trọng hỗ trợ cho doanh nghiệp chuyển biến Gặt hái lợi ích tối đa từ các khoản đầu tư vào công nghệ

để duy trì khả năng cạnh tranh là một trong những ưu tiên cao nhất của các nhà lãnh đạo doanh nghiệp ngày nay

Trên thực tế, thật khó để tưởng tượng bất kỳ doanh nghiệp nào không được hưởng lợi

từ công nghệ thông tin Mỗi doanh nghiệp cần phải chọn cho mình mô hình đầu tư CNTT cho phù hợp để phát huy hiệu quả các khoản đầu tư, phục vụ cho mục tiêu kinh doanh và phù hợp với năng lực khai thác công nghệ của doanh nghiệp Ngay cả trong lĩnh vực nông nghiệp cũng đã sử dụng máy tính Nông dân sử dụng máy tính cho sản xuất, tài chính, nghiên cứu về các vấn đề kỹ thuật và mua sắm Ngày nay, công thức để thành công trong kinh doanh rất đơn giản: thúc đẩy đổi mới công nghệ thông tin

Trong đó ngành cơ khí là ngành có nhiệm vụ cung cấp toàn bộ các trang thiết bị cho các ngành công nghiệp như chế biến nông sản, giao thông vận tải, trang thiết bị cho bảo vệ

an ninh quốc phòng nên đây là ngành có nhiều cơ hội phát triển Doanh nghiệp cơ khí là ngành với yêu cầu độ chính xác cao, nên công tác thiết lập cho từng công đoạn yêu cầu phải thật chính xác Để quản lý thiết bị và sản xuất những người làm điều hành doanh nghiệp đang gặp phải nhiều thách thức và ứng dụng phần mềm quản lý gia công cơ khí trong quản lý là yêu cầu bắt buộc Cụ thể về Công ty TNHH TM&DV Cơ khí Hiệp Hòa là một doanh nghiệp nhỏ - vừa trong ngành cơ khí gặp những bất cập khi không áp dụng công nghệ trong quá trình quản lý Chính vì lý do đó đề tài “Xây dựng website giới thiệu và quản

lý gia công cơ khí cho công ty TNHH TM&DV Cơ khí Hiệp Hòa” được ra đời Hướng tới những doanh nghiệp cơ khí có quy mô nhỏ - vừa muốn áp dụng công nghệ với chi phí thấp đơn giản dễ sử dụng Hy vọng sẽ đem giúp cho quá trình quản lý được chặt chẽ, nâng cao hiệu suất

Trang 16

CHƯƠNG 1 TỔNG QUAN 1.1 Lý do chọn đề tài

Ngành sản xuất cơ khí được xem như “xương sống” của nền kinh tế Cung cấp thiết

bị, máy công cụ, máy động lực cho tất cả các ngành kinh tế, đáp ứng nhu cầu hàng ngày của người dân, góp phần quan trọng vào phát triển kinh tế đất nước, tạo ra điều kiện tiền

để cho sự phát triển của kinh tế trong nông nghiệp, công nghiệp, giáo dục, y tế,… Việc

mở rộng thị trường, đưa sản phẩm đến gần hơn với khách hàng vẫn còn nhiều khó khăn do thiếu thông tin thị trường và năng lực cạnh tranh chưa đủ mạnh, thiếu hệ quản lý trang thiết

bị và giới thiệu dịch vụ sản phẩm đến khách hàng

Doanh nghiệp mỗi năm mất 10% khách hàng tiềm năng vì không đưa dịch vụ và sản phẩm đến gần hơn với khách hàng Gặp nhiều khó khăn trong công tác quản lý trang thiết

bị, nhân công Tốn nhiều thời gian để truy xuất thông tin và chi phí để lưu trữ

Bản chất của cuộc Cách mạng công nghiệp 4.0 đối với sản xuất cơ khí là dựa trên nền tảng công nghệ số và tích hợp tất cả các công nghệ thông minh để tối ưu hóa quy trình, phương thức sản xuất Để người tiêu dùng có thêm thông tin dịnh vụ sản phẩm của doanh nghiệp xây dựng một website là điều không thể thiếu Quản lý trang thiết bị và nhân lực đối với một doanh nghiệp nhỏ áp dụng một hệ thống quá lớn, phức tạp là một vấn đề vô cùng nan giải Chính vì vậy một website tích hợp giới thiệu dịch vụ/sản phẩm và quản lý gia công cho doanh nghiệp đơn giản đáp ứng cho nhu cầu doanh nghiệp vừa và nhỏ là vô cùng cần thiết

1.2 Mục tiêu và chức năng của hệ thống

1.2.1 Mục tiêu

Giới thiệu về thông tin doanh nghiệp, các sản phẩm và dịch vụ mà doanh nghiệp có Quản lý quá trình gia công cơ khí, các mục tiêu bao gồm:

➢ Đưa thông tin của doanh nghiệp và sản phẩm đến gần hơn với khách hàng

➢ Số hóa việc lưu trữ thông tin về thiết bị và nhân lực

Trang 17

➢ Tìm kiếm, trích xuất dữ liệu nhanh chóng và chính xác

➢ Giảm thiểu việc lưu trữ giấy tờ

➢ Theo dõi tình hình kinh doanh

✓ Quản lý nhân công

✓ Quản lý công việc

✓ Quản lý hóa đơn

✓ Lưu trữ, trích xuất dữ liệu

1.3 Mô tả bài toán

➢ Mục đích của website giới thiệu là đưa thông tin và sản phẩm của doanh nghiệp đến gần hơn với khách hàng

✓ Quản lý sản phẩm:

o Quản lý danh mục sản phẩm

o Quản lý thông tin sản phẩm: Mã, tên, mô tả, giá, hình ảnh, …

➢ Mục đích của website quản lý gia công là bao gồm quản lý thông tin thiết bị, thông tin nhân công, quản lý công việc và hóa đơn Chi tiết các chức năng chính của hệ thống như sau:

✓ Quản lý thiết bị:

o Quản lý danh mục thiết bị

Trang 18

o Quản lý thông tin thiết bị: Mã, tên, số lượng, thông số kỹ thuật, nhà sản xuất, ngày đưa vào sử dụng

✓ Quản lý nhân công:

o Quản lý thông tin nhân công: Mã, tên, địa chỉ, số điện thoại, bậc lương, số chứng minh nhân dân/căn cước công dân

o Quản lý bảng lương

✓ Quản lý công việc:

o Quản lý phiếu yêu cầu thay mới: Thiết bị, ngày tạo phiếu, chú thích, …

o Quản lý phiếu yêu cầu sửa chữa: Thiết bị, ngày tạo phiếu, chú thích, …

✓ Quản lý hóa đơn:

o Quản lý hóa đơn

Trang 19

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu ngôn ngữ Python

2.1.1 Tổng quát

Hình 2.1 Biểu tượng của Python

Python là một ngôn ngữ lập trình bậc cao cho các mục đích lập trình đa năng, do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991 Python được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ Python là ngôn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình Cấu trúc của Python còn cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu.Vào tháng 7 năm 2018, Van Rossum đã từ chức Leader trong cộng đồng ngôn ngữ Python sau 30 năm lãnh đạo

Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động; do vậy nó tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl Python được phát triển trong một dự

án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý

2.1.2 Lịch sử phát triển củaPython

Sự phát triển Python đến nay có thể chia làm các giai đoạn:

➢ Python 1: bao gồm các bản phát hành 1.x Giai đoạn này, kéo dài từ đầu đến cuối thập niên 1990 Từ năm 1990 đến 1995, Guido làm việc tại CWI (Centrum voor Wiskunde en Informatica – Trung tâm Toán-Tin học) tại Amsterdam, Hà Lan Vì nguyên nhân này, các phiên bản Python đầu tiên đều do CWI phát hành Phiên bản cuối cùng phát hành tại CWI là 1.2

▪ Vào năm 1995, Guido chuyển sang Corporation for National Research Initiatives (CNRI) ở Reston, Virginia Tại đây, ông phát hành một số phiên bản khác Python 1.6 là phiên bản cuối cùng phát hành tại CNRI

Trang 20

▪ Sau bản phát hành 1.6, Guido rời bỏ CNRI để làm việc với các lập trình viên chuyên viết phần mềm thương mại Tại đây, ông có ý tưởng sử dụng Python với các phần mềm tuân theo chuẩn GPL Sau đó, CNRI và Free Software Foundation (FSF) đã cùng nhau hợp tác để làm bản quyền Python phù hợp với GPL Cùng năm đó, Guido được nhận giải thưởng FSF Award for the Advancement of Free Software

▪ Phiên bản 1.6.1 ra đời sau đó là phiên bản đâu tiền tuân theo bản quyền GPL Tuy nhiên, bản này hoàn toàn giống bản 1.6, trừ một số sửa lỗi cần thiết

➢ Python 2: vào năm 2000, Guido và nhóm phát triển Python dời đến BeOpen.com và thành lập BeOpen PythonLabs team Phiên bản Python 2.0 được phát hành tại đây Sau khi phát hành Python 2.0, Guido và các thành viên PythonLabs gia nhập Digital Creations

▪ Python 2.1 ra đời kế thừa từ Python 1.6.1 và Python 2.0 Bản quyền của phiên bản này được đổi thành Python Software Foundation License Từ thời điểm này trở đi, Python thuộc sở hữu của Python Software Foundation (PSF), một tổ chức phi lợi nhuận được thành lập theo mẫu Apache Software Foundation

➢ Python 3: Về sự phát triển của Python trong tương lai, các nhà phát triển vẫn đang thảo luận về phiên bản mới: Python 3.0 (dự án gọi là Python 3000 hoặc Py3K) Dự kiến, dòng 3.x sẽ không hoàn toàn tương thích với dòng 2.x Nhóm phát triển cho biết sẽ lấp những chỗ hở của ngôn ngữ Nguyên tắc chủ đạo để phát triển Python 3.x là “bỏ cách làm việc cũ nhằm hạn chế trùng lặp về mặt chức năng của Python” Tuy nhiên, cho đến nay vẫn chưa có kế hoạch cụ thể cho phát triển Python 3

Trang 21

2.1.3 Đặc điểm của ngôn ngữ Python

Hình 2.2 Đặc điểm của ngôn ngữ Python

➢ Ngôn ngữ lập trình đơn giản, dễ học – dễ học

Python có cú pháp rất đơn giản, rõ ràng Nó dễ đọc và viết hơn rất nhiều khi

so sánh với những ngôn ngữ lập trình khác như C++, Java, C# Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trung vào những giải pháp chứ không phải

cú pháp

➢ Miễn phí, mã nguồn mở

Bạn có thể tự do sử dụng và phân phối Python, thậm chí là dùng cho mục đích thương mại Vì là mã nguồn mở, bạn không những có thể sử dụng các phần mềm, chương trình được viết trong Python mà còn có thể thay đổi mã nguồn của nó Python có một cộng đồng rộng lớn, không ngừng cải thiện nó mỗi lần cập nhật

➢ Khả năng di động linh hoạt

Giả sử bạn giả sử bạn đã viết mã Python cho máy Windows của mình Bây giờ, nếu bạn muốn chạy nó trên máy Mac, bạn không cần phải thay đổi nó như cũ Nói cách khác, bạn có thể lấy một mã và chạy nó trên bất kỳ máy nào, không cần phải viết mã khác nhau cho các máy khác nhau Điều này làm cho Python trở thành

Trang 22

một ngôn ngữ di động Tuy nhiên, bạn phải tránh mọi tính năng phụ thuộc hệ thống trong trường hợp này Nó chạy liền mạch trên hầu hết tất cả các nền tảng như Windows, macOS, Linux

➢ Khả năng mở rộng và có thể nhúng

Giả sử một ứng dụng đòi hỏi sự phức tạp rất lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữ khác (có thể gọi được từ C) vào code Python Điều này sẽ cung cấp cho ứng dụng của bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữ lập trình khác khó có thể làm được

➢ Ngôn ngữ thông dịch cấp cao

Không giống như C/C++, với Python, bạn không phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu vô nghĩa,… Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ máy tính có thể hiểu Trong nội bộ, mã nguồn của nó được chuyển đổi thành một hình thức ngay lập tức được gọi là bytecode Vì vậy, tất cả những gì bạn cần làm là chạy đoạn code Python của bạn mà không phải lo lắng về việc liên kết với các thư viện và những thứ khác

➢ Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến

Python có một số lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở hơn rất nhiều, đơn giản vì không phải tự viết tất cả code Ví dụ: Bạn cần kết nối cơ sở dữ liệu MySQL trên Web server? Bạn có thể nhập thư viện MySQLdb và sử dụng nó Có các thư viện cho các biểu thức thông thường, tạo tài liệu, kiểm tra đơn vị, trình duyệt web, phân luồng, cơ sở dữ liệu, CGI, email, thao tác hình ảnh và rất nhiều chức năng khác Vì vậy, bạn có thể chắc chắn rằng nó

sẽ không làm hỏng code hay ứng dụng của mình

➢ Hướng đối tượng

Mọi thứ trong Python đều là hướng đối tượng Lập trình hướng đối tượng (OOP) giúp giải quyết những vấn đề phức tạp một cách trực quan Với OOP, bạn

có thể phân chia những vấn đề phức tạp thành những tập nhỏ hơn bằng cách tạo ra

Trang 23

các đối tượng Python hỗ trợ cả lập trình hướng đối tượng, một trong những tính năng chính của nó Nó cũng hỗ trợ nhiều kế thừa, không giống như Java

2.1.4 Tại sao nên chọn Python

Hình 2.3 Tại sao nên chọn Python

Trang 24

➢ Machine Learning

➢ Dự án Blockchian

2.2 Giới thiệu Flask-Python

2.2.1 Tổng quát

Hình 2.4 Biểu tượng của Flak framework

Flask là một ứng dụng web framework được viết bằng Python Armin Ronacher, dẫn đầu một nhóm tên là Pocco gồm những nhà phát triển đam mê về ngôn ngữ lập trình Python

đã cùng phát triển nó Flask dựa trên bộ công cụ Werkzeug WSGI và Jinja2 và đều là dự

án của Pocco

Flask cung cấp cho bạn tất cả các công cụ, thư viện và công nghệ cho phép bạn xây dựng một ứng dụng web Ứng dụng web này có thể là blog, wiki hay một ứng dụng lịch dựa trên web hoặc một web thương mại

Ưu điểm của Flask là Framework nhẹ, ít phụ thuộc vào các cập nhật và dễ tìm kiếm các lỗi bảo mật Nhược điểm là đôi khi bạn phải tự thêm các danh sách phụ thuộc bằng việc thêm các plugin

2.2.2 Giới thiệu Werkzeug

Hình 2.5 Biểu tượng của Werkzeug

Trang 25

Là một bộ công cụ WSGI (Web Server Gateway Interface) đảm nhiệm các yêu cầu, phản hồi đối tượng (objects) và các chức năng tiện ích khác Flask sử dụng Werkzeug làm một trong những cơ sở của chính nó

2.2.3 Giới thiệu Jinja2

Hình 2.6 Biểu tượng của Jinja2

Jinja2 là một công cụ tạo mẫu giao diện phổ biến dành cho Python Một hệ thống tạo mẫu web kết hợp một mẫu với một nguồn dữ liệu nhất định để hiển thị các trang web động

2.2.4 Giới thiệu Flask-WTForms

Flask-WTForm là thư viện mở rộng (extension), giao diện cho gói WTForms được tích hợp với Flask

2.2.5 Giới thiệu Flask-SQLALchemy

Hình 2.7 Biểu tượng của SQLALchemy

Flask-SQLALchemy là một phần mềm trong nhóm sản phẩm gọi là Object Relational Mapping hay ORM Giúp chúng ta giao tiếp với cơ sử dữ liệu thông qua các thực thể như lớp, đối tượng và phương thức

Trang 26

2.2.6 Giới thiệu về SQLite

Hình 2.8 Biểu tượng của SQLite

SQLite là hệ thống cơ sở dữ liệu quan hệ nhỏ gọn, hoàn chỉnh, có thể cài đặt bên trong các trình ứng dụng khác SQLite được Richard Hipp viết dưới dạng thư viện bằng ngôn ngữ lập trình C

Trang 27

CHƯƠNG 3 PHÂN TÍCH HỆ THỐNG 3.1 Mô tả hệ thống

3.1.1 Website giới thiệu

⁻ Thông tin công ty TNHH TMDV Cơ khí Hiệp Hòa Giới thiệu địa chỉ, số điện thoại liên hệ

⁻ Giới thiệu tất cả các sản phẩm, sản phẩm theo danh mục loại

⁻ Tìm kiếm sản phẩm theo tên sản phẩm, lọc theo giá sản phẩm

3.1.2 Quản trị website

⁻ Quản lý danh mục loại sản phẩm Quản lý sản phẩm bao gồm tên sản phẩm, hình ảnh, mô tả, giá, mô tả chi tiết, trạng thái của sản phẩm Một sản phẩm sẽ có nhiều hình ảnh minh họa

⁻ Một sản phẩm được quản lý theo danh mục loại sản phẩm Một sản phẩm chỉ được thuộc một loại sản phẩm Sẽ có nhiều loại sản phẩm trong đó chứa nhiều sản phẩm cùng loại

Hình 3.1 Mô hình ER quản lý sản phẩm

Trang 28

Hình 3.2 Mô hình ER quản lý thiết bị

3.1.4 Quản lý nhân công

⁻ Quản lý thông tin nhân công: tên, địa chỉ, số điện thoại, số chứng minh nhân dân, vị trí, bậc lương

⁻ Mỗi ngày nhân công sẽ được điểm danh, hệ thống sẽ ghi nhận và tính lương nhân công dựa trên bậc lương, số ngày làm việc, thưởng

Hình 3.3 Mô hình ER quản lý nhân công

Trang 29

3.1.5 Quản lý danh sách yêu cầu

⁻ Sau khi kiểm tra các thiết bị trong phân xưởng, kỹ thuật trưởng đưa ra danh sách các thiết bị cần thay cần sửa chữa/thay thế hoặc thay mới Khi đưa vào hệ thống quản trị viên sẽ theo dõi và cập nhật trạng thái phiếu công việc sau khi hoành thành

Hình 3.4 Mô hình ER quản lý phiếu công việc

3.1.6 Quản lý phiếu báo giá/hóa đơn

⁻ Quản lý phiếu báo giá thông tin đơn hàng và khách hàng cho phép xuất file Pdf

⁻ Quản lý hóa đơn thông tin hóa đơn

Hình 3.5 Mô hình ER quản lý phiếu công việc/Hóa đơn

Trang 30

3.2 Xây dựng các chức năng của hệ thống

3.2.1 Mô tả các chức năng chi tiết

3.2.1.1 Quản trị website

➢ Quản lý loại sản phẩm: Cho phép quản lý loại sản phẩm Các sản phẩm sẽ được quản lý theo danh mục loại sản phẩm

Bảng 3-1 Bảng mô tả chức năng quản lý loại sản phẩm

1 Tạo mới Cho phép tạo mới loại sản phẩm

2 Cập nhật thông tin Cho phép cập nhật thông tin

3 Xóa Cho phép xóa loại sản phẩm trong danh sách

4 Tìm kiếm Cho phép tìm kiếm loại sản phẩm trong danh sách

➢ Quản lý sản phẩm: Cho phép quản lý sản phẩm hiển thị trên website công ty

Bảng 3-2 Bảng mô tả chức năng quản lý sản phẩm

2 Cập nhật thông tin Cho phép cập nhật thông tin

3 Xóa Cho phép chuyển trạng thái sử dụng của sản phẩm

4 Tìm kiếm Cho phép tìm kiếm sản phẩm trong danh sách

➢ Quản lý ảnh sản phẩm: Cho phép quản lý nhiều ảnh cho một sản phẩm

Bảng 3-3 Bảng mô tả chức quản lý ảnh của sản phẩm

1 Thêm mới Cho phép thêm mới nhiều ảnh cho một sản phẩm

2 Xóa Cho phép xóa ảnh của sản phẩm trong danh sách

3 Tìm kiếm Cho phép tìm kiếm trong danh sách

3.2.1.2 Quản lý thiết bị

➢ Quản lý loại thiết bị: Cho phép quản lý loại thiết bị Các thiết bị sẽ được quản

lý theo danh mục loại thiết bị

Trang 31

Bảng 3-4 Bảng mô tả chứa năng quản lý loại thiết bị

1 Tạo mới Cho phép tạo mới loại thiết bị

2 Cập nhật thông tin Cho phép cập nhật thông tin

3 Xóa Cho phép xóa loại thiết bị trong danh sách

4 Tìm kiếm Cho phép tìm kiếm trong danh sách

➢ Quản lý thiết bị: Cho phép quản lý thiết trong trong phân xưởng sản xuất trong phân xưởng, quản lý số lượng và trạng thái hoạt động thiết bị,…

Bảng 3-5 Bảng mô tả chức năng quản lý thiết bị

1 Tạo mới Cho phép tạo mới thiết bị

2 Cập nhật thông tin Cho phép cập nhật thông tin thiết bị

3 Xóa Cho phép xóa thiết bị trong danh sách

4 Tìm kiếm Cho phép tìm kiếm trong danh sách

3.2.1.3 Quản lý nhân công

➢ Quản lý nhân công: Cho phép quản lý thông tin nhân công lao động trong phân xưởng

Bảng 3-6 Bảng mô tả chức năng quản lý nhân công

1 Tạo mới Cho phép tạo mới nhân viên

2 Cập nhật thông tin Cho phép cập nhật thông tin nhân viên

3 Xóa Cho phép xóa nhân viên trong danh sách

4 Tìm kiếm Cho phép tìm kiếm trong danh sách

➢ Quản lý điểm danh nhân công: Mỗi ngày nhân công sẽ được điểm danh và số ngày làm việc sẽ được hệ thống ghi nhận phụ vụ cho công tác tính lương

Trang 32

Bảng 3-7 Bảng mô tả chức năng điểm danh

1 Điểm danh Cho phép ghi nhận số ngày làm việc của nhân công

➢ Quản lý bảng lương nhân công: Cho phép quản lý bảng lương được tính tự động thông qua bậc lương, số ngày làm việc và thưởng

Bảng 3-8 Bảng mô tả chức năng quản lý bảng lương

1 Xóa Cho phép xóa bảng lương trong danh sách

2 Xuất file Pdf Cho phép xuất bảng lương ra file Pdf

3 Tìm kiếm Cho phép tìm kiếm bảng lương trong danh sách

3.2.1.4 Quản lý phiếu yêu cầu

➢ Quản lý phiếu yêu cầu: Sau khi kỹ thuật trưởng kiểm tra máy móc thiết bị sản xuất trong phân xưởng đưa ra hai loại phiếu yêu cầu:

o Phiếu yêu cầu sửa chữa/thay thế : Khi máy móc thiết bị xảy ra sự cố có thể sửa chữa/thay thế thì tiến hành lập ra danh sách sửa chữa để đưa vào hệ thống để quản lý lưu trữ Bao gồm tên thiết bị cần sửa chữa, nội dung sửa chữa, hạn cuối cùng hoàn thành phiếu, nhân viên chịu trách nhiệm và mức độ cần thiết phục vụ cho quá trình sản xuất

o Phiếu yếu cầu thay mới: Khi máy móc thiết bị xảy ra sự cố không thể sửa chữa/thay thế thì tiến hành lập ra danh sách mua mới để đưa vào hệ thống quản lý lưu trữ Bao gồm tên thiết bị cần thay mới, nội dung yêu cầu, hạn cuối cùng hoàn thành phiếu, nhân viên chịu trách nhiệm và mức độ cần thiết phục vụ cho quá trình sản xuất

Bảng 3-9 Bảng mô tả chức năng quản lý phiếu yêu cầu

1 Tạo mới Cho phép tạo mới phiếu yêu cầu

2 Cập nhật thông tin Cho phép cập nhật thông tin phiếu yêu cầu

3 Xóa Cho phép xóa phiếu yêu cầu trong danh sách

Trang 33

STT Chức năng Diễn giải

4 Xuất file Pdf Cho phép xuất phiếu yêu cầu ra file Pdf

5 Tìm kiếm Cho phép tìm kiếm phiếu yêu cầu trong danh sách

3.2.1.5 Quản lý phiếu báo giá/Hóa đơn

➢ Quản lý phiếu báo giá: Cho phép quản lý phiếu báo khi có dự án mới Cho phép xem trước và xuất file Pdf

Bảng 3-10 Bảng mô tả chức năng quản lý phiếu báo giá

1 Tạo mới Cho phép tạo mới phiếu báo giá

2 Cập nhật thông tin Cho phép cập nhật thông tin phiếu báo giá

3 Xóa Cho phép xóa phiếu báo giá trong danh sách

4 Xuất file Pdf Cho phép xuất bảng lương ra Pdf

5 Tìm kiếm Cho phép tìm kiếm phiếu báo giá trong danh sách

➢ Quản lý hóa đơn: Cho phép quản lý hóa đơn

Bảng 3-11 Bảng mô tả chức năng quản lý hóa đơn

1 Tạo mới Cho phép tạo mới hóa đơn

2 Cập nhật thông tin Cho phép cập nhật thông tin

3 Xóa Cho phép xóa hóa đơn trong danh sách

4 Export Pdf Cho phép xuất bảng lương ra Pdf

5 Tìm kiếm Cho phép tìm kiếm hóa đơn trong danh sách

Trang 34

⁻ Điểm danh nhân công

⁻ Quản lý phiếu yêu cầu

⁻ Quản lý bảng báo giá/hóa đơn

Sơ đồ 3-1 Sơ đồ Use case của ADMIN

Trang 35

3.2.3.1 Mô tả quá trình đăng nhập

⁻ Đặc tả: Use case mô tả quá trình đăng nhập vào hệ thống Người dùng đăng nhập user name và password Nếu tài khoản được xác minh, hiển thị giao diện trang màn hình chính Nếu tài khoản không chính xác yêu cầu đăng nhập lại

Sơ đồ 3-3 Sơ đồ tuần tự đăng nhập thành công

Trang 36

Sơ đồ 3-4 Sơ đồ hợp tác đăng nhập thành công

Sơ đồ 3-5 Sơ đồ tuần tự đăng nhập thất bại

Sơ đồ 3-6 Sơ đồ hợp tác đăng nhập thất bại

3.2.3.2 Mô tả quá trình quản lý

⁻ Đặc tả: Khi người dùng đăng nhập và tài khoản đã được xác minh hiển thị trang màn hình chính Người dùng lựa chọn danh mục cần thao tác, chọn chức năng cần thực hiện

Trang 37

Sơ đồ 3-7 Sơ đồ tuần tự quá trình quản lý

Sơ đồ 3-8 Sơ đồ hợp tác quá trình quản lý

3.2.3.3 Mô tả quá trình điểm danh

⁻ Đặc tả: Khi người dùng đăng nhập và tài khoản đã được xác minh hiển thị trang màn hình chính Người dùng lựa chọn chức năng điểm danh, chọn thời gian và nhân viên đi làm Hệ thống sẽ lưu trữ thông tin phục vụ cho quy trình tính lương

Trang 38

Sơ đồ 3-9 Sơ đồ tuần tự quá trình điểm danh

Sơ đồ 3-10 Sơ đồ hợp tác quá trình điểm danh

Trang 39

3.2.4 Quy trình nghiệp vụ

3.2.4.1 Kiểm tra máy móc thiết bị trong phân xưởng

Sơ đồ 3-11 Quy trình kiểm tra máy móc thiết bị

Trang 40

3.3 Thiết kế hệ thống

3.3.1 Sơ đồ cơ sở dữ liệu

Sơ đồ 3-12 Sơ đồ cơ sở dữ liệu

Ngày đăng: 20/08/2024, 07:44

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

TÀI LIỆU LIÊN QUAN

w