Tải bản đầy đủ (.pdf) (66 trang)

Xây dựng web quản lý bán hàng tại công ty TNHH công nghệ tin học phi long

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (7.37 MB, 66 trang )

ĐẠI HỌC HUẾ
TRƯỜNG ĐẠI HỌC KINH TẾ
KHOA HỆ THỐNG THÔNG TIN KINH TẾ

H
uế



tế

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
XÂY DỰNG WEB QUẢN LÝ BÁN HÀNG

họ

c

Ki

nh

TẠI CÔNG TY TNHH CÔNG NGHỆ TIN HỌC PHI LONG

ại

Giảng viên hướng dẫn :
:

Võ Mạnh Hùng


Lớp

:

K47 Tin học Kinh tế

Niên khóa

:

2013 - 2017

Đ

Sinh viên thực hiện

TS. Nguyễn Thanh Tuấn

Huế, tháng 5/2017


LỜI CẢM ƠN

Để có thể hoàn thành được đề tài khóa luận của mình, em xin gửi lời cảm ơn tới
tất cả các thầy cô giáo trong Khoa Hệ thống Thông tin Kinh tế đã tạo điều kiện giúp đỡ

H
uế

em thực hiện khóa luận này một cách thuận lợi nhất.

Em cũng xin gửi lời cảm ơn chân thành nhất tới tiến sĩ Nguyễn Thanh Tuấn,
người thầy đã tận tình hướng dẫn và truyền đạt những kinh nghiệm quý báu cho em

tế

trong suốt quá trình học tập và làm khóa luận tốt nghiệp. Thầy đã giúp đỡ em rất nhiều

nh

từ việc hình thành những ý tưởng ban đầu cũng như theo sát động viên, góp ý, chỉnh

Ki

sửa, cung cấp các tài liệu, kiến thức hay để em có thể hoàn thành đề tài này một cách
tốt nhất.

họ

c

Em xin gửi lời cảm ơn tới ban lãnh đạo, các anh, các chị trong Chi nhánh Công
ty TNHH phần mềm FPT tại Đà Nẵng, đặc biệt là Chị Tâm, Chị Tuyền phòng đào tạo

ại

đã tạo điều kiện giúp đỡ, chỉ bảo cũng như cung cấp những tài liệu cần thiết và hướng

Đ

dẫn nhiệt tình trong thời gian thực tập tại công ty.

Cuối cùng, em xin cảm ơn chân thành đến bố mẹ, những người thân và bạn bè
đã quan tâm giúp đỡ và động viên em trong suốt thời gian qua để em có thể hoàn thành
khóa luận này.
Huế, ngày 03 tháng 5 năm 2017
Sinh viên
Võ Mạnh Hùng


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

MỤC LỤC
LỜI CẢM ƠN...................................................................................................... I
MỤC LỤC ......................................................................................................... II
DANH MỤC CHỮ VIẾT TẮT VÀ KÝ HIỆU .................................................. IV
DANH MỤC CÁC HÌNH VẼ ............................................................................ V
DANH MỤC CÁC BIỂU ĐỒ ........................................................................... VI
DANH MỤC CÁC BẢNG ............................................................................... VII
PHẦN 1: ĐẶT VẤN ĐỀ .................................................................................... 1
1. Lý do chọn đề tài ......................................................................................................1
2. Mục tiêu nghiên cứu.................................................................................................2

H
uế

3. Đối tượng và phạm vi nghiên cứu ............................................................................3
4. Phương pháp nghiên cứu..........................................................................................3
5. Dự kiến kết quả đạt được của đề tài .........................................................................4

tế


6. Kết cấu của đề tài .....................................................................................................4

nh

PHẦN II: NỘI DUNG NGHIÊN CỨU ............................................................. 5
CHƯƠNG 1: CƠ SỞ LÝ LUẬN VỀ XÂY DỰNG WEB QUẢN LÝ .................. 5

Ki

1.1. Tổng quan về nền tảng Eclipse và qui trình xây dựng phần mềm ........................5
1.1.1. Nền tảng Eclipse ............................................................................................5

họ

c

1.1.2. Vòng đời phát triển phần mềm (Software Development Life Cycle) ............5
1.2. Giới thiệu hóa đơn .................................................................................................8

ại

1.2.1. Khái niệm........................................................................................................8

Đ

1.2.2. Nội dung .........................................................................................................8
1.2.3. Các quy định chuyên môn trong bán hàng và xuất hóa đơn. ..........................9
1.3. Tổng quan về Java 2 Enterprise Edition và Struts Framework ...........................11
1.3.1. Giới thiệu về Java 2 Enterprise Edition (JavaEE) ........................................11
1.3.2. Các thành phần của mô hình MVC (Model-View-Controller) ....................12

1.3.3. Nền tảng lập trình Struts Framework 1.x ........................................................14
1.4. Microsoft SQL Server...........................................................................................15
1.4.1. Tổng quan về Microsoft SQL Server .............................................................. 15
1.4.2. Kiến trúc chung của Microsoft SQL Server ....................................................15
1.5. JasperReports .......................................................................................................16
1.5.1. Tổng quan về JasperReports ...........................................................................16
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
II


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

1.5.2. Khả năng của JasperReports ...........................................................................17
1.6. Các phương pháp nghiên cứu, giải pháp công nghệ được ứng dụng để xây dựng
trang web ....................................................................................................................17
1.6.1. Phương pháp lập trình hướng đối tượng .......................................................17
CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG VÀ BÀI TOÁNQUẢN LÝ BÁN HÀNG
CỦA CÔNG TY TNHH CÔNG NGHỆ TIN HỌC PHI LONG .......................... 20
2.1. Tổng quan về Công ty TNHH Công nghệ Tin học Phi Long ............................. 20
2.1.1. Giới thiệu ......................................................................................................20
2.1.2. Chức năng và nhiệm vụ của công ty ............................................................. 20
2.2. Mô tả bài toán......................................................................................................21

H
uế

2.3. Phân tích bài toán ................................................................................................ 22
2.3.1. Yêu cầu về chất lượng ..................................................................................22
2.3.2. Yêu cầu về chức năng ...................................................................................23


tế

2.3.3. Mô hình hóa hệ thống ...................................................................................29

nh

CHƯƠNG 3: XÂY DỰNG WEBSITE QUẢN LÝ BÁN HÀNG CỦA CÔNG TY
TNHH CÔNG NGHỆ TIN HỌC PHI LONG .................................................... 39

Ki

3.1. Thiết kế cơ sở dữ liệu ..........................................................................................39
3.1.1. Xác định các thực thể và các thuộc tính của thực thể ...................................39

c

3.1.2. Mô hình hóa ..................................................................................................41

họ

3.1.3. Chuẩn hóa các mối quan hệ thành lược đồ quan hệ .....................................42
3.1.4. Chuẩn hóa cơ sở dữ liệu ...............................................................................42

ại

3.1.5. Lược đồ quan hệ của cơ sở dữ liệu ............................................................... 45

Đ

3.2. Thiết kế giải thuật................................................................................................ 45

