SlideShare a Scribd company logo
1 of 31
Download to read offline
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 1
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT MÁY TÍNH
--------------------------------
NGHIÊN CỨU, XÂY DỰNG PHẦN MỀN QUẢN LÝ NHÂN
SỰ TRÊN ANDROID
BÁO CÁO THỰC TẬP DOANH NGHIỆP
SV thực hiện: Ngô Thanh Tuấn
MSSV: 10520456
Lớp: KTMT2010
Người hướng dẫn: Võ Đỗ Thắng
Thành phố Hồ Chí Minh – Năm 2014
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 2
LỜI CẢM ƠN
Sau khoảng ba tháng thực tập tại ATHENA em đã hoàn thành Báo cáo thực tập, vẫn
đang là những sinh viên chưa tốt nghiệp nên em không có điều kiện tiếp xúc nhiều với
thực tiễn, vẫn chưa có nhiều kinh nghiệm làm việc thực tiễn nhưng trong thời gian tiếp
cận thực tế đã giúp em hiểu sâu hơn về kiến thức đã học ở trường và đồng thời bổ sung
thêm những kiến thức mà em chưa được học, đó là hành trang vô cùng quý báu cho em
khi rời ghế nhà trường cũng như công việc tương lai.
Để hoàn thành đợt thực tập này, em đã nhận được sự giúp đỡ tận tình của Trung
tâm ATHENA, cùng nhiều người khác. Nhờ đó, em đã tiếp thu được nhiều kiến thức và
kinh nghiệm thực tế. Em xin gủi lời cảm ơn chân thành đến :
 Trung tâm ATHENA đã tạo điều kiện cho em thực tập.
 Thầy Võ Đỗ Thắng đã trực tiếp hướng dẫn em trong quá trình thực tập.
 Toàn thể nhân viên trong ATHENA đã luôn nhiệt tình giúp đỡ, cũng như tạo một
môi môi trường làm việc rất thân thiện.
Trong quá trình thực tập chắc chắn không tránh khỏi những sai lầm, thiếu sót rất
mong các Thầy bỏ qua. Kính mong Trung tâm ATHENA và thầy cô đóng góp ý kiến để
sau khi tốt nghiệp em có thể hoàn thiện bản thân và trở thành người có năng lực hơn.
Xin chân thành cảm ơn!
Sinh viên thực hiện
Ngô Thanh Tuấn
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 3
ĐÁNH GIÁ KẾT QUẢ THỰC TẬP CỦA GVHD
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
TP. HCM, ngày … tháng … năm ……….
Giảng viên hướng dẫn
(Ký và ghi rõ họ tên)
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 4
PHỤ LỤC
LỜI CẢM ƠN .................................................................................................................... 1
ĐÁNH GIÁ KẾT QUẢ THỰC TẬP CỦA GVHD......................................................... 3
I. LỊCH LÀM VIỆC TẠI NƠI THỰC TẬP ............................................................. 5
II. GIỚI THIỆU TRUNG TÂM ATHENA ................................................................ 5
III. NỘI DUNG NHIỆM VỤ CHÍNH ĐƯỢC GIAO TẠI ATHENA........................ 6
IV. NỘI DUNG CÁC CÔNG VIỆC VÀ KẾT QUẢ ĐẠT ĐƯỢC............................. 7
CHƯƠNG I: KHẢO SÁT HỆ THỐNG.................................................................................................7
CHƯƠNG II: PHÂN TÍCH VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU..............................................8
1. Các chức năng cơ bản của hệ thống..................................................................................................8
2. Xây dựng mô hình ERD về hệ thống quản lý nhân sự......................................................................9
3. Xây dựng mô hình cơ sở dữ liệu.....................................................................................................10
CHƯƠNG III: XÂY DỰNG CƠ SỞ DỮ LIỆU ......................................................................................13
1. Hệ cơ sở dữ liệu ..............................................................................................................................13
2. Sử dụng phpMyAdmin để tạo cơ sở dữ liệu cho chương trình ..........Error! Bookmark not defined.
CHƯƠNG IV: GIỚI THIỆU PHƯƠNG THỨC KẾT NỐI VỚI DATABASE.......................................15
I. CLIENT: .........................................................................................................................................15
II. WEB SERVICE:.............................................................................................................................18
CHƯƠNG V: KIẾN TRÚC HỆ THỐNG VÀ DEMO CHƯƠNG TRÌNH ............... 22
I. Kiến trúc hệ thống chương trình trên Android:.............................................................................22
II. Demo Chương Trình......................................................................................................................25
KẾT QUẢ ĐẠT ĐƯỢC QUA THỰC TẬP ............................................................................................30
V. TÀI LIỆU THAM KHẢO..................................................................................... 31
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 5
I. LỊCH LÀM VIỆC TẠI NƠI THỰC TẬP
1. Đơn vị thực tập : TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH
MẠNG QUỐC TẾ ATHENA
2. Người hướng dẫn: Thầy Võ Đỗ Thắng (Giám Đốc Trung Tâm ATHENA)
3. Sinh viên: Ngô Thanh Tuấn MSSV: 10520456 Khoa: KTMT2010
Lịch thực tập:
- Thứ 3 hàng tuần từ 10h00 am - 14h00 pm
- Thứ 4 và thứ 5 hàng tuần từ 17h00 pm – 20h00 pm
II. GIỚI THIỆU TRUNG TÂM ATHENA
Trung Tâm Đào Tạo Quản Trị Mạng & An Ninh Mạng Quốc Tế ATHENA được
thành lập từ năm 2004, là một tổ chức qui tụ nhiều trí thức trẻ Việt Nam đầy năng động,
nhiệt huyết và kinh nghiệm trong lãnh vực CNTT, với tâm huyết góp phần vào công cuộc
thúc đẩy tiến trình đưa công nghệ thông tin là ngành kinh tế mũi nhọn, góp phần phát
triển nước nhà.
Lĩnh vực hoạt động chính:
Trung tâm ATHENA đã và đang tập trung chủ yếu vào đào tạo chuyên sâu quản
trị mạng, an ninh mạng, thương mại điện tử theo các tiêu chuẩn quốc tế của các hãng nổi
tiếng như Microsoft, Cisco, Oracle, Linux LPI , CEH,... Song song đó, trung tâm
ATHENA còn có những chương trình đào tạo cao cấp dành riêng theo đơn đặt hàng của
các đơn vị như Bộ Quốc Phòng, Bộ Công An , ngân hàng, doanh nghiệp, các cơ quan
chính phủ, tổ chức tài chính..
+ Sau gần 10 năm hoạt động,nhiều học viên tốt nghiệp trung tâm ATHENA đã là
chuyên gia đảm nhận công tác quản lý hệ thống mạng, an ninh mạng cho nhiều bộ ngành
như Cục Công Nghệ Thông Tin - Bộ Quốc Phòng , Bộ Công An, Sở Thông Tin Truyền
Thông các tỉnh, bưu điện các tỉnh,.,....
+ Ngoài chương trình đào tạo, Trung tâm ATHENA còn có nhiều chương trình hợp tác
và trao đổi công nghệ với nhiều đại học lớn như đại học Bách Khoa Thành Phố Hồ Chí
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 6
Minh, Học Viện An Ninh Nhân Dân( Thủ Đức), Học Viện Bưu Chính Viễn Thông, Hiệp
hội an toàn thông tin (VNISA), Viện Kỹ Thuật Quân Sự ,......
Đội ngũ giảng viên :
+ Tất cả các giảng viên trung tâm ATHENA có đều tốt nghiệp từ các trường đại học hàng
đầu trong nước .... Tất cả giảng viên ATHENA đều phải có các chứng chỉ quốc tế như
MCSA, MCSE, CCNA, CCNP, Security+, CEH,có bằng sư phạm Quốc tế (Microsoft
Certified Trainer).Đây là các chứng chỉ chuyên môn bắt buộc để đủ điều kiện tham gia
giảng dạy tại trung tâm ATHENA
+ Bên cạnh đó,Các giảng viên ATHENA thường đi tu nghiệp và cập nhật kiến thức công
nghệ mới từ các nước tiên tiến như Mỹ , Pháp, Hà Lan, Singapore,... và truyền đạt các
công nghệ mới này trong các chương trình đào tạo tại trung tâm ATHENA.
Dịch vụ hỗ trợ:
+ Đảm bảo việc làm cho học viên tốt nghiệp khoá dài hạn
+ Giới thiệu việc làm cho mọi học viên
+ Thực tập có lương cho học viên khá giỏi
+ Ngoài giờ học chính thức, học viên được thực hành thêm miễn phí, không giới hạn thời
gian.
+ Hỗ trợ kỹ thuật không thời hạn trong tất cả các lĩnh vực liên quan đến máy tính, mạng
máy tính, bảo mật mạng
+ Hỗ trợ thi Chứng chỉ Quốc tế.
III. NỘI DUNG NHIỆM VỤ CHÍNH ĐƯỢC GIAO TẠI ATHENA
1. Nghiên cứu mô hình ERD, thiết kế Database cho hệ thống quản lý nhân sự.
2. Nghiên cứu, cài đặt Android,cài đặt máy ảo giả lập, các công cụ hỗ trợ xây
dựng hệ thống quản lý nhân sự.
3. Xây dựng hệ thống, nghiên cứu và sử dụng thuật toán JSON kết nối database
 Sử dụng phpMyAdmin để tạo cơ sở dữ liệu cho chương trình.
 Phương thức json kết nối database
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 7
 Web sercive
