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

BÁO cáo đồ án tốt NGHIỆP đề tài ỨNG DỤNG CÔNG NGHỆ PHP GIẢI QUYẾT vấn đề VIỆC làm CHO SINH VIÊN UTC2

81 5 0

Đ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 đề Ứng Dụng Công Nghệ PHP Giải Quyết Vấn Đề Việc Làm Cho Sinh Viên UTC2
Tác giả Đinh Hoàng Vũ
Người hướng dẫn THS. Phạm Thị Miên
Trường học Trường Đại học Giao thông Vận tải
Chuyên ngành Công nghệ thông tin
Thể loại báo cáo đồ án tốt nghiệp
Năm xuất bản 2021
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 81
Dung lượng 3,67 MB

Cấu trúc

  • CHƯƠNG 1. MỞ ĐẦU (14)
    • 1.1 Tổng quan (14)
    • 1.2 Mục tiêu thực hiện (14)
    • 1.3 Phạm vi (15)
    • 1.4 Cấu trúc báo cáo đồ án tốt nghiệp (15)
  • CHƯƠNG 2. TÌM HIỂU NGÔN NGỮ LẬP TRÌNH (19)
    • 2.1 Tổng quan về ngôn ngữ lập trình phía Backend (19)
      • 2.1.1 PHP - Ngôn ngữ lập trình (19)
      • 2.1.2 Laravel – Framework (20)
    • 2.2 Tổng quan về ngôn ngữ lập trình phía Frontend (21)
      • 2.2.1 HTML (21)
      • 2.2.2 CSS (22)
      • 2.2.3 Bootstrap (24)
      • 2.2.4 JavaScript (24)
    • 2.3 Môi trường hỗ trợ (25)
      • 2.3.1 Xampp (25)
      • 2.3.2 Cơ sở dữ liệu – MySQL (27)
    • 2.4 Mô hình hoạt động – MVC (28)
  • CHƯƠNG 3. PHÂN TÍCH VÀ THIẾT KẾ ỨNG DỤNG (31)
    • 3.1 Mô tả đề tài (31)
    • 3.2 Phân tích bài toán (32)
    • 3.3 Sơ đồ phân rã chức năng (33)
      • 3.3.1 Phân rã chức năng của ứng cử viên (33)
      • 3.5.2 Phân rã chức năng của ứng cử viên (34)
    • 3.4 Sơ đồ ERD (35)
    • 3.5 Class Diagram (36)
  • CHƯƠNG 4. TRIỂN KHAI HỆ THỐNG (43)
    • 4.1 Xây dựng hệ thống (43)
    • 4.2 Giao diện của hệ thống của ứng viên (45)
      • 4.2.1 Giao diện trang chủ (45)
      • 4.2.2 Giao diện danh sách việc làm của ứng viên (46)
      • 4.2.3 Giao diện chi tiết yêu cầu của công việc (47)
      • 4.2.4 Giao diện đăng ký tài khoản ứng viên (48)
      • 4.2.5 Giao diện nhập của ứng viên (49)
      • 4.2.6 Giao diện thông tin cá nhân của ứng viên (50)
      • 4.2.7 Giao diện danh sách các công việc đã ứng tuyển (51)
      • 4.2.8 Giao diện danh sách các công việc đã lưu (52)
      • 4.2.9 Giao diện danh sách các bài kiểm tra (53)
      • 4.2.10 Giao diện làm bài kiểm tra (54)
      • 4.2.11 Giao diện cập nhật thông tin cá nhân (55)
    • 4.3 Giao diện hệ thống của nhà tuyển dụng (56)
      • 4.3.1 Giao diện đăng nhập (56)
      • 4.3.2 Giao diện quên mật khẩu (57)
      • 4.3.3 Giao diện đăng ký tài khoản (58)
      • 4.3.4 Giao diện trang chủ (59)
      • 4.3.5 Giao diện thêm bài đăng tuyển dụng (60)
      • 4.3.6 Giao diện danh sách bài đăng tuyển dụng (61)
      • 4.3.7 Giao diện sửa bài đăng tuyển dụng (62)
      • 4.3.8 Giao diện danh sách ứng viên ứng tuyển của bài đăng tuyển dụng (63)
      • 4.3.9 Giao diện thêm bài kiểm tra (64)
      • 4.3.10 Giao diện danh sách bài kiểm tra (65)
      • 4.3.11 Giao diện sửa bài kiểm tra (66)
      • 4.3.12 Giao diện danh sách câu hỏi của bài kiểm tra (67)
      • 4.3.13 Định dạng file excel để thêm các câu hỏi kiểm tra (68)
      • 4.3.14 Giao diện sửa câu hỏi trong bài kiểm tra (69)
      • 4.3.15 Giao diện lịch sử thanh toán (70)
      • 4.3.16 Giao diện gia hạn thời gian đăng bài (71)
      • 4.3.17 Giao diện xác nhận thanh toán qua Paypal (72)
      • 4.3.18 Giao diện danh sách các ứng viên hoàn thành bài kiểm tra (73)
      • 4.3.19 Giao diện câu trả lời của ứng viên (74)
      • 4.3.20 Giao diện thay đổi vị trí công ty (75)
  • CHƯƠNG 5: KẾT QUẢ VÀ KIẾN NGHỊ (76)
    • 5.1 Kết quả đạt được (76)
    • 5.2 Kiến nghị (77)
  • PHỤ LỤC (78)
  • TÀI LIỆU THAM KHẢO (80)

Nội dung

TÌM HIỂU NGÔN NGỮ LẬP TRÌNH

Tổng quan về ngôn ngữ lập trình phía Backend

2.1.1 PHP - Ngôn ngữ lập trình.

Ngôn ngữ lập trình PHP (PHP: Hypertext Preprocessor) là một ngôn ngữ kịch bản mã nguồn mở, chủ yếu được sử dụng để phát triển các ứng dụng cho máy chủ và phục vụ cho nhiều mục đích khác nhau.

Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML.

PHP là ngôn ngữ lập trình được tối ưu hóa cho ứng dụng web, nổi bật với tốc độ nhanh, kích thước nhỏ gọn và cú pháp tương tự như C và Java Với tính dễ học và thời gian xây dựng sản phẩm ngắn, PHP đã nhanh chóng trở thành một trong những ngôn ngữ lập trình phổ biến nhất.

Để chạy mã PHP, bạn cần một môi trường server vì PHP là ngôn ngữ phía server XAMPP là một giải pháp lý tưởng để tạo ra môi trường server, bao gồm các thành phần cần thiết như Apache, MySQL và PHP trong một gói cài đặt tích hợp.

XAMPP tích hợp phpMyAdmin, một công cụ web hữu ích cho việc quản lý cơ sở dữ liệu của các nhà phát triển, cùng với nhiều thư viện hỗ trợ khác như OpenSSL và pdf class.

PHP là một ngôn ngữ lập trình miễn phí, rất lý tưởng cho những ai muốn học lập trình Bạn có thể tự học PHP trực tuyến mà không cần lo lắng về chi phí lớn cho việc học.

Cấu trúc của PHP rất đơn giản, giúp lập trình viên dễ dàng tiếp cận và học hỏi mà không tốn quá nhiều thời gian Đây là một trong những ưu điểm nổi bật của PHP, thu hút sự quan tâm lớn từ những người đam mê công nghệ thông tin.

Thư viện PHP rất phong phú và được hỗ trợ mạnh mẽ bởi cộng đồng, giúp người dùng dễ dàng tìm kiếm tài liệu và nhận hỗ trợ khi gặp khó khăn.