3.2.1. Kí hiệu sử dụng ............................................................................................. 45
3.2.2. Một số thuật toán trong chương trình ...........................................................46
3.2. Thiết kế giao diện ................................................................................................ 50
Phần III: KẾT LUẬN ..................................................................................... 57
TÀI LIỆU THAM KHẢO ................................................................................. 58

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
III


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

DANH MỤC CHỮ VIẾT TẮT VÀ KÝ HIỆU
Ý nghĩa
Sản phẩm kinh doanh thông minh
Cơ sở dữ liệu
Giá trị gia tăng
Giao diện đồ họa người dùng
Môi trường phát triển tích hợp
Nhà cung cấp phần mềm độc lập
Bộ tiền xử lý văn lệnh Java
Mô hình Model-View-Controller
Vòng đời phát triển phần mềm
Trách nhiệm hữu hạn

Ký hiệu

Đ

ại


họ

c

Ki

nh

tế

H
uế

BI
CSDL
GTGT
GUI
IDE
ISV
JSP
MVC
SDLC
TNHH

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
IV


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng


DANH MỤC CÁC HÌNH VẼ
Hình 1: Mô hình thác nước.............................................................................................. 6
Hình 2: Các thành phần của JavaEE..............................................................................11
Hình 3: Cơ chế hoạt động của JSP ................................................................................12
Hình 4: Mô hình MVC ..................................................................................................13
Hình 5: Cơ chế hoạt động của Struts Framework 1.x ......................................................18
Hình 6: Lược đồ cơ sở dữ liệu .......................................................................................45
Hình 7: Giải thuật đăng nhập hệ thống ..........................................................................46
Hình 8: Giải thuật thêm mới bản ghi dữ liệu .................................................................47

H
uế

Hình 9: Giải thuật cập nhật bản ghi dữ liệu...................................................................48
Hình 10: Giải thuật xóa bản ghi dữ liệu ........................................................................49
Hình 11: Giải thuật lập và in hóa đơn ...........................................................................49
Hình 12: Giao diện đăng nhập .......................................................................................50

tế

Hình 13: Giao diện trang chủ hệ thống .........................................................................50

nh

Hình 14: Giao diện quản lý hàng hóa ............................................................................50
Hình 15: Giao diện thêm mới hàng hóa ........................................................................51

Ki


Hình 16: Giao diện cập nhật hàng hóa ..........................................................................51
Hình 17: Giao diện quản lý loại hàng ............................................................................51

họ

c

Hình 18: Giao diện thêm mới loại hàng ........................................................................52
Hình 19: Giao diện cập nhật loại hàng ..........................................................................52

ại

Hình 20: Giao diện quản lý hóa đơn..............................................................................52
Hình 21: Giao diện thêm mới hóa đơn ..........................................................................53

Đ

Hình 22: Giao diện xem danh sách chi tiết hóa đơn......................................................53
Hình 23: Giao diện xuất hóa đơn...................................................................................53
Hình 24: Giao diện quản lý nhân viên ...........................................................................54
Hình 25: Giao diện thêm mới nhân viên .......................................................................54
Hình 26: Giao diện cập nhật thông tin nhân viên ..........................................................54
Hình 27: Giao diện quản lý nhà cung cấp .....................................................................55
Hình 28: Giao diện thêm nhà cung cấp .........................................................................55
Hình 29: Giao diện cập nhật nhà cung cấp ....................................................................55
Hình 30: Giao diện quản lý khách hàng ........................................................................56
Hình 31: Giao diện thêm mới khách hàng .....................................................................56
Hình 32: Giao diện cập nhật thông tin khách hàng .......................................................56
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
V



Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

DANH MỤC CÁC BIỂU ĐỒ
Biểu đồ 1: Biểu đồ use case tổng quát các chức năng của hệ thống ............................. 23
Biểu đồ 2: Biểu đồ use case tổng quát các chức năng của người quản lý .....................24
Biểu đồ 3: Biểu đồ use case tổng quát các chức năng của nhân viên ...........................25
Biểu đồ 4: Biểu đồ use case chức năng đăng nhập hệ thống.........................................26
Biểu đồ 5: Biểu đồ use case chức năng quản lý loại hàng ............................................26
Biểu đồ 6: Biểu đồ use case chức năng quản lý hàng hóa .............................................27
Biểu đồ 7: Biểu đồ use case chức năng quản lý hóa đơn ..............................................27
Biểu đồ 8: Biểu đồ use case chức năng quản lý nhân viên............................................28

H
uế

Biểu đồ 9: Biểu đồ use case chức năng quản lý nhà cung cấp ......................................28
Biểu đồ 10: Biểu đồ use case chức năng quản lý khách hàng .......................................29
Biểu đồ 11: Biểu đồ lớp đăng nhập ...............................................................................29
Biểu đồ 12: Biểu đồ lớp quản lý loại hàng ....................................................................30

tế

Biểu đồ 13: Biểu đồ lớp quản lý hàng hóa ....................................................................30

nh

Biểu đồ 14: Biểu đồ lớp quản lý hóa đơn ......................................................................31
Biểu đồ 15: Biểu đồ lớp thêm hóa đơn chi tiết .............................................................. 31


Ki

Biểu đồ 16: Biểu đồ lớp hiển thị hóa đơn chi tiết..........................................................32
Biểu đồ 17: Biểu đồ lớp quản lý nhân viên ...................................................................32

họ

c

Biểu đồ 18: Biểu đồ lớp quản lý nhà cung cấp.............................................................. 33
Biểu đồ 19: Biểu đồ lớp quản lý khách hàng ................................................................ 33

ại

Biểu đồ 20: Biểu đồ tuần tự đăng nhập hệ thống ..........................................................34

Đ

Biểu đồ 21: Biểu đồ tuần tự hiển thị danh sách hóa đơn ...............................................34
Biểu đồ 22: Biểu đồ tuần tự thêm hóa đơn ....................................................................35
Biểu đồ 23: Biểu đồ tuần tự hiển thị chi tiết hóa đơn ....................................................35
Biểu đồ 24: Biểu đồ tuần tự xóa hóa đơn ......................................................................36
Biểu đồ 25: Biểu đồ tuần tự xuất hóa đơn .....................................................................36
Biểu đồ 26: Biểu đồ tuần tự hiển thị danh sách nhân viên ............................................37
Biểu đồ 27: Biểu đồ tuần tự thêm mới nhân viên ..........................................................37
Biểu đồ 28: Biểu đồ tuần tự cập nhật nhân viên............................................................ 38
Biểu đồ 29: Biểu đồ tuần tự xóa nhân viên ...................................................................38
Biểu đồ 30: Mối quan hệ từng đối giữa các thực thể ....................................................41
Biểu đồ 31: Mô hình thực thể mối quan hệ ...................................................................42


Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
VI


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