4. Tạo report – báo cáo kết quả làm được hàng tuần
IV. NỘI DUNG CÁC CÔNG VIỆC VÀ KẾT QUẢ ĐẠT ĐƯỢC
CHƯƠNG I: KHẢO SÁT HỆ THỐNG
1. Tổng quan về hệ thống quản lý
Quản lý là cách biểu hiện một ý chí muốn biến đổi và thuần phục một tổng thể các
hiện tượng. Đó là việc tạo ra các sự kiện, thay vì để cho các sự kiện xảy ra bộc phát. Đây
không phải là sự lắp ráp các nhiệm vụ rời rạc mà là hoạt động phân biệt rõ ràng với các
chức năng khác của tổ chức.
2. Chức năng và nhiệm vụ của hệ thống quản lý nhân sự
Hệ thống quản lý nhân sự có chức năng thường xuyên thông báo cho ban lãnh đạo về
các mặt công tác: tổ chức lao động, tiền lương... cho nhân viên, hệ thống này được đặt
dưới sự chỉ đạo trực tiếp của giám đốc.
Với chức năng như vậy, hệ thống quản lý nhân sự có nhiệm vụ luôn cập nhật hồ sơ
cán bộ công nhân viên theo quy định, thường xuyên bổ xung những thông tin thay đổi
trong quá trình công tác của cán bộ công nhân viên, việc theo dõi và quản lý lao động để
thanh toán lương cũng là nhiệm vụ quan trọng của hệ thống.
Ngoài ra, công tác thống kê báo cáo tình hình theo yêu cầu của ban giám đốc cũng là
nhiệm vụ không thể thiếu trong hệ thống quản lý cán bộ .
3. Yêu cầu của hệ thống và những khó khăn
Trước một khối lượng lớn nhân viên cũng như các yêu cầu đặt ra thì việc quản lý
theo phương pháp thủ công sẽ không thể đáp ứng được, do đó gặp rất nhiều khó khăn. Nó
đòi hỏi phải có nhiều nhân lực, nhiều thời gian và công sức, mỗi nhân sự của cơ quan thì
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 8
có một hồ sơ cho nên việc lưu trữ, tìm kiếm, bổ sung, sửa đổi để đáp ứng yêu cầu không
phải là dễ dàng.
Từ những nhược điểm trên ta thấy cần thiết phải có một hệ thống tin học hoá cho
việc quản lý nhân sự cũng như các hệ thống quản lý khác.
4. Những yêu cầu đặt ra đối với hệ thống
Cùng với sự phát triển của xã hội, công tác tổ chức quản lý cũng cần được đầu tư và
phát triển để có thể đáp ứng tốt đuợc yêu cầu cũng như giúp cấp lãnh đạo thực hiện tốt
các chủ trương chính sách đối với cán bộ công nhân viên chức.
Trước hết để quản lý được một khối lượng nhân viên của một cơ quan, phải tổ chức
tốt hệ thống lưu trữ hồ sơ để có thể đáp ứng được những yêu cầu: tiết kiệm tài nguyên, dễ
tìm kiếm, dễ bổ xung sửa đổi. Ngoài ra hệ thống mới phải có khả năng phát hiện lỗi và xử
lý kiểm tra tính đúng đắn của dữ liệu ngay từ khi cập nhật.
CHƯƠNG II: PHÂN TÍCH VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU
1. Các chức năng cơ bản của hệ thống
Qua quá trình nghiên cứu, nhóm đã xây dựng được một hệ cơ sở dữ liệu quản lý nhân
sự cơ bản đáp ứng được một số yêu cầu của các doanh nghiệp như sau:
- Quản lý thông tin nhân sự bao gồm đầy đủ, chi tiết về nhân sự trong doanh nghiệp
- Theo dõi, cập nhật thường xuyên thông tin nhân sự, phòng ban, tổ đội trong doanh
nghiệp
- Tính lương cho nhân viên theo công thức có sẵn hoặc công thức do người sử dụng
tự cập nhật vào, các chế độ đãi ngộ tương ứng.
- Quản lý các thông tin liên quan tới việc tuyển dụng nhân sự mới trong doanh
nghiệp
- Trả hồ sơ cho nhân viên khi chấm dứt hợp đồng lao động.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 9
Biểu đồ phân cấp chức năng của hệ quản lý nhân sự
2. Xây dựng mô hình ERD về hệ thống quản lý nhân sự
Các thực thể và thuộc tính tương ứng:
a.NHANVIEN (MaNV, HoTen, GioiTinh, NgaySinh, DanToc, QueQuan, SoDienThoai,
MaPB, MaCV, MaTDHV, BACLUONG)
b.PHONGBAN (MaPB, TenPhongBan, SoDienThoai)
c.CHUCVU (MaCV, TenCV)
d.TDHV (MaTDHV, TenTrinhDo)
e.LUONG (BacLuong, LuongCoban, HesoLuong, HesoPhucap)
f.TGCT(MaNV, MaCV, NgayNhamChuc)
g.THONGBAO(MaTB, ThongBao, MaPB, ThoiGian)
QUẢN LÝ NHÂN SỰ
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 10
Mô hình ERD trong quản lý nhân sự
3. Xây dựng mô hình cơ sở dữ liệu
Thiết kế các file dữ liệu
3.1.1 Bảng NHAN VIEN lưu trữ thông tin về các nhân viên của công ty đang
trong hiệu lực của hợp đồng
STT Tên trường Kiểu Độ rộng Giải thích
1 MaNV Text 10 Mã nhân viên
2 HoTen Text 30 Họ và tên nhân viên
3 NgaySinh Date/Time 10 Ngày sinh
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 11
4 QueQuan Text 20 Quê quán
5 GioiTinh Text 5 Giới tính
6 DanToc Text 20 Dân tộc
7 SoDienthoai Number 20 Số điện thoại liên lạc
8 MaPB Text 15 Mã phòng ban
9 MaCV Text 15 Mã chức vụ
10 MaTDVH Text 15 Mã trình độ văn hóa
11 BacLuong Number 10 Bậc lương
3.1.2 Bảng PHONG BAN lưu trữ các thông tin về nhiệm vụ của các phòng ban
trong tổ chức doanh nghiệp
Stt Tên trường Kiểu Độ rộng Giải thích
1 MaPB Text 10 Mã phòng ban
2 TenPB Text 30 Tên phòng ban
3 SoDienthoaiPB Text 20 Số điện thoại phòng ban
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 12
3.1.3 Bảng CHUC VU quản lý các chức danh hiện có của kết cấu tổ chức trong
doanh nghiệp
Stt Tên trường Kiểu Độ rộng Giải thích
1 MaCV Text 10 Mã chức vụ
2 TenCV Text 20 Tên chức vụ
3.1.4 Bảng TDHV (trình độ học vấn) quản lý các trình độ chuyên môn đã đạt
được của nhân viên cho tới thời điểm hiện tại
Stt Tên trường Kiểu Độ rộng Giải thích
1 MaTDHV Text 10 Mã trình độ học vấn
2 TenTrinhDo Text 20 Tên trình độ học vấn
3.1.5 Bảng LUONG lưu trữ thông tin về hệ số lương và các phụ cấp của doanh
nghiệp
Stt Tên trường Kiểu Độ rộng Giải thích
1 BacLuong Number 10 Bậc lương
2 LuongCoban Number 20 Lương cơ bản
3 HesoLuong Number 10 Hệ số lương
4 HesoPhucap Number 10 Hệ số phụ cấp
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 13
3.1.6 Bảng TGCT (thời gian công tác) dùng để lưu trữ thời gian bắt đầu đảm
nhiệm chức vụ của mỗi nhân viên
Stt Tên trường Kiểu Độ rộng Giải thích
1 MaNV Text 10 Mã nhân viên
2 MaCV Text 10 Mã chức vụ
3 NgayNhamChuc Date/Time 20 Ngày nhậm chức
3.1.7 Bảng THONGBAO dùng để thông báo cho các phòng ban.
Stt Tên trường Kiểu Độ rộng Giải thích
1 MaTB Text 15 Mã thông báo
2 ThongBao Text 300 Thông báo
3 MaPB Text 10 Mã phòng ban
4 NgayThongBao Date/Time 20 Ngày nhận thông
báo
CHƯƠNG III: XÂY DỰNG CƠ SỞ DỮ LIỆU
Hệ cơ sở dữ liệu
Cơ sở dữ liệu là một kho chứ thông tin, có nhiều loại cơ sở dữ liệu, trong đó phổ biến
nhất hiện nay chính là cơ sở dữ liệu quan hệ.
Một cơ sở dữ liệu quan hệ:
- Chứa dữ liệu trong các bảng, được cấu tạo bởi các dòng (mẫu tin) và các cột
(trường)
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 14
- Cho phép lấy về (truy vấn) các tập hợp dữ liệu con từ các bảng.
- Cho phép nối các bảng lại với nhau cho mục đích truy cập các mẫu tin liên quan
với nhau chứa trong các bảng khác nhau.
Bộ máy cơ sở dữ liệu: Chức năng cơ bản của một cơ sở dữ liệu được cung cấp bởi
một bộ máy cơ sở dữ liệu, là hệ thống quản lý cách thức chứa và trả về dữ liệu.
Bảng và trường: Các cơ sở dữ liệu được cấu tạo từ các bảng dùng thể hiện các phân
nhóm dữ liệu. Bảng chứa các mẫu tin là các mẫu dữ liệu riêng rẽ bên trong phân nhóm dữ
liệu. Mẫu tin chứa các trường, mỗi trường thể hiện một bộ phận dữ liệu trong một mẫu
tin.
RecordSet: Khi tạo bảng cần nắm được cách thao tác với các bảng. Thao tác với các
bảng liên quan đến việc nhập và lấy về dữ liệu từ các bảng khác cũng như việc kiểm tra
và sữa đổi cấu trúc bảng. Thao tác dữ liệu trong một bảng ta dùng Recordset. RecordSet
là một cấu trúc dữ liệu thể hiện một tập hợp con các mẫu tin lấy về từ cơ sở dữ liệu.
Khóa chính: Một trường được chỉ ra là khóa chính của bảng phục vụ cho việc xác
định duy nhất các thuộc tính
Khóa ngoại: Là khóa trong bảng liên quan chứa bản sao của khóa chính của bản chính
Mối quan hệ: là một cách định nghĩa chính thức hai bảng liên hệ với nhau như thế nào.
Khi định nghĩa một mối quan hệ, tức đã thông báo với bộ máy CSDL rằng hai trường
trong hai bảng liên quan được nối với nhau. Hai trường liên quan với nhau trong một mối
quan hệ là khóa chính và khóa ngoại.
Ngoài việc ghép các mẫu tin liên quan trong những bảng riêng biệt, mối quan hệ còn
tận dụng thế mạnh của tính toàn vẹn tham chiếu, một thuộc tính của bộ máy CSDL duy trì
các dữ liệu trong một CSDL nhiều bảng luôn luôn nhất quán. Khi tính toàn vẹn tham
chiếu tồn tại trong một CSDL, bộ máy CSDL sẽ ngăn cản khi xóa một mẫu tin khi có các
mẫu tin khác tham chiếu đến nó trong CSDL.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 15
CHƯƠNG IV: GIỚI THIỆU PHƯƠNG THỨC KẾT NỐI VỚI DATABASE
Về ứng dụng, đây là ứng dụng quản lý, nên tính bảo mật cũng phải đòi hỏi cao hơn
các ứng dụng khác. Database của ứng dụng không thể nằm trên điện thoại được vì dung
lượng database quá lơn, và dễ dàng bị xem trộm nếu điện thoại đó sử dụng các phần mềm
duyệt file chuyên dụng. Do đó, database của ứng dụng sẽ nằm ở server độ bảo mật sẽ cao
hơn. Tất nhiên nếu như vậy thì doanh nghiệp sẽ tốn thêm phần chi phí cho việc thuê máy
chủ và nhân việc điều hành quản lý, nhưng bù lại, bảo mật sẽ cao hơn.
Môi trường server của nhóm xây dựng sẽ là server ảo, nhóm sử dụng phần mềm
xamp 1.8 , đây là phần mềm giả lập seb server. Về phần cái đặt và config thì nhóm không
đê cập tới, vì khi config kết nối, nhóm sử dụng hoàn toàn config mặc định trong quá trình
cái đặt xamp.
Khi kết nối cần 1 trung gian để gửi nhận dữ liệu, qua tìm hiểu nhóm biết được json
là 1 chuẩn định dạng dữ liệu gửi nhận giữa các ngôn ngữ khác nhau.
I. CLIENT:
Đâu tiên ở client android nhóm xây dựng 1 class JSONParser có chức năng định
nghĩa json, nhận dữ liệu từ trên web service về và định dạng dữ liệu nhận, ở đây dữ liệu
nhận về sẽ là 1 mảng 1 chiều dữ liệu.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 16
public class JSONParser {
static InputStream is = null;
static JSONObject jObj = null;
static String json = "";
public JSONParser() {
}
public JSONObject getJSONFromUrl(String url, List<NameValuePair> params)
{ try {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
httpPost.setEntity(new UrlEncodedFormEntity(params));
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace(); }
try {
BufferedReader reader = new BufferedReader(new
InputStreamReader(is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "n"); }
is.close();
json = sb.toString();
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 17
Log.e("JSON", json);
} catch (Exception e) {
Log.e("Buffer Error", "Error converting result " + e.toString());
}
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
return jObj;
}
}
Kế đến là class UserFunctions class này thực hiện các yêu cầu của người dùng
tương tác với database . Class này bản chất là sử dụng jsonParser và xây dựng các phương
thức của đối tượng được định nghĩa bởi class jsonParser này: ở đây nhóm giới thiệu 1 yêu
cầu của phần client là phương thức đăng ký: Client sẽ gửi các tag là dạng String lên server
cụ thể đây là gửi tag login, và gửi các chuỗi là các biến cần thiết, tất cả được đưa vào 1
list params. Sau đó gửi lên server server nhận tag. Thực hiện yêu cầu gửi về lại là 1 json.
Và phương thức này nhận json đã gửi về sau đó trả ra giá trị là json vửa nhận được đó.
Json đấy là tất cả nhưng gì mình cần.
public class UserFunctions {
private JSONParser jsonParser;
private static String loginURL = "http://192.168.0.111/android_login_api/";
private static String registerURL = "http://192.168.0.111/android_login_api/";
private static String login_tag = "login";
public UserFunctions(){
jsonParser = new JSONParser();
}
public JSONObject loginUser(String email, String password){
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 18
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("tag", login_tag));
params.add(new BasicNameValuePair("email", email));
params.add(new BasicNameValuePair("password", password));
JSONObject json = jsonParser.getJSONFromUrl(loginURL, params);
return json;
}
}
Sau khi cài đặt xamp. Trong thư mục localhost của phần mềm cụ thể ở đây là
htdocs C:xampphtdocs nhóm tạo folder là android_login_api. Như vậy ta được dạng địa
chỉ như sau: C:xampphtdocsandroid_login_api
ở client cần có link kết nối. link kết nối ở đây là ip localhost tức là ip của máy tính
trong cùng 1 đường mạng với điện thoại client được kết nối. Máy tính đóng vai trò là
server.
Ở đây nhóm sử dụng router wifi làm đường mạng kết nối chung cho máy tính
sever và điện thoại client. Ip của máy tính là 192.168.0.111 đo đó link kết nối tới sever là
http://192.168.0.111/android_login_api/
II. WEB SERVICE:
Trong thư mục android_login_api ta cần thêm các file như sau:
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 19
Index.php là 1 chương trình viết bằng mã php. Khi người dùng kết nối tới link :
http://192.168.0.111/android_login_api/ thì index.php sẽ được gọi ra. Chương trình này
có chức năng nhận các lệnh gửi từ client, phân tích và xử lý các yêu cầu, đóng gọi lại các
dữ liệu vào json. Sau đó gửi về ngược lại client. Và đương nhiên để lấy được dữ liệu từ
database ta cần phải có tài khoản, pass login vào MySQL vì xamm sử dụng MySQL làm
hệ quản trị cơ sơ dữ liệu. Phần config kết nối em sẽ trình bày sau.
<?php
if (isset($_POST['tag']) && $_POST['tag'] != '') {
// get tag
$tag = $_POST['tag'];
// include db handler
require_once 'include/DB_Functions.php';
$db = new DB_Functions();
// response Array
$response = array("tag" => $tag, "success" => 0, "error" => 0);
// check for tag type
if ($tag == 'login') {
. . .
if ($user != false) {
. . .
echo json_encode($response);
} else {
$response["error"] = 1;
$response["error_msg"] = "Incorrect email or password!";
echo json_encode($response);
}}
else {
echo "Invalid Request";
}
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 20
} else {
echo "Access Denied"; } ?>
Trong thư mục include chứ các class php thực hiện cho việc kết nối database và
hàm truy xuất dữ liệu từ php:
Hàm kết nối: tên file config.php
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "staff-manager");
?>
Tên file DB_Connect.php
<?php
class DB_Connect {
// constructor
function __construct() {
}
// destructor
function __destruct() {
// $this->close();
}
// Connecting to database
public function connect() {
require_once 'include/config.php';
// connecting to mysql
$con = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
// selecting database
mysql_select_db(DB_DATABASE);
// return database handler
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 21
return $con;
}
// Closing database connection
public function close() {
mysql_close();
} }
?>
Đây là 2 class kết nối với database khởi tạo và hủy databse.
Kế đến là class DB_funtion
Class này có chức năng là truy xuất dữ liệu từ database
<?php
class DB_Functions {
private $db;
//put your code here
// constructor
function __construct() {
require_once 'DB_Connect.php';
// connecting to database
$this->db = new DB_Connect();
$this->db->connect();
}
// destructor
function __destruct() {
}
public function getUserByEmailAndPassword($email, $password) {
…………………….
}
public function hashSSHA($password) {
$salt = sha1(rand());
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 22
$salt = substr($salt, 0, 10);
$encrypted = base64_encode(sha1($password . $salt, true) . $salt);
$hash = array("salt" => $salt, "encrypted" => $encrypted);
return $hash;
}
/**
* Decrypting password
* @param salt, password
* returns hash string
*/
public function checkhashSSHA($salt, $password) {
$hash = base64_encode(sha1($password . $salt, true) . $salt);
return $hash;
} }
?>
CHƯƠNG V: KIẾN TRÚC HỆ THỐNG VÀ DEMO CHƯƠNG TRÌNH
I. Kiến trúc hệ thống chương trình trên Android:
Nhóm thiết kế hệ thống chương trình trên Android bao gồm 2 packet:
Package com.example.Staff_Manager chứa các class chính của chương trình. Các
class này có nhiệm vụ khởi tạo các layout, các button,textview trong layout đó, chạy và
thực hiện các tương tác của người dùng với layout tương ứng, các thao tác được layout
ghi nhận và xử lý thông qua các phương thức của của các class trong package :
public class LoginActivity extends Activity : class khởi chạy layout login.xml,
layout xử lý phần đăng nhập của người dùng.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 23
public class GetpasswordActivity extends Activity: class khởi chạy layout
getpassword.xml, là layout giúp nhân viên đang ký tài khoản đăng nhập, hoặc lấy lại mật
khẩu đang nhập đã quên. Để thực hiện nhân viên cần có các thông tin sau:
+ma_nv: mã nhân viên
+ten_nv: tên nhân viên
+regcode: đoạn mã an ninh của mỗi nhân viên, mã này được cung
cấp khi nhân viên làm hồ sơ aply vào công ti. Mã này chỉ cung cấp 1
lần cho nhân viên, đang là mã xác nhận bảo mật cho nhân viên.
public class ManagerActivity extends Activity : class khởi chạy layout
manager.xml là layout chính của chương trình. Bao gồm 12 button chức năng chính của
chương trình. Khi chọn các button này các tác vụ tương ứng sẽ gọi ra cac phương thức
tương ưng trong Class UserFuntion.
Các class còn lại DanhSachNhanVien, danhsachpbedit, DanhSachPhongBan,
listNhanVienPB, listNhanvienpbedit. Là các class xử lý các layout về danh sách nhân
viên, danh sách phòng ban….được gọi khi người dùng thực hiện tác vụ trong layout
manager.xml
Package com.example.Staff_Manager.library chứa các class thuật toán của chương
trình bao gồm: class xử lý database, class đóng gói dử liệu gũi dữ liệu client tới server và
xử lý nhận dữ liệu về. class này dùng lớp JSONObject và JSONarray trong android SDK.
public class DatabaseHandler extends SQLiteOpenHelper {..}
Xử lý các tác vụ liên quan đến cơ sở dữ liệu, class này dùng để xác nhận trạng thái
đăng nhập của người dùng trên hệ thống. tạo database ảo trong bộ nhớ máy.
Database này hoàn toàn rỗng.
public class JSONParser
Class này định dạng tập lệnh gũi lên sever có dạng như thế nào, sau đó định dạng
lại dữ liệu nhận.
public JSONObject getJSONFromUrl(String url, List<NameValuePair> params) {..}
gũi yêu cầu là 1 dạng mãng String kiểu params lên địa chỉ kết nối là url. Sau đó
nhận dữ liệu về và ghi vào buffer. Dữ liệu nhận về là 1 chuỗi. chuỗi này sẽ nén vào
JSONObject.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 24
public class UserFunctions {}
Đúng như tên gọi của class, class này chứa toàn bộ thuật toán xử lý dữ liệu gũi và
nhận của chương trình.
Bao gồm các phương thức sau:
Nhóm 1 Phương thức gũi lệnh lên url tương ứng, các lệnh là 1 tập chuỗi có dạng
String.
public JSONObject loginUser(String email, String password) {}
public JSONObject registerUser(String name, String email, String
password,String ma_nv) {}
public boolean isUserLoggedIn(Context context)
public boolean logoutUser(Context context)
public JSONObject updateuser(String email, String password)
public JSONObject getdataby(String tag, String maptable, String mapfield,
String mapvalue)
public JSONObject changenhanvien(String tag, String option, String ma_nv,
String ten_nv, String ma_cv,String ma_pb,String tuoi, String sodt, String
cmnd,String recode)
public JSONObject changenphongban(String tag, String option, String ma_pb,
String ten_pb)
public JSONObject getlistNv()
public JSONObject getlistPb()
public JSONObject creatthongbao(String ma_tb,String noidung,String tuan,
String ma_nv,String ma_pb)
public JSONObject delnhanvien(String ma_nv)
public JSONObject delphongban(String ma_pb)
public JSONObject getListNvPb(String ma_pb)
Khi thực hiện các phương thức này đóng gói dữ liệu thành 1 mảng params
gũi lên url tương ứng, chờ đợi phía bên webservice xử lý trả dữ liệu về tất nhiên là
dữ liệu kiểu json, sau đó phương thức trả kết quả cuối cùng là return JSONObject.
Nhóm 2: phương thức xử lý các tác vụ chính của người dùng ở layout chính
public void thongtinnhanvien(String ma_nv, Activity name)
public void addnhanvien(final Activity name)
public void editnhanvien(final String ma_nv,final Activity name)
public void delnhanvien(final Activity name)
public void addphongban(final Activity name)
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 25
public void thongbaonhanvien(String ma_nv,final Activity name)
public void themthongbao(final String ma_nv, final Activity name)
public void delphongban(final Activity name)
public void thongtinluong(String ma_nv,final Activity name)
Tất cả các phương thức này đều không trả về giá trị. Mà nó chỉ thực hiện các công
việc tưng ứng.
II. Demo Chương Trình
Run As  Android Application  Chọn máy ảo hoặc thiết bị di động thật để tạo ra
Application trên máy chạy demo chương trình.
Khi ta khởi động chương trình sẽ ra phần layout đăng nhập:
Tại đây nhân viên sử dụng email đang nhập và tài khoản để login vào hệ thống.
Trường hợp nếu nhân viên quên mật khẩu hoặc chưa có tài khoản đăng nhập thì có
thể vào needhelp
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 26
Yêu cầu phải có mã nhân viên, tên nhân viên và regcode mới cố thê đăng ký hoặc
đăng nhập, nhập đầy đủ thông tin vào. Hệ thống sẽ tự động kiểm tra xem là mình đã có tài
khoản đăng nhập chưa.
Sau khi login thành công hệ thông sẽ kiểm tra xem tài khoản login của nhân viên có
chức vụ gì. Sẽ phân quyên tương ứng:
 Nếu chức vụ là Nhân Viên, Phó Phòng, Nhân viên tập sự thì chỉ được quyền Thông
