Tải bản đầy đủ (.docx) (92 trang)

ĐỒ án tốt NGHIỆP đại học NGÀNH CÔNG NGHỆ THÔNG TIN xây DỰNG PLUGIN bán vé TRÊN MAGENTO 2

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 (2.84 MB, 92 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN
CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ───────

ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN

XÂY DỰNG PLUGIN BÁN VÉ TRÊN
MAGENTO 2

Sinh viên thực hiện
: ………………
Lớp
: CNTT&TT 1.2 – K56
Giáo viên hướng dẫn : ThS.Bành Thị Quỳnh Mai

HÀ NỘI, 2016

TIEU LUAN MOI download :


PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Thông tin về sinh viên
Họ và tên sinh viên: ……………
Điện thoại liên lạc:

Email:

Lớp: CNTT&TT 1.2 – K56


Hệ đào tạo: Đại học chính

quy
Đồ án tốt nghiệp được thực hiện tại: Hà Nội
Thời gian làm ĐATN: Từ tháng 02/2016 đến tháng 05/2016
2. Mục đích nội dung của ĐATN
Tìm hiểu mã nguồn mở Magento 2 và tiến hành xây dựng plugin phục vụ
bán vé cho magento 2
3. Các nhiệm vụ cụ thể của ĐATN
Tìm hiểu kiến thức cơ bản về mã nguồn mở Magento 2
So sánh điểm nổi bật của mã nguồn mở Magento 2 so với mã
nguồn mở Magento 1.x trước đó
Xây dựng plugin bán vé
Nhận xét kết quả đạt được và đề xuất hướng phát triển.
4. Lời cam đoan của sinh viên:
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép tồn
văn của bất kỳ cơng trình nào khác.
Hà Nội, ngày 23 tháng 12 năm 2016
Tác giả ĐATN

5. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo vệ:

Hà Nội, ngày tháng năm
Giáo viên hướng dẫn

TIEU LUAN MOI download :


ThS.Bành Thị Quỳnh Mai


TIEU LUAN MOI download :


MỤC LỤC

1.1. Khái niệm 6
1.2. Đặc điểm của thương mại điện tử khác với thương mại thông thường
1.3. Ứng dụng trong thực tiễn đời sống

2.1. Lịch sử ra đời và phát triển
2.2. Các thay đổi của magento 2 so với magento 1.x
2.3. Cấu trúc của một website làm bằng Magento 2
2.4. Đặc điểm nổi bật của Magento 2

3.1. Ngôn ngữ lập trình PHP 5
3.2. Giới thiệu về MySql 5.6 17
3.3. Giới thiệu về Zend Framework 1.x
3.4. Giới thiệu về HTML 5 và CSS 3
3.5 Giới thiệu hoạt động của Magento 2
CHƯƠNG II: PHÂN TÍCH NHIỆM VỤ VÀ LỰA CHỌN GIẢI PHÁP...........

1.1. Phía người dùng 20
1.2. Phía quản trị viên 20
2. Phân tích các chức năng chính của website.................................................
2.1. Phía người dùng 20

TIEU LUAN MOI download :


2.2. Phía quản trị viên 21

3. Lựa chọn giải pháp......................................................................................

3.1. Giải pháp 22
3.2. Môi trường phát triển
3.3. Công cụ phát triển22
CHƯƠNG III: XÂY DỰNG CHỨC NĂNG BÁN VÉ TRÊN WEBSITE.......
1. Phân tích các chức năng..............................................................................

1.1. Chức năng mua hàng online
1.2. Chức năng thanh toán online
1.3. Chức năng đăng nhập, đăng kí và quản lí thơng tin cá nhân24
1.5. Chức năng tìm kiếm
1.6. Chức năng lọc sản phẩm 25
1.7. Giao diện tương thích với các loại thiết bị
1.8. Chức năng quản lý sản phẩm
1.9. Chức năng quản lý khách hàng 27
1.10. Chức năng quản lý nhóm khách hàng27
1.11. Chức Pnăng quản lý đơn hàng 27
1.12. Chức năng thống kê
1.13. Chức năng phân quyền 28
2. Biểu đồ Use Case tổng quát........................................................................
3. Biểu đồ tuần tự.............................................................................................

3.1.Biểu đồ xem sản phẩm
3.2.Biểu đồ đăng nhập tài khoản khách hàng
3.3. Biểu đồ tìm kiếm sản phẩm
3.4. Biểu đồ lọc sản phẩm
3.5. Biểu đồ mua hàng33



TIEU LUAN MOI download :


3.6. Biểu đồ thanh toán
3.7. Biểu đồ thêm sản phẩm
3.8. Biểu đồ cập nhật thông tin khách hàng 36
3.9. Biểu đồ cập nhật thông tin đơn hàng 37
4. Biểu đồ lớp...................................................................................................

4.1. Lớp Product
4.2. Lớp Category
4.3.Lớp Customer
4.4.Lớp Order 42
4.5. Lớp Admin43
CHƯƠNG IV: XÂY DỰNG PLUGIN HỖ TRỢ ĐẶT VÉ...............................
1.
1.1. Giới thiệu về plugin
1.2 Biểu đồ lớp dữ liệu
3. Kết Qủa Đạt Được........................................................................................

3.1 Phần Backend
CHƯƠNG V: TRIỂN KHAI VÀ THỬ NGHIỆM ỨNG DỤNG.......................
1.

Môi trường triển khai..................................................................

2.

Mục tiêu đặt hàng thành công và gửi mã code về cho người dun


CHƯƠNG VI: KẾT LUẬN................................................................................
1.
1.1. Ưu điểm 63
1.2. Nhược điểm
2.

Hướng phát triển trong tương lai.................................................

TÀI LIỆU THAM KHẢO...................................................................................


TIEU LUAN MOI download :


DANH MỤC HÌNH VẼ
Hình 1: Cấu trúc thư mục................................................................................... 10
Hình 2: Bảng đăng nhập......................................................................................11
Hình 3: Trang chủ............................................................................................... 12
Hình 4: Chọn nhóm sản phẩm............................................................................ 13
Hình 5: Cài đặt cơ bản và thiết lập nâng cao...................................................... 13
Hình 6: Cài đặt cơ bản....................................................................................... 14
Hình 7: Danh mục quản trị..................................................................................15
Hình 8:Bảng database......................................................................................... 16
Hình 9: Biểu đồ use case tổng quát.....................................................................28
Hình 10: Biều đồ tuần tự chi tiết sản phẩm........................................................ 30
Hình 11: Biều đồ tuần tự đăng nhập tài khoản khách hàng................................ 31
Hình 12: Biều đồ tuần tự tìm kiếm sản phẩm.....................................................32
Hình 13: Biều đồ tuần tự chức năng lọc sản phẩm.............................................33
Hình 14: Biều đồ tuần tự chức năng mua hàng...................................................34
Hình 15: Biều đồ tuần tự chức năng thanh tốn................................................. 35

Hình 16: Biểu đồ tuần tự thêm sản phẩm mới.................................................... 36
Hình 17: Biểu đồ tuần tự tính năng cập nhật thơng tin khách hàng....................37
Hình 18: Biều đồ tuần tự chức năng cập nhật đơn hàng.....................................38
Hình 19: Biểu đồ liên kết cơ sở dữ liệu.............................................................. 46
Hình 20: Chức năng tạo Event Ticket Product....................................................50
Hình 21: Giao diện tạo vé................................................................................... 51
Hình 22 : Cấu hình vé của plugin....................................................................... 51
Hình 23: Cấu hình background vé để gửi cho khách..........................................52

TIEU LUAN MOI download :


Hình 24: Cấu hình các trường vé để gửi cho khách............................................52
Hình 25: Cấu hình cho plugin.............................................................................53
Hình 26: Các chức năng của plugin....................................................................53
Hình 27: Chức năng tạo địa điểm tổ chức...........................................................54
Hình 28: Giao diện insert ,edit sự kiện............................................................... 54
Hình 29: Chức năng xem sự kiện đã tạo.............................................................55
Hình 30: Bảng chi tiết event............................................................................... 55
Hình 31 :Kiểm tra order......................................................................................56
Hình 32: Chức năng xem vé và check vé sử dụng hay chưa sử dụng.................56
Hình 33 : Trang mua sản phẩm khi khách hàng xem..........................................57
Hình 34 : Hình ảnh vé được in ra gửi vào mail cho khách................................. 57
Hình 35: Hình ảnh trang thơng tin khách hàng...................................................58
Hình 36: Vé của khách........................................................................................58
Hình 37: Thơng tin về các order......................................................................... 59
Hình 38: Thơng tin về sản phẩm.........................................................................61
Hình 39: Khi chọn vé vào giỏ sẽ có thơng báo thanh tốn................................. 61
Hình 40: Email gửi về kèm theo vé.................................................................... 62


TIEU LUAN MOI download :


DANH MỤC BẢNG
Bảng 1: Bảng chi tiết lớp product....................................................................... 40
Bảng 2: Bảng chi tiết lớp category......................................................................40
Bảng 3: Bảng chi tiết lớp Customer....................................................................41
Bảng 4: Bảng chi tiết lớp Order.......................................................................... 43
Bảng 5: Bảng chi tiết lớp Admin.........................................................................44
Bảng 6: Chi tiết Magenest_Ticket_Event........................................................... 47
Bảng 7: Bảng chi tiết lớp Magenest Ticket Eventoption.................................... 47
Bảng 8: Bảng chi tiết Magenest_Ticket_Eventoption_Date...............................47
Bảng 9: Bảng chi tiết Magenest_Ticket_Eventoption_Session.......................... 48
Bảng 10: Bảng chi tiết Magenest_Ticket_Eventoption_Type.............................49
Bảng 11: Bảng chi tiết Magenest_Ticket_Location............................................49
Bảng 12: Bảng Chi tiết Magenest_Ticket_Ticket............................................... 50

TIEU LUAN MOI download :


LỜI CẢM ƠN
Để có được ngày hơm nay, lời đầu tiên con xin chân thành cảm ơn bố mẹ
đã tạo điều kiện cho con ăn học, trưởng thành như ngày hôm nay.
Em xin gửi lời cảm ơn sâu sắc tới cô giáo – ThS. Bành Thị Quỳnh Mai đã
chỉ bảo, giúp đỡ, tạo điều kiện cho em hoàn thành tốt đồ án này.
Cuối cùng em xin cám ơn toàn thể các thầy cô và bạn bè đã chỉ bảo, giúp
đỡ em tận tính trong suốt những năm tháng theo học dưới mái trường Bách
Khoa thân yêu.

Hà Nội, ngày 18 tháng 12 năm 2016

Sinh viên thực hiện:

1

TIEU LUAN MOI download :


PHP
MySQL : Hệ quản trị cơ sở dữ liệu

: Viết tắt của "Hyperte

Js

: Viết tắt của javascrip

WTO

:

APEC

: Tổ chức Hợp tác kinh

MVC

: Viết tắt của “model –

CSS


: Viết tắt của “ Cascad

PDO

: Viết tắt của “PHP Da


2

TIEU LUAN MOI download :


ĐẶT VẤN ĐỀ
Lời nói đầu
Trong vài thập kỉ trở lại đây, với sự bùng nổ của ngành công nghệ
thông tin đã mang lại cho chúng ta những thành tựu công nghệ mới, việc này tạo
điều kiện cho sự phát triển và ra đời của thương mại điện tử. Bằng việc sử dụng
mã nguồn mở các nhà thiết kế, lập trình viên đã tạo ra những website thương
mại điện tử với những plugin, theme,extension… giải quyết các vẫn đề nan giải
của hình thức mua bán, trao đổi hàng hóa trước đó như thời gian, định mức, số
lượng, quản lí .... Để góp phần làm phát triển hơn hệ thống mã nguồn mở
Magento 2, trong đồ án tốt nghiệp này em đã lựa chọn đề tài : “ Xây dựng
plugin bán vé trên magento 2“
Nhu cầu thực tế
Với đồ án này, em xin được trình bày chi tiết phân tích, thiết kế và xây
dựng ứng dụng bán vé trên nền tảng mã nguồn mở Magento 2. Thông tin lấy về
sẽ từ các trang web bán khóa học và vé xem phim tại các rạp với tính năng khá
thân thuộc với người tiêu dùng hiện nay như : vietjet.net,….. Đây sẽ là trang
web vơ cùng hữu ích với nhu cầu đặt vé trước của người dùng.Đồng thời giúp
cho người quản trị viên quản lí gian hàng, đơn đặt hàng và mọi thứ liên quan

một cách đơn giản, dễ tiếp cận.
Ngồi ra, em cịn viết một plugin cho website nhằm đáp ứng yêu cầu cần
thiết trong việc đặt vé.
Nội dung đề tài
Tên đề tài
Xây dựng viết plugin hỗ trợ đặt vé
Nhiệm vụ của đề tài
Đề tài này là một hệ thống chạy trên:
-

Server: VPS
3

TIEU LUAN MOI download :




-

Mã nguồn PHP.

-

Platform: Magento 2.

-

Tính năng chính:




Phía người dùng:

Cho phép người dùng có thể xem thơng tin (giá cả,ngày ,giờ địa

điểm diễn ra chương trình) của các sản phẩm vé


Tìm kiếm vé



Mua hàng và thanh toán



Tạo tài khoản, quản lý thơng tin tài khoản khách hàng



Viết bình luận cho vé



Phía admin:



Quản lý đơn hàng




Quản lý vé



Quản lý kho



Quản lý khách hàng



Quản lý giảm giá ( thời gian, địa điểm, số lượng,…)



Quản lí plugin

Những cơng việc cần phải thực hiện như sau:
Phía Frontend:





Xây dựng trang chủ bao gồm: Danh mục vé thông tin vé




Trang danh mục: Danh sách vé, phân trang, lọc.

Trang chi tiết vé: Ảnh vé, tiêu đề, mô tả, giá, ngày giờ địa điểm,

đánh giá của khách hàng về vé.


Giỏ hàng: Hiển thị thông tin các vé khách hàng đã thêm vào giỏ

hàng, có chức năng cập nhật, nhập mã giảm giá, lựa chọn hình thức vận chuyển.
4

TIEU LUAN MOI download :




Quản lý thông tin cá nhân: Quản lý địa chỉ vận chuyển và thanh

tốn, hóa đơn, tìm kiếm, và nhiều sự kiện mở rộng khác



Thanh tốn.

Xử lí giao diện hiển thị trên nhiều loại thiết bị với kích thước màn

hình khác nhau: Mobile, Tablet, Laptop.

Phía Backend:
 Xây dựng hệ thống quản lý vé: Thêm, sửa, xóa, quản lý kho
hàng.



Hệ thống quản lý đơn hàng.

Hệ thống quản lý thông tin khách hàng: Địa chỉ, Tên, Thuộc tính,

Nhóm khách hàng.


Quản lý các chương trình giảm giá.

 Phân quyền: phân quyền người quản lí gian hàng với mục đích
sử
dụng

5


TIEU LUAN MOI download :


CHƯƠNG I: CỞ SỞ LÍ THUYẾT
1.

Tổng quan về thương mại điện tử


1.1. Khái niệm
Theo Tổ chức Thương mại thế giới (WTO), "Thương mại điện tử bao
gồm việc sản xuất, quảng cáo, bán hàng và phân phối sản phẩm được mua bán
và thanh toán trên mạng Internet, nhưng được giao nhận một cách hữu hình, cả
các sản phẩm giao nhận cũng như những thơng tin số hố thơng qua mạng
Internet"
Theo Ủy ban Thương mại điện tử của Tổ chức Hợp tác kinh tế châu Á –
Thái Bình Dương (APEC) định nghĩa: "Thương mại điện tử liên quan đến các
giao dịch thương mại trao đổi hàng hóa và dịch vụ giữa các nhóm (cá nhân)
mang tính điện tử chủ yếu thơng qua các hệ thống có nền tảng dựa trên
Internet."
Tổng kết lại, thương mại điện tử chỉ xảy ra trong môi trường kinh doanh
mạng internet và các phương tiện điện tử giữa các nhóm (cá nhân) với nhau
thơng qua các cơng cụ, kỹ thuật và công nghệ điện tử.
1.2. Đặc điểm của thương mại điện tử khác với thương mại thông
thường
- Các bên tiến hành giao dịch trong thương mại điện tử khơng tiếp xúc
trực tiếp với nhau và khơng địi hỏi phải biết nhau từ trước.
-

Các giao dịch thương mại truyền thống được thực hiện với sự tồn tại của

khái niệm biên giới quốc gia, còn thương mại điện tử được thực hiện trong một
thị trường khơng có biên giới (thị trường thống nhất toàn cầu). Thương mại điện
tử trực tiếp tác động tới mơi trường cạnh tranh tồn cầu.
-Trong hoạt động giao dịch thương mại điện tử đều có sự tham gia của ít
nhất ba chủ thể, trong đó có một bên không thể thiếu được là người cung cấp
dịch vụ mạng, các cơ quan chứng thực.

6


TIEU LUAN MOI download :


-

Đối với thương mại truyền thống thì mạng lưới thơng tin chỉ là phương

tiện để trao đổi dữ liệu, còn đối với thương mại điện tử thì mạng lưới thơng tin
chính là thị trường.
1.3. Ứng dụng trong thực tiễn đời sống
- Tự động hóa ở chuỗi cung ứng và hậu cần
- Hệ thống thanh toán trong nước và quốc tế
- Quản lí nội dung doanh nghiệp
- Nhóm mua
- Trợ lí tự động trức tuyến
- Nhóm tin
- Mua sắm trực tuyến và theo dõi đặt hàng
- Ngân hàng điện tử
- Văn phòng trực tuyến
- Phần mềm giỏ hàng
- Hội thảo truyền thông trực tuyến
- vé điện tử
- Nhắn tin nhanh
- Mạng xã hội
- Mua bán dịch vụ trực tuyến
….v…v…
2. Mã nguồn mở Magento 2
2.1. Lịch sử ra đời và phát triển
Sau sư thanh công rưc rỡ cua Magento 1, Magento đa cho ra măt thêm rât

nhiêu cac phiên ban khac nhau va kêt thuc ơ phiên ban .1.9.0.1. Tuy vây sư ra
đơi cua cac phiên ban Magento trước vẫn còn nhiều vấn đề chưa khắc phục
được. Chính vì điều này mà 17/11/ 2015, Magento chinh thưc cho ra măt phiên
ban Magento hoan toan mơi : Magento 2 vơi rât nhiêu nhưng tinh năng ưu viêt
so với Magento 1.x. Magento 2 đươc ra măt nhăm phat triên manh me trong linh
vưc thương mai điên tư, ban hang trưc tuyên với khả năng quản lí số lượng số

7

TIEU LUAN MOI download :


phẩm cực lớn, tốc độ xử lí nhanh hơn. So vơi thê hê trươc Magento 2 đa đươc
nâp câp manh me ơ giao diên, câu truc, công nghê...
2.2. Các thay đổi của magento 2 so với magento 1.x
Magento là nền tảng thương mại điện tử ra đời từ năm 2008. Hệ thống
được thiết kế tối ưu cho thương mại điện tử và các tính năng mở rộng
(extension, theme) hoạt động độc lập với code core là những lý do chính giúp
magento phát triển nhanh và hình thành cộng đồng mạnh mẽ.
Tuy nhiên magento 1 (phiên bản đầu tiên) cịn có những hạn chế nhất định
tiêu biểu sau đây:
– Hiệu suất : tốc độ load website magento chậm vì bản thân nó rất nặng,
địi hỏi máy chủ xử lí mạnh mới chạy nhanh được.
– Cấu trúc magento 1.x rất phức tạp.
– Ngồi hỗ trợ cơ sở dữ liệu MySQL thì magento 1.x chưa hỗ trợ các cơ
sở dữ liệu khác. Thư viện javascript thường bị conflict giữa Prototype với
Jquery.
Vấn đề nêu trên nếu được giải quyết thì sẽ làm cho website xây dựng
bằng mã nguồn mở Magento thêm phần thân thiện, tiện ích và dễ dàng sử dụng
hơn, lượng người dùng sẽ tăng lên.

2.2.1. Công nghệ nâng cấp
Magento 2 sử dụng các cơng nghệ mới nhất trong lập trình web để cải
thiện hiệu suất, khả năng bảo mật tăng cường hơn.
* Yêu cầu hệ thống là:
1. PHP 5.4 trở lên thêm phần mở rộng sau đây
a. PDO / MySQL
b. MySQLi
c. mbstring
d. Mcrypt
e. mhash (sha-256)
8

TIEU LUAN MOI download :


f. SimpleXML
g.

DOM (điều này được bao gồm theo mặc định trong PHP 5.4)

h.

curl

i. GD2 hoặc ImageMagick 6.3.7 (hoặc mới hơn) hoặc cả hai
j. soap

5.

2.


Mysql phiên bản 5.6 trở lên

3.

Zend Framework 1.x

4.

Javascript: jQuery

HTML5 và CSS3: Tăng hiệu suất, cải thiện các thiết kế bố trí, đáp ứng

thiết kế web
2.2.2. Kiểm định Code (Code Quality)
Magento 2 tập trung vào việc cải thiện chất lượng code. Các tính năng
kiểm định tích hợp sẵn trong magento 2 như sau:
Integration Testing (Test tích hợp)
Unit Testing(Test cấp đơn vị)
Static Testing(Test kiểm thử tĩnh)
Performance Testing(Test hiệu suất)
JavaScript Testing
2.2.3. Sự thay đổi của Frontend và Backend
Frontend a)Thay đổi cấu trúc thư mục và tập tin
Cấu trúc thư mục của Magento 2 là nhiều hơn so với cấu trúc thư
mục Magento 1.x
Đã chuyển thư mục js, media, skin từ gốc đến thư mục pub
Các công cụ cho chuyển đổi và thử nghiệm