DANH MỤC CÁC BẢNG
Bảng 1: Tác nhân của hệ thống .....................................................................................23
Bảng 2: Cấu trúc dữ liệu bảng HOADON.....................................................................42
Bảng 3: Cấu trúc dữ liệu bảng HOADONCHITIET .....................................................43
Bảng 4: Cấu trúc dữ liệu bảng HANGHOA ..................................................................43
Bảng 5: Cấu trúc dữ liệu bảng TAIKHOAN .................................................................43
Bảng 6: Cấu trúc dữ liệu bảng QUYEN ........................................................................43
Bảng 7: Cấu trúc dữ liệu bảng CHUCVU .....................................................................44
Bảng 8: Cấu trúc dữ liệu bảng THONGTINNHANVIEN ............................................44

H
uế

Bảng 9: Cấu trúc dữ liệu bảng KHACHHANG ............................................................ 44
Bảng 10: Cấu trúc dữ liệu bảng NHACUNGCAP ........................................................44

tế

Bảng 11: Cấu trúc dữ liệu bảng LOAIHANG ............................................................... 45

Đ

ại


họ

c

Ki

nh

Bảng 12: Bảng kí hiệu sơ đồ thuật toán.........................................................................45

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
VII


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

PHẦN 1: ĐẶT VẤN ĐỀ
1. Lý do chọn đề tài
Chúng ta đang sống trong một thời đại mới, thời đại phát triển rực rỡ của công
nghệ thông tin, ngày nay công nghệ thông tin đã ở một bước phát triển cao đó là số hóa
tất cả các dữ liệu thông tin, luân chuyển mạnh mẽ và kết nối tất cả chúng ta lại với nhau.
Mọi loại thông tin, số liệu âm thanh, hình ảnh có thể được đưa về dạng kỹ thuật số để
bất kỳ máy tính nào cũng có thể lưu trữ, xử lý và chuyển tiếp cho nhiều người. Những
công cụ và sự kết nối của thời đại kỹ thuật số cho phép chúng ta dễ dàng thu thập, chia

H
uế

sẻ thông tin và hành động trên cơ sở những thông tin này theo phương thức hoàn toàn

mới, kéo theo hàng loạt sự thay đổi về các quan niệm, các tập tục, các thói quen truyền
thống, và thậm chí cả cách nhìn các giá trị trong cuộc sống. Công nghệ thông tin đến

tế

với từng người dân, từng người quản lý, nhà khoa học, người nông dân, bà nội trợ, học
sinh tiểu học. Không có lĩnh vực nào, không có nơi nào không có mặt của công nghệ

nh

thông tin. Công nghệ thông tin là một trong các động lực quan trọng nhất của sự phát

Ki

triển, ứng dụng và phát triển công nghệ thông tin ở nước ta nhằm góp phần giải phóng
sức mạnh vật chất, trí tuệ và tinh thần của toàn dân tộc, thúc đẩy công cuộc đổi mới,

họ

c

phát triển nhanh và hiện đại hoá các ngành kinh tế, tăng cường năng lực cạnh tranh của
các doanh nghiệp, hỗ trợ có hiệu quả cho quá trình hội nhập kinh tế quốc tế, nâng cao

ại

chất lượng cuộc sống của nhân dân, đảm bảo an ninh quốc phòng và tạo khả năng đi tắt

Đ


đón đầu để thực hiện thắng lợi sự nghiệp công nghiệp hóa, hiện đại hóa đất nước trong
tương lai. Đặc biệt với các hệ thống tổ chức phức tạp thì hệ thống thông tin quản lý là
tất yếu và nếu thực hiện tốt sẽ mang lại lợi ích to lớn.
Qua quá trình thực tập cuối khóa tại Chi nhánh công ty TNHH phần mềm FPT
tại Đà Nẵng, qua quá trình đào tạo kiến thức và làm thử dự án tại FPT, bản thân tôi đã
tích góp được một số kinh nghiệm cũng như kỹ năng cơ bản để xây dựng một trang web
theo ngôn ngữ java kết hợp với mô hình Struts. Sau khi phân tích và lựa chọn đề tài, tôi
đã chọn một công ty kinh doanh thiết bị tin học văn phòng tại Đà nẵng để có thể thực
hiện việc xây dựng một trang web quản lý bán hàng theo mô hình công ty. Đề tài được
thực hiện theo mô hình Công ty TNHH Công nghệ Tin học Phi Long.
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
1


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

Công ty TNHH Công nghệ Tin học Phi Long được thành lập ngày 03 tháng 09
năm 1997, từ một đơn vị kinh doanh nhỏ, chỉ có vài thành viên trẻ tuổi tâm huyết. Cho
đến nay, sau hơn 15 năm hoạt động và phát triển trải qua những thử thách khó khăn, Phi
Long đã trở thành một trong những Công ty tin học lớn mạnh nhất Đà Nẵng và khu vực
Miền Trung với các lĩnh vực kinh doanh như cung cấp các sản phẩm tin học, điện tử,
viễn thông, đồng thời tư vấn giải pháp và thi công các ứng dụng về Công nghệ thông
tin, Điển tử viễn thông. Tổng số nhân viên hiện đang làm việc tại Công ty hơn 200
người, trong đó đa số là nhân viên trẻ, được thường xuyên đào tạo và trau dồi khả năng
làm việc cũng như nâng cao chất lượng phục vụ khách hàng. Vào ngày 14/09/2013, công

H
uế

ty đã mở thêm chi nhánh tại Huế, có cơ sở tại số 48 đường Hùng Vương, thành phố Huế,

và đến thời điểm này công ty đã có 2 cơ sở trên cả nước, và đồng thời công việc bán
hàng và quản lý bán hàng cũng trở nên phức tạp và khó khăn hơn lúc đầu.

tế

Hiện tại công ty đã có hệ thống riêng với các chức năng chính là quản lý nhân

nh

viên bán hàng, nhập hàng. Dù vậy hệ thống hiện tại vẫn còn tồn tại nhiều bất cập trong
quá trình quản lý, một số nghiệp vụ còn chưa được cập nhật, như quản lý kho hàng phải

Ki

quản lý bằng file excel, làm cho việc kiểm tra hàng tồn kho chỉ kiểm tra tại 1 máy tính,

c

cũng như cập nhật cho nhân viên bán hàng, tư vấn chậm, thông tin người mua hàng

họ

không được ghi lại trên hệ thống, các thống kê báo cáo (số lượng hàng hóa tồn kho, nhân
viên, khách hàng...) của công ty theo các tiêu chí báo cáo vẫn phải xử lý phức tạp qua

ại

phần mềm khác.

Đ


Từ đó đặt ra vấn đề là cần thiết phải có một hệ thống quản lý bán hàng mới và
cập nhật thêm các tính năng cần thiết, bổ sung, cải tiến các chức năng còn thiếu sót và
lỗi thời, nhằm nâng cao hiệu quả quản lý, tạo điều kiện thuận lợi cho nhân viên làm việc,
cũng như các phòng ban quản lý có thể hoạch định, và đưa ra một chiến lược bán hàng
hợp lý. Do đó tác giả đã quyết định chọn đề tài: “Xây dựng web quản lý bán hàng tại
Công ty TNHH Công nghệ Tin học Phi Long”.
2. Mục tiêu nghiên cứu
* Mục tiêu tổng quát:
Trên cơ sở nắm rõ quy trình bán hàng, xuất nhập hàng của Công ty TNHH Công
nghệ Phi Long, cũng như quy trình xây dựng phần mềm, tiến hành xây dựng web quản
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
2


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