Báo, Danh sách nhân viên,Danh Sách Phòng Ban, Thông tin Cá Nhân, Thông Tin
Lương.
 Nếu chức vụ là Trưởng Phòng thì được thêm 3 quyền nữa là Sữa thông tin nhân viên,
xóa nhân viên, và thêm nhân viên.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 27
 Nếu chức vụ là Giám Đốc Điều Hành thì ful quyền sữ dụng phần mềm.
Sau đây là các chức năng chính của chương trình:
- Thông báo: Xuất ra thông tin thông báo phòng ban nơi mà nhân viên hiện tại đang làm
làm việc.
- Thêm Thông Báo:Chỉ có trưởng phòng và CEO mới có quyên thêm thông báo này, sẽ
thực hiện thêm thông báo vào cơ sở dữ liệu. bao gồm các thông tin thông báo cho
phòng ban nào. Ngày ra thông báo tuần hoạt động. và người đưa ra thông báo này.
- Thêm nhân viên: các thông tin cơ bản của nhân viên với mã nhân viên tương ứng
- Sửa Nhân Viên: thay đổi thông tin cơ bản của nhân viên với mã nhân viên tương ứng.
- Xóa Nhân viên: xóa nhân viên với mã nhân viên tương ứng.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 28
Danh Sách Nhân Viên:Khi click vào sẽ ra 1 dãy tất cả các nhân viển của công ti, và
muốn xem thông tin tương ứng của nhân viên đó chỉ cần chọn vào nhân viên đó trên
layout:
Thêm Phòng Ban: thêm vào database mã phòng ban và tên phòng ban tương ứng.
Sửa thông tin phòng ban: chọn vào sẽ ra danh sách phòng ban, ở đây thay đổi
thông tin phòng ban là chỉ chọn trưởng phòng và phó phòng cho phòng ban đó. Nên khi
chọn vào phòng ban, sẽ ra danh sách nhân viên. Và ta sẽ chọn chức vụ lai cho nhân viên:
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 29
Xóa phòng ban: xóa phòng ban theo mã phòng ban tương ứng
Danh Sách phòng ban:danh sách phòng ban của nhân viên, click vào mỗi phòng ban sẽ ra
nhân viên của phòng ban đó:
Thông Tin cá nhân: thông tin nhân viên đó
Thông tin lương: thông tin về lương của nhân viên
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 30
KẾT QUẢ ĐẠT ĐƯỢC QUA THỰC TẬP
1. Những kiến thức lý thuyết đã được củng cố:
 Nghiên cứu sâu hơn và hiểu thêm nhiều hơn về lập trình android.
 Tăng cường khả năng làm việc với cơ sở dữ liệu.
 Tìm hiểu và áp dụng các phương thức kết nối database, Client, Webservice…..
 Nắm được các giải thuật hữu dụng và cách áp dụng chúng vào các bài toán cụ thể.