Học PHP mang lại cơ hội việc làm rộng mở và mức lương hấp dẫn, có thể nói là rất cao so với nhiều ngành khác Điều này không chỉ giúp bạn làm việc tại nhiều công ty khác nhau mà còn gia tăng thu nhập đáng kể từ khối lượng công việc phong phú.

PHP không ngừng phát triển và cải tiến, khẳng định vị thế vững mạnh trong danh sách khảo sát hàng năm về ngôn ngữ lập trình trong lĩnh vực công nghệ thông tin.

Laravel là một framework PHP miễn phí và mã nguồn mở, được phát triển bởi Taylor Otwell, chuyên dùng để xây dựng ứng dụng web theo kiến trúc MVC Framework này dựa trên Symfony PHP Framework và nổi bật với tính năng sử dụng hệ thống đóng gói module, quản lý package thông qua Composer Laravel hỗ trợ nhiều hệ quản trị cơ sở dữ liệu quan hệ như MySQL, MariaDB, SQLite và PostgreSQL, cùng với các tiện ích hữu ích cho việc triển khai và bảo trì ứng dụng.

Laravel là một framework PHP 5.3, được gọi là ‘framework cho web artisan’ Theo tác giả Taylor Otwell, Laravel mang lại niềm vui cho lập trình nhờ vào sự đơn giản, súc tích và cách trình bày hợp lý.

Laravel là một framework PHP phát triển theo mô hình MVC, cung cấp nhiều mẫu thiết kế phù hợp với ứng dụng của bạn Nó đi kèm với các thư viện, API và trình biên dịch hữu ích Hiện tại, Laravel được phát hành dưới giấy phép MIT và mã nguồn được lưu trữ trên Github Đến nay, Laravel đã phát triển đến phiên bản 5.8 với nhiều cải tiến đáng kể.

- Laravel có 3 đặc tính nổi trội:

 Đơn giản: các chức năng của Laravel rất dễ hiểu và thực hiện.

 Ngắn gọn: hầu hết các chức năng của Laravel hoạt động liên tục với cấu hình rất nhỏ, dựa vào các quy tắc chuẩn để giảm bớt code-bloat.

Hướng dẫn sử dụng Laravel được trình bày một cách hợp lý, đầy đủ và luôn được cập nhật Nhà lập trình và người sáng lập framework này liên tục cập nhật tài liệu trước khi phát hành phiên bản mới, đảm bảo người học lập trình luôn có được thông tin mới nhất.

Tổng quan về ngôn ngữ lập trình phía Frontend

HTML, viết tắt của Hypertext Markup Language, là ngôn ngữ dùng để tạo và cấu trúc các thành phần trên trang web hoặc ứng dụng, bao gồm việc phân chia đoạn văn, tiêu đề, liên kết và trích dẫn.

HTML không phải là ngôn ngữ lập trình, mà chỉ là công cụ để bố cục và định dạng trang web, tương tự như Microsoft Word Do đó, HTML không thể tạo ra các chức năng "động".

Khi làm việc với HTML, chúng ta sử dụng cấu trúc mã đơn giản bao gồm các thẻ và thuộc tính để đánh dấu nội dung trên trang web Chẳng hạn, để tạo một đoạn văn, chúng ta chỉ cần đặt văn bản giữa cặp thẻ mở và thẻ đóng.

HTML documents là các file có đuôi html hoặc htm, có thể được xem bằng bất kỳ trình duyệt web nào như Google Chrome, Safari hay Mozilla Firefox Trình duyệt sẽ đọc các file HTML và hiển thị nội dung lên internet để người dùng có thể truy cập và xem.

- Thông thường, trung bình một web chứa nhiều trang web HTML, ví dụ như: trang chủ, trang about, trang liên hệ, tất cả đều cần các trang HTML riêng.

Mỗi trang HTML bao gồm nhiều thẻ (elements) tạo thành cấu trúc cơ bản cho một trang web Các thẻ này hình thành một cây thư mục với các phần như section, paragraph, heading, và các khối nội dung khác, giúp tổ chức thông tin một cách rõ ràng và mạch lạc.

CSS, viết tắt của Cascading Style Sheets, là ngôn ngữ dùng để tìm kiếm và định dạng các phần tử được tạo ra bởi ngôn ngữ đánh dấu HTML.

- CSS được phát triển bởi W3C (World Wide Web Consortium) vào năm

1996, vì HTML không được thiết kế để gắn tag để giúp định dạng trang web.

CSS hoạt động bằng cách tìm kiếm các vùng chọn, bao gồm tên thẻ HTML, ID, class và nhiều kiểu khác.

Sau đó là nó sẽ áp dụng các thuộc tính cần thay đổi lên vùng chọn đó.

HTML và CSS có mối liên hệ chặt chẽ, trong đó HTML là ngôn ngữ đánh dấu tạo nền tảng cho trang web, còn CSS chịu trách nhiệm định hình phong cách và giao diện của nó Sự kết hợp giữa HTML và CSS là điều không thể thiếu trong việc phát triển website.

Trước khi CSS ra đời, việc lặp lại các thuộc tính như phông chữ, màu sắc, kiểu nền và kích thước trên mọi trang web là một quá trình tốn thời gian và công sức Đặc biệt, với các trang web lớn, việc thêm thông tin về phông chữ và màu sắc trên từng trang trở nên phức tạp và tốn kém CSS được phát triển để giải quyết những vấn đề này, theo khuyến cáo của W3C.

CSS giúp tổ chức mã nguồn trang web một cách gọn gàng và trật tự hơn, tách bạch nội dung trong việc định dạng hiển thị Nhờ đó, quá trình cập nhật nội dung trở nên dễ dàng hơn và giảm thiểu sự rối rắm trong mã HTML.

CSS được lưu trữ trong các tệp bên ngoài, cho phép bạn thay đổi toàn bộ trang web chỉ bằng cách chỉnh sửa một tệp duy nhất Việc sử dụng CSS giúp loại bỏ sự lặp lại trong việc mô tả các thành phần, tiết kiệm thời gian làm việc và rút ngắn mã code Điều này cũng giúp bạn dễ dàng kiểm soát và khắc phục các lỗi không mong muốn.

CSS cho phép tạo ra nhiều kiểu dáng khác nhau, giúp áp dụng cho nhiều trang web khác nhau, từ đó giảm thiểu việc lặp lại các định dạng trên các trang web tương tự.

CSS cung cấp các thuộc tính chi tiết hơn HTML, cho phép định nghĩa giao diện trang web một cách linh hoạt Nhờ vào CSS, người dùng có thể áp dụng nhiều kiểu dáng khác nhau cho một trang HTML, mở ra khả năng tùy chỉnh giao diện trang web vô hạn.

- Bootstrap là một framework bao gồm các HTML, CSS và JavaScript template dùng để phát triển website chuẩn responsive.

Bootstrap streamlines the web design process, making it faster and easier by providing essential components such as typography, forms, buttons, tables, grids, navigation, and image carousels.

Bootstrap là bộ công cụ mã nguồn mở miễn phí giúp tạo mẫu website hoàn chỉnh Với các thuộc tính giao diện như kích thước, màu sắc, độ cao và độ rộng đã được định sẵn, các designer có thể dễ dàng sáng tạo sản phẩm mới trong khi tiết kiệm thời gian khi sử dụng framework này để thiết kế giao diện website.

Môi trường hỗ trợ

XAMPP là một phần mềm mã nguồn mở, hoạt động dựa trên sự tích hợp của năm thành phần chính: Cross-Platform (X), Apache (A), MariaDB (M), PHP (P) và Perl (P) Tên gọi XAMPP được hình thành từ chữ cái đầu của các phần mềm này, phản ánh tính năng đa nền tảng và khả năng hỗ trợ phát triển web hiệu quả.

 Chữ X đầu tiên là viết tắt của hệ điều hành mà nó hoạt động với:

Linux, Windows và Mac OS X.

Apache là máy chủ web mã nguồn mở phổ biến nhất toàn cầu, được sử dụng để phân phối nội dung trên Internet Phần mềm này được phát triển và cung cấp miễn phí bởi Quỹ Phần mềm Apache.

MySQL và MariaDB là hai hệ quản trị cơ sở dữ liệu quan hệ phổ biến, với MySQL được tích hợp trong XAMPP, một giải pháp phát triển web nổi tiếng XAMPP kết hợp Apache Web Server và ngôn ngữ lập trình PHP, cung cấp khả năng lưu trữ dữ liệu hiệu quả cho các dịch vụ web Hiện nay, các phiên bản XAMPP đã thay thế MySQL bằng MariaDB, một nhánh phát triển từ MySQL do cộng đồng và các nhà phát triển ban đầu thực hiện.

PHP là một ngôn ngữ lập trình phía máy chủ mạnh mẽ, cho phép người dùng phát triển các trang web và ứng dụng động Nó có khả năng tương thích với nhiều nền tảng khác nhau và hỗ trợ nhiều hệ thống cơ sở dữ liệu đa dạng.

Perl là một ngôn ngữ kịch bản phổ biến, thường được sử dụng trong quản trị hệ thống, phát triển Web và lập trình mạng Tương tự như PHP, Perl cho phép người dùng tạo ra các ứng dụng Web động, mang lại sự linh hoạt và hiệu quả trong việc phát triển các dự án trực tuyến.

XAMPP nổi bật với ưu điểm miễn phí bản quyền và mã nguồn mở, cùng với cấu hình web server đơn giản và gọn nhẹ, khiến nó ngày càng trở nên phổ biến trong cộng đồng phát triển web hiện nay.

Phần mềm XAMPP là một công cụ phổ biến cho lập trình viên trong việc phát triển các dự án website bằng ngôn ngữ PHP Nó cho phép người dùng nghiên cứu và phát triển website qua Localhost trên máy tính cá nhân XAMPP được ứng dụng rộng rãi trong nhiều lĩnh vực, từ học tập đến nâng cấp và thử nghiệm website cho lập trình viên.

2.3.2 Cơ sở dữ liệu – MySQL

MySQL là hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở (RDBMS) sử dụng ngôn ngữ truy vấn có cấu trúc (SQL), được phát triển và hỗ trợ bởi Oracle Hệ thống này tương thích với nhiều nền tảng, bao gồm Linux, UNIX và Windows, và thường được sử dụng kết hợp với các ứng dụng web.

SQL là ngôn ngữ phổ biến nhất để quản lý và truy cập dữ liệu trong cơ sở dữ liệu nhờ vào tốc độ xử lý nhanh, độ tin cậy cao và tính linh hoạt MySQL đóng vai trò quan trọng trong hầu hết các ứng dụng PHP mã nguồn mở, với các ví dụ tiêu biểu như WordPress, Joomla, Magento và Drupal.

MySQL đang trở nên phổ biến vì nhiều lý do tốt.

MySQL hoạt động dựa trên mô hình client-server, với máy chủ MySQL là cốt lõi, chịu trách nhiệm xử lý tất cả các lệnh cơ sở dữ liệu Máy chủ MySQL có thể được sử dụng như một chương trình độc lập trong môi trường mạng client-server hoặc như một thư viện nhúng vào các ứng dụng khác.

MySQL là một hệ quản trị cơ sở dữ liệu quan hệ nổi bật, sử dụng ngôn ngữ truy vấn có cấu trúc (SQL) Nó hỗ trợ nhiều ngôn ngữ lập trình như NodeJs, PHP, và Perl, đóng vai trò quan trọng trong việc lưu trữ dữ liệu cho các trang web được phát triển bằng những ngôn ngữ này.

Để đảm bảo an ninh, MySQL áp dụng hệ thống đặc quyền truy cập và mật khẩu mã hóa, cho phép xác minh từ xa Các máy khách MySQL có thể kết nối với Máy chủ MySQL qua nhiều giao thức, bao gồm TCP/IP trên mọi nền tảng Ngoài ra, MySQL còn hỗ trợ nhiều chương trình máy khách, tiện ích, chương trình dòng lệnh và công cụ quản trị như MySQL Workbench.

Mô hình hoạt động – MVC

Hình 2.1: Mô hình MVC hoạt động

MVC là viết tắt của Model, View và Controller, là một mô hình thiết kế quan trọng trong kỹ thuật phần mềm Mô hình này chia source code thành ba phần riêng biệt, mỗi phần tương ứng với một hoạt động cụ thể trong cấu trúc tổng thể của ứng dụng.

Model (M) là phần lưu trữ dữ liệu chính của ứng dụng, đóng vai trò cầu nối giữa View và Controller Nó có thể là một cơ sở dữ liệu hoặc một file XML đơn giản, thể hiện các thao tác như xem, truy xuất và xử lý dữ liệu.

 View (V): Đây là phần giao diện (theme) dành cho người sử dụng.

Người dùng có thể truy cập thông tin dữ liệu của MVC thông qua các thao tác tìm kiếm hoặc sử dụng trên các website Thông thường, các ứng dụng web tích hợp MVC View như một phần của hệ thống, nơi các thành phần HTML được tạo ra để hiển thị dữ liệu.

View có chức năng ghi nhận hoạt động của người dùng để tương tác với Controller, nhưng không có mối quan hệ trực tiếp với Controller View chỉ hiển thị yêu cầu chuyển đến Controller mà không lấy dữ liệu từ Controller.

Controller (C) là bộ phận chịu trách nhiệm xử lý các yêu cầu từ người dùng thông qua view, cung cấp dữ liệu phù hợp với nhu cầu của họ Ngoài ra, Controller còn đóng vai trò kết nối với model, đảm bảo sự tương tác hiệu quả giữa các thành phần trong ứng dụng.

Mô hình MVC bao gồm các bộ phận thực hiện chức năng riêng biệt nhưng liên kết chặt chẽ với nhau, tạo nên một cấu trúc nhẹ và hiệu quả Mô hình này cho phép tích hợp nhiều tính năng hiện có trong ASP.NET, chẳng hạn như quá trình xác thực (authentication).

Mô hình MVC đang ngày càng phổ biến trong lập trình nhờ vào tính nhẹ và khả năng tiết kiệm băng thông Bằng việc không sử dụng viewstate, MVC giúp giảm thiểu diện tích băng thông, cho phép người dùng tương tác và truyền nhận dữ liệu liên tục trên ứng dụng web Việc giảm băng thông này góp phần nâng cao hiệu suất và sự ổn định của website.

- Bên cạnh đó nhược điểm của mô hình này đối với các dự án có tính phức tạp cao thì mô hình MVC trở nên không khả dụng

Hệ thống MVC hiệu quả cho phép phát triển cả Frontend và Backend đồng thời mà không cần can thiệp hay chỉnh sửa các tập tin của nhau Mô hình MVC được áp dụng rộng rãi trong nhiều ngôn ngữ lập trình, với ASP.NET MVC và PHP MVC là hai ứng dụng phổ biến nhất.

Việc triển khai mô hình MVC rất đơn giản, chỉ cần nắm rõ quy trình vận hành và chức năng của từng bộ phận.

PHÂN TÍCH VÀ THIẾT KẾ ỨNG DỤNG

Mô tả đề tài