lý bán hàng của Công ty TNHH Công nghệ Tin học Phi Long.
* Mục tiêu cụ thể:
- Nghiên cứu và nắm vững các quy trình chuyên môn kỹ thuật trong nhập hàng,
bán hàng, quản lý hàng hóa, quản lý đơn hàng, quản lý nhân viên và khách hàng.
- Hiểu rõ đơn hàng và nội dung cần lưu trữ trên hóa đơn.
- Nghiên cứu các công cụ, nền tảng lập trình được sử dụng để xây dựng hệ thống:
Java, HTML, JavaScript, CSS, Struts Framework, MS SQLServer 2012, Jasper Report.
- Xây dựng web quản lý bán hàng tại Công ty TNHH Công nghệ Tin học Phi
Long.

H
uế


3. Đối tượng và phạm vi nghiên cứu
* Đối tượng nghiên cứu

- Các quy trình chuyên môn nghiệp vụ trong bán hàng, nhập hàng.

tế

- Hóa đơn và nội dung thông tin lưu trữ trên hóa đơn.

nh

- Cơ chế, cách thức hoạt động nghiệp vụ lưu trữ, quản lý thông tin của khách

* Phạm vi nghiên cứu

Ki

hàng, thông tin nhân viên, đối tác tại Công ty TNHH Công nghệ Tin học Phi Long.

c

- Không gian: Hệ thống được xây dựng dựa trên khuôn khổ mô tả mô hình quản

họ

lý bán hàng tại Công ty TNHH Công nghệ Tin học Phi Long.

ại

- Thời gian: Từ ngày 03/02/2017 đến hết ngày 03/05/2017.


Đ

4. Phương pháp nghiên cứu
Để nghiên cứu và xây dựng web quản lý bán hàng phù hợp với yêu cầu thực tế
hiện nay ở Công ty TNHH Công nghệ Tin học Phi Long, đề tài đã sử dụng các phương
pháp trong quá trình xây dựng web:
- Phương pháp thu thập thông tin:
+ Phương pháp quan sát: trực tiếp quan sát hệ thống quản lý bán hàng hiện
tại ở công ty, để phân tích ưu điểm, nhược điểm, các quy trình cơ bản của công ty.
+ Phương pháp thu thập tài liệu: thông qua các nguồn thu nhập tài liệu như
sách báo, mạng internet, tổng hợp các tài liệu, ngôn ngữ và công nghệ liên quan. Giúp
nắm vững quy định quản lý bán hàng của công ty, từ đó xây dựng hệ thống hoàn thiện.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
3


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

- Phương pháp phân tích, thiết kế hệ thống: Dựa trên những thông tin thu được
để tiến hành phân tích, thiết kế hệ thống, bao gồm những chức năng chính của phần
mềm sẽ xây dựng thông qua quá trình mô hình hóa hệ thông, chuẩn hóa cơ sở liệu một
cách phù hợp và đầy đủ.
5. Dự kiến kết quả đạt được của đề tài
- Nắm vững các quy định, quy trình về chuyên môn nghiệp vụ trong bán hàng,
xuất nhập hàng, xử lý hóa đơn.
- Hiểu rõ và nắm vững các nội dung thông tin cần lưu trữ trên hóa đơn và đưa
vào hệ thống một cách logic và đầy đủ.


H
uế

- Nắm rõ các công cụ, nền tảng lập trình được sử dụng để xây dựng hệ thống:
Java, HTML, JavaScript, CSS, Struts Framework, MS SQLServer 2012, Jasper Report.
- Hệ thống Quản lý bán hàng tại Công ty TNHH Công nghệ Tin học Phi Long.

tế

6. Kết cấu của đề tài

nh

Ngoài phần mở đầu và kết luận, nội dung của khóa luận được kết cấu thành 3

Ki

chương như sau:

Chương I: Cơ sở lý luận về xây dựng web quản lý.

họ

c

Chương II: Phân tích hệ thống và bài toán quản lý bán hàng của Công ty TNHH
Công nghệ Tin học Phi Long.

ại


Chương III: Xây dựng web quản lý bán hàng tại Công ty TNHH Công nghệ Tin

Đ

học Phi Long.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
4


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

PHẦN II: NỘI DUNG NGHIÊN CỨU
CHƯƠNG 1: CƠ SỞ LÝ LUẬN VỀ XÂY DỰNG WEB QUẢN LÝ
1.1. Tổng quan về nền tảng Eclipse và qui trình xây dựng phần mềm
1.1.1. Nền tảng Eclipse
1.1.1.1. Khái niệm nền tảng Eclipse
Nền tảng Eclipse (Eclipse Platform) được thiết kế để xây dựng các môi trường
phát triển tích hợp (các IDE) và được bắt đầu như một sản phẩm độc quyền của IBM. Nó
có thể được dùng để tạo ra các giải pháp tính toán đa dạng, xuyên suốt từ đầu đến cuối

H
uế

cho nhiều môi trường thi hành. Nền tảng này bao gồm các thành phần phần mềm mã
nguồn mở được các nhà cung cấp công cụ để xây dựng các giải pháp cần thêm vào các
bàn làm việc của lập trình viên một phần mềm tích hợp.

tế


1.1.1.2. Các nguyên lý thiết kế để viết Eclipse

nh

- Để tạo thuận lợi cho tích hợp liền mạch mỗi công cụ bên trong và xuyên qua
nhiều kiểu nội dung và các nhà cung cấp công cụ khác nhau.

Ki

- Để hỗ trợ việc xây dựng nhiều công cụ.

c

- Để hỗ trợ một tập hợp không hạn chế các nhà cung cấp công cụ, bao gồm cả

họ

các nhà cung cấp phần mềm độc lập (ISV).
- Để hỗ trợ các công cụ thao tác các kiểu nội dung bất kỳ (bao gồm cả HTML,

ại

Java, C, JSP, EJB, XML, và GIF).

Đ

- Để hỗ trợ cả môi trường phát triển ứng dụng GUI lẫn không dựa trên GUI.
- Để chạy trên nhiều hệ điều hành, bao gồm cả Windows và Linux.
- Để lợi dụng tính phổ biến của ngôn ngữ Java để viết các công cụ.
1.1.2. Vòng đời phát triển phần mềm (Software Development Life Cycle)

1.1.2.1. Khái niệm vòng đời phát triển phần mềm (SDLC)
Là một thuật ngữ được sử dụng trong hệ thống kỹ thuật, hệ thống thông tin và
công nghệ phần mềm. Nhằm mô tả một quá trình lập kế hoạch, tạo, thử nghiệm và triển
khai các hệ thống thông tin. Áp dụng cho một loạt các cấu hình phần cứng và phần mềm,

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
5


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