2. Những kỹ năng thực hành đã được học thêm:
 Học được cách làm việc theo tổ chức, làm việc theo nhóm và cá nhân hiệu quả.
 Biết cách phân bổ thời gian để điều phối công việc.
 Làm quen với môi trường làm việc thực tế và khoa học.
 Trâu dồi khả năng tiếng anh chuyên môn bằng cách tham khảo nhiều tài liệu tiếng
anh.
Báo Cáo Thực Tập
SVTH: Ngô Thanh Tuấn Trang 31
 Hiểu và vận dụng được những kinh nghiệm từ các anh chị chia sẻ qua các buổi báo
cáo giữa kỳ,báo cáo cuối kỳ, các buổi chia sẻ kiến thức với nhau, các tình huống
thực tiễn.
 Tham gia học và thi đậu System Hacking của trung tâm Athena.
3. Những kinh nghiệm thực tiễn đã tích lũy được:
 Phân công công việc hợp lý và công việc có tốt hay không nằm ở tất cả các thành
viên trong nhóm
 Làm việc theo nhóm rất quan trọng trong công việc.
 Luôn tiếp thu và vận dụng lý thuyết vào thực tiễn.
 Khi làm việc, giao tiếp và ứng xử là phần quan trọng giúp mình thành công trong
công việc.
 Bắt đầu làm quen với cách làm việc của dooanh nghiệp để khi ra trường không còn
phải bỡ ngỡ.
V. TÀI LIỆU THAM KHẢO
[1] Beginning Android™ Application Development, Published by Wiley Publishing, Inc.
10475 Crosspoint Boulevard, Indianapolis, IN 46256, www.wiley.com, Copyright ©
2011 by Wiley Publishing, Inc., Indianapolis, Indiana
[2] Compiling Your Android Application, v1.0, By GoNorthWest, 30 November 2011
[3] Professional Android™Application Development, Published by Wiley Publishing,
Inc. 10475 Crosspoint Boulevard, Indianapolis, IN 46256, www.wiley.com, Copyright ©
2009 by Wiley Publishing, Inc., Indianapolis, Indiana
[4] Android Database Programming, Jason Wei

More Related Content

What's hot

Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008laonap166
 
Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3
Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3
Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3phamvotuanthanh
 
Báo cáo thực tập tốt nghiệp
Báo cáo thực tập tốt nghiệpBáo cáo thực tập tốt nghiệp
Báo cáo thực tập tốt nghiệpChung Thuận
 
Báo cáo tốt nghiệp
Báo cáo tốt nghiệpBáo cáo tốt nghiệp
Báo cáo tốt nghiệpMy Đá
 
Báo cáo đề tài thực tập cuối kỳ
Báo cáo đề tài thực tập cuối kỳBáo cáo đề tài thực tập cuối kỳ
Báo cáo đề tài thực tập cuối kỳthanhthong1210
 
Báo cáo thực tập athena
Báo cáo thực tập athenaBáo cáo thực tập athena
Báo cáo thực tập athenaBoy Nguyễn
 
báo cáo thực tập tại trung tâm ATHENA
báo cáo thực tập tại trung tâm ATHENAbáo cáo thực tập tại trung tâm ATHENA
báo cáo thực tập tại trung tâm ATHENAnvthongathena
 
Báo cáo thực tập cuối kì
Báo cáo thực tập cuối kìBáo cáo thực tập cuối kì
Báo cáo thực tập cuối kìSteven Nguyễn
 
Baocaothuctapcuoiky
BaocaothuctapcuoikyBaocaothuctapcuoiky
BaocaothuctapcuoikyTrần Nam
 
Báo cáo thực tập cuối kỳ
Báo cáo thực tập cuối kỳBáo cáo thực tập cuối kỳ
Báo cáo thực tập cuối kỳphạm ngọc phú
 
Báo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt NghiệpBáo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt Nghiệpnguyeminh thai
 
BÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬP
BÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬPBÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬP
BÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬPphanconghien
 
Báo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt NghiệpBáo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt NghiệpChau Thuan Phat
 
Báo cáo thực tập cuối kì
Báo cáo thực tập cuối kìBáo cáo thực tập cuối kì
Báo cáo thực tập cuối kìHai Te
 
BÁO CÁO THỰC TẬP ATHENA
BÁO CÁO THỰC TẬP ATHENABÁO CÁO THỰC TẬP ATHENA
BÁO CÁO THỰC TẬP ATHENAkimtuyen503
 
Báo Cáo Thực Tập Tốt Nghiệp Tại Athena
Báo Cáo Thực Tập Tốt Nghiệp Tại Athena Báo Cáo Thực Tập Tốt Nghiệp Tại Athena
Báo Cáo Thực Tập Tốt Nghiệp Tại Athena kid zack
 
BÁO CÁO THỰC TẬP
BÁO CÁO THỰC TẬPBÁO CÁO THỰC TẬP
BÁO CÁO THỰC TẬPLinh Bé
 

What's hot (20)

Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
Xây dựng hệ thống mạng cho Công Ty Cổ Phần Trường Tân trên nền tảng server 2008
 
Gns3
Gns3Gns3
Gns3
 
Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3
Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3
Nghiên cứu cơ chế routing của Cisco, mô phỏng trên nền GNS3
 
Báo cáo thực tập tốt nghiệp
Báo cáo thực tập tốt nghiệpBáo cáo thực tập tốt nghiệp
Báo cáo thực tập tốt nghiệp
 
Báo cáo tốt nghiệp
Báo cáo tốt nghiệpBáo cáo tốt nghiệp
Báo cáo tốt nghiệp
 
Báo cáo đề tài thực tập cuối kỳ
Báo cáo đề tài thực tập cuối kỳBáo cáo đề tài thực tập cuối kỳ
Báo cáo đề tài thực tập cuối kỳ
 
Báo cáo thực tập athena
Báo cáo thực tập athenaBáo cáo thực tập athena
Báo cáo thực tập athena
 
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAYĐề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
 
báo cáo thực tập tại trung tâm ATHENA
báo cáo thực tập tại trung tâm ATHENAbáo cáo thực tập tại trung tâm ATHENA
báo cáo thực tập tại trung tâm ATHENA
 
Báo cáo thực tập cuối kì
Báo cáo thực tập cuối kìBáo cáo thực tập cuối kì
Báo cáo thực tập cuối kì
 
Baocaothuctapcuoiky
BaocaothuctapcuoikyBaocaothuctapcuoiky
Baocaothuctapcuoiky
 
Báo cáo thực tập cuối kỳ
Báo cáo thực tập cuối kỳBáo cáo thực tập cuối kỳ
Báo cáo thực tập cuối kỳ
 
Báo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt NghiệpBáo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt Nghiệp
 
BÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬP
BÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬPBÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬP
BÁO CÁO CUỐI KÌ ĐỀ TÀI THỰC TẬP
 
Báo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt NghiệpBáo Cáo Thực Tập Tốt Nghiệp
Báo Cáo Thực Tập Tốt Nghiệp
 
Báo cáo thực tập cuối kì
Báo cáo thực tập cuối kìBáo cáo thực tập cuối kì
Báo cáo thực tập cuối kì
 
BÁO CÁO THỰC TẬP ATHENA
BÁO CÁO THỰC TẬP ATHENABÁO CÁO THỰC TẬP ATHENA
BÁO CÁO THỰC TẬP ATHENA
 
Hệ thống quản lý tiền lương và chất lượng giảng dạy của giảng viên
Hệ thống quản lý tiền lương và chất lượng giảng dạy của giảng viênHệ thống quản lý tiền lương và chất lượng giảng dạy của giảng viên
Hệ thống quản lý tiền lương và chất lượng giảng dạy của giảng viên
 
Báo Cáo Thực Tập Tốt Nghiệp Tại Athena
Báo Cáo Thực Tập Tốt Nghiệp Tại Athena Báo Cáo Thực Tập Tốt Nghiệp Tại Athena
Báo Cáo Thực Tập Tốt Nghiệp Tại Athena
 
BÁO CÁO THỰC TẬP
BÁO CÁO THỰC TẬPBÁO CÁO THỰC TẬP
BÁO CÁO THỰC TẬP
 

Viewers also liked

Bài thuyết trình hệ thống thông tin quản lý nhóm 1
Bài thuyết trình hệ thống thông tin quản lý nhóm 1Bài thuyết trình hệ thống thông tin quản lý nhóm 1
Bài thuyết trình hệ thống thông tin quản lý nhóm 1Angela Nguyễn
 
Giáo trình hệ thống thông tin quản lý chương 1
Giáo trình hệ thống thông tin quản lý  chương 1Giáo trình hệ thống thông tin quản lý  chương 1
Giáo trình hệ thống thông tin quản lý chương 1ductran88
 
Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)
Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)
Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)MasterCode.vn
 
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidBáo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidDlinh Truong
 
Phân tích thiết kế hệ thống thông tin
Phân tích thiết kế hệ thống thông tinPhân tích thiết kế hệ thống thông tin
Phân tích thiết kế hệ thống thông tinhuynhle1990
 
Đề thi hệ thống thông tin quản lý
Đề thi hệ thống thông tin quản lýĐề thi hệ thống thông tin quản lý
Đề thi hệ thống thông tin quản lýdlmonline24h
 
Bài 10 HỆ THỐNG THÔNG TIN
Bài 10 HỆ THỐNG THÔNG TINBài 10 HỆ THỐNG THÔNG TIN
Bài 10 HỆ THỐNG THÔNG TINMasterCode.vn
 
Đề cương ôn tập hệ thống thông tin quản lý
Đề cương ôn tập hệ thống thông tin quản lýĐề cương ôn tập hệ thống thông tin quản lý
Đề cương ôn tập hệ thống thông tin quản lýQuách Đại Dương
 
Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)MasterCode.vn
 