- Hệ thống được chia thành hai phần: Ứng cử viên, nhà tuyển dụng.

Ứng cử viên có thể đăng ký tài khoản để ứng tuyển vào các công việc phù hợp với mục tiêu nghề nghiệp của mình Họ có quyền thay đổi và cập nhật thông tin cá nhân như họ tên, ngày sinh, giới tính, địa chỉ và hình ảnh Để ứng tuyển, ứng viên cần đăng nhập vào hệ thống; nếu chưa có tài khoản, họ có thể dễ dàng đăng ký bằng cách cung cấp thông tin cá nhân cần thiết.

Nhà tuyển dụng có thể đăng bài tuyển dụng trên website, bao gồm yêu cầu chuyên môn, tiêu chuẩn ứng tuyển và kinh nghiệm tối thiểu cần có Để đăng bài, nhà tuyển dụng phải đăng nhập vào hệ thống; nếu chưa có tài khoản, cần phải đăng ký Ngoài ra, họ cũng có khả năng chỉnh sửa thông tin công ty của mình.

Hệ thống cho phép ứng viên dễ dàng đăng ký, tìm kiếm và ứng tuyển vào các công việc mong muốn, đồng thời điều chỉnh thông tin cá nhân Các nhà tuyển dụng có quyền đăng tin tuyển dụng và chỉnh sửa thông tin liên hệ của mình.

Các bài tuyển dụng trên website được sắp xếp theo thứ tự thời gian đăng của các nhà tuyển dụng Khi một bài tuyển dụng hết hạn nộp đơn, hệ thống sẽ thông báo và ngừng cho phép ứng tuyển vào vị trí đó.

- Sau khi ứng viên tìm thấy công việc phù hợp với bản thân, ứng viên sẽ ứng tuyển vào công việc thông qua CV của bản thân.

Phân tích bài toán

Để xây dựng một website chất lượng và hiệu quả, việc đầu tiên là xác định mục đích sử dụng, đối tượng người dùng và những gì họ quan tâm Mục tiêu chính là cung cấp cho người dùng nội dung mà họ muốn xem, thay vì nội dung mà chúng ta muốn họ xem Quá trình xây dựng website cần có kế hoạch rõ ràng và phải bám sát với mục đích và yêu cầu đã đề ra.

Nhà tuyển dụng có thể tạo ra các bài kiểm tra để lọc ra những ứng viên phù hợp cho công việc, giúp đảm bảo chất lượng ứng viên mà không cần phải phỏng vấn quá nhiều người, từ đó nâng cao hiệu quả tuyển dụng.

Khi tìm kiếm việc làm, ứng viên có thể đăng nhập và sử dụng bộ lọc để tìm các bài đăng tuyển phù hợp Sau khi tìm thấy công việc ưng ý, ứng viên có thể nộp đơn ứng tuyển và đính kèm CV, giúp nhà tuyển dụng hiểu rõ hơn về bản thân mình.

Sau khi ứng viên nộp hồ sơ thành công, nhà tuyển dụng sẽ xem xét CV để đánh giá tiềm năng của ứng viên Nếu ứng viên đáp ứng yêu cầu công việc, nhà tuyển dụng có thể mời họ tham gia bài kiểm tra năng lực Ngược lại, nếu ứng viên không đủ tiêu chuẩn, nhà tuyển dụng có quyền từ chối và không cho phép họ làm bài kiểm tra.

Nếu ứng viên đủ điều kiện, họ sẽ bắt đầu làm bài kiểm tra năng lực Trong quá trình làm bài, ứng viên phải tuân thủ quy chế bảo mật, không chụp màn hình hay xem mã nguồn trang Việc vi phạm quy định này sẽ dẫn đến việc hủy bài kiểm tra ngay lập tức.

Sau khi ứng cử viên hoàn thành bài kiểm tra, nhà tuyển dụng sẽ nhận được điểm số để đánh giá năng lực của họ Dựa vào số điểm này, nhà tuyển dụng có thể xác định được chất lượng của ứng viên và đưa ra quyết định tuyển dụng chính xác hơn.

Sơ đồ phân rã chức năng

Hình 3.1: Sơ đồ phân rã chức năng của ứng cử viên

3.5.2 Phân rã chức năng của ứng cử viên.

Hình 3.2: Sơ đồ phân rã chức năng của nhà tuyển dụng

Sơ đồ ERD

Class Diagram

Hình 3.4: Sơ đồ Class Diagram

Bảng 3 1: Cấu trúc bảng địa điểm :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã địa điểm Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Tên địa điểm Varchar 255 Tên địa điểm dùng để lọc danh sách công việc khi ứng cử viên tìm kiếm

Bảng 3 2: Cấu trúc bảng ngành nghề :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã ngành nghề Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Tên ngành nghề Varchar 255 Tên ngành nghề dùng để lọc danh sách công việc khi ứng cử viên tìm kiếm

Bảng 3 3 : Cấu trúc bảng học vấn :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã học vấn Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Tên học vấn Varchar 255 Tên học vấn dùng để nhà tuyển dụng có thể hiểu được mức độ của ứng viên khi ứng cử viên tìm kiếm

Bảng 3 4: Cấu trúc bảng thời hạn đăng bài :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã thời hạn Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Thời hạn Varchar 255 Thời hạn đăng bài để nhà tuyển dụng có thể dựa vào nhu cầu tuyển dụng cho ra các bài đăng tuyển dụng hợp lý

Số tiền Double Số tiền thể hiện chi phí mà nhà tuyển dụng sẽ phải thanh toán dựa trên thời hạn mua

Bảng 3 5: Cấu trúc bảng ứng cử viên :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã ứng viên Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Tên ứng viên Varchar 255 Thời hạn đăng bài để nhà tuyển dụng có thể dựa vào nhu cầu tuyển dụng cho ra các bài đăng tuyển dụng hợp lý

Email Double Số tiền thể hiện chi phí mà nhà tuyển dụng sẽ phải thanh toán dựa trên thời hạn mua

Số điện thoại Varchar 255 Số điện thoại của ứng viên Địa chỉ Text Địa chỉ của ứng viên

Hình ảnh Varchar 255 Hình ảnh đại diện của ứng viên

Ngày sinh Date Ngày sinh của ứng viên

Giới tính Tinyint 1 Giới tính

Tài khoản và mật khẩu của ứng viên được lưu trữ dưới dạng Varchar 255, trong đó mật khẩu sẽ được mã hóa bằng thuật toán MD5 để đảm bảo an toàn Ngoài ra, thông tin về file CV của ứng viên cũng được lưu trữ với định dạng Varchar 255.

Bảng 3 6: Cấu trúc bảng nhà tuyển dụng :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã nhà tuyển dụng Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Công ty Varchar 255 là tên của nhà tuyển dụng, nơi ứng viên có thể tìm hiểu thêm thông qua trang web Text Địa chỉ của nhà tuyển dụng cũng được cung cấp để ứng viên dễ dàng liên hệ và nắm bắt thông tin cần thiết.

Số điện thoại Varchar 255 Số điện thoại của nhà tuyển dụng để ứng viên liên

Số fax của nhà tuyển dụng được lưu trữ dưới dạng Varchar 255, cho phép liên lạc nhanh chóng Email của nhà tuyển dụng cũng được ghi nhận với định dạng Varchar 255, giúp ứng viên dễ dàng liên hệ và nhận thông tin cần thiết Hình ảnh logo của nhà tuyển dụng được lưu trữ với định dạng Varchar 255, tạo dấu ấn thương hiệu Tài khoản và mật khẩu của nhà tuyển dụng, cả hai đều ở dạng Varchar 255, được sử dụng để đăng nhập; mật khẩu sẽ được mã hóa bằng phương pháp MD5 để đảm bảo an toàn Cuối cùng, vị trí kinh độ của nhà tuyển dụng cũng được lưu trữ dưới dạng Varchar 255, giúp xác định vị trí chính xác.

