Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 118 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
118
Dung lượng
6 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU ĐỒ ÁN TỐT NGHIỆP lu an va n Website quản lý nhân cho doanh nghiệp – HRM-BlueBerry p ie gh tn to Ngành: Công Nghệ Thông Tin oa nl w Trình độ đào tạo: Đại Học d Chuyên ngành: Lập Trình Ứng Dụng Di Động, Game ll u nf va an lu m oi Giảng viên hướng dẫn: TS Phan Ngọc Hoàng z at nh Sinh viên thực hiện: Mai Đức Hiền z MSSV: 17031227 @ m co l gm Lớp: DH17LT an Lu n va ac th BÀ RỊA - VŨNG TÀU, NĂM 2021 si BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU ĐỒ ÁN TỐT NGHIỆP lu an va n Website quản lý nhân cho doanh nghiệp – HRM-BlueBerry p ie gh tn to Ngành: Công Nghệ Thơng Tin d oa nl w Trình độ đào tạo: Đại Học ll u nf va an lu Chuyên ngành: Lập Trình Ứng Dụng Di Động, Game oi m Giảng viên hướng dẫn: TS Phan Ngọc Hoàng z at nh Sinh viên thực hiện: Mai Đức Hiền z MSSV: 17031227 @ m co l gm Lớp: DH17LT an Lu n va BÀ RỊA - VŨNG TÀU, NĂM 2021 ac th si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT TRƯỜNG ĐẠI HỌC BÀ RỊA - VŨNG TÀU CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA CNKT-NNCNC Độc Lập - Tự Do - Hạnh Phúc ĐĂNG KÍ ĐỀ TÀI KHĨA LUẬN TỐT NGHIỆP TÊN ĐỀ TÀI: Website quản lý nhân cho doanh nghiệp – HRM-BlueBerry Giảng viên hướng dẫn: TS Phan Ngọc Hoàng Thời gian thực hiện: Từ ngày 26/10/2020 đến ngày 26/12/2020 Sinh viên thực hiện: Mai Đức Hiền MSSV: 17031227 lu an Ngành: Công nghệ thông tin Lớp: DH17LT Email: hienmd@student.bvu.edu.vn Điện thoại: 0961896504 n va Nội dung đề tài:(Mô tả chi tiết mục tiêu, phạm vi, đối tượng, phương pháp thực hiện, kết mong đợi đề tài) tn to Mục tiêu: Phân tích, thiết kế, xây dựng hệ thống quản lý nhân doanh nghiệp gh ie Kết mong đợi: Bản thiết kế giao diện chức người dùng - Bản thiết kế sở liệu - Website quản lý nhân doanh nghiệp bao gồm chức năng: p - d oa nl w an lu • Quản lý phịng ban va • Quản lý thơng tin nhân viên u nf • Quản lý thông tin liên hệ nhân viên ll • Quản lý tài khoản người dùng website m oi • Xuất báo cáo cần thiết từ website z at nh z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT Kế hoạch thực hiện:(Mơ tả tóm tắt cơng việc kế hoạch thực hiện) Thời gian Tuần Nội dung công việc (Từ ngày đến ngày) 26/10/2020 – 31/10/2020 Thiết kế sở liệu 02/11/2020 – 07/11/2020 Thiết kế giao diện 09/11/2020 – 14/11/2020 Lập trình chức quản lý nhân viên 16/11/2020 – 21/11/2020 Lập trình chức quản lý tài khoản 23/11/2020 – 28/11/2020 Lập trình chức quản lý phịng ban 30/11/2020 – 05/12/2020 Lập trình chức quản lý thông tin liên hệ nhân viên 07/12/2020 – 12/12/2020 Lập trình chức xuất báo cáo từ website 14/12/2020 – 19/12/2020 Chạy thử nghiệm hoàn thành lu an n va p ie gh tn to nl w 21/12/2020 – 26/12/2020 Viết báo cáo đồ án d oa va an lu Xác nhận GVHD Vũng Tàu, ngày 02 tháng 11 năm 2020 u nf (Ký tên ghi rõ họ tên) ll Sinh viên oi m (Ký tên ghi rõ họ tên) z at nh Mai Đức Hiền z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT Lời Cam Đoan Tôi xin cam đoan đề tài: “Website quản lý nhân cho doanh nghiệp – HRM-BlueBerry” ứng dụng website hỗ trợ chuyên môn giảng viên hướng dẫn: TS Phan Ngọc Hồng Ngồi có vài tham khảo ý kiến từ cựu sinh viên, website quản lý nhân tuyệt đối khơng có chép người khác Đề tài, nội dung đồ án sản phẩm mà tơi nỗ lực thực q trình học tập trường tham gia thực tập công ty cổ phần xuất nhập kỹ nghệ Á Đơng Patech Các số liệu, kết trình bày báo cáo hồn tồn trung thực lu an Tơi xin chịu hoàn toàn trách nhiệm lời cam đoan n va Vũng Tàu, ngày 29 tháng 12 năm 2020 tn to Sinh viên thực p ie gh Mai Đức Hiền d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT Lời Cảm Ơn Em xin gửi lời cảm ơn đến tất quý Thầy Cô Trường Đại Học Bà Rịa Vũng Tàu đồng hành, dẫn dắt, truyền đạt kiến thức quý giá hành trang cho đường tương lai em sau Đặc biệt, em xin gửi lời cảm ơn đến quý Thầy Cô khoa Công Nghệ Kỹ Thuật, Nông Nghiệp – Công Nghệ Cao, trực tiếp giảng dạy, truyền đạt kiến thức chuyên ngành với thương yêu, tận tình, giúp đỡ khoảng thời gian học tập Trường Đại Học Bà Rịa Vũng Tàu Với lòng biết ơn chân thành, sâu sắc em xin gửi lời cảm ơn Thầy TS Phan lu Ngọc Hồng người giành thời gian đồng hành, tận tình, hướng dẫn, giúp đỡ an n va em suốt q trình thực tập để em hồn thành đề tài thực tập tn to Em xin chúc q Thầy Cơ có thật nhiều sức khỏe, có thêm nhiều kiến thức ie gh để luôn vị thuyền trưởng dẫn dắt chúng em đường p đến tương lai với kiến thức quý báu quý Thầy Cô sống nl w công việc, nghiệp d oa Với thời gian thực tập, tiếp xúc thực tế không cho phép kinh nghiệm an lu non nớt báo cáo thiếu sót Em mong q Thầy Cơ góp ý va bảo thêm Thầy Cô để em tiếp thu thêm kiến thức, để sau tiếp tục ll u nf phát triển thân công việc oi m Em xin chân thành cảm ơn ! z at nh z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hồng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN lu an n va to gh tn ie p nl w d oa an lu u nf va ll oi m z at nh Vũng Tàu, ngày….tháng… năm 20 z Người hướng dẫn l gm @ m co Phan Ngọc Hoàng an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT MỤC LỤC lu an n va Chương I: Tổng Quan Đề Tài 14 1.1 Lý chọn để tài 14 1.2 Mục tiêu, chức hệ thống 14 1.3 Mơ tả tốn 15 Chương II: Lý Thuyết Nền Tảng 16 2.1 Giới thiệu ASP.NET core 16 2.1.1 ASP.NET core ? 16 2.1.2 Ưu điểm ASP.NET core 16 2.2 Giới thiệu mô hình MVC 17 2.2.1 Mơ hình MVC ? 17 2.2.2 Ưu nhược điểm mơ hình MVC 19 2.3 Giới thiệu Entity Framework 20 2.4 Giới thiệu Javascript 22 2.5 Ứng dụng JavaScript 23 2.6 Giới thiệu AJAX 23 2.7 Giới thiệu SQL Server 24 2.7.1 Lịch sử đời 25 2.7.2 Một vài ấn SQL Server 25 2.7.3 Các thành phần SQL Server 26 Chương 3: Phân Tích Thiết Kế Hệ Thống 29 3.1 Mơ hình ER 29 3.2 Xây dựng chức website 30 3.2.1 Quản lý phòng ban 30 3.2.2 Quản lý nhân viên 31 3.2.3 Quản lý Công việc 31 3.2.4 Quản lý hiệu suất 31 3.2.5 Quản lý tài khoản 32 3.3 Xác định Use Case 32 3.3.1 Use case Admin 33 3.3.2 Sơ đồ use case 33 3.4 Các lớp hệ thống 36 3.5 Sơ đồ sở liệu 37 3.6 Bảng sở liệu 37 3.6.1 Bảng phòng ban: 37 3.6.2 Bảng chức vụ: 37 3.6.3 Bảng hợp đồng: 38 3.6.4 Bảng trình độ học vấn: 38 3.6.5 Bảng nhân viên: 38 3.6.6 Bảng lương nhân viên: 39 3.6.7 Bảng quản lý công việc 39 3.6.8 Bảng tài khoản: 40 p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hồng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT 3.6.9 Bảng phân quyền: 40 Chương 4: Website quản lý nhân cho doanh nghiệp – HRM-BlueBerry 41 4.1 Đăng nhập website 41 4.2 Quản lý phòng ban 44 4.3 Quản lý nhân viên 51 4.4 Quản lý công việc 55 4.5 Quản lý hiệu suất công việc 61 4.6 Trang liên hệ 62 Chương 5: Kết Luận 63 5.1 Kết đạt 63 5.2 Hướng phát triển 63 Tài Liệu Tham Khảo 64 Phụ Lục 65 lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT Danh Mục Các Từ Viết Tắt Từ viết tắt Từ đầy đủ ASP Active Server Pages SQL Structured Query Language Cơ sở liệu HRM Human Resource Management MVC Model-View-Controller NET Dot net API Application Programming Interface DI Dependency Injection UI User Interface lu CSDL an n va HTML Hypertext Markup Language Internet Information Services gh Extensible Markup Language tn to IIS Separation of Concern oa nl Object Relational Mapping d ORM w Soc Cascading Style Sheets CSS p ie XML lu Entity Framework EDM Entity Data Model u nf Relational Database Management System ll ActiveX Data Objects Entity Relationship DB Database z at nh ER oi m ADO va RDBMS an EF z @ ODBC Open Database Connectivity gm Object Linking and Embedding Database TCP/IP Transmission Control Protocol/ Internet Protocol m co l OLE DB an Lu SVTH: Mai Đức Hiền ac th n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT $('#locnhanvien').append(new Option(data[i].namE_EMP, data[i].codE_EMP)); } }); function dtFormat(dt) { lu if (!dt) { an return ''; va n } gh tn to dt = new Date(dt); var dd = String(dt.getDate()).padStart(2, '0'); ie p var mm = String(dt.getMonth() + 1).padStart(2, '0'); d oa nl w var yyyy = dt.getFullYear(); ll u nf va an lu return dd + '/' + mm + '/' + yyyy; z at nh var selected = null; oi m } z @ $('#btnNew').click(function () { m co l gm selected = null; $('#modalWO').modal('show'); an Lu }); SVTH: Mai Đức Hiền ac th 102 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT $('#btnUpdateWO').click(function () { if (!selected) { let wo = { assignTo: { codE_EMP: $('#assignTo').val(), phonE_EMP: '00000000000', namE_EMP: $('#assignTo').val() lu }, an va n completedDate: null, to ie gh tn createdBy: window.sessionStorage.getItem('code'), p //window.sessionStorage.getItem('currentUser') nl w d oa createdDate: new Date(), an lu deadline: $('#deadline').val(), u nf va description: $('#description').val(), priority: parseInt($('#priority').val()), ll z at nh updatedDate: null oi updatedBy: null, m status: "RELEASE", z l gm @ }; $.ajax({ m co url: '/api/WO/AddNew', an Lu type: 'POST', SVTH: Mai Đức Hiền ac th 103 n va GVHD: TS Phan Ngọc Hồng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT data: JSON.stringify(wo), contentType: 'application/json', success: function (result) { // Do something with the result alert(result.description); if (result.code === 'I001') { window.location.reload(); } } lu }); an va n } gh tn to else { //update let wo = selected; ie p wo.description = $('#description').val(); nl w wo.priority = parseInt( $('#priority').val()); d oa wo.deadline = $('#deadline').val(); u nf va wo.assignTo = { an lu wo.updatedBy = window.sessionStorage.getItem('code'); codE_EMP: $('#assignTo').val(), ll oi m phonE_EMP: '00000000000', z at nh namE_EMP: $('#assignTo').val() z l gm @ }; $.ajax({ m co url: '/api/WO/Update', an Lu type: 'PUT', SVTH: Mai Đức Hiền ac th 104 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT data: JSON.stringify(wo), contentType: 'application/json', success: function (result) { // Do something with the result alert(result.description); if (result.code === 'I002') { window.location.reload(); } } lu }); an } n va to ie gh tn }); p var table = $('table').DataTable(); nl w language: { d oa url: '/theme/plugins/datatables/lang/Vietnamese.json' // Loc theo nv ll u nf va an lu } oi m $('#locnhanvien').change(function () { z at nh let keyword = $('#locnhanvien option:selected').val(); z @ keyword = (keyword.length > 0) ? $('#locnhanvien option:selected').text() : m co l gm ''; an Lu table SVTH: Mai Đức Hiền ac th 105 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT columns(4) search(keyword) draw(); }); $('#locmucdo').change(function () { let keyword = $('#locmucdo option:selected').val(); lu keyword = (keyword.length > 0) ? $('#locmucdo option:selected').text() : ''; an table va n columns(2) gh tn to search(keyword) draw(); p ie nl w }); d oa $('#loctrangthai').change(function () { an lu ll u nf va let keyword = $('#loctrangthai option:selected').val(); oi m keyword = (keyword.length > 0) ? $('#loctrangthai option:selected').text() : table z at nh ''; z @ columns(5) l gm search(keyword) draw(); m co }); an Lu SVTH: Mai Đức Hiền ac th 106 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT var dt = {}; $.get('/api/WO/GetAll', function (data) { //table // clear() // draw(); console.log(data); dt = data; lu an va n let mucdo = ''; gh tn to for (let i = 0; i < data.length; i++) { mucdo = (data[i].wo.priority === 1) ? 'Thấp' : mucdo; nl w mucdo = (data[i].wo.priority === 2) ? 'Trung d oa bình' : mucdo; = (data[i].wo.priority === 3) ? 'Gấp' : mucdo; oi m let user = window.sessionStorage.getItem('code'); z at nh let nguoigiaoviec = data[i].nguoigiao.codE_EMP; let nguoinhan = data[i].wo.assignTo.codE_EMP; z l gm @ let trangthai = data[i].wo.status; if (trangthai !== 'COMPLETED' && user === nguoinhan || user === m co nguoigiaoviec ) { an Lu SVTH: Mai Đức Hiền ac th 107 n va GVHD: TS Phan Ngọc Hồng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT let status = data[i].wo.status; let deadline = new Date(data[i].wo.deadline); let today = new Date(); status = (deadline.getFullYear() deadline.getMonth() x.wo.woNo === row[0]).wo; nl w d oa if (selected) { u nf va an lu let user = window.sessionStorage.getItem('code'); $('.btn-changestatus').hide(); ll oi m z at nh // kiem tra xem dung cong viec cua minh duuoc giao hay ko? if (selected.assignTo.codE_EMP === user) { z @ $('.btn-changestatus').show(); m co l gm } } an Lu SVTH: Mai Đức Hiền ac th 109 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT }); $('#table tbody').on('dblclick', 'tr', function () { lu $('#description').val(selected.description); an $('#assignTo').val(selected.assignTo.codE_EMP); n va gh tn to let deadline = new Date(selected.deadline); deadline.setDate(deadline.getDate() + 1); ie p document.getElementById("deadline").valueAsDate = deadline; nl w //$('#deadline').val(selected.deadline); d oa $('#priotity').val(selected.priotity); an lu ll u nf va $('#modalWO').modal('show'); oi m }); z at nh z @ l gm // if // Bắt đầu thực m co $('#btnDoing').click(function () { an Lu if (!selected) { SVTH: Mai Đức Hiền ac th 110 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT alert('Vui lòng chọn WO'); return; } $.ajax({ url: '/api/WO/Doing?workOrderId=' + selected.id, type: 'PUT', success: function (result) { // Do something with the result alert(result.description); lu if (result.code === 'I002') { an window.location.reload(); va n } gh tn to } }); p ie an lu // Đã hoàn thành d oa nl w }); if (!selected) { ll u nf va $('#btnComplete').click(function () { z at nh } oi return; m alert('Vui lòng chọn WO'); z @ $.ajax({ l gm url: '/api/WO/Complete?workOrderId=' + selected.id, type: 'PUT', m co success: function (result) { an Lu // Do something with the result SVTH: Mai Đức Hiền ac th 111 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT alert(result.description); if (result.code === 'I002') { window.location.reload(); $('#table tbody').hide(); } } }); }); lu an // Hủy bỏ n va $('#btnCancel').click(function () { alert('Vui lòng chọn WO'); ie gh tn to if (!selected) { p return; d oa nl w } an lu $.ajax({ type: 'PUT', ll u nf va url: '/api/WO/Cancel?workOrderId=' + selected.id, oi m success: function (result) { alert(result.description); z at nh // Do something with the result z @ if (result.code === 'I002') { l gm window.location.reload(); } m co } an Lu }); SVTH: Mai Đức Hiền ac th 112 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT }); $('#btnDelete').click(function () { if (!selected) { alert('Vui lòng chọn WO'); return; } $.ajax({ lu url: '/api/WO/Delete?workOrderId=' + selected.id, an type: 'DELETE', va n success: function (result) { to gh tn // Do something with the result alert(result.description); ie p if (result.code === 'I003') { d oa } nl w window.location.reload(); ll u nf }); va }); an lu } oi m z at nh z @ //Check permission $.get("/api/Permissions/CheckPermission?email=" l gm let email = window.sessionStorage.getItem('email'); + email + m co "&screenCode=WO", function (data) { an Lu //* SVTH: Mai Đức Hiền ac th 113 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT let permission = data.find(per => per.function.code === 'WO'); if (permission) { if (!permission.canQuery) { window.location.href = '/NoPermissison'; } if (!permission.canCreate) { $('.btntao').remove(); lu } an va n if (!permission.canUpdate) { to gh tn $('.btnhuy').remove(); } p ie nl w if (!permission.canDelete) { d oa $('.btnxoa').remove(); an lu } u nf va if (!permission.canDelete) { $('.modal').remove(); ll oi m } z at nh z @ } window.location.href = '/NoPermissison'; m co l gm else { } an Lu SVTH: Mai Đức Hiền ac th 114 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT }); Login View $('#btnLogin').click(function () { var email = $('#txtEmail').val(); var pass = $('#txtPass').val(); if (email && pass) { let user = { EMAIL_EMP: email, PASS_EMP: pass }; lu $.ajax({ an n va url: '/API/Login/CheckLogin', type: 'POST', data: JSON.stringify(user), contentType: 'application/json', success: function (result) { if (result === 'OK') { window.sessionStorage.setItem('email', email); ie gh tn to p $.ajax({ d oa nl w url: '/API/Login/GetInformation?email=' + email, type: 'GET', success: function (result) { if (result) { window.sessionStorage.setItem('currentUser', lu JSON.stringify(result)); window.sessionStorage.setItem('code', an result.codE_EMP); ll u nf va window.location.href = '/Home'; } else { alert('Lỗi lấy thông tin user'); } oi m } z } else { alert(result); } z at nh }); gm @ } an Lu }); m co l }); } else { alert('Email / Mật không bỏ trống'); } SVTH: Mai Đức Hiền ac th 115 n va GVHD: TS Phan Ngọc Hoàng si Đồ án tốt nghiệp đại học – Khóa 2017 – 2021 Trường ĐHBRVT $('input').on('keypress', function (e) { if (e.which == 13) { $('#btnLogin').click(); } }); Quên mật View $('#btnlogin').click(function () { if (!$('#httpemail').val()) { alert("Bạn chưa nhập email"); return; } lu an $.ajax({ n va url: '/API/Login/Forgotpassword?email=' + $('#httpemail').val(), type: 'PUT', success: function (result) { if (result == 'OK') { alert('Vui lòng kiểm tra email bạn! '); } else { alert(result); } p ie gh tn to w } ll u nf va an lu }); d oa nl }); oi m z at nh z m co l gm @ an Lu SVTH: Mai Đức Hiền ac th 116 n va GVHD: TS Phan Ngọc Hoàng si