Báo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngBáo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngJojo Kim
 
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngPhân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngNguyễn Danh Thanh
 
đồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thị
đồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thịđồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thị
đồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thịThanh Hoa
 
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sựXây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sựAskSock Ngô Quang Đạo
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinVõ Phúc
 

Viewers also liked (14)

Bài thuyết trình hệ thống thông tin quản lý nhóm 1
Bài thuyết trình hệ thống thông tin quản lý nhóm 1Bài thuyết trình hệ thống thông tin quản lý nhóm 1
Bài thuyết trình hệ thống thông tin quản lý nhóm 1
 
Giáo trình hệ thống thông tin quản lý chương 1
Giáo trình hệ thống thông tin quản lý  chương 1Giáo trình hệ thống thông tin quản lý  chương 1
Giáo trình hệ thống thông tin quản lý chương 1
 
Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)
Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)
Hệ thống thông tin quản lý - Bài 3 Quản lý HTTT trong doanh nghiệp (phần 1)
 
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên AndroidBáo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
Báo Cáo Đề Tài Xây Dựng Phần Mềm Quản Lí Khách Hàng Trên Android
 
Phân tích thiết kế hệ thống thông tin
Phân tích thiết kế hệ thống thông tinPhân tích thiết kế hệ thống thông tin
Phân tích thiết kế hệ thống thông tin
 
Đề thi hệ thống thông tin quản lý
Đề thi hệ thống thông tin quản lýĐề thi hệ thống thông tin quản lý
Đề thi hệ thống thông tin quản lý
 
Bài 10 HỆ THỐNG THÔNG TIN
Bài 10 HỆ THỐNG THÔNG TINBài 10 HỆ THỐNG THÔNG TIN
Bài 10 HỆ THỐNG THÔNG TIN
 
Đề cương ôn tập hệ thống thông tin quản lý
Đề cương ôn tập hệ thống thông tin quản lýĐề cương ôn tập hệ thống thông tin quản lý
Đề cương ôn tập hệ thống thông tin quản lý
 
Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 2 Tổng quan về hệ thống thông tin (phần 2)
 
Báo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thốngBáo cáo bài tập lớn phân tích thiết kế hệ thống
Báo cáo bài tập lớn phân tích thiết kế hệ thống
 
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngPhân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
 
đồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thị
đồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thịđồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thị
đồ áN phân tích thiết kế hệ thống quản lý bán hàng siêu thị
 
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sựXây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
 

Similar to Athena.report

Bao cao cuoi ki_ Nguyen Dang Van
Bao cao cuoi ki_ Nguyen Dang VanBao cao cuoi ki_ Nguyen Dang Van
Bao cao cuoi ki_ Nguyen Dang VanNguyễn Vân
 
nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008Khanh Dinh
 
Báo cáo cuối kỳ athena
Báo cáo cuối kỳ athenaBáo cáo cuối kỳ athena
Báo cáo cuối kỳ athenaLeHongQuang2912
 
Nguyenthithuhien_baocaothuctap
Nguyenthithuhien_baocaothuctapNguyenthithuhien_baocaothuctap
Nguyenthithuhien_baocaothuctapThu Hien
 
Bao cao thuc tap
Bao cao thuc tapBao cao thuc tap
Bao cao thuc tapLeo Aurico
 
Bao cao thuc tap tran thanhtrung mssv 1031103002
Bao cao thuc tap tran thanhtrung mssv 1031103002Bao cao thuc tap tran thanhtrung mssv 1031103002
Bao cao thuc tap tran thanhtrung mssv 1031103002Trung Tran
 
đồ án thực tập cuoi ki tại athena
đồ án thực tập cuoi ki tại athenađồ án thực tập cuoi ki tại athena
đồ án thực tập cuoi ki tại athenaHuy Bach
 
Bao cao cuoi ky [fixed]
Bao cao cuoi ky [fixed]Bao cao cuoi ky [fixed]
Bao cao cuoi ky [fixed]TranQuangChien
 

Similar to Athena.report (20)

Bao cao cuoi ki_ Nguyen Dang Van
Bao cao cuoi ki_ Nguyen Dang VanBao cao cuoi ki_ Nguyen Dang Van
Bao cao cuoi ki_ Nguyen Dang Van
 
nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008
 
Báo cáo cuối kỳ athena
Báo cáo cuối kỳ athenaBáo cáo cuối kỳ athena
Báo cáo cuối kỳ athena
 
Nguyenthithuhien_baocaothuctap
Nguyenthithuhien_baocaothuctapNguyenthithuhien_baocaothuctap
Nguyenthithuhien_baocaothuctap
 
Bao cao thuc tap
Bao cao thuc tapBao cao thuc tap
Bao cao thuc tap
 
Đề tài: Đăng ký khối lượng công tác trong năm học của giảng viên
Đề tài: Đăng ký khối lượng công tác trong năm học của giảng viênĐề tài: Đăng ký khối lượng công tác trong năm học của giảng viên
Đề tài: Đăng ký khối lượng công tác trong năm học của giảng viên
 
Bao cao thuc tap tran thanhtrung mssv 1031103002
Bao cao thuc tap tran thanhtrung mssv 1031103002Bao cao thuc tap tran thanhtrung mssv 1031103002
Bao cao thuc tap tran thanhtrung mssv 1031103002
 
đồ án thực tập cuoi ki tại athena
đồ án thực tập cuoi ki tại athenađồ án thực tập cuoi ki tại athena
đồ án thực tập cuoi ki tại athena
 
Bao cao cuoi ky [fixed]
Bao cao cuoi ky [fixed]Bao cao cuoi ky [fixed]
Bao cao cuoi ky [fixed]
 
Phan cường
Phan cườngPhan cường
Phan cường
 
Phan cường
Phan cườngPhan cường
Phan cường
 
Đề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm học
Đề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm họcĐề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm học
Đề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm học
 
Đề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm học
Đề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm họcĐề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm học
Đề tài: Chương trình hỗ trợ đăng ký kế hoạch công tác năm học
 
Thuc tap
Thuc tapThuc tap
Thuc tap
 
Bao caotttn
Bao caotttnBao caotttn
Bao caotttn
 
Báo cáo athena
Báo cáo  athenaBáo cáo  athena
Báo cáo athena
 
Đề tài: Tìm hiểu về Web Service và ứng dụng, HAY, 9đ
Đề tài: Tìm hiểu về Web Service và ứng dụng, HAY, 9đĐề tài: Tìm hiểu về Web Service và ứng dụng, HAY, 9đ
Đề tài: Tìm hiểu về Web Service và ứng dụng, HAY, 9đ
 
Đề tài: Chương trình xét tuyển đại học dựa vào kết quả học tập
Đề tài: Chương trình xét tuyển đại học dựa vào kết quả học tậpĐề tài: Chương trình xét tuyển đại học dựa vào kết quả học tập
Đề tài: Chương trình xét tuyển đại học dựa vào kết quả học tập
 
Đề tài: Xây dựng ứng dụng hỗ trợ giao tiếp hội nghị, HAY, 9đ
Đề tài: Xây dựng ứng dụng hỗ trợ giao tiếp hội nghị, HAY, 9đĐề tài: Xây dựng ứng dụng hỗ trợ giao tiếp hội nghị, HAY, 9đ
Đề tài: Xây dựng ứng dụng hỗ trợ giao tiếp hội nghị, HAY, 9đ
 
Đề tài: Xây dựng ứng dụng hỗ trợ giao tiếp trực tuyến hội nghị
Đề tài: Xây dựng ứng dụng hỗ trợ giao tiếp trực tuyến hội nghịĐề tài: Xây dựng ứng dụng hỗ trợ giao tiếp trực tuyến hội nghị
Đề tài: Xây dựng ứng dụng hỗ trợ giao tiếp trực tuyến hội nghị
 