Vĩ độ (Varchar 255) là vị trí vĩ độ của nhà tuyển dụng để xác định vị trí địa lý Hạn đăng bài (Date) là thời gian tối đa mà nhà tuyển dụng có thể đăng bài Token (Varchar 255) là mã token dùng để xác thực tài khoản của nhà tuyển dụng.

Bảng 3 7: Cấu trúc bảng mạng xã hội :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả Người dùng Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Mã ứng viên trong mạng xã hội (Varchar 255) được sử dụng để phân biệt các ứng viên, trong khi mạng xã hội (Varchar 255) thể hiện chi phí mà nhà tuyển dụng cần thanh toán dựa trên thời hạn mua.

Mã ứng viên Int 255 Số điện thoại của ứng viên

Bảng 3 8: Cấu trúc bảng bài đăng tuyển dụng :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã bài đăng Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Tiêu đề Varchar 255 Tiêu đề của bài đăng để ứng viên có thể tìm kiếm dễ dàng

Yêu cầu Text Yêu cầu dành cho người ứng tuyển

Mã địa điểm Int 255 Địa điểm làm việc cho người ứng tuyển

Mô tả công việc là phần quan trọng giúp ứng viên hiểu rõ những nhiệm vụ cần thực hiện Mức lương sẽ được đề cập rõ ràng để ứng viên biết được thu nhập dự kiến khi ứng tuyển Địa điểm làm việc cũng cần được xác định chính xác, bao gồm nơi phỏng vấn và làm việc Ngày đăng bài tuyển dụng sẽ cho biết thời điểm thông báo công việc, trong khi hạn ứng tuyển là thời gian cuối cùng mà ứng viên có thể nộp hồ sơ Cuối cùng, thông tin khác sẽ cung cấp những lưu ý cần thiết về chế độ đãi ngộ và quy định mà ứng viên cần nắm rõ.

Mã nhà tuyển dụng Int 255 Mã nhà tuyển dụng để xác định bài đăng của công ty nào

Mã ngành nghề Int 255 giúp xác định các ứng viên thuộc các lĩnh vực cụ thể, trong khi Tiều đề SEO Varchar 255 là tiêu đề được sử dụng khi chia sẻ trang web trên các mạng xã hội.

Mô tả SEO là phần nội dung quan trọng khi chia sẻ trang web trên các mạng xã hội, giúp thu hút sự chú ý của người dùng Hình ảnh SEO cũng đóng vai trò thiết yếu, với kích thước tối đa 255 ký tự, tạo ấn tượng mạnh mẽ khi trang web được chia sẻ.

Bảng 3 9: Cấu trúc bảng bài kiểm tra :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã bài kiểm tra Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Tên bài kiểm tra Varchar 255 Tên của bài kiểm tra Thời gian làm Int 255 Thời gian làm bài kiểm tra

Số câu Int 255 Số câu trong bài kiểm tra Điểm tối thiểu Double Điểm tối thiểu để có thể vượt qua bài kiểm tra

Mã nhà tuyển dụng Int 255 Mã nhà tuyển dụng để biết bài kiểm tra của nhà tuyển dụng nào

Bảng 3 10: Cấu trúc bảng câu hỏi :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã câu hỏi Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Mã bài kiểm tra Int 255 Mã bài kiểm tra để xác định câu hỏi trong bài kiểm tra nào

Tên câu hỏi Text Tên của câu hỏi

Lựa chọn a Varchar 255 Lựa chọn a

Lựa chọn b Varchar Lựa chọn b

Lựa chọn c Varchar 255 Lựa chọn c

Lựa chọn d Varchar 255 Lựa chọn d Đáp án Varchar 255 Đáp án của câu hỏi

Bảng 3 11: Cấu trúc bảng chi tiết ứng cử :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã ứng viên Int 255 Mã ứng viên ứng cử vào vị trí cộng việc

Mã bài đăng Int 255 là mã bài đăng mà ứng viên ứng cử vào Trạng thái Tinyint 1 thể hiện trạng thái đang ứng cử của ứng viên File CV Varchar 255 là file CV mà ứng viên nộp cho nhà tuyển dụng Kiểm tra Tinyint 1 cho biết trạng thái của ứng viên được phép làm bài kiểm tra.

Bảng 3 12: Cấu trúc bảng thông tin kiểm tra :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã bài đăng Int 255 Mã bài đăng để ứng viên làm kiểm tra

Mã bài kiểm tra Int 255 Mã bài kiểm tra của bài đăngTrạng thái Tinyint 1 Trạng thái bài kiểm tra còn hoạt động trong bài đăng

Bảng 3 13: Cấu trúc bảng chi tiết trả lời :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã ứng viên Int 255 Mã ứng viên đã trả lời câu hỏi

Mã câu hỏi Int 255 Mã câu hỏi khi ứng viên trả lời Câu trả lời Varchar 11 Câu trả lời của ứng viên

Bảng 3 14: Cấu trúc bảng chi tiết kiểm tra :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã ứng viên Int 255 Mã ứng viên làm bài kiểm tra.

Mã bài kiểm tra Int 255 Mã bài kiểm tra ứng viên đã làm

Số điểm Int 255 thể hiện số điểm mà ứng viên đã đạt được sau khi hoàn thành bài kiểm tra Ngày làm bài ghi rõ ngày mà ứng viên đã hoàn thành bài kiểm tra Trạng thái Tinyint 1 cho biết tình trạng hoàn thành bài kiểm tra của ứng viên.

Bảng 3 15: Cấu trúc bảng thông tin thanh toán :

Tên thuộc tính Kiểu dữ liệu Độ dài Mô tả

Mã thanh toán Int 255 Mã tự tăng, được dùng để làm khóa chính cho bảng.

Mã nhà tuyển dụng Int 255 Mã nhà tuyển dụng thanh toán

Mã thời hạn Int 255 cho biết thời gian thanh toán của nhà tuyển dụng Ngày thanh toán Date xác định thời điểm mà nhà tuyển dụng thực hiện thanh toán Hạn đăng bài Date là thời hạn mà nhà tuyển dụng có thể đăng bài sau khi thanh toán Trạng thái Tinyint 1 thể hiện tình trạng thanh toán của nhà tuyển dụng.

TRIỂN KHAI HỆ THỐNG

Xây dựng hệ thống

Đối với ứng viên, việc tìm kiếm công việc phù hợp trở nên dễ dàng hơn nhờ vào bộ lọc và tính năng tìm kiếm bằng giọng nói Sau khi tìm được công việc ưng ý, ứng viên có thể lưu lại hoặc nộp đơn ngay lập tức Để biết khoảng cách từ vị trí của mình đến công ty, ứng viên có thể chọn phương tiện di chuyển Để lưu lại thông tin hoặc nộp đơn, ứng viên cần đăng nhập vào hệ thống, có thể thông qua việc đăng ký tài khoản hoặc đăng nhập bằng Facebook Khi đăng ký, ứng viên phải xác nhận qua Google Captcha để đảm bảo không phải là Robot Nếu hồ sơ được chấp nhận, ứng viên sẽ thực hiện bài kiểm tra để nhà tuyển dụng đánh giá năng lực Lưu ý rằng ứng viên không được vi phạm nội quy trong quá trình làm bài, như chụp màn hình hay xem mã nguồn, vì điều này có thể dẫn đến việc bài kiểm tra bị hủy Ứng viên cũng có thể quản lý tài khoản của mình và cần kiểm tra lại thông tin cũng như CV mỗi khi ứng tuyển.