9


TIEU LUAN MOI download :


Hình 1: Cấu trúc thư mục
1. App / Design/ /base

=>

app/ code ///
view

2. app/locale/en_US/template/email/*.html =>
app/code///view/email/*.html
3. errors
4.

Js

5.

Media

6. shell
Như vậy trong Magento 2, một thư mục mới có tên là "view" dưới app /
code / core / Mage / module_name.
b) Kích hoạt module
Trong Magento 1.x, kích hoạt các module bằng cách sử dụng các tập tin
module.xml trong app / etc / module. Nhưng trong Magento2, sử dụng các
config.xml để kích hoạt module.

c) Java thay đổi kịch bản thư viện
Nó sử dụng các thư viện JQuery như là mặc định thư viện Java script, vì
vậy nó loại bỏ các ngun mẫu và xung đột jQuery.
d) Magento Switchability ( liên kết trong Magento)
Trong phiên bản Magento 1.x tất cả các module chính như: catalog, cms,
10


TIEU LUAN MOI download :


customer, order reports là có sự liên kết với nhau. Khi vơ hiệu hóa bất kì một
trong các module đó thì sẽ làm cho hệ thống bị phá vỡỡ̃.Nhưng trong Magento 2
lại có sự linh hoạt để chuyển đổi và vơ hiệu hóa. Và module khơng được quan
hệ với nhau về mức độ cấu hình.
Backend
Những thay đổi quan trọng nhất phía backend :
Trong Magento 1.x, URL của phần admin là default_url / admin .
Nhưng trong Magento2, URL sẽ được default_url / backend
Thiết kế lại các phần Backend
Danh mục trình đơn đã được thay đổi và toàn bộ khu vực admin có
giao diện dễ sử dụng hơn.
a) Cái nhìn trực quan mới
b) Một trong những thay đổi lớn nhất của phần admin là cái nhìn trực
quan mới thân thiện hơn
c)

Hình 2: Bảng đăng nhập

11


TIEU LUAN MOI download :


×