như một hệ thống chỉ có thể gồm phần cứng, hay chỉ riêng phần mềm hoặc kết hợp cả
hai lại với nhau.
Một quy trình phù hợp phải bảo đảm các yếu tố:
- Hiệu quả để cho phép nhà quản lý điều chuyển nguồn lực giữa các dự án.
- Tài liệu nhất quán nhằm giảm chi phí thời gian sống để bảo trì hệ thống (bởi
các đội phát triển khác) về sau.
- Chất lượng nhất quán xuyên suốt các dự án.
1.1.2.2. Giới thiệu quy trình phát triển phần mềm
Để xây dựng phần mềm, tác giả lựa chọn áp dụng mô hình thác nước. Mô hình

H
uế

thác nước (waterfall model) là một mô hình của quy trình phát triển phần mềm, trong
đó quy trình phát triển giống như một dòng chảy, với các pha được thực hiện theo trật

Đ

ại


họ

c

Ki

nh

tế

tự nghiêm ngặt và không có sự nhảy vượt.

Hình 1: Mô hình thác nước
Nguồn: “Mô hình thác nước (Waterfall model) –
“”
Mô hình thác nước có ưu điểm dễ quản lý. Thời gian hoàn thành dự án thường
được dự báo với độ chính xác hơn. Các tài liệu đầu ra của từng giai đoạn cũng được xây
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
6


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

dựng đầy đủ và hệ thống hơn là: phân tích yêu cầu, thiết kế triển khai thực hiện, kiểm
thử, liên kết và bảo trì. Mô hình thác nước có ưu điểm dễ quản lý. Dựa vào mô hình thác
nước trên ta sẽ có 6 giai đoạn để xây dựng 1 phần mềm:
Giai đoạn 1: Phân tích sơ bộ
Trong giai đoạn này, một đánh giá sơ bộ được thực hiện theo yêu cầu dự án,
chúng ta có đang tìm kiếm một giải pháp cụ thể? Dự án nay có phù hợp với tổ chức hay

không? Và một phần quan trọng của bước này là phân tích tính khả thi về mặt kỹ thuật,
về mặt pháp lý, cũng như về mặt kinh tế, giai đoạn này rất quan trọng trong việc xác
định xem có nên xây dựng.

H
uế

Giai đoạn 2: Phân tích hệ thống

Đây là một giai đoạn khá quan trọng, trong giai đoạn này, một hoặc một nhiều
nhà phân tích hệ thống sẽ làm việc với các bên khác nhau để có thể xác định rõ yêu cầu

tế

cụ thể của hệ thống mới, các thủ tục, phân tích được ghi lại, các đối tượng cụ thể được

nh

phỏng vấn, các yêu cầu về dữ liệu được phát triển để có thể định hình được bức tranh
tổng thể và chính xác về hệ thống được yêu cầu xây dựng, kết quả của giai đoạn này là

Ki

một tài liệu đặc tả rõ yêu cầu của hệ thống.

c

Giai đoạn 3: Thiết kế hệ thống

họ


Ở giai đoạn này, người thiết kế hệ thống sẽ lấy yêu cầu của hệ thống được tạo ra
từ giai đoạn trước để có thể phát triển chi tiết các kỹ thuật cụ thể cần thiết cho hệ thống.

ại

Đồng thời giai đoạn này cũng chuyển đổi các yêu cầu nghiệp vụ kinh doanh, thương

Đ

mại thành các yêu cầu cụ thể về mặt kỹ thuật. Thiết kế giao diện cho người dùng, cơ sở
dữ liệu, đầu ra, đầu vào và báo cáo được phát triển ở giai đoạn này. Kết quả của giai
đoạn này là một tài liệu thiết kế hệ thống. Tài liệu này sẽ có mọi thứ giúp cho các lập
trình viên cần để có thể bắt đầu tạo ra một hệ thống.
Giai đoạn 4: Cài đặt hệ thống
Đoạn mã cuối cùng được viết trong giai đoạn xây dựng phần mềm. Sử dụng các
tài liệu thiết kế hệ thống làm hướng dẫn, các lập trình viên bắt đầu phát triển chương trình
theo mô tả. Kết quả của giai đoạn này là một chương trình ứng dụng ban đầu đáp ứng với
các yêu cầu đã đặt ra ở giai đoạn phân tích hệ thống và với các thiết kế trong giai đoạn
thiết kế hệ thống.
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
7


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

Giai đoạn 5: Kiểm thử
Trong giai đoạn kiểm thử, chương trình ứng dụng được phát triển trong giai đoạn
trước sẽ được thông qua một loạt các bài kiểm tra cấu trúc, như kiểm tra về mặt đơn vị,
về sự xác thực dữ liệu. Tiếp sau là một bài kiểm tra hệ thống, nơi mà các thành phần

khác nhau của hệ thống được kiểm tra để đảm bảo chúng hoạt động đúng cách. Và cuối
cùng là một bài kiểm tra do chính người dùng thực hiện nhằm đảm bảo nó đáp ứng các
tiêu chuẩn của họ. Bất kỳ lỗi hoặc vấn đề nào được phát hiện trong giai đoạn này đều
được giải quyết và kiểm tra lại.
Giai đoạn 6: Bảo trì và phát triển phần mềm

H
uế

Bảo trì là giai đoạn cuối cùng của một chu trình phát triển phần mềm. Trong giai
đoạn này, hệ thống xây dựng một quy trình hỗ trợ tại chỗ, báo cáo các lỗi đã sửa và yêu
cầu tính năng mới được đánh giá và thực hiện, đồng thời cũng cập nhật hệ thống và sao

tế

lưu dữ liệu thường xuyên nhằm đảm bảo tính ổn định, phù hợp với người dùng.

nh

1.2. Giới thiệu hóa đơn

Ki

1.2.1. Khái niệm

Hóa đơn là một loại chứng từ thương mại được bên bán cung cấp cho bên mua,

c

trong đó kê khai những thông tin về chủng loại, số lượng, giá thành của loại hàng hóa


họ

hoặc dịch vụ được giao cho bên mua. Các điều khoản thanh toán sẽ được ghi cụ thể

ại

trong hóa đơn (như thời hạn thanh toán, phương thức, chiết khấu, v.v). Nó sẽ được coi

Đ

là hóa đơn bán hàng với bên bán và hóa đơn mua hàng với bên mua.
1.2.2. Nội dung

Nội dung hóa đơn gồm 3 phần chính là: thông tin công ty, thông tin người mua
và thông tin đơn hàng
* Thông tin công ty
Thông tin công ty được thiết đặt sẵn trong mẫu hóa đơn, tất cả các hóa đơn đều
có chung một số thông tin giống nhau, cụ thể:
- Logo công ty: logo đã được công ty đăng ký tại cơ quan chính quyền lúc đăng
ký kinh doanh.
- Tên công ty: tên công ty hiện tại là Công ty TNHH Công nghệ Tin học Phi Long
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
8


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

- Địa chỉ công ty và điện thoại liên hệ.
- Mã số thuế: mã số được đăng ký tại cục thuế địa phương.