Nếu ứng viên muốn thay đổi CV để ứng tuyển vào một công việc cụ thể, họ có thể lựa chọn một mẫu CV khác mà không cần chỉnh sửa CV chính của mình Điều này cho phép ứng viên linh hoạt trong việc ứng tuyển nhiều vị trí khác nhau với các CV phù hợp, giúp tăng cơ hội tìm việc mà vẫn giữ lại hồ sơ cá nhân nguyên vẹn.

Nhà tuyển dụng có thể đăng ký tài khoản và đăng bài tuyển dụng, nhưng cần gia hạn thời gian đăng bài để tiếp tục Họ sẽ thanh toán qua PayPal để mua quyền đăng bài tuyển dụng, giúp các ứng cử viên dễ dàng tìm thấy thông tin Mỗi bài đăng cũng cho phép nhà tuyển dụng thêm bài kiểm tra để đánh giá ứng viên.

Nhà tuyển dụng có thể thêm câu hỏi vào bài kiểm tra bằng cách nhập file Excel Mỗi bài đăng tuyển dụng sẽ nhận hồ sơ của các ứng viên, cho phép nhà tuyển dụng tìm kiếm người phù hợp Nếu ứng viên đáp ứng yêu cầu, nhà tuyển dụng sẽ xác nhận để họ thực hiện bài kiểm tra Sau khi hoàn thành, nhà tuyển dụng có thể xem điểm và đánh giá ứng viên Câu trả lời trong bài kiểm tra sẽ được xem xét để xác định sự phù hợp với công việc Nếu ứng viên không đạt điểm tối thiểu, nhà tuyển dụng vẫn có thể xem xét các câu trả lời đúng và gửi email mời phỏng vấn nếu ứng viên phù hợp với tiêu chí.

Nhà tuyển dụng có thể sử dụng API của Google Maps để cập nhật vị trí công ty, giúp ứng viên dễ dàng xem quãng đường từ nơi ở của họ đến công ty Trong trường hợp quên mật khẩu, nhà tuyển dụng có thể khôi phục qua email đã đăng ký Hệ thống sẽ gửi một liên kết xác nhận kèm theo token, cho phép nhà tuyển dụng truy cập và thay đổi mật khẩu một cách nhanh chóng.

Nhà tuyển dụng có khả năng xuất danh sách bài đăng tuyển dụng, bài kiểm tra, lịch sử thanh toán và danh sách ứng viên dưới các định dạng file như Excel, CSV, và PDF Để đảm bảo tính công bằng cho ứng viên trong các bài kiểm tra trực tuyến, nhà tuyển dụng sẽ xáo trộn các câu hỏi và lựa chọn ngẫu nhiên, không có sự sắp xếp nào.

Giao diện của hệ thống của ứng viên

Hình 4.1: Giao diện trang chủ của ứng viên

Khi ứng cử viên truy cập vào hệ thống, giao diện sẽ hiển thị ngay lập tức, cho phép họ sử dụng bộ lọc để tìm kiếm các công việc phù hợp với khả năng và sở thích của mình.

 Công việc muốn tìm: Ứng viên nhập tiêu đề có liên quan đến công việc muốn tìm.

 Ngành nghề: Chọn ngành nghề bạn muốn tìm kiếm.

 Vị trí: Chọn vị trí thuận tiện cho việc đi làm của bản than.

Khi ứng viên hoàn tất việc điền thông tin vào bộ lọc, họ chỉ cần nhấn nút tìm kiếm để hệ thống tìm kiếm các công việc phù hợp với tiêu chí đã chọn.

4.2.2 Giao diện danh sách việc làm của ứng viên.

Sau khi áp dụng bộ lọc để xác định các công việc phù hợp, hệ thống sẽ cung cấp danh sách các vị trí công việc thích hợp cho ứng viên.

Hình 4.2: Giao diện danh sách công việc

Ứng viên có thể dễ dàng tìm thấy danh sách các bài tuyển dụng phù hợp với tiêu chí của mình Nếu quan tâm đến một công việc cụ thể, hãy nhấn vào nút để xem chi tiết về vị trí đó.

Nếu ứng viên muốn thay đổi công việc, họ có thể sử dụng bộ lọc ở bên phải Sau khi điều chỉnh các tiêu chí lọc, hãy nhấn nút tìm kiếm Hệ thống sẽ hiển thị danh sách công việc mới dựa trên bộ lọc mà ứng viên đã cập nhật.

4.2.3 Giao diện chi tiết yêu cầu của công việc.

- Khi truy cập vào một công việc thì hệ thống sẽ trả về giao diện chi tiết công việc

Hình 4.3: Giao diện chi tiết yêu cầu công việc

Tại giao diện này, ứng viên có thể dễ dàng nộp đơn ứng tuyển cho công việc hoặc lưu lại thông tin công việc để xem xét và quyết định sau.

Ứng viên có thể sử dụng API Google Maps để nhận chỉ dẫn từ vị trí hiện tại đến công ty, giúp họ tính toán thời gian di chuyển một cách chính xác.

- Ứng viên muốn ứng tuyển công việc hoặc lưu lại công việc thì phải đăng nhập hoặc đăng ký tài khoản để có thể xác thực danh tính.

4.2.4 Giao diện đăng ký tài khoản ứng viên.

- Sau khi ứng viên nhấn đăng ký thì hệ thống sẽ dẫn người dùng đến trang đăng ký tài khoản

Hình 4.4: Giao diện tài khoản của ứng viên

- Tại đây ứng cử viên sẽ điền các thông tin bắt buộc của bản thân như: Tên, email, tên đăng nhập và mật khẩu.

Ứng cử viên cần xác nhận qua recaptcha để đảm bảo không phải là robot, giúp ngăn chặn tin tặc gửi quá nhiều yêu cầu Hành động này bảo vệ hệ thống khỏi tình trạng chậm, lỗi hoặc thậm chí là sập máy chủ, tránh các hậu quả nghiêm trọng không mong muốn.

Sau khi xác nhận thông tin, ứng viên nhấn nút tạo tài khoản Nếu tên đăng nhập đã được sử dụng, ứng viên cần chọn tên đăng nhập khác để hoàn tất quá trình đăng nhập.

4.2.5 Giao diện nhập của ứng viên.

Nếu người dùng nhấn vào các tùy chọn như đăng nhập, ứng tuyển công việc hoặc lưu công việc mà chưa đăng nhập vào tài khoản, hệ thống sẽ tự động chuyển hướng họ đến trang đăng nhập.

Hình 4.5: Giao diện đăng nhập của ứng viên

Ứng viên cần nhập tài khoản cá nhân và mật khẩu để đăng nhập Trong trường hợp nhập sai, hệ thống sẽ yêu cầu xác thực lại danh tính.

- Hoặc ứng cử viên có thể đăng nhập bằng Facebook của bản thân để dễ dàng hơn cho ứng viên.

- Nếu ứng viên chưa có tài khoản thì có thể nhấn đăng ký ngay và hệ thống sẽ đưa bạn đến trang đăng ký.

4.2.6 Giao diện thông tin cá nhân của ứng viên.

- Khi ứng viên nhấn và phần thông tin cá nhân, hệ thống sẽ điều hướng đến trang thông tin cá nhân

Hình 4.6: Giao diện thông tin của ứng viên

Ứng viên có thể truy cập thông tin cá nhân cơ bản như tên, email và số điện thoại Ngoài ra, họ còn có thể xem số lượng công việc đã ứng tuyển và số lượng công việc đã lưu.