Athena.report

  • 1. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 1 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA KỸ THUẬT MÁY TÍNH -------------------------------- NGHIÊN CỨU, XÂY DỰNG PHẦN MỀN QUẢN LÝ NHÂN SỰ TRÊN ANDROID BÁO CÁO THỰC TẬP DOANH NGHIỆP SV thực hiện: Ngô Thanh Tuấn MSSV: 10520456 Lớp: KTMT2010 Người hướng dẫn: Võ Đỗ Thắng Thành phố Hồ Chí Minh – Năm 2014
  • 2. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 2 LỜI CẢM ƠN Sau khoảng ba tháng thực tập tại ATHENA em đã hoàn thành Báo cáo thực tập, vẫn đang là những sinh viên chưa tốt nghiệp nên em không có điều kiện tiếp xúc nhiều với thực tiễn, vẫn chưa có nhiều kinh nghiệm làm việc thực tiễn nhưng trong thời gian tiếp cận thực tế đã giúp em hiểu sâu hơn về kiến thức đã học ở trường và đồng thời bổ sung thêm những kiến thức mà em chưa được học, đó là hành trang vô cùng quý báu cho em khi rời ghế nhà trường cũng như công việc tương lai. Để hoàn thành đợt thực tập này, em đã nhận được sự giúp đỡ tận tình của Trung tâm ATHENA, cùng nhiều người khác. Nhờ đó, em đã tiếp thu được nhiều kiến thức và kinh nghiệm thực tế. Em xin gủi lời cảm ơn chân thành đến :  Trung tâm ATHENA đã tạo điều kiện cho em thực tập.  Thầy Võ Đỗ Thắng đã trực tiếp hướng dẫn em trong quá trình thực tập.  Toàn thể nhân viên trong ATHENA đã luôn nhiệt tình giúp đỡ, cũng như tạo một môi môi trường làm việc rất thân thiện. Trong quá trình thực tập chắc chắn không tránh khỏi những sai lầm, thiếu sót rất mong các Thầy bỏ qua. Kính mong Trung tâm ATHENA và thầy cô đóng góp ý kiến để sau khi tốt nghiệp em có thể hoàn thiện bản thân và trở thành người có năng lực hơn. Xin chân thành cảm ơn! Sinh viên thực hiện Ngô Thanh Tuấn
  • 3. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 3 ĐÁNH GIÁ KẾT QUẢ THỰC TẬP CỦA GVHD ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... ............................................................................................................................................... TP. HCM, ngày … tháng … năm ………. Giảng viên hướng dẫn (Ký và ghi rõ họ tên)
  • 4. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 4 PHỤ LỤC LỜI CẢM ƠN .................................................................................................................... 1 ĐÁNH GIÁ KẾT QUẢ THỰC TẬP CỦA GVHD......................................................... 3 I. LỊCH LÀM VIỆC TẠI NƠI THỰC TẬP ............................................................. 5 II. GIỚI THIỆU TRUNG TÂM ATHENA ................................................................ 5 III. NỘI DUNG NHIỆM VỤ CHÍNH ĐƯỢC GIAO TẠI ATHENA........................ 6 IV. NỘI DUNG CÁC CÔNG VIỆC VÀ KẾT QUẢ ĐẠT ĐƯỢC............................. 7 CHƯƠNG I: KHẢO SÁT HỆ THỐNG.................................................................................................7 CHƯƠNG II: PHÂN TÍCH VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU..............................................8 1. Các chức năng cơ bản của hệ thống..................................................................................................8 2. Xây dựng mô hình ERD về hệ thống quản lý nhân sự......................................................................9 3. Xây dựng mô hình cơ sở dữ liệu.....................................................................................................10 CHƯƠNG III: XÂY DỰNG CƠ SỞ DỮ LIỆU ......................................................................................13 1. Hệ cơ sở dữ liệu ..............................................................................................................................13 2. Sử dụng phpMyAdmin để tạo cơ sở dữ liệu cho chương trình ..........Error! Bookmark not defined. CHƯƠNG IV: GIỚI THIỆU PHƯƠNG THỨC KẾT NỐI VỚI DATABASE.......................................15 I. CLIENT: .........................................................................................................................................15 II. WEB SERVICE:.............................................................................................................................18 CHƯƠNG V: KIẾN TRÚC HỆ THỐNG VÀ DEMO CHƯƠNG TRÌNH ............... 22 I. Kiến trúc hệ thống chương trình trên Android:.............................................................................22 II. Demo Chương Trình......................................................................................................................25 KẾT QUẢ ĐẠT ĐƯỢC QUA THỰC TẬP ............................................................................................30 V. TÀI LIỆU THAM KHẢO..................................................................................... 31
  • 5. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 5 I. LỊCH LÀM VIỆC TẠI NƠI THỰC TẬP 1. Đơn vị thực tập : TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG QUỐC TẾ ATHENA 2. Người hướng dẫn: Thầy Võ Đỗ Thắng (Giám Đốc Trung Tâm ATHENA) 3. Sinh viên: Ngô Thanh Tuấn MSSV: 10520456 Khoa: KTMT2010 Lịch thực tập: - Thứ 3 hàng tuần từ 10h00 am - 14h00 pm - Thứ 4 và thứ 5 hàng tuần từ 17h00 pm – 20h00 pm II. GIỚI THIỆU TRUNG TÂM ATHENA Trung Tâm Đào Tạo Quản Trị Mạng & An Ninh Mạng Quốc Tế ATHENA được thành lập từ năm 2004, là một tổ chức qui tụ nhiều trí thức trẻ Việt Nam đầy năng động, nhiệt huyết và kinh nghiệm trong lãnh vực CNTT, với tâm huyết góp phần vào công cuộc thúc đẩy tiến trình đưa công nghệ thông tin là ngành kinh tế mũi nhọn, góp phần phát triển nước nhà. Lĩnh vực hoạt động chính: Trung tâm ATHENA đã và đang tập trung chủ yếu vào đào tạo chuyên sâu quản trị mạng, an ninh mạng, thương mại điện tử theo các tiêu chuẩn quốc tế của các hãng nổi tiếng như Microsoft, Cisco, Oracle, Linux LPI , CEH,... Song song đó, trung tâm ATHENA còn có những chương trình đào tạo cao cấp dành riêng theo đơn đặt hàng của các đơn vị như Bộ Quốc Phòng, Bộ Công An , ngân hàng, doanh nghiệp, các cơ quan chính phủ, tổ chức tài chính.. + Sau gần 10 năm hoạt động,nhiều học viên tốt nghiệp trung tâm ATHENA đã là chuyên gia đảm nhận công tác quản lý hệ thống mạng, an ninh mạng cho nhiều bộ ngành như Cục Công Nghệ Thông Tin - Bộ Quốc Phòng , Bộ Công An, Sở Thông Tin Truyền Thông các tỉnh, bưu điện các tỉnh,.,.... + Ngoài chương trình đào tạo, Trung tâm ATHENA còn có nhiều chương trình hợp tác và trao đổi công nghệ với nhiều đại học lớn như đại học Bách Khoa Thành Phố Hồ Chí
  • 6. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 6 Minh, Học Viện An Ninh Nhân Dân( Thủ Đức), Học Viện Bưu Chính Viễn Thông, Hiệp hội an toàn thông tin (VNISA), Viện Kỹ Thuật Quân Sự ,...... Đội ngũ giảng viên : + Tất cả các giảng viên trung tâm ATHENA có đều tốt nghiệp từ các trường đại học hàng đầu trong nước .... Tất cả giảng viên ATHENA đều phải có các chứng chỉ quốc tế như MCSA, MCSE, CCNA, CCNP, Security+, CEH,có bằng sư phạm Quốc tế (Microsoft Certified Trainer).Đây là các chứng chỉ chuyên môn bắt buộc để đủ điều kiện tham gia giảng dạy tại trung tâm ATHENA + Bên cạnh đó,Các giảng viên ATHENA thường đi tu nghiệp và cập nhật kiến thức công nghệ mới từ các nước tiên tiến như Mỹ , Pháp, Hà Lan, Singapore,... và truyền đạt các công nghệ mới này trong các chương trình đào tạo tại trung tâm ATHENA. Dịch vụ hỗ trợ: + Đảm bảo việc làm cho học viên tốt nghiệp khoá dài hạn + Giới thiệu việc làm cho mọi học viên + Thực tập có lương cho học viên khá giỏi + Ngoài giờ học chính thức, học viên được thực hành thêm miễn phí, không giới hạn thời gian. + Hỗ trợ kỹ thuật không thời hạn trong tất cả các lĩnh vực liên quan đến máy tính, mạng máy tính, bảo mật mạng + Hỗ trợ thi Chứng chỉ Quốc tế. III. NỘI DUNG NHIỆM VỤ CHÍNH ĐƯỢC GIAO TẠI ATHENA 1. Nghiên cứu mô hình ERD, thiết kế Database cho hệ thống quản lý nhân sự. 2. Nghiên cứu, cài đặt Android,cài đặt máy ảo giả lập, các công cụ hỗ trợ xây dựng hệ thống quản lý nhân sự. 3. Xây dựng hệ thống, nghiên cứu và sử dụng thuật toán JSON kết nối database  Sử dụng phpMyAdmin để tạo cơ sở dữ liệu cho chương trình.  Phương thức json kết nối database
  • 7. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 7  Web sercive 4. Tạo report – báo cáo kết quả làm được hàng tuần IV. NỘI DUNG CÁC CÔNG VIỆC VÀ KẾT QUẢ ĐẠT ĐƯỢC CHƯƠNG I: KHẢO SÁT HỆ THỐNG 1. Tổng quan về hệ thống quản lý Quản lý là cách biểu hiện một ý chí muốn biến đổi và thuần phục một tổng thể các hiện tượng. Đó là việc tạo ra các sự kiện, thay vì để cho các sự kiện xảy ra bộc phát. Đây không phải là sự lắp ráp các nhiệm vụ rời rạc mà là hoạt động phân biệt rõ ràng với các chức năng khác của tổ chức. 2. Chức năng và nhiệm vụ của hệ thống quản lý nhân sự Hệ thống quản lý nhân sự có chức năng thường xuyên thông báo cho ban lãnh đạo về các mặt công tác: tổ chức lao động, tiền lương... cho nhân viên, hệ thống này được đặt dưới sự chỉ đạo trực tiếp của giám đốc. Với chức năng như vậy, hệ thống quản lý nhân sự có nhiệm vụ luôn cập nhật hồ sơ cán bộ công nhân viên theo quy định, thường xuyên bổ xung những thông tin thay đổi trong quá trình công tác của cán bộ công nhân viên, việc theo dõi và quản lý lao động để thanh toán lương cũng là nhiệm vụ quan trọng của hệ thống. Ngoài ra, công tác thống kê báo cáo tình hình theo yêu cầu của ban giám đốc cũng là nhiệm vụ không thể thiếu trong hệ thống quản lý cán bộ . 3. Yêu cầu của hệ thống và những khó khăn Trước một khối lượng lớn nhân viên cũng như các yêu cầu đặt ra thì việc quản lý theo phương pháp thủ công sẽ không thể đáp ứng được, do đó gặp rất nhiều khó khăn. Nó đòi hỏi phải có nhiều nhân lực, nhiều thời gian và công sức, mỗi nhân sự của cơ quan thì
  • 8. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 8 có một hồ sơ cho nên việc lưu trữ, tìm kiếm, bổ sung, sửa đổi để đáp ứng yêu cầu không phải là dễ dàng. Từ những nhược điểm trên ta thấy cần thiết phải có một hệ thống tin học hoá cho việc quản lý nhân sự cũng như các hệ thống quản lý khác. 4. Những yêu cầu đặt ra đối với hệ thống Cùng với sự phát triển của xã hội, công tác tổ chức quản lý cũng cần được đầu tư và phát triển để có thể đáp ứng tốt đuợc yêu cầu cũng như giúp cấp lãnh đạo thực hiện tốt các chủ trương chính sách đối với cán bộ công nhân viên chức. Trước hết để quản lý được một khối lượng nhân viên của một cơ quan, phải tổ chức tốt hệ thống lưu trữ hồ sơ để có thể đáp ứng được những yêu cầu: tiết kiệm tài nguyên, dễ tìm kiếm, dễ bổ xung sửa đổi. Ngoài ra hệ thống mới phải có khả năng phát hiện lỗi và xử lý kiểm tra tính đúng đắn của dữ liệu ngay từ khi cập nhật. CHƯƠNG II: PHÂN TÍCH VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU 1. Các chức năng cơ bản của hệ thống Qua quá trình nghiên cứu, nhóm đã xây dựng được một hệ cơ sở dữ liệu quản lý nhân sự cơ bản đáp ứng được một số yêu cầu của các doanh nghiệp như sau: - Quản lý thông tin nhân sự bao gồm đầy đủ, chi tiết về nhân sự trong doanh nghiệp - Theo dõi, cập nhật thường xuyên thông tin nhân sự, phòng ban, tổ đội trong doanh nghiệp - Tính lương cho nhân viên theo công thức có sẵn hoặc công thức do người sử dụng tự cập nhật vào, các chế độ đãi ngộ tương ứng. - Quản lý các thông tin liên quan tới việc tuyển dụng nhân sự mới trong doanh nghiệp - Trả hồ sơ cho nhân viên khi chấm dứt hợp đồng lao động.
  • 9. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 9 Biểu đồ phân cấp chức năng của hệ quản lý nhân sự 2. Xây dựng mô hình ERD về hệ thống quản lý nhân sự Các thực thể và thuộc tính tương ứng: a.NHANVIEN (MaNV, HoTen, GioiTinh, NgaySinh, DanToc, QueQuan, SoDienThoai, MaPB, MaCV, MaTDHV, BACLUONG) b.PHONGBAN (MaPB, TenPhongBan, SoDienThoai) c.CHUCVU (MaCV, TenCV) d.TDHV (MaTDHV, TenTrinhDo) e.LUONG (BacLuong, LuongCoban, HesoLuong, HesoPhucap) f.TGCT(MaNV, MaCV, NgayNhamChuc) g.THONGBAO(MaTB, ThongBao, MaPB, ThoiGian) QUẢN LÝ NHÂN SỰ
  • 10. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 10 Mô hình ERD trong quản lý nhân sự 3. Xây dựng mô hình cơ sở dữ liệu Thiết kế các file dữ liệu 3.1.1 Bảng NHAN VIEN lưu trữ thông tin về các nhân viên của công ty đang trong hiệu lực của hợp đồng STT Tên trường Kiểu Độ rộng Giải thích 1 MaNV Text 10 Mã nhân viên 2 HoTen Text 30 Họ và tên nhân viên 3 NgaySinh Date/Time 10 Ngày sinh
  • 11. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 11 4 QueQuan Text 20 Quê quán 5 GioiTinh Text 5 Giới tính 6 DanToc Text 20 Dân tộc 7 SoDienthoai Number 20 Số điện thoại liên lạc 8 MaPB Text 15 Mã phòng ban 9 MaCV Text 15 Mã chức vụ 10 MaTDVH Text 15 Mã trình độ văn hóa 11 BacLuong Number 10 Bậc lương 3.1.2 Bảng PHONG BAN lưu trữ các thông tin về nhiệm vụ của các phòng ban trong tổ chức doanh nghiệp Stt Tên trường Kiểu Độ rộng Giải thích 1 MaPB Text 10 Mã phòng ban 2 TenPB Text 30 Tên phòng ban 3 SoDienthoaiPB Text 20 Số điện thoại phòng ban
  • 12. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 12 3.1.3 Bảng CHUC VU quản lý các chức danh hiện có của kết cấu tổ chức trong doanh nghiệp Stt Tên trường Kiểu Độ rộng Giải thích 1 MaCV Text 10 Mã chức vụ 2 TenCV Text 20 Tên chức vụ 3.1.4 Bảng TDHV (trình độ học vấn) quản lý các trình độ chuyên môn đã đạt được của nhân viên cho tới thời điểm hiện tại Stt Tên trường Kiểu Độ rộng Giải thích 1 MaTDHV Text 10 Mã trình độ học vấn 2 TenTrinhDo Text 20 Tên trình độ học vấn 3.1.5 Bảng LUONG lưu trữ thông tin về hệ số lương và các phụ cấp của doanh nghiệp Stt Tên trường Kiểu Độ rộng Giải thích 1 BacLuong Number 10 Bậc lương 2 LuongCoban Number 20 Lương cơ bản 3 HesoLuong Number 10 Hệ số lương 4 HesoPhucap Number 10 Hệ số phụ cấp
  • 13. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 13 3.1.6 Bảng TGCT (thời gian công tác) dùng để lưu trữ thời gian bắt đầu đảm nhiệm chức vụ của mỗi nhân viên Stt Tên trường Kiểu Độ rộng Giải thích 1 MaNV Text 10 Mã nhân viên 2 MaCV Text 10 Mã chức vụ 3 NgayNhamChuc Date/Time 20 Ngày nhậm chức 3.1.7 Bảng THONGBAO dùng để thông báo cho các phòng ban. Stt Tên trường Kiểu Độ rộng Giải thích 1 MaTB Text 15 Mã thông báo 2 ThongBao Text 300 Thông báo 3 MaPB Text 10 Mã phòng ban 4 NgayThongBao Date/Time 20 Ngày nhận thông báo CHƯƠNG III: XÂY DỰNG CƠ SỞ DỮ LIỆU Hệ cơ sở dữ liệu Cơ sở dữ liệu là một kho chứ thông tin, có nhiều loại cơ sở dữ liệu, trong đó phổ biến nhất hiện nay chính là cơ sở dữ liệu quan hệ. Một cơ sở dữ liệu quan hệ: - Chứa dữ liệu trong các bảng, được cấu tạo bởi các dòng (mẫu tin) và các cột (trường)
  • 14. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 14 - Cho phép lấy về (truy vấn) các tập hợp dữ liệu con từ các bảng. - Cho phép nối các bảng lại với nhau cho mục đích truy cập các mẫu tin liên quan với nhau chứa trong các bảng khác nhau. Bộ máy cơ sở dữ liệu: Chức năng cơ bản của một cơ sở dữ liệu được cung cấp bởi một bộ máy cơ sở dữ liệu, là hệ thống quản lý cách thức chứa và trả về dữ liệu. Bảng và trường: Các cơ sở dữ liệu được cấu tạo từ các bảng dùng thể hiện các phân nhóm dữ liệu. Bảng chứa các mẫu tin là các mẫu dữ liệu riêng rẽ bên trong phân nhóm dữ liệu. Mẫu tin chứa các trường, mỗi trường thể hiện một bộ phận dữ liệu trong một mẫu tin. RecordSet: Khi tạo bảng cần nắm được cách thao tác với các bảng. Thao tác với các bảng liên quan đến việc nhập và lấy về dữ liệu từ các bảng khác cũng như việc kiểm tra và sữa đổi cấu trúc bảng. Thao tác dữ liệu trong một bảng ta dùng Recordset. RecordSet là một cấu trúc dữ liệu thể hiện một tập hợp con các mẫu tin lấy về từ cơ sở dữ liệu. Khóa chính: Một trường được chỉ ra là khóa chính của bảng phục vụ cho việc xác định duy nhất các thuộc tính Khóa ngoại: Là khóa trong bảng liên quan chứa bản sao của khóa chính của bản chính Mối quan hệ: là một cách định nghĩa chính thức hai bảng liên hệ với nhau như thế nào. Khi định nghĩa một mối quan hệ, tức đã thông báo với bộ máy CSDL rằng hai trường trong hai bảng liên quan được nối với nhau. Hai trường liên quan với nhau trong một mối quan hệ là khóa chính và khóa ngoại. Ngoài việc ghép các mẫu tin liên quan trong những bảng riêng biệt, mối quan hệ còn tận dụng thế mạnh của tính toàn vẹn tham chiếu, một thuộc tính của bộ máy CSDL duy trì các dữ liệu trong một CSDL nhiều bảng luôn luôn nhất quán. Khi tính toàn vẹn tham chiếu tồn tại trong một CSDL, bộ máy CSDL sẽ ngăn cản khi xóa một mẫu tin khi có các mẫu tin khác tham chiếu đến nó trong CSDL.
  • 15. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 15 CHƯƠNG IV: GIỚI THIỆU PHƯƠNG THỨC KẾT NỐI VỚI DATABASE Về ứng dụng, đây là ứng dụng quản lý, nên tính bảo mật cũng phải đòi hỏi cao hơn các ứng dụng khác. Database của ứng dụng không thể nằm trên điện thoại được vì dung lượng database quá lơn, và dễ dàng bị xem trộm nếu điện thoại đó sử dụng các phần mềm duyệt file chuyên dụng. Do đó, database của ứng dụng sẽ nằm ở server độ bảo mật sẽ cao hơn. Tất nhiên nếu như vậy thì doanh nghiệp sẽ tốn thêm phần chi phí cho việc thuê máy chủ và nhân việc điều hành quản lý, nhưng bù lại, bảo mật sẽ cao hơn. Môi trường server của nhóm xây dựng sẽ là server ảo, nhóm sử dụng phần mềm xamp 1.8 , đây là phần mềm giả lập seb server. Về phần cái đặt và config thì nhóm không đê cập tới, vì khi config kết nối, nhóm sử dụng hoàn toàn config mặc định trong quá trình cái đặt xamp. Khi kết nối cần 1 trung gian để gửi nhận dữ liệu, qua tìm hiểu nhóm biết được json là 1 chuẩn định dạng dữ liệu gửi nhận giữa các ngôn ngữ khác nhau. I. CLIENT: Đâu tiên ở client android nhóm xây dựng 1 class JSONParser có chức năng định nghĩa json, nhận dữ liệu từ trên web service về và định dạng dữ liệu nhận, ở đây dữ liệu nhận về sẽ là 1 mảng 1 chiều dữ liệu.
  • 16. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 16 public class JSONParser { static InputStream is = null; static JSONObject jObj = null; static String json = ""; public JSONParser() { } public JSONObject getJSONFromUrl(String url, List<NameValuePair> params) { try { DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(url); httpPost.setEntity(new UrlEncodedFormEntity(params)); HttpResponse httpResponse = httpClient.execute(httpPost); HttpEntity httpEntity = httpResponse.getEntity(); is = httpEntity.getContent(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } try { BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8); StringBuilder sb = new StringBuilder(); String line = null; while ((line = reader.readLine()) != null) { sb.append(line + "n"); } is.close(); json = sb.toString();
  • 17. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 17 Log.e("JSON", json); } catch (Exception e) { Log.e("Buffer Error", "Error converting result " + e.toString()); } try { jObj = new JSONObject(json); } catch (JSONException e) { Log.e("JSON Parser", "Error parsing data " + e.toString()); } return jObj; } } Kế đến là class UserFunctions class này thực hiện các yêu cầu của người dùng tương tác với database . Class này bản chất là sử dụng jsonParser và xây dựng các phương thức của đối tượng được định nghĩa bởi class jsonParser này: ở đây nhóm giới thiệu 1 yêu cầu của phần client là phương thức đăng ký: Client sẽ gửi các tag là dạng String lên server cụ thể đây là gửi tag login, và gửi các chuỗi là các biến cần thiết, tất cả được đưa vào 1 list params. Sau đó gửi lên server server nhận tag. Thực hiện yêu cầu gửi về lại là 1 json. Và phương thức này nhận json đã gửi về sau đó trả ra giá trị là json vửa nhận được đó. Json đấy là tất cả nhưng gì mình cần. public class UserFunctions { private JSONParser jsonParser; private static String loginURL = "http://192.168.0.111/android_login_api/"; private static String registerURL = "http://192.168.0.111/android_login_api/"; private static String login_tag = "login"; public UserFunctions(){ jsonParser = new JSONParser(); } public JSONObject loginUser(String email, String password){
  • 18. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 18 List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair("tag", login_tag)); params.add(new BasicNameValuePair("email", email)); params.add(new BasicNameValuePair("password", password)); JSONObject json = jsonParser.getJSONFromUrl(loginURL, params); return json; } } Sau khi cài đặt xamp. Trong thư mục localhost của phần mềm cụ thể ở đây là htdocs C:xampphtdocs nhóm tạo folder là android_login_api. Như vậy ta được dạng địa chỉ như sau: C:xampphtdocsandroid_login_api ở client cần có link kết nối. link kết nối ở đây là ip localhost tức là ip của máy tính trong cùng 1 đường mạng với điện thoại client được kết nối. Máy tính đóng vai trò là server. Ở đây nhóm sử dụng router wifi làm đường mạng kết nối chung cho máy tính sever và điện thoại client. Ip của máy tính là 192.168.0.111 đo đó link kết nối tới sever là http://192.168.0.111/android_login_api/ II. WEB SERVICE: Trong thư mục android_login_api ta cần thêm các file như sau:
  • 19. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 19 Index.php là 1 chương trình viết bằng mã php. Khi người dùng kết nối tới link : http://192.168.0.111/android_login_api/ thì index.php sẽ được gọi ra. Chương trình này có chức năng nhận các lệnh gửi từ client, phân tích và xử lý các yêu cầu, đóng gọi lại các dữ liệu vào json. Sau đó gửi về ngược lại client. Và đương nhiên để lấy được dữ liệu từ database ta cần phải có tài khoản, pass login vào MySQL vì xamm sử dụng MySQL làm hệ quản trị cơ sơ dữ liệu. Phần config kết nối em sẽ trình bày sau. <?php if (isset($_POST['tag']) && $_POST['tag'] != '') { // get tag $tag = $_POST['tag']; // include db handler require_once 'include/DB_Functions.php'; $db = new DB_Functions(); // response Array $response = array("tag" => $tag, "success" => 0, "error" => 0); // check for tag type if ($tag == 'login') { . . . if ($user != false) { . . . echo json_encode($response); } else { $response["error"] = 1; $response["error_msg"] = "Incorrect email or password!"; echo json_encode($response); }} else { echo "Invalid Request"; }
  • 20. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 20 } else { echo "Access Denied"; } ?> Trong thư mục include chứ các class php thực hiện cho việc kết nối database và hàm truy xuất dữ liệu từ php: Hàm kết nối: tên file config.php <?php define("DB_HOST", "localhost"); define("DB_USER", "root"); define("DB_PASSWORD", ""); define("DB_DATABASE", "staff-manager"); ?> Tên file DB_Connect.php <?php class DB_Connect { // constructor function __construct() { } // destructor function __destruct() { // $this->close(); } // Connecting to database public function connect() { require_once 'include/config.php'; // connecting to mysql $con = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); // selecting database mysql_select_db(DB_DATABASE); // return database handler
  • 21. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 21 return $con; } // Closing database connection public function close() { mysql_close(); } } ?> Đây là 2 class kết nối với database khởi tạo và hủy databse. Kế đến là class DB_funtion Class này có chức năng là truy xuất dữ liệu từ database <?php class DB_Functions { private $db; //put your code here // constructor function __construct() { require_once 'DB_Connect.php'; // connecting to database $this->db = new DB_Connect(); $this->db->connect(); } // destructor function __destruct() { } public function getUserByEmailAndPassword($email, $password) { ……………………. } public function hashSSHA($password) { $salt = sha1(rand());
  • 22. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 22 $salt = substr($salt, 0, 10); $encrypted = base64_encode(sha1($password . $salt, true) . $salt); $hash = array("salt" => $salt, "encrypted" => $encrypted); return $hash; } /** * Decrypting password * @param salt, password * returns hash string */ public function checkhashSSHA($salt, $password) { $hash = base64_encode(sha1($password . $salt, true) . $salt); return $hash; } } ?> CHƯƠNG V: KIẾN TRÚC HỆ THỐNG VÀ DEMO CHƯƠNG TRÌNH I. Kiến trúc hệ thống chương trình trên Android: Nhóm thiết kế hệ thống chương trình trên Android bao gồm 2 packet: Package com.example.Staff_Manager chứa các class chính của chương trình. Các class này có nhiệm vụ khởi tạo các layout, các button,textview trong layout đó, chạy và thực hiện các tương tác của người dùng với layout tương ứng, các thao tác được layout ghi nhận và xử lý thông qua các phương thức của của các class trong package : public class LoginActivity extends Activity : class khởi chạy layout login.xml, layout xử lý phần đăng nhập của người dùng.
  • 23. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 23 public class GetpasswordActivity extends Activity: class khởi chạy layout getpassword.xml, là layout giúp nhân viên đang ký tài khoản đăng nhập, hoặc lấy lại mật khẩu đang nhập đã quên. Để thực hiện nhân viên cần có các thông tin sau: +ma_nv: mã nhân viên +ten_nv: tên nhân viên +regcode: đoạn mã an ninh của mỗi nhân viên, mã này được cung cấp khi nhân viên làm hồ sơ aply vào công ti. Mã này chỉ cung cấp 1 lần cho nhân viên, đang là mã xác nhận bảo mật cho nhân viên. public class ManagerActivity extends Activity : class khởi chạy layout manager.xml là layout chính của chương trình. Bao gồm 12 button chức năng chính của chương trình. Khi chọn các button này các tác vụ tương ứng sẽ gọi ra cac phương thức tương ưng trong Class UserFuntion. Các class còn lại DanhSachNhanVien, danhsachpbedit, DanhSachPhongBan, listNhanVienPB, listNhanvienpbedit. Là các class xử lý các layout về danh sách nhân viên, danh sách phòng ban….được gọi khi người dùng thực hiện tác vụ trong layout manager.xml Package com.example.Staff_Manager.library chứa các class thuật toán của chương trình bao gồm: class xử lý database, class đóng gói dử liệu gũi dữ liệu client tới server và xử lý nhận dữ liệu về. class này dùng lớp JSONObject và JSONarray trong android SDK. public class DatabaseHandler extends SQLiteOpenHelper {..} Xử lý các tác vụ liên quan đến cơ sở dữ liệu, class này dùng để xác nhận trạng thái đăng nhập của người dùng trên hệ thống. tạo database ảo trong bộ nhớ máy. Database này hoàn toàn rỗng. public class JSONParser Class này định dạng tập lệnh gũi lên sever có dạng như thế nào, sau đó định dạng lại dữ liệu nhận. public JSONObject getJSONFromUrl(String url, List<NameValuePair> params) {..} gũi yêu cầu là 1 dạng mãng String kiểu params lên địa chỉ kết nối là url. Sau đó nhận dữ liệu về và ghi vào buffer. Dữ liệu nhận về là 1 chuỗi. chuỗi này sẽ nén vào JSONObject.
  • 24. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 24 public class UserFunctions {} Đúng như tên gọi của class, class này chứa toàn bộ thuật toán xử lý dữ liệu gũi và nhận của chương trình. Bao gồm các phương thức sau: Nhóm 1 Phương thức gũi lệnh lên url tương ứng, các lệnh là 1 tập chuỗi có dạng String. public JSONObject loginUser(String email, String password) {} public JSONObject registerUser(String name, String email, String password,String ma_nv) {} public boolean isUserLoggedIn(Context context) public boolean logoutUser(Context context) public JSONObject updateuser(String email, String password) public JSONObject getdataby(String tag, String maptable, String mapfield, String mapvalue) public JSONObject changenhanvien(String tag, String option, String ma_nv, String ten_nv, String ma_cv,String ma_pb,String tuoi, String sodt, String cmnd,String recode) public JSONObject changenphongban(String tag, String option, String ma_pb, String ten_pb) public JSONObject getlistNv() public JSONObject getlistPb() public JSONObject creatthongbao(String ma_tb,String noidung,String tuan, String ma_nv,String ma_pb) public JSONObject delnhanvien(String ma_nv) public JSONObject delphongban(String ma_pb) public JSONObject getListNvPb(String ma_pb) Khi thực hiện các phương thức này đóng gói dữ liệu thành 1 mảng params gũi lên url tương ứng, chờ đợi phía bên webservice xử lý trả dữ liệu về tất nhiên là dữ liệu kiểu json, sau đó phương thức trả kết quả cuối cùng là return JSONObject. Nhóm 2: phương thức xử lý các tác vụ chính của người dùng ở layout chính public void thongtinnhanvien(String ma_nv, Activity name) public void addnhanvien(final Activity name) public void editnhanvien(final String ma_nv,final Activity name) public void delnhanvien(final Activity name) public void addphongban(final Activity name)
  • 25. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 25 public void thongbaonhanvien(String ma_nv,final Activity name) public void themthongbao(final String ma_nv, final Activity name) public void delphongban(final Activity name) public void thongtinluong(String ma_nv,final Activity name) Tất cả các phương thức này đều không trả về giá trị. Mà nó chỉ thực hiện các công việc tưng ứng. II. Demo Chương Trình Run As  Android Application  Chọn máy ảo hoặc thiết bị di động thật để tạo ra Application trên máy chạy demo chương trình. Khi ta khởi động chương trình sẽ ra phần layout đăng nhập: Tại đây nhân viên sử dụng email đang nhập và tài khoản để login vào hệ thống. Trường hợp nếu nhân viên quên mật khẩu hoặc chưa có tài khoản đăng nhập thì có thể vào needhelp
  • 26. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 26 Yêu cầu phải có mã nhân viên, tên nhân viên và regcode mới cố thê đăng ký hoặc đăng nhập, nhập đầy đủ thông tin vào. Hệ thống sẽ tự động kiểm tra xem là mình đã có tài khoản đăng nhập chưa. Sau khi login thành công hệ thông sẽ kiểm tra xem tài khoản login của nhân viên có chức vụ gì. Sẽ phân quyên tương ứng:  Nếu chức vụ là Nhân Viên, Phó Phòng, Nhân viên tập sự thì chỉ được quyền Thông Báo, Danh sách nhân viên,Danh Sách Phòng Ban, Thông tin Cá Nhân, Thông Tin Lương.  Nếu chức vụ là Trưởng Phòng thì được thêm 3 quyền nữa là Sữa thông tin nhân viên, xóa nhân viên, và thêm nhân viên.
  • 27. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 27  Nếu chức vụ là Giám Đốc Điều Hành thì ful quyền sữ dụng phần mềm. Sau đây là các chức năng chính của chương trình: - Thông báo: Xuất ra thông tin thông báo phòng ban nơi mà nhân viên hiện tại đang làm làm việc. - Thêm Thông Báo:Chỉ có trưởng phòng và CEO mới có quyên thêm thông báo này, sẽ thực hiện thêm thông báo vào cơ sở dữ liệu. bao gồm các thông tin thông báo cho phòng ban nào. Ngày ra thông báo tuần hoạt động. và người đưa ra thông báo này. - Thêm nhân viên: các thông tin cơ bản của nhân viên với mã nhân viên tương ứng - Sửa Nhân Viên: thay đổi thông tin cơ bản của nhân viên với mã nhân viên tương ứng. - Xóa Nhân viên: xóa nhân viên với mã nhân viên tương ứng.
  • 28. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 28 Danh Sách Nhân Viên:Khi click vào sẽ ra 1 dãy tất cả các nhân viển của công ti, và muốn xem thông tin tương ứng của nhân viên đó chỉ cần chọn vào nhân viên đó trên layout: Thêm Phòng Ban: thêm vào database mã phòng ban và tên phòng ban tương ứng. Sửa thông tin phòng ban: chọn vào sẽ ra danh sách phòng ban, ở đây thay đổi thông tin phòng ban là chỉ chọn trưởng phòng và phó phòng cho phòng ban đó. Nên khi chọn vào phòng ban, sẽ ra danh sách nhân viên. Và ta sẽ chọn chức vụ lai cho nhân viên:
  • 29. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 29 Xóa phòng ban: xóa phòng ban theo mã phòng ban tương ứng Danh Sách phòng ban:danh sách phòng ban của nhân viên, click vào mỗi phòng ban sẽ ra nhân viên của phòng ban đó: Thông Tin cá nhân: thông tin nhân viên đó Thông tin lương: thông tin về lương của nhân viên
  • 30. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 30 KẾT QUẢ ĐẠT ĐƯỢC QUA THỰC TẬP 1. Những kiến thức lý thuyết đã được củng cố:  Nghiên cứu sâu hơn và hiểu thêm nhiều hơn về lập trình android.  Tăng cường khả năng làm việc với cơ sở dữ liệu.  Tìm hiểu và áp dụng các phương thức kết nối database, Client, Webservice…..  Nắm được các giải thuật hữu dụng và cách áp dụng chúng vào các bài toán cụ thể. 2. Những kỹ năng thực hành đã được học thêm:  Học được cách làm việc theo tổ chức, làm việc theo nhóm và cá nhân hiệu quả.  Biết cách phân bổ thời gian để điều phối công việc.  Làm quen với môi trường làm việc thực tế và khoa học.  Trâu dồi khả năng tiếng anh chuyên môn bằng cách tham khảo nhiều tài liệu tiếng anh.
  • 31. Báo Cáo Thực Tập SVTH: Ngô Thanh Tuấn Trang 31  Hiểu và vận dụng được những kinh nghiệm từ các anh chị chia sẻ qua các buổi báo cáo giữa kỳ,báo cáo cuối kỳ, các buổi chia sẻ kiến thức với nhau, các tình huống thực tiễn.  Tham gia học và thi đậu System Hacking của trung tâm Athena. 3. Những kinh nghiệm thực tiễn đã tích lũy được:  Phân công công việc hợp lý và công việc có tốt hay không nằm ở tất cả các thành viên trong nhóm  Làm việc theo nhóm rất quan trọng trong công việc.  Luôn tiếp thu và vận dụng lý thuyết vào thực tiễn.  Khi làm việc, giao tiếp và ứng xử là phần quan trọng giúp mình thành công trong công việc.  Bắt đầu làm quen với cách làm việc của dooanh nghiệp để khi ra trường không còn phải bỡ ngỡ. V. TÀI LIỆU THAM KHẢO [1] Beginning Android™ Application Development, Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard, Indianapolis, IN 46256, www.wiley.com, Copyright © 2011 by Wiley Publishing, Inc., Indianapolis, Indiana [2] Compiling Your Android Application, v1.0, By GoNorthWest, 30 November 2011 [3] Professional Android™Application Development, Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard, Indianapolis, IN 46256, www.wiley.com, Copyright © 2009 by Wiley Publishing, Inc., Indianapolis, Indiana [4] Android Database Programming, Jason Wei