- Tài khoản ngân hàng: tài khoản ngân hàng của công ty tại các ngân hàng.
* Thông tin người mua
Thông tin người mua sẽ bao gồm 6 trường chính nhằm lưu trữ thông tin người
mua, nhưng chỉ lưu một số trường bắt buộc được in ra khi xuất hóa đơn, cụ thể:
- Tên người mua hàng (bắt buộc): được ghi đầy đủ rõ ràng họ và tên để tránh
nhầm lẫn giữa các khách hàng với nhau.
- Địa chỉ: thường sẽ là nơi ở của khách hàng mua hàng, nhưng nếu khách hàng là

H
uế

công ty, thì sẽ ghi địa chỉ của công ty.
- Điện thoại: nhằm lưu trữ số điện thoại của đơn vị, cá nhân mua hàng.
* Thông tin đơn hàng

tế

Thông tin đơn hàng sẽ bao gồm thông tin các thông tin về các sản phẩm mà khách

nh

hàng mua, cụ thể:

- Tên hàng hóa: sẽ là tên hàng hóa bao gồm cả thông số đi kèm

Ki

- Đơn vị tính: được tính theo từng loại hàng hóa.

c


- Số lượng: số lượng theo từng hàng hóa.

họ

- Đơn giá: đơn giá chưa thuế của công ty bán ra.
- Thành tiền: bằng số lượng nhân với đơn giá để ra thành tiền.

ại

- Thuế suất GTGT: % thuế mà công ty phải tính thêm cho hóa đơn.

Đ

- Tổng tiền: tổng tiền sau khi cộng cả thuế suất.
Ngoài ra với mỗi hóa đơn, còn có 1 mã hóa đơn riêng nhằm phuc vụ việc truy
xuất dữ liệu cũng như kê khai, kiểm tra của đơn vị thuế.
1.2.3. Các quy định chuyên môn trong bán hàng và xuất hóa đơn.
1.2.3.1. Bán hàng
a) Mua hàng trực tiếp tại cửa hàng
Cá nhân, tổ chức đến công ty có nhu cầu sử dụng máy tính, các thiết bị văn phòng
có thể đến trực tiếp tại cửa hàng và chọn cho mình một sản phẩm mong muốn, sau đó
nhân viên kinh doanh sẽ tư vấn và hỗ trợ thông tin về chủng loại của sản phẩm.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
9


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng


Sau khi khách hàng đã chọn được mặt hàng ưng ý, nhân viên bán hàng mời khách
hàng đến bàn làm việc để làm thủ tục, đồng thời yêu cầu nhân viên kho vào kho để lấy
hàng mới nguyên tem cho khách hàng.
Sau khi thanh toán xong, khách hàng kiểm tra hàng hóa và nhận hàng, nhân viên
kỹ thuật sẽ hỗ trợ khách hàng kiểm tra, chạy thử hàng hóa cho khách hàng, sau đó sẽ
giao hàng cho khách hoặc tới địa chỉ của khách hàng nếu có yêu cầu.
b) Mua hàng online tại website của công ty
Sau khi khách hàng chọn được mặt hàng mong muốn tại website, khách hàng lựa
chọn đặt hàng và chọn hình thức thanh toán.

H
uế

Nhân viên kinh doanh sau khi nhận được đơn hàng của khách hàng sẽ yêu cầu
nhân viên kho xuất hàng mới từ kho, sau đó nhân viên kỹ thuật sẽ kiểm tra hàng và giao

tế

đến địa chỉ yêu cầu của khách hàng, đồng thời hỗ trợ kỹ thuật cho khách hàng tại nhà
và giao hóa đơn nếu khách hàng đã thanh toán online.

nh

1.2.3.2. Xuất hóa đơn

Ki

a) Mua hàng trực tiếp tại cửa hàng

Sau khi khách hàng đã lựa chọn được mặt hàng ưng ý, khách hàng sẽ đến bàn


họ

c

làm việc để làm thủ tục mua hàng, nhân viên kế toán sẽ yêu cầu khách hàng cung cấp
một số thông tin cơ bản nếu là khách hàng cá nhân, và cung cấp đầy đủ thông tin chi tiết

ại

nếu là khách hàng doanh nghiệp hoặc tổ chức.

Đ

Sau khi khách hàng cung cấp thông tin xong, nhân viên kế toán sẽ yêu cầu khách
hàng lựa thanh toán, sau khi đã xác nhận thanh toán thành công, nhân viên kế toán sẽ
xuất hóa đơn cho khách hàng. Nhân viên kế toán ký tên, sau đó chuyển cho thủ trưởng
đơn vị ký tên, đóng dấu (nếu khách hàng là tổ chức, doanh nghiệp) và cuối cùng khách
hàng ký tên vào hóa đơn. Hóa đơn bao gồm 3 liên, liên 2 sẽ giao cho khách hàng.
b) Mua hàng online tại website của công ty
Khi đã chọn mua sản phẩm, nếu khách hàng thanh toán online, nhân viên kinh
doanh sẽ chuyển đơn hàng cho nhân viên kế toán xuất hóa đơn theo các thông tin đơn
hàng đã được đặt trước, sau đó nhân viên kỹ thuật sẽ chuyển hóa đơn cho khách hàng
ký.
Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
10


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng


Nếu khách hàng chưa thanh toán online và yêu cầu trả tiền mặt, nhân viên kỹ
thuật sau khi giao hàng và nhận tiền thanh toán xong sẽ quay về công ty xuất hóa đơn
và gửi cho khách hàng.
1.3. Tổng quan về Java 2 Enterprise Edition và Struts Framework
1.3.1. Giới thiệu về Java 2 Enterprise Edition (JavaEE)
Java 2 Enterprise Edition (Nền tảng Java, phiên bản 2 - phiên bản công nghiệp là
công nghệ của Sun Microsystems hay Java EE (gọi tắt là J2EE) là một nền lập trình
dành cho việc phát triển ứng dụng phân tán kiến trúc đa tầng, chủ yếu dựa vào các thành
phần module chạy trên các máy chủ ứng dụng. Java EE còn được xem như là một ngôn

H
uế

ngữ hay một tiêu chuẩn vì để có thể công bố là sản phẩm của họ tương thích với Java

Đ

ại

họ

c

Ki

nh

tế

EE, các nhà cung cấp phải tuân thủ một số yêu cầu đã đặt ra.


Hình 2: Các thành phần của JavaEE
Nguồn: “Các thành phần của JavaEE – />Các thành phần của JavaEE bao gồm: Applet, JavaBean, JSP (Java Server Pages),
Servlets. Applet là một chương trình java chạy trên nền Web Browser có hỗ trợ java.
JavaBean bao gồm các thành phần của mô hình một phần mềm, nó có thể tương tác với
các thành phần phần mềm khác trong mô hình và có thể được dùng lại, và các thành
phần được dùng lại đó gọi là “beans”. Servlets đươc dùng để mở rộng các chức năng
của Java-enabled server, nó có thể làm việc trên nhiều web servers. JSP thừa kế tất cả

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
11


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

các ưu nhược điểm cũng như các đăc tính của ngôn ngữ Java, một trang jsp là sự kết
hợp giữa html và script của java, các đoạn mã java được nhúng trong các thẻ (tag) được
quy định gần giống thẻ của HTML, khi có yêu cầu gửi tới trang jsp, webserver sẽ chuyển
yêu cầu cho Java Engine để lấy trang JSP từ hệ thống tập tin. Bộ biên dịch JSP (JSP
Page Compiler) sẽ chuyển các mã lệnh Java và toàn bộ nội dung trang JSP thành một
Servlet. Servlet này sẽ được thực thi trong môi trường máy chủ Java để trả lại các thông
tin cho webserver và webserver chuyển lại cho web client. Ðặc tả JSP cung cấp rất nhiều
thẻ cho phép người dùng tuỳ biến khi nhúng mã nguồn Java vào trong trang JSP. Các
thẻ này sẽ kết hợp với các mã HTML/XML để tạo ra kết xuất cuối cùng trả về cho web

họ

c

Ki


nh

tế

H
uế

client.

Hình 3: Cơ chế hoạt động của JSP

Đ

ại

Nguồn: “Cơ chế hoạt động của JSP – />
1.3.2. Các thành phần của mô hình MVC (Model-View-Controller)
Trong kiến trúc MVC, một Servlet trung tâm, được gọi là Controller, tiếp nhận
tất cả các yêu cầu cho hệ thống. Sau đó Controller sẽ xử lý yêu cầu và làm việc với
Model để chuẩn bị những dữ liệu cần thiết cho View (thường là JSP) và chuyển tiếp dữ
liệu tới trang JSP. Sau đó JSP sử dụng các dữ liệu đã được chuẩn bị bởi Controller để
tạo ra một sự hồi đáp về cho trình duyệt. Trong kiến trúc này, business logic và
presentation logic được phân tách nhau. Việc tách business code và presentation code
giúp ta có thể sử dụng nhiều giao diện cho ứng dụng, chúng có thể là Web, wireless hay
GUI. Thêm vào đó, việc phân tách này còn cung cấp việc tái sử dụng lại code.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
12



Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

- Model: cung cấp dữ liệu từ cơ sở dữ liệu và lưu các thông tin này ở nơi chứa dữ
liệu, tất cả các tiến trình dữ liệu logic đều được xử lý ở đây, dữ liệu được người sử dụng
nhập thông qua view sẽ được kiểm tra ở Model trước khi đưa vào cơ sở dữ liệu.
- View: có nhiệm vụ hiện thị giao diện của ứng dụng, đồng thời có trách nhiệm
lấy dữ liệu từ người sử dụng, gửi các yêu cầu đến controller và hiện thị kết quả đến
người sử dụng. HTML, JSP, các thư viện Tag và file nguồn đều là các thành phần của
View.
- Controller: là trung gian giữa Model và View, Controller có nhiệm vụ tiếp nhận
các yêu cầu từ Client. Khi có các yêu cầu rồi, Controller sẽ thực hiện các tiến trình dữ

H
uế

liệu logic thích hợp từ Model và sau đó xuất ra dữ liệu hiện thị lên View. Action Servlet,

Đ

ại

họ

c

Ki

nh


tế

Action, ActionForm và struts-config.xml đều là các thành phần của Controller.

Hình 4: Mô hình MVC
Nguồn: “MVC framework – />Sử dụng mô hình MVC giúp người lập trình có khả năng thay đổi dễ dàng nếu có
yêu cầu mới cũng như sửa lỗi nhanh hơn, nhiều view được sử dụng đồng thời bởi một
model, các khung nhìn được đồng bộ hóa một cách hoàn chỉnh, và rất dễ kiểm thử chức
năng chính của ứng dụng bởi nó được đóng gói bởi model. Tuy nhiên mô hình MVC
cũng có một số hạn chế như gia tăng sự phức tạp, sự thay đổi trong model có thể kéo

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
13


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

theo sự thay đổi song song trong view và controller vì chúng có sự liên kết với nhau làm
cho sự cập nhật trở nên khó khăn hơn.
1.3.3. Nền tảng lập trình Struts Framework 1.x
1.3.3.1. Tổng quan về nền tảng lập trình Struts Framework 1.x
Apache Struts (trước đây là thuộc dự án Apache Jakarta, Struts bây giờ là một dự
án độc lập) là một bộ khung mã nguồn mở cho việc phát triển các ứng dụng
web bằng J2EE. Struts cung cấp nền tảng, hay framework, để xây dựng một ứng dụng
hướng MVC cùng với các thư viện và tiện ích để làm cho việc phát triển MVC được
nhanh hơn và dễ dàng hơn. Với mô hình MVC vẫn còn hạn chế đó là việc chuyển trang

H
uế


định hướng kết xuất, sự kết nối và trao đổi dữ liệu và định hướng xử lý đến Model hay
View tương ứng vẫn còn lệ thuộc vào khá nhiều code Java trong Servlet. Struts làm cho
việc mapping và kết xuất trở nên uyển chuyển hơn thông qua tập tin cấu hình struts-

tế

config.xml, đây tập tin cấu hình mapping, xác định kết xuất, xác định Model xử lý và

nh

kết xuất với View. Struts kế thừa và mở rộng các Java Servlet API nhưng theo cách
hướng đối tượng hơn so với MVC, nó phân chia việc xử lý theo dạng từng action một

Ki

và tách biệt phần xử lý và phần xử lý ra nên việc phát triển tương đối thuận lợi và dễ

c

dàng.

họ

1.3.3.2. Cấu trúc của Struts

- Một hoặc nhiều Action, mỗi action trong trang web sẽ ánh xạ chính xác đến một

ại

thành phần <action> được định nghĩa trong file struts-config.xml. Action được triệu gọi bởi


Đ

người dùng từ một trang HTML hoặc JSP thông qua một liên kết hay thông qua thuộc tính
action trong thẻ <form>.
- Thành phần <action> sẽ định nghĩa một lớp ActionForm, trong một số trường hợp,
nó sẽ được sử dụng để xác thực các dữ liệu trong form được xác nhận bởi thẻ submit bởi
người sử dụng. Nó cũng định nghĩa lớp Action nào sẽ được sử dụng để xử lý các yêu cầu
từ phía người dùng.
- Một lớp ActionForm có thể sử dụng một hoặc nhiều thẻ forward được định nghĩa
trong thẻ <action> đề nói cho một ActionServlet trả về các đáp ứng tương ứng với các yêu
cầu của người dùng. Chúng ta có thể định nghĩa nhiều forward trong thẻ <action-mapping>.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
14


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

1.3.3.3. Các thành phần chính một ứng dung Struts
- ActionServlet: đóng vai trò như là một controller trong mô hình MVC, hay nói cách
khác ActionServlet là sự thực thi controller của Struts đối với mô hình MVC. ActionServlet
lấy về các yêu cầu (request) từ phía người dùng và ánh xạ chúng đến thành phần <action>
trong file struts-config.xml.
- Action: định nghĩa một tác vụ có thể được gọi bởi người dùng. Nó cũng định nghĩa
lớp sẽ sử lý các request từ phía người dùng và trang JSP sẽ hiển thị kết quả về cho người sử
dụng.

H
uế


- ActionForm: đi kèm với thẻ <action> trong file struts-config.xml, nó quản lý toàn
bộ các dữ liệu được submit lên từ phía người dùng và có thể thực hiện xác thực các dữ liệu
đó.

tế

- Trang JSP: được sử dụng để trả về trang HTML để thể hiện kết quả đã được xử lý

nh

cho người dùng.
1.4. Microsoft SQL Server

Ki

1.4.1. Tổng quan về Microsoft SQL Server

c

Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu do Microsoft phát triển, sản

họ

phẩm này được xây dựng tạo nên chức năng lưu trữ và lấy dữ liệu từ một ứng khác, nó có

ại

thể chạy đồng thời trên một máy tính hoặc qua một hệ thống mạng.


Đ

Microsoft SQL Server làm việc theo kiến trúc máy khách – máy chủ, do đó nó hỗ
trợ đồng thời 2 thành phần Workstation và Server. Thành phần Workstation được cài đặt
trên mọi thiết bị và máy chủ SQL Server. Thành phần Server được cài đặt tập trung trên
máy chủ, đây là những dịch vụ (SQL Server, SQL Server Agent, SQL browser..v..v..).
1.4.2. Kiến trúc chung của Microsoft SQL Server
- Client: nơi yêu cầu được khởi tạo từ người dùng.
- Query: Sql query là một ngôn ngữ truy vấn cấp cao.
- Logical Units: từ khóa, biểu thức và các toán tử.
- N/W Packets: những gói mã hóa liên quan đến mạng.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
15


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

- Protocols: trong SQL Server có 4 giao thức, đó là Shared memory (chia sẻ bộ nhớ,
dành cho các kết nối cục bộ, và mục đích là khắc phục sự cố), Named pipes (dành cho các
kết nối có trong hệ thống mạng LAN), TCP/IP (dành cho các kết nối trong hệ thống mạng
WAN), VIA-Virtual Interface Adapter (yêu cầu phần cứng đặc biệt được thiết lập bởi nhà
cung cấp, nhưng đã không được hỗ trợ từ SQL 2012).
- Server: nơi dịch vụ SQL được cài đặt và lưu giữ dữ liệu.
- Relational Engine: là nơi sự thực thi được chạy xong thực sự, nó chứa các bộ
phân tích truy vấn, trình tối ưu hóa truy vấn và trình thực hiện truy vấn.
- Query Parser (Command Parser) and Compiler (Translator): phân tích và

H
uế


biên dịch, nó sẽ kiểm tra xem cú pháp của truy vấn xem có thỏa mãn không và sẽ chuyển
đổi sang ngôn ngữ máy để thực thi.

- Query Optimizer: nó sẽ chuẩn bị kế hoạch thực thi như là chuẩn bị đầu ra bằng

tế

cách truy vấn dữ liệu, thống kê và xác thực đầu vào.

nh

- Execution Plan: như là một lộ trình định sẵn, nơi chứa tất cả các bước thực hiện
như là một phần của việc thực hiện truy vấn.

Ki

- Query Executor: đây là nơi truy vấn sẽ được thực hiện từng bước một với sự giúp

c

đỡ của kế hoạch thực thi và cũng là vùng lưu trữ khi được gọi đến.

họ

- Storage Engine: nó có trách nhiệm lưu trữ và truy xuất dữ liệu trên hệ thống lưu
trữ, thao tác dữ liệu, khóa và quản lý tiến trình giao dịch hệ thống.

ại


- SQL OS: nằm giữa máy chủ (Windows OS) và Sql server. Tất cả các hoạt động

Đ

được thực hiện trên các công cụ cơ sở dữ liệu và được quản lý và hỗ trợ bởi SQL OS. SQL
OS cung cấp các dịch vụ hệ điều hành khác nhau, chẳng hạn như quản lý bộ nhớ xử lý với
bộ nhớ đệm.
- Checkpoint Process: một quá trình nội bộ viết tất cả các trang được sửa đổi từ
Buffer Cache vào ổ đĩa vật lý. Ngoài ra, nó cũng ghi các bản ghi đăng nhập từ bộ đệm đăng
nhập vào tập tin vật lý.
1.5. JasperReports
1.5.1. Tổng quan về JasperReports
JasperReports Server thuộc bản quyền của “TIBCO Software Inc”, nó được xây

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
16


Khóa luận tốt nghiệp – SVTT: Võ Mạnh Hùng

dựng trên JasperReports như là một nhóm toàn diện các sản phẩm Kinh doanh thông minh
- Business Intelligence (BI), cung cấp khả năng báo cáo tĩnh và tương tác mạnh mẽ, báo
cáo máy chủ và khả năng phân tích dữ liệu. Các tính năng này có sẵn dưới dạng các sản
phẩm độc lập hoặc là một phần của bộ BI tích hợp kết hợp sử dụng siêu dữ liệu phổ biến
và cung cấp các dịch vụ chia sẻ, chẳng hạn như bảo mật, kho lưu trữ và lên kế hoạch. Máy
chủ hiển thị các giao diện công cộng toàn diện cho phép tích hợp liền mạch với các ứng
dụng khác và khả năng dễ dàng thêm các chức năng tuỳ chỉnh.
1.5.2. Khả năng của JasperReports

H

uế

Cốt lõi của JasperReports BI Suite là máy chủ của nó, nó có thể cung cấp khả năng:
- Dễ dàng tạo các báo cáo mới dựa trên các tương tác trong chương trình, sử dụng
chức năng kéo thả một cách hợp lý.

tế

- Tương tác cao với các báo cáo, bao gồm sắp xếp, thay đổi định dạng, nhập các

nh

tham số và khoanh vùng dữ liệu.

- Lên lịch báo cáo để có thể tự động gửi về email cũng như lưu vào bộ nhớ trong.

Ki

- Quản lý hiệu quả và an toàn cùng một lúc nhiều báo cáo

c

- Xuất file báo cáo dưới nhiều dạng (pdf, csv, docx….)

ại

trang web

họ


1.6. Các phương pháp nghiên cứu, giải pháp công nghệ được ứng dụng để xây dựng

Đ

1.6.1. Phương pháp lập trình hướng đối tượng
Lập trình hướng đối tượng (OOP - Object-Orirnted Programming) là một mô hình
lập trình dựa trên khái niệm “đối tượng”, có thể chứa dữ liệu, dưới hình thức các thuộc tính
của đối tượng. Một tính năng của các đối tượng là các thủ tục của đối tượng có thể truy cập
và thường xuyên sửa đổi các trường dữ liệu của đối tượng mà chúng được liên kết.
Ngôn ngữ hỗ trợ lập trình hướng đối tượng thường sử dụng thừa kế để tái sử dụng
mã và mở rộng dưới dạng các lớp hoặc nguyên mẫu:
- Các lớp: các định nghĩa cho các định dạng dữ liệu và các thủ tục có sẵn cho một
loại hoặc một loại đối tượng nhất định. Cũng có thể chứa dữ liệu và các thủ tục (được gọi
là các phương thức lớp), tức là các lớp chứa các thành viên dữ liệu và thành viên.

Giảng viên hướng dẫn – TS. Nguyễn Thanh Tuấn
17


×