Ứng viên có thể dễ dàng truy cập thông tin cần thiết bằng cách nhấn vào các chức năng tương ứng Để cập nhật thông tin, ứng viên chỉ cần chọn tùy chọn cập nhật thông tin.

- Muốn xem danh sách công việc đã ứng tuyển hoặc công việc đã lưu thì sẽ nhấn vào nút xem ngay tương ứng với danh sách công việc

4.2.7 Giao diện danh sách các công việc đã ứng tuyển.

Ứng viên có thể dễ dàng xem danh sách các công việc đã ứng tuyển bằng cách nhấn vào mục "Xem ngay" trên giao diện thông tin cá nhân Sau khi thực hiện, họ sẽ được chuyển hướng đến trang thông tin chi tiết về các đơn ứng tuyển của mình.

Hình 4.7: Giao diện danh sách các công việc đã ứng tuyển

- Tại đây ứng viên có thể xem được danh sách các công việc đã ứng tuyển và các trạng thái của từng công việc.

-Nếu như nhà tuyển dụng cho phép ứng viên thì ứng viên sẽ có thể làm bài kiểm tra

- Khi nhà tuyển dụng không chấp nhận ứng viên thì hệ thống sẽ không cho phép ứng viên làm bài kiểm tra

- Nhà tuyển dụng chưa nhận hoặc hủy ứng viên thì ứng viên sẽ phải chờ đến

4.2.8 Giao diện danh sách các công việc đã lưu.

Ứng viên có thể xem danh sách công việc đã lưu bằng cách nhấn vào tùy chọn "Xem ngay" trên giao diện thông tin cá nhân Sau đó, họ sẽ được chuyển hướng đến trang danh sách công việc đã lưu.

Hình 4 8 Giao diện danh sách công việc đã lưu

- Tại giao diện này, ứng viên có thể xem được danh sách các công việc đã lưu.

Nếu như các công việc đã hết hạn thì hứng viên sẽ không ứng tuyển được.

- Ứng viên có thể ứng tuyển ngay vào công việc tại nút ứng tuyển trên từng công việc

- Nếu ứng viên cảm thấy công việc không phù hợp thì ứng viên cũng có thể xóa các công việc đã lưu

4.2.9 Giao diện danh sách các bài kiểm tra.

Giao diện hệ thống của nhà tuyển dụng

- Nhà tuyển dụng muốn đăng bài đăng tuyển dụng, trước tiên phải đăng nhập để xác thực trước

Hình 4.12: Giao diện đăng nhâp của nhà tuyển dụng

- Tại đây nhà tuyển dụng sẽ đăng nhập bằng tài khoản và mật khẩu của công ty để xác thực vào hệ thống

- Nếu nhà tuyển dụng chưa có tài khoản thì có thể đăng ký tài khoản

Nếu nhà tuyển dụng đã có tài khoản nhưng quên mật khẩu, họ có thể nhấn vào tùy chọn "quên mật khẩu" để khôi phục lại mật khẩu của mình một cách dễ dàng.

4.3.2 Giao diện quên mật khẩu.

Khi nhà tuyển dụng quên mật khẩu tài khoản của mình, họ chỉ cần nhấn vào liên kết "quên mật khẩu" Sau đó, hệ thống sẽ chuyển hướng họ đến trang khôi phục mật khẩu để thực hiện các bước cần thiết.

Hình 4.13: Giao diện quên mật khẩu nhà tuyển dụng

Nhà tuyển dụng cần nhập email công ty khi đăng ký Hệ thống sẽ kiểm tra tính chính xác của email, và nếu đúng, sẽ gửi email xác nhận đến nhà tuyển dụng.

Nếu nhà tuyển dụng nhập thông tin sai, hệ thống sẽ gửi thông báo để nhắc nhở họ Sau đó, nhà tuyển dụng cần xác nhận lại thông tin để nhận email xác nhận tài khoản.

4.3.3 Giao diện đăng ký tài khoản.

- Khi nhà tuyển dụng chưa có tài khoản, nhà tuyển dụng sẽ nhấn vào đăng ký trên giao diện đăng nhập

Hình 4 14: Giao diên đăng ký của nhà tuyển dụng

- Tại đây nhà tuyển dụng có thể đăng ký tài khoản của doanh nghiệp.

Nhà tuyển dụng cần cung cấp đầy đủ thông tin cá nhân cơ bản để hoàn tất quá trình đăng ký và có thể đăng nhập vào hệ thống.

- Nếu như tài khoản của nhà tuyển dụng đã trùng với tài khoản cũ thì hệ thống sẽ thông báo đã tồn tại tài khoản

- Khi đăng ký tài khoản thành công, hệ thống sẽ thông báo đăng ký thành công và đưa nhà tuyển dụng về trang đăng nhập

- Nhà tuyển dụng sau khi đăng nhập thành công, hệ thống sẽ chuyển hướng đến trang chủ dành cho nhà tuyển dụng

Hình 4.15: Giao diện trang chủ của nhà tuyển dụng

- Tại trang chủ nhà tuyển dụng, sẽ hiện ra vị trí của nhà tuyển dụng và các danh mục để nhà tuyển dụng có thể quản lý

Trong bài viết này, chúng tôi giới thiệu các danh mục quan trọng trong hệ thống tuyển dụng Đầu tiên, danh mục "Bài đăng tuyển dụng" cho phép nhà tuyển dụng thêm và xem các thông tin tuyển dụng của công ty Tiếp theo, danh mục "Bài kiểm tra" cung cấp chức năng cho nhà tuyển dụng để thêm và xem các bài kiểm tra nhằm đánh giá trình độ của ứng viên Danh mục "Dịch vụ" giúp người dùng theo dõi lịch sử thanh toán và gia hạn quyền đăng bài trên trang chủ Cuối cùng, danh mục "Thay đổi vị trí" sử dụng API Google Map để hỗ trợ nhà tuyển dụng trong việc cập nhật vị trí công ty.

4.3.5 Giao diện thêm bài đăng tuyển dụng.

Khi nhà tuyển dụng lựa chọn danh mục cho bài đăng tuyển dụng, hệ thống sẽ hiển thị danh sách các bài đăng con và tùy chọn để thêm bài đăng mới Khi nhà tuyển dụng chọn thêm bài đăng, hệ thống sẽ cung cấp giao diện để thực hiện thao tác này.

Hình 4.16: Giao diện thêm bài đăng tuyển dụng của nhà tuyển dụng

- Tại đây nhà tuyển dụng sẽ điền thông tin phù hợp cho công việc mà nhà tuyển dụng muốn tìm ứng viên

Các mục về SEO rất quan trọng trong việc chia sẻ bài đăng tuyển dụng lên mạng xã hội Chúng giúp nhà tuyển dụng tóm tắt nội dung chính, thu hút sự chú ý của ứng viên Nếu không có các mục này, hệ thống sẽ tự động chọn các đoạn văn ngẫu nhiên, có thể dẫn đến việc giảm số lượng ứng viên quan tâm đến vị trí tuyển dụng.

4.3.6 Giao diện danh sách bài đăng tuyển dụng.

Nhà tuyển dụng có thể quản lý hiệu quả các bài đăng tuyển dụng của công ty bằng cách truy cập vào mục danh sách bài đăng.

Hình 4.17: Giao diện danh sách bài đăng tuyển dụng của nhà tuyển dụng

- Tại đây nhà tuyển dụng có thể xem các bài đăng đã đăng tuyển.

- Ở mỗi bài đăng tuyển dụng, nhà tuyển dụng có thể xem danh sách ứng tuyển của các ứng viên và có thể sửa thông tin của bài đăng đó

- Nhà tuyển dụng cũng có thể xuất các file CSV, Excel, PDF theo danh sách trong bảng

4.3.7 Giao diện sửa bài đăng tuyển dụng.

Sau khi nhà tuyển dụng chọn sửa bài đăng tuyển dụng, hệ thống sẽ chuyển hướng họ đến bài đăng cụ thể để thực hiện các chỉnh sửa cần thiết cho thông tin tuyển dụng.

Hình 4.18: Giao diện sửa bài đăng tuyển dụng của nhà tuyển dụng

- Nhà tuyển dụng có thể thay đổi các thông tin của bài đăng cho phù hợp với các thay đổi của công ty

Sau khi nhà tuyển dụng cập nhật thông tin, họ sẽ nhấn vào nút xác nhận để hệ thống tiến hành cập nhật các thông tin đã thay đổi.

4.3.8 Giao diện danh sách ứng viên ứng tuyển của bài đăng tuyển dụng.

Nhà tuyển dụng có thể dễ dàng xem danh sách các ứng viên đã nộp đơn cho vị trí công việc bằng cách chọn bài đăng tương ứng Hệ thống sẽ nhanh chóng cung cấp thông tin về các ứng viên đã ứng tuyển.

Hình 4.19: Giao diện danh sách các ứng viên ứng tuyển của nhà tuyển dụng

- Tại đây nhà tuyển dụng có thể xem được danh sách các ứng viên đã ứng tuyển vào công việc

Nhà tuyển dụng xem xét CV của ứng viên để đánh giá sự phù hợp với vị trí công việc Nếu ứng viên không đáp ứng yêu cầu, họ sẽ bị từ chối Ngược lại, những ứng viên phù hợp sẽ được chấp nhận vào vòng tiếp theo.

- Nhà tuyển dụng cũng có thể xuất các file CSV, Excel, PDF theo danh sách trong bảng

4.3.9 Giao diện thêm bài kiểm tra.

Nhà tuyển dụng có nhu cầu bổ sung bài kiểm tra nhằm đánh giá trình độ của ứng viên trước khi tiến hành phỏng vấn Để thực hiện điều này, nhà tuyển dụng chỉ cần chọn mục bài kiểm tra và thêm bài kiểm tra tương ứng.

Hình 4.20: Giao diện thêm bài kiểm tra của nhà tuyển dụng

- Sau khi nhấn vào thêm bài kiểm tra, hệ thống sẽ điều hướng nhà tuyển dụng đến trang sau

- Tại đây nhà tuyển sẽ thêm các thông tin của bài kiểm tra để có thể cho các ứng viên có thể căn chỉnh khả năng

- Các thông tin về bài kiểm tra sẽ được nhà tuyển dụng cân nhắc để ứng viên có thể hoàn thành

- Nhà tuyển dụng sẽ phải điền đủ các thông tin của bài kiểm tra, nếu không sẽ không thể hoàn thành

4.3.10 Giao diện danh sách bài kiểm tra.

Khi nhà tuyển dụng cần xem danh sách bài kiểm tra, họ chỉ cần chọn mục danh sách bài kiểm tra trong phần bài kiểm tra Ngay lập tức, hệ thống sẽ chuyển hướng nhà tuyển dụng đến trang hiển thị danh sách bài kiểm tra một cách dễ dàng và nhanh chóng.

Hình 4.21: Giao diện danh sách bài kiểm tra của nhà tuyển dụng

- Tại đây nhà tuyển dụng có thể xem được các bài kiểm tra của nhà tuyển dụng đó

- Mỗi bài kiểm tra nhà tuyển dụng có thể chỉnh sửa thông tin hoặc xem danh sách các câu hỏi tương ứng với mỗi bài kiểm tra

- Nhà tuyển dụng cũng có thể xuất các file CSV, Excel, PDF theo danh sách trong bảng

4.3.11 Giao diện sửa bài kiểm tra.

KẾT QUẢ VÀ KIẾN NGHỊ

Kết quả đạt được

Trong thời gian được giao, em đã thiết kế một hệ thống trang web chuyên tìm kiếm việc làm, giúp ứng viên dễ dàng tìm kiếm cơ hội nghề nghiệp phù hợp Hệ thống này không chỉ đáp ứng nhu cầu của người tìm việc mà còn tối ưu hóa trải nghiệm người dùng trong quá trình tìm kiếm.

Bên cạnh đó là một số kết quả đạt được của bản thân

 Tìm hiểu và áp dụng được các API của Google, Facebook, Paypal

 Học hỏi thêm được về việc xử lý backend cũng như về JS.

 Nâng cao kỹ năng viết báo cáo, xây dựng chương trình, phát triển phần mềm.

 Hiểu thêm được quy trình tuyển dụng của các nhà tuyển dụng, từ đó đưa ra hướng giải pháp cho phần lớn các nhà tuyển dụng khác

 Áp dụng được các thẻ meta của website trong SEO

- Trang web hỗ trợ sinh viên tìm kiếm việc làm đã được hoàn thành, đáp ứng những kết quả như mong đợi:

 Ứng cử viên có thể đăng ký, đăng nhập bằng Facebok

 Ứng cử viên có thể thay đổi thông tin cá nhân.

 Tìm kiếm các công việc thông qua bộ lọc của hệ thống.

 Ứng tuyển và lưu lại công việc đơn giản

 Có thể xem được đoạn đường từ vị trí bản thân đến công ty

 Khi nhà tuyển dụng xác nhận thì ứng viên có thể làm bài kiểm tra

 Nhà tuyển dụng có thể quản lý được danh sách công việc, bài kiểm tra

 Xác nhận ứng viên thông qua CV để ứng viên có thể làm bài kiểm tra

 Quản lý được câu trả lời của từng ứng viên trong từng bài kiểm tra

 Xác nhận địa điểm của công ty bằng Google map

 Gia hạn thời gian đăng bài tuyển dụng

 Trang web chạy ổn định trên hệ điều hành Windows 10 và các trình duyệt lớn (Cốc Cốc, Google Chrome, …)

 Đã hoàn thành việc đưa trang web lên host để mọi người có thể sử dụng với đường dẫn: https://utc2work.webstudents.xyz/

Tinh thần học hỏi và nỗ lực không ngừng của bản thân đã giúp tôi đạt được kết quả như hiện tại.

Kiến nghị

Để nâng cao trải nghiệm người dùng, cần phát triển thêm nhiều chức năng như gợi ý công việc phù hợp cho ứng viên và giới thiệu các công ty có đánh giá tốt.

- Mở rộng thêm về loại hình thanh toán trực tuyến cho các nhà tuyển dụng.

- Thiết kế thêm về giao diện để trông bắt mắt hơn.

- Mới chỉ hỗ trợ ứng viên làm bài kiểm tra trắc nghiệm và quy chế làm bài còn nhiều lỗ hổng có thể vượt qua

- Phát triển thêm về việc xử lý bất đồng bộ để tối ưu thời gian, giảm tải khối lượng công việc phải làm.

- Nghiên cứu thêm về công nghệ phía người dùng để giảm tải khối lượng công việc cần thực hiện phía máy chủ

- Tăng cường về hệ thống bảo mật để chống các cuộc xâm nhập lấy dữ liệu từ các tin tặc

- Hỗ trợ tạo CV cho sinh viên để có thể tiện dụng hơn khi ứng tuyển với nhà tuyển dụng

Ngày đăng: 17/12/2023, 17:25

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

TÀI LIỆU LIÊN QUAN

w