ƯỜ Ạ Ọ 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
Ụ Ồ Ố Ế Ệ Ệ 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
(cid:0) ứ ơ ả ề ể ế ồ ở Tìm hi u ki n th c c b n v mã ngu n m Magento 2
(cid:0) ổ ậ ủ ể ồ ở ớ 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 đó
(cid:0) ự Xây d ng plugin bán vé
(cid:0) ả ạ ượ ậ ấ ướ ể ế 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 toà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
ỳ ị ThS.Bành Th Qu nh Mai
Ụ
Ụ
M C L C Lời nói đầu...............................................................................................................................3
Nhu cầu thực tế.......................................................................................................................3
Nội dung đề tài........................................................................................................................3
Phía Frontend: .................................................................................................4
CHƯƠNG I: CỞ SỞ LÍ THUYẾT...............................................................................................6
1. Tổng quan về thương mại điện tử.....................................................................................6 1.1. Khái ni mệ .................................................................................................6
Phía Backend:...................................................................................................5
ủ ặ ươ ạ ệ ử ớ ươ ạ ể 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 ườ ...6 ng
Ứ ụ 1.3. ng d ng trong th c ti n đ i s ng ự ễ ờ ố ...........................................................7
2. Mã nguồn mở Magento 2....................................................................................................7 ể ........................................................................7
ử ị ờ 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 .........................................8
ủ ấ ằ ộ 2.3. C u trúc c a m t website làm b ng Magento 2 .......................................16
3. Giới thiệu các công nghệ sử dụng................................................................................19
ổ ậ ủ ể ặ 2.4. Đ c đi m n i b t c a Magento 2 ...........................................................18
ữ ậ 3.1. Ngôn ng l p trình PHP 5 ......................................................................19
ớ ệ ề 3.2. Gi i thi u v MySql 5.6 .........................................................................19
ớ ệ ề 3.3. Gi i thi u v Zend Framework 1.x ..........................................................20
ớ ệ ề 3.4. Gi i thi u v HTML 5 và CSS 3 .............................................................20
CHƯƠNG II: PHÂN TÍCH NHIỆM VỤ VÀ LỰA CHỌN GIẢI PHÁP........................................22
1. Phân tích nhiệm vụ..........................................................................................................22
ớ ạ ộ ủ ệ 3.5 Gi i thi u ho t đ ng c a Magento 2 .......................................................21
ườ 1.1. Phía ng i dùng .....................................................................................22
2. Phân tích các chức năng chính của website....................................................................23
ả ị 1.2. Phía qu n tr viên .....................................................................................22
ườ 2.1. Phía ng i dùng .....................................................................................23
3. Lựa chọn giải pháp..........................................................................................................25
ị ả 2.2. Phía qu n tr viên ....................................................................................23
ả 3.1. Gi i pháp .................................................................................................25
ườ 3.2. Môi tr ng phát tri n ể ..............................................................................25
CHƯƠNG III: XÂY DỰNG CHỨC NĂNG BÁN VÉ TRÊN WEBSITE...................................26
1. Phân tích các chức năng.................................................................................................26
ụ 3.3. Công c phát tri n ể ...................................................................................25
ứ 1.1. Ch c năng mua hàng online .....................................................................26
ứ 1.2. Ch c năng thanh toán online ....................................................................26
ứ ậ ả 1.3. Ch c năng đăng nh p, đăng kí và qu n lí thông tin cá nhân .....................27
ứ 1.5. Ch c năng tìm ki m ế ................................................................................27
ọ ả ứ 1.6. Ch c năng l c s n ph m ẩ ........................................................................27
ệ ươ ạ ớ 1.7. Giao di n t ng thích v i các lo i thi ế ị..............................................28 t b
ứ ả ả 1.8. Ch c năng qu n lý s n ph m ẩ ..................................................................28
ứ ả 1.9. Ch c năng qu n lý khách hàng ...............................................................29
ứ ả 1.10. Ch c năng qu n lý nhóm khách hàng ....................................................29
ứ ả ơ 1.11. Ch c Pnăng qu n lý đ n hàng ...............................................................30
ứ ố 1.12. Ch c năng th ng kê ...............................................................................30
2. Biểu đồ Use Case tổng quát............................................................................................31
3. Biểu đồ tuần tự..................................................................................................................32
ứ 1.13. Ch c năng phân quy n ề ..........................................................................30
Phía Frontend:.......................................................................................................................32 ẩ ............................................................................32
ể ồ ả 3.1.Bi u đ xem s n ph m
ể ồ ậ ả 3.2.Bi u đ đăng nh p tài kho n khách hàng .................................................33
ể ồ ế ả 3.3. Bi u đ tìm ki m s n ph m ẩ ...................................................................34
ể ồ ọ ả 3.4. Bi u đ l c s n ph m ẩ ............................................................................35
ể ồ 3.5. Bi u đ mua hàng ...................................................................................36
ể ồ 3.6. Bi u đ thanh toán ..................................................................................37
Phía Backend:.......................................................................................................................38 ẩ ..........................................................................38
ể ồ ả 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 ...................................................39
4. Biểu đồ lớp........................................................................................................................41
ể ồ ậ ơ ậ 3.9. Bi u đ c p nh t thông tin đ n hàng ......................................................40
ớ 4.2. L p Category ..........................................................................................43
ớ 4.3.L p Customer ...........................................................................................44
ớ 4.4.L p Order .................................................................................................45
CHƯƠNG IV: XÂY DỰNG PLUGIN HỖ TRỢ ĐẶT VÉ..........................................................48
1.Plugin Magenest Ticket......................................................................................................48
ớ 4.5. L p Admin ..............................................................................................46
ớ ệ ề 1.1.Gi i thi u v plugin .................................................................................48
3. Kết Qủa Đạt Được............................................................................................................54
1.2 Bi u đ l p d li u ể ồ ớ ữ ệ .................................................................................49
CHƯƠNG V: TRIỂN KHAI VÀ THỬ NGHIỆM ỨNG DỤNG...................................................64
1.Môi trường triển khai..........................................................................................................64
CHƯƠNG VI: KẾT LUẬN.........................................................................................................67
1. Các kết quả đạt được.......................................................................................................67 Ư ể ..................................................................................................67
ầ 3.1 Ph n Backend ..........................................................................................54
1.1. u đi m
2. Hướng phát triển trong tương lai......................................................................................67
TÀI LIỆU THAM KHẢO.............................................................................................................68
ượ 1.2. Nh c đi m ể ............................................................................................67
Ẽ
Ụ DANH M C HÌNH V
10 Hình 1: Cấu trúc thư mục .....................................................................................................
Hình 2: Bảng đăng nhập
12 ......................................................................................................
13 Hình 3: Trang chủ .....................................................................................................................
Hình 4: Chọn nhóm sản phẩm
14 ..................................................................................................
Hình 5: Cài đặt cơ bản và thiết lập nâng cao
15 ...........................................................................
Hình 6: Cài đặt cơ bản
16 ..............................................................................................................
17 Hình 7: Danh mục quản trị ........................................................................................................
Hình 8:Bảng database
18 ....................................................................................................
Hình 9: Biểu đồ use case tổng quát
31 .........................................................................................
33 Hình 10: Biều đồ tuần tự chi tiết sản phẩm ...........................................................................
34 Hình 11: Biều đồ tuần tự đăng nhập tài khoản khách hàng ...................................................
Hình 12: Biều đồ tuần tự tìm kiếm sản phẩm
35 ......................................................................
Hình 13: Biều đồ tuần tự chức năng lọc sản phẩm
36 ...............................................................
37 Hình 14: Biều đồ tuần tự chức năng mua hàng .....................................................................
Hình 15: Biều đồ tuần tự chức năng thanh toán
38 .................................................................
Hình 16: Biểu đồ tuần tự thêm sản phẩm mới
39 .......................................................................
40 Hình 17: Biểu đồ tuần tự tính năng cập nhật thông tin khách hàng ........................................
41 Hình 18: Biều đồ tuần tự chức năng cập nhật đơn hàng .......................................................
49 Hình 19: Biểu đồ liên kết cơ sở dữ liệu ....................................................................................
Hình 20: Chức năng tạo Event Ticket Product
54 .........................................................................
55 Hình 21: Giao diện tạo vé .........................................................................................................
Hình 22 : Cấu hình vé của plugin
56 .............................................................................................
56 Hình 23: Cấu hình background vé để gửi cho khách ...............................................................
Hình 24: Cấu hình các trường vé để gửi cho khách
56 ................................................................
57 Hình 25: Cấu hình cho plugin ...................................................................................................
Hình 26: Các chức năng của plugin
57 .........................................................................................
Hình 27: Chức năng tạo địa điểm tổ chức
58 ...............................................................................
Hình 28: Giao diện insert ,edit sự kiện
58 .....................................................................................
59 Hình 29: Chức năng xem sự kiện đã tạo .................................................................................
Hình 30: Bảng chi tiết event
59 ......................................................................................................
60 Hình 31 :Kiểm tra order ............................................................................................................
Hình 32: Chức năng xem vé và check vé sử dụng hay chưa sử dụng
60 ..................................
Hình 33 : Trang mua sản phẩm khi khách hàng xem
61 ............................................................
Hình 34 : Hình ảnh vé được in ra gửi vào mail cho khách
61 ......................................................
62 Hình 35: Hình ảnh trang thông tin khách hàng ........................................................................
62 Hình 36: Vé của khách .............................................................................................................
Hình 37: Thông tin về các order
63 ...............................................................................................
Hình 38: Thông tin về sản phẩm
65 ..............................................................................................
65 Hình 39: Khi chọn vé vào giỏ sẽ có thông báo thanh toán .....................................................
66 Hình 40: Email gửi về kèm theo vé ..........................................................................................
Ả
Ụ DANH M C B NG
Bảng 1: Bảng chi tiết lớp product
43 ...........................................................................................
43 Bảng 2: Bảng chi tiết lớp category .........................................................................................
44 Bảng 3: Bảng chi tiết lớp Customer ........................................................................................
Bảng 4: Bảng chi tiết lớp Order
46 ..............................................................................................
Bảng 5: Bảng chi tiết lớp Admin
47 ...............................................................................................
Bảng 6: Chi tiết Magenest_Ticket_Event
50 .................................................................................
Bảng 7: Bảng chi tiết lớp Magenest Ticket Eventoption
50 ..........................................................
50 Bảng 8: Bảng chi tiết Magenest_Ticket_Eventoption_Date .....................................................
Bảng 9: Bảng chi tiết Magenest_Ticket_Eventoption_Session
51 ...............................................
52 Bảng 10: Bảng chi tiết Magenest_Ticket_Eventoption_Type ..................................................
52 Bảng 11: Bảng chi tiết Magenest_Ticket_Location ..................................................................
Bảng 12: Bảng Chi tiết Magenest_Ticket_Ticket
53 .....................................................................
Ờ Ả Ơ 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
Ụ Ắ Ế DANH M C VI T T T
PHP : Vi t c a t t ế ắ ủ "Hypertext Preprocessor",
ị ơ ở ữ ệ ệ ả MySQL : H qu n tr c s d li u
Js : Vi ế ắ ủ javascript t c a t t
ổ ứ ươ WTO : T ch c Th ạ ng m i th gi ế ớ i
ổ ứ ợ ế APEC : T ch c H p tác kinh t ươ châu Á – Thái Bình D ng
ế ắ ủ MVC : Vi t c a “model – view –controller” t t
CSS : Vi t c a “ t t ế ắ ủ Cascading Style Sheets”
PDO : Vi ế ắ ủ PHP Data Object” t c a “ t t
2
Ặ Ấ Ề Đ 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.
ế ứ ằ ộ Ngoà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:
3
Server: VPS
ồ 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.
4
ế Ả ề ả ờ ị 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.ể
ỉ ậ ể ả ả ị Qu n lý thông tin cá nhân: Qu n lý đ a ch v n chuy n và thanh
ề ự ệ ở ộ ế ơ toán, hóa đ n, tìm ki m, và nhi u s ki n m r ng khác
Thanh toá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
ƯƠ Ở Ở Ế 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ệ
ổ ứ ươ ươ ệ ử ạ ng m i đi n t bao Theo T ch c Th ạ ng m i th gi ế ớ (WTO), "Th i
ệ ả ả ấ ả ượ g m ồ vi c s n xu t, qu ng cáo, bán hàng và phân ph i ẩ đ c mua ố s n ph m
ư ạ ượ ậ ộ 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 ữ ẩ giao nh n cũng nh nh ng thông tin s hoá thông qua ả s n ph m
ạ m ng Internet"
Ủ ươ ổ ứ ợ ế Theo y ban Th ạ ng m i đi n t ệ ử ủ T ch c H p tác kinh t c a châu Á
ị ươ ệ ử ạ ng m i đi n t ế liên quan đ n – Thái Bình D ngươ (APEC) đ nh nghĩa: "Th
ị ươ ụ ữ ạ ổ ị 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 toàn c u.
6
ạ ộ ị ươ ệ ử ề ự 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.
ớ ố ươ ề ạ ạ ố ướ ỉ Đ 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
7
́ ́ ượ ề ́ ư đ 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 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.
ỗ ợ ơ ở ữ ệ ỗ ợ ư – Ngoà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
8
a. PDO / MySQL
b. MySQLi
c. mbstring
d. Mcrypt
e. mhash (sha256)
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
ả ở 2. Mysql phiên b n 5.6 tr lên
3. Zend Framework 1.x
4. Javascript: jQuery
ệ ệ ả ấ ế ế ố 5. 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:
(cid:0) Integration Testing (Test tích h p)ợ
(cid:0) ấ ơ ị Unit Testing(Test c p đ n v )
(cid:0) ử ể Static Testing(Test ki m th tĩnh)
(cid:0) ệ ấ Performance Testing(Test hi u su t)
(cid:0) JavaScript Testing
9
ổ ủ ự 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
(cid:0) ư ụ ủ ớ ấ ề ấ ơ 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
(cid:0) ư ụ ể ừ ố ế ư ụ Đã chuy n th m c js, media, skin t g c đ n th m c pub
(cid:0) ử ụ ệ ổ ể Các công c cho chuy n đ i và th nghi m
ấ ư ụ 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 => pub/errors,
4. Js => pub/js,
5. Media => pub/media,
6. shell => dev/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
10
ử ụ ạ ằ ậ 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 nguyên 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,
ế ớ ự ệ ấ ộ 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 :
(cid:0) ủ ầ Trong Magento 1.x, URL c a ph n admin là default_url / admin .
ẽ ượ ư Nh ng trong Magento2, URL s đ c default_url / backend
(cid:0) ầ Thi ế ế ạ t k l i các ph n Backend
(cid:0) ụ ơ ượ ự ổ ộ 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.
ớ ự Cái nhìn tr c quan m i a)
ấ ủ ổ ớ ữ ầ ộ b) M t trong nh ng thay đ i l n nh t c a ph n admin là cái nhìn
c)
ự ệ ớ ơ tr c quan m i thân thi n h n
11
ả ậ Hình 2: B ng đăng nh p
12
Hình 3: Trang chủ
ả ẩ ổ ả b) Thay đ i qu n lí s n ph m
ộ ả ạ ẩ ầ ả ọ ớ Khi t o ra m t s n ph m m i trong Magneto 1.x, c n ph i ch n các
ẩ ộ ế ậ ạ ả ự ẩ ọ ả thu c tính s n ph m thi ớ t l p và lo i s n ph m, sau khi l a ch n xong m i
ế ụ ướ ế ấ ả ẩ ti p t c các b c ti p theo. Sau đó khi hoàn t t, s n ph m thêm m i s đ ớ ẽ ượ c
13
ạ ả ư ẩ ả ả ẩ ộ thêm vào qu n lý s n ph m.Nh ng trong Magento 2, lo i s n ph m có m t
ớ ủ ả ơ ố ổ ấ ỳ ạ ả trình đ n th xu ng nhanh chóng b sung thêm vé m i c a b t k lo i s n
ẩ ph m nào:
ả ẩ ọ Hình 4: Ch n nhóm s n ph m
ặ ơ ả ế ậ Ngoài ra có hai tab chính, cài đ t c b n và thi t l p nâng cao
(Basic Settings And Advanced Settings)
14
ặ ơ ả ế ậ Hình 5: Cài đ t c b n và thi t l p nâng cao
(cid:0) ư ụ ệ ự ả ọ ộ ụ Vi c l a ch n hình nh và th m c cha cùng chung m t m c
(Basic Settings).
(cid:0) ể ổ ộ ế ậ ỉ Ngoài ra có th thay đ i các thu c tính thi ạ t l p khi t o hay ch nh
ử s a vé.
15
ặ ơ ả Hình 6: Cài đ t c b n
ả ổ ế c) Thay đ i qu n lý thu
ớ ể ộ ố ế ả Có m t s tính năng m i đ qu n lý thu là:
ớ ổ ồ ộ System > Import bao g m m t tab m i b sung cho importing/exporting
ế ấ ứ theo m c thu su t.
ệ ố ự ề ế ọ New menu named Tax là l a ch n thu theo h th ng. Đi u đó cho
ế ế ả ả ạ ả phép b n qu n lý các khai b o thu và qu n lý thu giá zone
ử ụ ụ ể ả ộ Ngoài ra magento 2 s d ng Composer.json (m t công c đ qu n lý
ầ ườ ặ ặ ả ạ thành ph n trong môi tr ậ ng PHP), cho phép b n qu n lý cài đ t ho c c p
ư ệ ủ ầ ậ nh t các thành ph n th vi n c a mình.
ư ệ ẩ PSR Compliance: chu n hóa PHP cho phép các th vi n code
ệ khác nhau làm vi c cùng nhau
ư ệ ả ờ ả Th vi n tài nguyên JS giúp gi m th i gian t i trang, nó cũng
ượ ử ụ ể ế ế ở ộ đ c s d ng đ thi t k các gói m r ng (extension, themes)
ủ ộ ấ ằ 2.3. C u trúc c a m t website làm b ng Magento 2
ệ ầ ả ộ ị ườ Chia làm ba ph n chính đó là :b qu n tr , giao di n ng i dùng, c s ơ ở
ữ ệ d li u
16
ả ầ ộ ị a) B qu n tr : Chia làm 9 ph n chính .
ụ ả ị Hình 7: Danh m c qu n tr
ộ ị ả B qu n tr
ả ậ ậ + Dashboard : qu n lý chung, thông báo c p nh t
ả ơ + Sales : qu n lí đ n hàng và các thông tin liên quan
ụ ả + Products : qu n lí vé và các danh m c vé
ả ườ + Customer : qu n lí ng i dùng
ụ ả ả + Maketing : qu n lí các danh m c qu ng cáo
ệ ả + Content: qu n lí giao di n website
ế ả ỗ + Report: qu n lí thông báo và các thông tin liên quan đ n báo cáo l i và
s cự ố
ế ặ ụ ợ ứ + Store: thi t đ t các ch c năng ph tr cho website
ế ặ ệ ố + System: thi t đ t h th ng, các module
17
ệ ườ b) Giao di n ng i dùng
ộ ườ ề ậ Chính là n i dung website khi mà ng i dùng truy c p vào tên mi n đó.
ử ụ ể ầ ộ ị ộ Ph n n i dung hi n th này còn tùy thu c vào admin s d ng theme và widget
ố ị ứ nào ch không có form c đ nh.
c) ơ ở ữ ệ C s d li u
ơ ở ữ ệ ấ ộ ơ ư ầ B t kì m t website nào cũng c n có c s d li u (chính là n i l u
ữ ữ ữ ượ ả tr nh ng thông tin trên website ), và nh ng thông tin này đ ị ở c qu n tr b i
ủ ử ể ộ admin, có th thêm, s a, xóa hay h y toàn b .
ả Hình 8:B ng database
ổ ậ ủ ể ặ 2.4. Đ c đi m n i b t c a Magento 2
ế ừ ầ ủ ử Magento 2 k th a đ y đ các tính năng c a Magento 1.x
ệ ừ ấ Hi u su t tăng lên t ế 20% đ n 30%
ứ ạ ớ ự ấ ả ườ C u trúc magento 2 gi m b t s ph c t p cho ng i dùng và
ệ ệ ả ơ ị nhà phát tri n.ể Giao di n qu n tr thân thi n h n.
ỗ ợ ấ ệ ớ ề H tr r t nhi u công ngh m i.
ữ ớ ị javascript không còn b conflict v i nhau n a.
18
ớ ệ ử ụ ệ 3. Gi i thi u các công ngh s d ng
ữ ậ 3.1. Ngôn ng l p trình PHP 5
ữ ậ ộ t c a t t PHP vi ế ắ ủ "Hypertext Preprocessor", là m t ngôn ng l p
ả ượ ạ ở ằ ị trình k ch b n đ c ch y phía server nh m sinh ra mã html trên
ề ả ả ấ client. PHP đã tr i qua r t nhi u phiên b n và đ ượ ố ư c t ứ i u hóa cho các ng
ớ ế ễ ọ ộ ố ụ d ng web, v i cách vi t mã rõ rãng, t c đ nhanh, d h c nên PHP đã tr ở
ậ ấ ượ ư ộ ộ thành m t ngôn ngữ l p trình web ổ ế r t ph bi n và đ c a chu ng.
ữ ượ ử ụ ữ ả ỗ ộ PHP 5 là m t ngôn ng đ ệ c s d ng r ng rãi hi n nay vì nh ng c i
ế ố ư ủ ượ ử ụ ắ ti n t i u c a nó và đ ụ c s d ng trong Magento 2. PHP 5 kh c ph c
ượ ữ ạ ả ướ ư ả đ ế ủ c nh ng h n ch c a các b n PHP tr c đó nh kh năng h tr ỗ ợ ậ l p
ướ ố ượ ỗ ợ ứ trình h ng đ i t ng ( OOP), x lýử XML, không h tr giao th c máy khách
ỗ ợ ị ụ ế m i c a ớ ủ MySQL 4.1 và 5.0, h tr d ch v web y u.
ượ Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 đ c PHP Team công b ố
ấ ự ặ ủ ớ ủ ớ ự ồ ộ ỗ ự đánh d u s chín mu i m i c a PHP v i s có m t c a PDO, m t n l c
ộ ệ ố ệ ạ ệ ậ ấ trong vi c t o ra m t h th ng API nh t quán trong vi c truy c p c s d ơ ở ữ
ự ệ ệ ấ ể li u và th c hi n các câu truy v n. Ngoài ra, trong PHP 5.1, các nhà phát tri n
ả ế ế ụ ữ ấ PHP ti p t c có nh ng c i ti n trong nhân Zend Engine 2, nâng c p môđun
ả ế ữ ả ớ PCRE lên b n PCRE 5.0 cùng nh ng tính năng và c i ti n m i trong SOAP,
streams và SPL.
ớ ệ ề 3.2. Gi i thi u v MySql 5.6
ệ ổ ế ấ ả MySQL là h qu n tr c s d li u ị ơ ở ữ ệ mã ngu n mồ ở ph bi n nh t th ế
ớ ơ ở ữ ệ ố ộ ễ ử ụ ổ ị gi i. MySQL là c s d li u t c đ cao, n đ nh và d s d ng, có tính kh ả
ộ ệ ố ệ ề ạ ộ ề ể ấ ớ chuy n, ho t đ ng trên nhi u h đi u hành cung c p m t h th ng l n các
ớ ố ệ ấ ạ ả ấ ậ ộ ợ hàm ti n ích r t m nh.V i t c đ và tính b o m t cao, MySQL r t thích h p
ứ ụ ậ cho các ng d ng có truy c p database trên internet.
ổ ậ ủ ể Đi m n i b t c a MySql 5.6 là:
ơ ư ộ ố ư ề ộ ượ ữ Đ ng c l u tr InnoDB và b t i u đ u đ ằ c tân trang nh m
ả c i thi n t c đ ệ ố ộ load trang.
19
ở ộ ộ ệ ả ớ Kh năng kh i đ ng s m cache (vùng b đ m).
ơ ở ữ ệ ể ự ộ ượ ư ế ề ị C s d li u có th t đ ng đ c sao l u đ n nhi u v trí khác
nhau.
ể ị ư ờ ậ Trì hoãn th i gian sao l u, làm cho quá trình này có th b ch m
ạ ằ ờ ướ l ẹ i b ng cách h n th i gian tr c.
ớ 3.3. Gi i thi u v ệ ề Zend Framework 1.x
ợ ậ ự Zend Framework là 1 PHP Framework đu c l p trình trên PHP d a theo
ử ẽ ầ ệ mô hình MVC s giúp tách riêng các ph n x lý riêng bi ủ t cho website c a
ủ ạ ử ễ ả ơ ỉ ạ b n, nó giúp cho code c a b n trong sáng h n, d qu n lý, ch nh s a và nâng
c p.ấ
ổ ậ ủ ể Đi m n i b t c a Zend Framework:
(cid:0) ạ ứ ụ ẩ T o ng d ng web theo mô hình chu n MVC
(cid:0) ắ ọ ẩ Url tiêu chu n, ng n g n
(cid:0) ỗ ợ ề ớ ừ H tr phân quy n t i t ng Action
(cid:0) ư ủ ầ ấ ỗ ợ Có các thành ph n th viên h tr API c a các nhà cung c p nh ư
Google, Yahoo, Flick
(cid:0) ễ ả ệ ấ ấ Qu n lý code d dàng, li t kê và l y các truy v n history
(cid:0) ử ụ ứ ụ ễ ể D dàng phát tri n thêm các ng d ng nhúng, s d ng Plugins
ớ ệ ề 3.4. Gi i thi u v HTML 5 và CSS 3
ữ ấ ộ ộ HTML5 là m t ngôn ng c u trúc và trình bày n i dung cho World Wide
ủ ứ ượ ạ ữ HTML đ c t o ra năm 1990 và ả Web. Đây là phiên b n th 5 c a ngôn ng
ư ệ ẩ ấ chu n hóa nh HTML4 năm 1997 và xu t hi n vào tháng 12 năm 2012, là
ộ ứ ượ ớ m t ng viên đ c gi ệ i thi u b i ở World Wide Web Consortium (W3C). M cụ
ố ế ế ỗ ợ ữ ệ ả ả tiêu c t lõi khi thi t k ngôn ng này là c i thi n kh năng h tr đa ph ươ ng
ệ ấ ẫ ớ ả ọ ượ ti n m i nh t trong khi v n gi ữ ượ đ ễ c kh năng d dàng đ c đ ở c b i con
ườ ể ượ ở ế ị ươ ng i và luôn hi u đ c b i các thi t b và các ch ng trình máy tính
ệ ẽ ữ ạ ẫ như trình duy t web , phân tích cú pháp, v.v... HTML5 v n s gi l ữ i nh ng
20
ơ ả ặ ả ổ ể ổ ặ đ c đi m c b n c a ủ HTML4 và b sung thêm các đ c t ộ ủ n i tr i c a
ặ ệ XHTML, đ c bi t là JavaScript. CSS vi t c a t t t ế ắ ủ ừ Cascading Style Sheets,
ỗ ợ ị ộ ữ ệ ệ ể là nh ng file h tr cho trình duy t Web trong vi c hi n th m t trang HTML .
ế ả ả ộ ượ ệ CSS 3 là m t phiên b n c i ti n và đ ổ ế c dùng khá ph bi n hi n nay vì
ư ữ ả ế ủ nh ng c i ti n c a nó nh :
(cid:0) ề ộ ố ớ Các cách b trí nhi u c t m i
(cid:0) ờ ử ụ ữ ẩ Các phông ch phi tiêu chu n nh s d ng th ẻ @fontface
(cid:0) ỗ ợ H tr HSL (Hue, Saturation và Lightness) và các mô hình màu
ỏ ờ RGBA (đ , xanh lá, xanh da tr i và alpha).
ớ ạ ộ ủ ệ 3.5 Gi i thi u ho t đ ng c a Magento 2
ử ụ ữ ị ả Magento 2 s d ng PHP làm ngôn ng k ch b n cho Web Server và
ơ ở ữ ệ c s d li u MySQL.
ữ ệ ự ự ể ộ Các module d li u d a trên mô hình EAV ( th c th – thu c tính –
ữ ữ ệ ề ố ượ ư ị giá tr ) mà l u tr d li u v đ i t ấ ng theo c u trúc cây.
ầ ố ủ ủ Module là ph n c t lõi c a c a Magento 2
ệ ạ ư ỗ ợ ặ ộ + Magento 2 hi n t i ch a h tr cài đ t các modul thông qua m t giao
ề ể ư ủ ệ ả ả ặ di n web c a trang qu n lý nh magento 1.x mà ph i download v đ cài đ t
ủ th công.
ượ ư ữ ươ + Các Modules đ c l u tr trên website th ạ ng m i đi n t ệ ử .
21
ƯƠ Ọ Ự Ụ Ệ CH Ả NG II: PHÂN TÍCH NHI M V VÀ L A CH N GI I
PHÁP
ụ 1. Phân tích nhi m vệ
Ở ộ ạ ượ ầ ơ ả ụ n i dung website bán vé c n đ t đ c các m c tiêu c b n sau:
ườ 1.1. Phía ng i dùng
ự ề ế ể ị Có th mua bán, giao d ch tr c tuy n trên n n website.
ể ế ậ ộ ệ ọ Khách hàng có th tìm ki m, l c thông tin m t cách thu n ti n
ủ ộ ự d a trên các thu c tính c a vé:
Giá.
Tên.
ể ạ ả ả ứ ả Khách hàng có th t o tài kho n, qu n lý tài kho n, cách th c
thanh toán.
ướ Comment vào các blog tr c đó.
ệ ệ ươ ế ị Giao di n thân thi n, t ớ ng thích v i các thi t b Mobile, Laptop,
Tablet.
ả ị 1.2. Phía qu n tr viên
ả ơ ả Qu n lý vé, qu n lý đ n hàng
ứ ề Phân quy n các ch c năng
ả Qu n lí plugin
ả ườ Qu n lí ng i dùng
ế ế ử ỉ Thi ệ t k và ch nh s a giao di n
Ở ộ ơ ả ụ ự ạ ầ n i dung xây d ng các plugin c n đ t các m c tiêu c b n sau :
ả Ph i có ý nghĩa trong kinh doanh vé .
ạ ộ ộ ậ ộ ớ Ho t đ ng m t cách đ c l p v i các module
ớ ộ ự ề ệ Th c hi n đúng v i n i dung đ ra
ử ụ ễ ệ ặ D dàng cho vi c cài đ t và s d ng
22
ủ ứ 2. Phân tích các ch c năng chính c a website
ườ 2.1. Phía ng i dùng
ự ứ ế ị Ch c năng mua bán, giao d ch tr c tuy n:
ử ứ ỏ Ch c năng thêm, s a, xóa gi hàng
ứ Ch c năng thanh toán
ự ộ ử ệ ố H th ng t đ ng tính giá vé và g i vé cho khách qua mail.
ứ ế ọ Ch c năng tìm ki m, l c vé:
ị ạ ể ể ầ ủ ọ C n có thanh tìm ki m hi n th t i m i trang con c a trang web,
ậ ộ ừ ế ả sau khi khách hàng nh p n i dung t khóa, k t qu các vé liên quan s đ ẽ ượ c
ể ị hi n th .
ụ ể ể ỗ ị Trên m i trang danh m c: Hi n th các thông tin đ khách hàng có
ị ố ượ ể ọ ể ứ ộ ớ th l c vé: ( Hi n th s l ng vé ng v i các thu c tính )
Danh m c véụ
ỗ ướ ọ ườ ể ở ề ạ ề Sau m i b c l c, ng i dùng đ u có th tr v tr ng thái cũ.
ứ ạ ả ả ả Ch c năng t o tài kho n, qu n lý thông tin tài kho n.
ể ạ ề ả ớ ọ ị ỉ Khách hàng đi n h tên, email, đ a ch … đ t o tài kho n m i.
ệ ậ Khách hàng sau khi đăng nh p có các ti n ích:
ả ị ỉ Qu n lý thông tin đ a ch
ả ơ Qu n lý thông tin đ n hàng
ụ Thêm vé vào danh m c yêu thích (wishlist)
ợ ớ ấ ả ệ ớ Giao di n: Phù h p v i t t c các thi ế ị ệ ử t b đi n t ệ màn hình l n hi n
nay
ả ị 2.2. Phía qu n tr viên
ả Qu n lý vé:
ử Thêm, s a, xóa vé
ạ ộ T o các thu c tính cho vé
ụ Thêm danh m c cho vé
ạ ạ T o các lo i giá cho vé
23
Giá th ngườ
ế ế ạ ạ ả ờ Giá khuy n m i ( Trong 1 kho ng th i gian khuy n m i)
ộ Giá theo thu c tính
ả ồ Qu n lý hàng t n kho
ả ơ Qu n lý đ n hàng:
ơ Theo dõi thông tin đ n hàng:
ơ Thông tin vé trong đ n hàng.
ươ ứ Ph ng th c thanh toán.
ườ Thông tin ng i mua
In hóa đ n.ơ
ả Qu n lý khách hàng:
ả ọ ỉ ị ớ Qu n lý thông tin khách hàng: h tên, đ a ch , gi i tính, …
ả Qu n lý nhóm khách hàng:
ạ T o nhóm khách hàng.
Thêm khách hàng vào nhóm.
ủ ử ụ ủ ự ề ố ấ Phân quy n: d a trên m c đích c a ch c a hàng mu n c p
ữ ề ườ ả ị quy n gì cho nh ng ng i qu n tr viên.
ạ ộ ư ả ả Đ a ra các ho t đ ng gi m giá vé và qu n lí nó.
ả Qu n lí extension :
(cid:0) Thêm, xóa extension
(cid:0) ố ử ụ ứ ặ Cài đ t các ch c năng mu n s d ng
ế ế ử ệ ệ ổ ỉ Thi t k và ch nh s a giao di n: thay đ i giao di n website theo ý
mình
24
ự ọ ả 3. L a ch n gi i pháp
ả 3.1. Gi i pháp
ố ượ ứ ề ấ ế ớ ớ Do website có r t nhi u ch c năng, s l ng vé l n, tìm ki m l n và
ộ ệ ố ử ụ ứ ả ầ ỏ ớ đòi h i kh năng đáp ng nhanh nên c n s d ng m t h th ng l n nh ư
ề ả ươ ệ ử ự ế ự ẽ ạ Magento 2 – N n t ng th ạ ng m i đi n t tr c tuy n c c kì m nh m .
ườ ể 3.2. Môi tr ng phát tri n
ữ ể ả ở Ngôn ng phát tri n: PHP – Phiên b n 5.4 tr lên.
ị ơ ở ữ ệ ử ụ ả ể S d ng MYSQL 5.6 đ qu n tr c s d li u.
ử ụ S d ng Javascript, jQuery, Prototype .
ố ộ ử ử ụ ủ ể S d ng AJAX đ tăng t c đ x lý c a Website
ế ợ ử ụ ớ S d ng HTML 5 k t h p v i CSS 3
ể ụ 3.3. Công c phát tri n
ệ ề H đi u hành Linux 14.04
Ứ ụ ế PHP Storm 10 ng d ng vi ồ t mã ngu n PHP.
ề ầ ộ ả ậ ả ả Zend Server M t ph n m m gi ể l p server o đ qu n lí site và
database
http://www.zend.com/en/products/server/downloads#Windows
ồ Mã ngu n Magento 2: https://github.com/magento/magento2
ụ ỗ ợ ộ ố Và m t s công c h tr khác ….
25
ƯƠ Ự 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
ừ ệ ủ ứ ự ầ ề T vi c phân tích yêu c u c a đ tài em đã xây d ng các ch c năng
ư ủ chính c a website nh sau :
ườ Phía ng i dùng:
ứ 1.1. Ch c năng mua hàng online
ườ ạ ủ ượ Ng i dùng sau khi vào trang web, t i trang ch các thông tin đ ể c hi n
th :ị
ẩ ụ ả Danh m c s n ph m
ặ ả ệ ẩ S n ph m đ c bi t
ả ớ ẩ S n ph m m i
ạ ủ ườ ể ả ẩ Ngay t i trang ch , ng i dùng có th thêm s n ph m vào gi ỏ
ệ ậ ậ ỏ hàng. Sau khi thêm thành công, hi n thông báo đã c p nh t gi hàng ( S ử
ầ ả ạ ậ ỹ ụ d ng k thu t Ajax, không c n t i l i trang ).
ườ ố ượ ử ể ẩ ả Ng i dùng có th thêm, s a, xóa s l ệ ng các s n ph m hi n
ỏ đang có trong gi hàng.
ứ 1.2. Ch c năng thanh toán online
ỏ ể Khách hàng sau khi thêm hàng vào gi , chuy n vào trang gi ỏ
ỉ ậ ề ặ ơ ổ ị ể hàng. Thông tin v các m t hàng mình mua, t ng hóa đ n, đ a ch v n chuy n,
ẽ ượ ậ ậ ỉ ị đ a ch thanh toán s đ c c p nh t.
ứ ể ể ậ ậ ộ Phí v n chuy n hàng: tùy thu c vào cách th c v n chuy n và
ể ủ ủ ứ ể ậ ậ cách th c tính phí v n chuy n c a ch vé mà phí v n chuy n khác nhau.
ươ ể ự ứ ọ Ph ng th c thanh toán ( Khách hàng có th l a ch n ):
(cid:0) ự ế Thanh toán tr c ti p.
(cid:0) ổ Thanh toán qua c ng thanh toán online :Paypal
26
ứ ậ ả 1.3. Ch c năng đăng nh p, đăng kí và qu n lí thông tin cá nhân
ể ạ ằ ấ ả Khách hàng có th t o tài kho n b ng cách n vào nút create account
trên trang ch . ủ
Đăng kí tài kho n:ả
(cid:0) ủ ề ế ầ Khách hàng đi n đ y đ các thông tin liên quan đ n cá nhân đ ể
ộ ạ ụ ư ả ạ t o m t t o kho n trong danh m c vé nh : first name, last name, email, tel,
address…
(cid:0) ậ ẽ ử ạ ử ộ Sau khi g i Form đăng kí thì m t email xác nh n s g i l i cho
ự ể ả khách hàng đ xác th c tài kho n .
Đăng nh p:ậ
(cid:0) ể ậ ậ ử Khách hàng nh p Username và Password đ đăng nh p vào c a
hàng online.
ả ậ Qu n lý thông tin cá nhân khách hàng: Khách hàng sau khi đăng nh p
ư ủ ể ả có th qu n lí các thông tin c a mình nh :
(cid:0) ử ỉ ỉ ị ậ ề ị Thêm, s a, xóa các thông tin v đ a ch thanh toán, đ a ch nh n
hàng
(cid:0) ả ơ ơ Qu n lý thông tin các đ n hàng các đ n đã mua : xem l ạ ơ i đ n
ườ ổ ơ hàng, thay đ i đ n hàng tùy tr ợ ng h p
ứ ế 1.5. Ch c năng tìm ki m
ẽ ượ ạ ế ể ộ M t khung tìm ki m s đ c t o ra trên các page đ giúp khách hàng
ượ ả ẩ ấ ợ ố ế tìm ki m đ ộ c s n ph m mình mu n mua m t cách nhanh nh t theo g i ý tên
ẩ ả s n ph m.
ọ ả ứ ẩ 1.6. Ch c năng l c s n ph m
ọ ả ạ ả ẩ ẩ L c s n ph m giúp phân lo i s n ph m theo các cách khác nhau đ ể
ườ ế ượ ử ụ ụ ấ ộ ng i dùng tìm ki m đ ủ c m t cách nhanh nh t theo m c đích s d ng c a
mình.
ọ ồ Các thông tin l c bao g m:
(cid:0) ụ ả ẩ ọ L c theo danh m c s n ph m.
27
(cid:0) ể ọ ị L c theo đ a đi m.
ệ ọ ẽ ệ ề ả ẩ ọ ỏ Sau khi l c, các s n ph m th a mãn đi u ki n l c s hi n ra.
ệ ươ ớ ạ 1.7. Giao di n t ng thích v i các lo i thi ế ị t b
ợ ớ ộ ả Laptop: Phù h p v i các đ phân gi i:
Full HD.
1366 x 768.
1360 x 768.
1280 x 768.
1280 x 720.
1024 x 768.
ươ ệ ề ớ Mobile: T ớ ng thích v i các h đi u hành dành cho mobile m i
nh t ấ
Android.
IOS.
Windows Phone.
ế ị ạ Các lo i thi t b Tablet.
ị ả Phía qu n tr viên:
ứ ả ẩ ả 1.8. Ch c năng qu n lý s n ph m
ử ể ả ẩ Admin có th thêm, s a, xóa s n ph m.
ỗ ả ể ẩ ớ V i m i s n ph m, admin có th thêm các thông tin:
ẩ ả Tên s n ph m o
ả ả ẩ Mô t s n ph m o
ả ẩ Giá s n ph m: o
Giá g c.ố
ạ ế Giá khuy n m i:
(cid:0) ự ể ị D a theo đ a đi m
(cid:0) ự ổ D a theo tu i
28
ả ẩ ộ Thu c tính s n ph m: o
ờ Th i gian
ượ ọ Tr ng l ng
ố ượ S L ng
ẩ ụ ả Danh m c s n ph m o
ụ ả ử ể ẩ ẩ ả Admin có th thêm, s a, xóa s n ph m vào danh m c s n ph m.
ạ ả ẩ Tr ng thái s n ph m: o
ề ạ ể ể ạ ẩ ả Admin có th chuy n tr ng trái s n ph m v d ng có cho phép
ể ể ị ị hi n th hay không hi n th .
ứ ả 1.9. Ch c năng qu n lý khách hàng
ử ể Admin có th thêm, s a, xóa thông tin khách hàng.
ể ả ớ ỗ V i m i tài kho n khách hàng, Admin có th thêm các thông tin:
ề ố ậ ố ệ ọ H , tên, tên đ m, ti n t , h u t o
Email o
ố ệ ạ S đi n tho i o
Ngày sinh o
ớ Gi i tính o
ế ố Mã s thu o
ị ỉ Thông tin đ a ch : o
Đ ngườ
ỉ ố T nh, thành ph
Bang
ấ ướ Đ t n c.
ố S Fax.
ể ượ ả Admin có th xem đ ủ c các thông tin order c a tài kho n khách hàng.
ứ ả 1.10. Ch c năng qu n lý nhóm khách hàng
ể ử Admin có th thêm, s a, xóa nhóm khách hàng.
29
ể ả ẩ ạ ỗ ổ Giá s n ph m có th thay đ i tùy theo m i lo i nhóm khách hàng.
ể Admin có th thêm khách hàng vào nhóm khách hàng.
ứ ơ ả 1.11. Ch c Pnăng qu n lý đ n hàng
ể ơ Admin có th xem đ ượ ấ ả c t t c các đ n hàng trên website.
ỗ ơ ủ ế ư ạ ạ M i đ n hàng có 9 tr ng thái nh ng ch y u là 4 tr ng thái sau:
ơ Pending: sau khi khách hàng submit đ n hàng o
ơ ượ ấ Complete: sau khi đ n hàng đ c hoàn t t o
ơ Canceled: khi đ n hàng b t ị ừ ố ch i o
ơ ượ ậ ể Processing: Khi đ n hàng đang đ c v n chuy n. o
ể ơ Admin có th in thông tin đ n hàng ra file PDF.
ứ ố 1.12. Ch c năng th ng kê
ủ ơ ị Giá tr trung bình c a đ n hàng
ạ ả ẩ S n ph m bán ch y
ề ượ ẩ ả S n ph m có nhi u l ấ t xem nh t
Khách hàng m iớ
ứ ề 1.13. Ch c năng phân quy n
ư ể Website có các ki u admin chính nh sau:
ấ ấ ả ề Super Admin: Admin cao nh t và có t t c các quy n. o
ứ ử ả ẩ ả ỉ Admin qu n lý s n ph m: Admin ch có ch c năng thêm, s a, xóa o
ẩ ả ả s n ph m, qu n lý kho hàng.
ứ ả ỉ ử Admin qu n lý khách hàng: Admin ch có ch c năng thêm, s a, o
ả xóa khách hàng, qu n lý nhóm khách hàng.
ứ ả ơ ỉ ử Admin qu n lý đ n hàng: Admin ch có ch c năng theo dõi, x lý o
ế ấ ơ các ti n trình, hoàn t t đ n hàng.
ị ề ụ ả ộ Ngoài ra còn tùy thu c vào m c đích qu n tr đi u gì mà super o
ể ề admin có th phân quy n tùy ý mình.
30
ể ồ ổ 2. Bi u đ Use Case t ng quát
ấ ề ể ấ ồ ổ ứ Bi u đ use case này cho ta th y cái nhìn t ng quát nh t v các ch c
ả ườ ủ ả ị năng chính c a khách hàng và c ng i qu n tr viên
ể ồ ổ Hình 9: Bi u đ use case t ng quát
ả ứ ể ồ Gi i thích các ch c năng trong bi u đ
a) Phía khách hàng
(cid:0) ứ ả ẩ Ch c năng xem s n ph m
ẩ ả ớ Xem s n ph m m i
ả ổ ậ ẩ Xem s n ph m n i b t
ế ả ẩ Tìm ki m s n ph m
ọ ả ẩ L c s n ph m
(cid:0) ứ ả ả Ch c năng qu n lý tài kho n
Đăng nh pậ
Đăng kí tài kho nả
ả Qu n lý thông tin cá nhân
31
(cid:0) ứ Ch c năng mua hàng
ẩ ả ỏ Thêm s n ph m vào gi hàng
ỏ Xem gi hàng
ỏ ử S a gi hàng
ử ơ S a thông tin hóa đ n
Thanh toán
b) Phía Admin
(cid:0) ứ ả ẩ ả Ch c năng qu n lý s n ph m:
ẩ ả Thêm s n ph m.
ử ả ẩ S a s n ph m.
ẩ ả Xóa s n ph m.
ử ồ S a thông tin hàng t n kho.
(cid:0) ứ ả Ch c năng qu n lý khách hàng:
ử S a thông tin khách hàng.
ử S a thông tin nhóm khách hàng.
(cid:0) ứ ơ ả Ch c năng qu n lý đ n hàng:
ử ơ S a thông tin đ n hàng.
In hóa đ n.ơ
ể ồ ầ ự 3. Bi u đ tu n t
ể ể ệ ủ ế ố ươ ể Bi u đ tu n t ồ ầ ự ượ ử ụ đ c s d ng ch y u đ th hi n m i t ng tác
ố ượ ữ ự ả ự ộ gi a các đ i t ng và trình t ệ x y ra các hành đ ng trong quá trình th c hi n
ệ ộ m t công vi c nào đó.
Phía Frontend:
ể ồ ả ẩ 3.1.Bi u đ xem s n ph m
ầ ự ư ự Các b ướ ượ c đ ệ c th c hi n tu n t nh sau:
32
ọ ả ự ẩ ầ ộ ầ Khách hàng l a ch n s n ph m c n xem c n xem và kích đúp chu t
ể ử ầ ớ ệ ố ẩ ả vào s n ph m đó đ g i yêu c u t i h th ng
ầ ử ế ậ ử ệ ố ậ ộ B ph n x lí nh n yêu c u g i đ n h th ng.
ệ ố ử ả ẩ ả ề H th ng x lý và tr v thông tin s n ph m.
ế ả ố ượ ư ể ẩ ị Thông tin liên quan đ n s n ph m nh : giá, đ a đi m, s l ng, thông
ậ ượ ể ị ố s kĩ thu t… đ c hi n th trên màn hình
ồ ầ ự ế ả ẩ ề Hình 10: Bi u đ tu n t chi ti t s n ph m
ể ồ ậ ả 3.2.Bi u đ đăng nh p tài kho n khách hàng
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ậ ậ Khách hàng nh p Username & Password vào Form đăng nh p.
ừ ượ ử ớ ệ ố ử Thông tin t form đ i h th ng x lí. c g i t
ệ ố ự ể H th ng ki m tra thông tin và xác th c.
ự ể ể ề ậ ớ Đi u khi n đăng nh p chuy n thông tin xác th c thành công t i form
ể ườ ấ ậ đăng nh p đ ng i dùng nhìn th y.
33
ồ ầ ự ả ậ ề Hình 11: Bi u đ tu n t đăng nh p tài kho n khách hàng
ể ồ ế ả ẩ 3.3. Bi u đ tìm ki m s n ph m
ầ ự ư ự Các b ướ ượ c đ ệ c th c hi n tu n t nh sau:
ế ế ậ Khách hàng nh p thông tin tìm ki m trên thanh tìm ki m.
ộ ề ể ậ ậ ầ ạ B đi u khi n nh n thông tin đ u vào d ng mã th p phân.
ệ ố ể ấ ớ ừ ử ẩ ả ợ H th ng x lý thông tin đ l y ra các s n ph m phù h p v i t khóa
ả ề và tr v thông tin.
ữ ệ ượ ế ể ế ả ị D li u đ c hi n th trên mà hình k t qu tìm ki m.
.
34
ồ ầ ự ế ả ẩ ề Hình 12: Bi u đ tu n t tìm ki m s n ph m
ẩ ể ồ ọ ả 3.4. Bi u đ l c s n ph m
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ứ ệ ẩ ọ ọ ả Khách hàng ch n ch c năng l c s n ph m trên giao di n website.
ể ị Đ a đi m o
o
ờ Th i gian o
Tên
ộ ề ệ ố ể ọ ế ể ầ ậ ầ B đi u khi n l c nh n yêu c u, chuy n yêu c u đ n h th ng.
ệ ố ử ế ạ ầ ậ H th ng x lý ti p nh n yêu c u, t o câu truy v n t ấ ớ ơ ở ữ ệ i c s d li u
ẩ ả ươ ứ ể ấ đ l y thông tin các s n ph m t ng ng.
ả ề ượ ữ ệ ộ ề ử ể ế ể ị D li u tr v đ c b đi u khi n x lý, hi n th trên trang k t qu ả
ẩ ọ ả l c s n ph m.
35
ồ ầ ự ứ ọ ả ẩ ề Hình 13: Bi u đ tu n t ch c năng l c s n ph m
ể ồ 3.5. Bi u đ mua hàng
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ọ ả ự ẩ ầ Khách hàng l a ch n s n ph m c n mua
ọ ố ượ ả ầ Khách hàng ch n s l ẩ ng s n ph m c n mua
ộ ề ề ả ử ể ế ẩ ậ ầ ầ B đi u khi n ti p nh n yêu c u, g i yêu c u v s n ph m và s ố
ượ ệ ố ế ỏ l ng đ n h th ng gi hàng.
ệ ố ả ề ử ỏ ớ ộ ề ể H th ng x lý, tr v thông tin gi hàng t i b đi u khi n
ể ử ộ ề ị ỏ ể ầ ớ ỏ B đi u khi n g i yêu c u hi n th gi hàng t i form gi hàng
ả ẩ ượ ọ ẽ ượ ể ỏ ớ Thông tin s n ph m đ c ch n s đ ị c hi n th trên gi hàng t i
36
ồ ầ ự ứ ề Hình 14: Bi u đ tu n t ch c năng mua hàng
ể ồ 3.6. Bi u đ thanh toán
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ươ ứ ể ậ ậ Khách hàng nh p các thông tin: ph ng th c v n chuy n, ph ươ ng
ứ ẫ ả ề ứ ứ ể th c thanh toán, hình th c v n chuy n, cách th c tr ti n…
ộ ề ế ể ậ ừ B đi u khi n thanh toán ti p nh n thông tin t form thanh toán.
ể ử ộ ề ệ ố ể ử ế B đi u khi n g i thông tin thanh toán đ n h th ng đ x lý.
ệ ố ử ả ề ế H th ng thanh toán x lý các thông tin thanh toán, tr v k t qu ả
ể ả ị thanh toán và hi n th trên form kêt qu .
37
ồ ầ ự ứ ề Hình 15: Bi u đ tu n t ch c năng thanh toán
Phía Backend:
ể ồ ả ẩ 3.7. Bi u đ thêm s n ph m
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ự ả ẩ ả ẩ ọ ả Admin l a ch n thêm s n ph m và nhóm s n ph m, form thêm s n
ượ ẩ ph m đ ị ể c hi n th .
ậ ẩ ả ồ Admin nh p thông tin s n ph m r i save.
ầ ủ ế ậ ườ ắ ộ N u thông tin nh p đ y đ các tr ng b t bu c thì thông tin đ ượ ử c g i
ệ ố ộ ề ế ể ể ẩ ả ế đ n b đi u khi n, sau đó chuy n đ n h th ng s n ph m.
ợ ệ ệ ố ạ ả ế ẩ ớ N u thông tin h p l , h th ng t o s n ph m m i và thông báo thành
công.
ớ ượ ả ể ẩ ả ả ị ẩ S n ph m m i đ ụ c hi n th trên danh m c qu n lý s n ph m.
38
ồ ầ ự ẩ ả ể Hình 16: Bi u đ tu n t ớ thêm s n ph m m i
ể ồ ậ ậ 3.8. Bi u đ c p nh t thông tin khách hàng
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ầ ậ ự ậ ọ Admin l a ch n khách hàng c n c p nh t.
ậ ạ ậ Admin c p nh t l i thông tin khách hàng trên form khách hàng và
submit.
ộ ề ử ể ậ ậ ế Form g i thông tin c p nh t đ n b đi u khi n khách hàng.
ệ ố ậ ế ộ ề ể ử ư ử ể ậ B đi u khi n g i thông tin c p nh t đ n h th ng đ x lý, l u tr ữ
ớ ậ ậ thông tin m i c p nh t.
ả ề ế ệ ố ả ậ ậ ớ ộ ề ể H th ng tr v k t qu c p nh t t i b đi u khi n.
ộ ề ị ế ể ể ả ậ ả ậ B đi u khi n hi n th k t qu c p nh t trên form qu n lý khách
hàng.
39
ồ ầ ự ậ ậ ể Hình 17: Bi u đ tu n t tính năng c p nh t thông tin khách hàng
ể ồ ậ ơ ậ 3.9. Bi u đ c p nh t thông tin đ n hàng
ướ ầ ự ư ự Các b ệ c th c hi n tu n t nh sau:
ố ậ ự ậ ọ ơ Admin l a ch n đ n hàng mu n c p nh t.
ỉ ậ ể ổ ơ ị Admin thay đ i thông tin đ n hàng : đ a ch v n chuy n, thanh toán,
ẩ ạ ả tr ng thái, s n ph m...
ậ ượ ử ế ộ ề ể ậ ơ Thông tin c p nh t đ c g i đ n b đi u khi n đ n hàng.
ệ ố ậ ế ộ ề ể ử ư ử ể ậ B đi u khi n g i thông tin c p nh t đ n h th ng đ x lý, l u tr ữ
ớ ậ ậ thông tin m i c p nh t.
ả ề ế ệ ố ả ậ ậ ớ ộ ề ể H th ng tr v k t qu c p nh t t i b đi u khi n.
ộ ề ả ậ ị ế ể ể ả ậ ơ B đi u khi n hi n th k t qu c p nh t qu n lý đ n hàng.
40
ồ ầ ự ứ ậ ơ ậ ề Hình 18: Bi u đ tu n t ch c năng c p nh t đ n hàng
ể ồ ớ 4. Bi u đ l p
ồ ớ ủ ể ồ ớ Bi u đ l p c a Website g m 5 l p chính:
Product.
Category.
Customer.
Order.
Admin.
41
ớ 4.1. L p Product
Tên l pớ Product
ộ Tên thu c tính Mô tả Ki uể
ẩ ả ị ProductId (PK) Mã đ nh danh s n ph m Int
ẩ Name ả Tên s n ph m Varchar
Ả ả ẩ Image nh s n ph m Varchar
ủ ả ẩ RelatedProductId ID c a s n ph m liên quan Int
ả ả ẩ Description Mô t s n ph m Varchar
ả ẩ ắ ShortDescription Mô t ọ ả ng n g n s n ph m Varchar
ẩ ả SKU Mã s n ph m Varchar
ả ẩ Price Giá s n ph m Decimal
ủ ả ườ ẩ URL Đ ng link c a s n ph m Varchar
ụ ẩ ả CategoryID ID danh m c cha s n ph m Int
Tên ph ngươ Mô tả Giá trị
42
th cứ tr vả ề
ẩ ả addProduct() ớ Thêm s n ph m m i Boolean
ẩ deleteProduct() ả Xóa s n ph m Boolean
ử ẩ ả updateProduct() S a thông tin s n ph m Boolean
ả searchProduct() Array
ẩ ế ớ ả ế Tìm ki m s n ph m 1: B ng chi ti t l p product B ng ả
ớ 4.2. L p Category
Tên l pớ Category
ộ Tên thu c tính Mô tả Ki uể
ủ ụ ị ả CategoryId (PK) Mã đ nh danh c a danh m c s n Int
ụ ả ẩ Name ph mẩ Tên danh m c s n ph m Varchar
Ả Image ụ nh danh m c Varchar
ụ ủ ParentId ID c a danh m c cha Int
ả ủ Description Mô t ụ c a danh m c Varchar
Tên ph ngươ Mô tả Giá trị
ụ th cứ addCategory() ớ Thêm danh m c m i tr vả ề Boolean
deleteCategory() Xóa danh m cụ Boolean
ụ ử updateCategory() S a thông tin danh m c Boolean
ả ế ớ B ng ả 2: B ng chi ti t l p category
43
ớ 4.3.L p Customer
Tên l pớ Customer
ộ Tên thu c tính Mô tả Ki uể
ị CustomerId (PK) ủ Mã đ nh danh c a khách hàng Int
ọ ủ FirstName H c a khách hàng Varchar
ủ LastName Tên c a khách hàng Varchar
ỉ ủ ị Address Đ a ch c a khách hàng Varchar
ủ CustomerGroupId ID c a nhóm khách hàng Int
DOB ậ ủ Ngày sinh nh t c a khách hàng Date
ủ Email Email c a khách hàng Varchar
ủ ậ ẩ ậ Password M t kh u đăng nh p c a khách Varchar
hàng
ươ Tên ph ng th c ứ Mô tả Giá trị
ậ LogIn() Đăng nh p vào website. tr vả ề Boolean
ả ẩ ỏ addProductToCart() Thêm s n ph m vào gi hàng. Boolean
ả ế ớ B ng ả 3: B ng chi ti t l p Customer
44
ớ 4.4.L p Order
Tên l pớ Order
ộ Tên thu c tính Mô tả Ki uể
ủ ơ ị OrderId (PK) Mã đ nh danh c a đ n hàng Int
ị ủ ầ ơ ơ Subtotal Giá tr c a đ n hàng tính đ n thu n giá Decimal
ị ủ ổ GrandTotal ban đ uầ ồ ơ T ng giá tr c a đ n hàng (đã bao g m Decimal
discount, phí ship, tax ) ể ủ ơ ậ ShippingAmount Phí v n chuy n c a đ n hàng Decimal
ủ CustomerId Mã c a khách hàng Int
ủ ơ ị DiscountAmount Giá tr discount c a đ n hàng Decimal
ậ ơ ị ỉ Address Đ a ch khách hàng nh p vào đ n hàng Varchar
ố ệ ạ ủ ậ Telephone S đi n tho i c a khách hàng nh p vào Varchar
ượ ạ CreatedTime ơ đ n hàng ơ Ngày đ n hàng đ c t o Date
Tên ph ngươ Mô tả Giá trị
ơ ơ th cứ saveNewOrder() Khách hàng submit đ n hàng, đ n hàng tr vả ề Array
ớ ượ ạ
c t o. ổ ử ạ updateOrder() m i đ Admin s a đ i thông tin, tr ng thái c a ủ Boolean
45
ơ đ n hàng.
ơ deleteOrder() Admin xóa đ n hàng. Boolean
ả ế ớ B ng ả 4: B ng chi ti t l p Order
ớ 4.5. L p Admin
Tên l pớ Order
ộ Tên thu c tính Mô tả Ki uể
ủ ị AdminId (PK) Mã đ nh danh c a Admin Int
ậ ủ Name Tên đăng nh p c a Admin Varchar
Email ủ Email c a Admin Varchar
ứ ủ RoleId Nhóm ch c danh c a Admin Int
ậ ủ ẩ ậ Password M t kh u đăng nh p c a Admin Varchar
ươ Tên ph ứ ng th c Mô tả Giá trị
ớ addAdminUser() Thêm Admin User m i ( Ví d ụ tr vả ề Boolean
ả admin qu n lý Product, Admin
qu n lý Category ).
ề ủ ổ ả changeUserPermission() Thay đ i quy n c a Admin User. Boolean
46
deleteUser() Admin xóa Admin User Boolean
ủ ổ changeRolePermission( ề Thay đ i vai trò c a 1 quy n Boolean
ụ ứ ) Admin ( Ví d thêm ch c năng
ả cho admin qu n lý Product )
ả ế ớ B ng ả 5: B ng chi ti t l p Admin
47
ƯƠ Ỗ Ợ Ặ Ự CH NG IV: XÂY D NG PLUGIN H TR Đ T VÉ
1. Plugin Magenest Ticket
ớ ệ ề 1.1. Gi i thi u v plugin
ộ ượ ạ ụ ứ ằ ạ N i Dung : Plugin này đ c t o ra nh m m c đích t o ch c năng
ấ ả ế ỗ ợ ả qu n lý vé và cung c p thông tin chi ti t vé cùng h tr gi i pháp cho mua vé
online.
ứ Ch c năng chính cùa plugin:
ấ ế ề ể + Khách Hàng: Cung c p thông tin chi ti ờ ị t v vé ( Đ a đi m,Th i
ệ ạ ậ ọ gian,ch n vé ….),t o cho khách hàng mã code giúp thu n ti n trong vi c s ệ ử
ả ầ ặ ử ằ ụ d ng mà không c n ph i đi mua vé b ng cách khi đ t hàng thành công thì g i
ề mã code v cho khách hàng
ư ấ ả ộ ớ ạ ậ ả + Qu n Lý : Cung c p m t trình qu n lý vé v i các ch c năng t o l p
ố ự ộ ạ ả vé,t o mã code ramdom,và qu n lý doanh s t ứ đ ng,cùng ch c năng theo dõi
ử ụ ư vé s d ng hay ch a
ụ M c Đích:
ườ ả ế ậ + Khách Hàng : Giúp cho ng ơ i mua hàng không còn ph i đ n t n n i
mua vé
ủ ả ả ẫ ấ ầ + Qu n Lý : Gi m chi phí bán vé mà v n cung c p thông tin đ y đ chi
ế ề ả ẩ ươ ậ ố ả ả ti t v s n ph m cho khách hàng và có ph ng pháp qu n lý b o m t t t
48
ể ồ ớ ữ ệ 1.2 Bi u đ l p d li u
ể ồ ế ơ ở ữ ệ Hình 19: Bi u đ liên k t c s d li u
Tên l pớ Magenest_Ticket_Event
ộ Tên thu c tính Mô tả Ki uể
ủ ự ệ ị Mã đ nh danh c a s ki n Int event_id
ủ ả ẩ ị Mã đ nh danh c a s n ph m Int product_id
ự ệ Tên S Ki n Text event_name
Email template Text email_template
ặ ỗ ố Chu i mã thông s cài đ t file in ra Text pdf_coordinates
ộ ộ pdf Đ r ng file pdf Int pdf_page_width
49
ộ pdf_page_height Đ cao file pdf Int
ỗ pdf_background Chu i mã hóa cho background Text
ẩ created at ạ ả Ngày t o s n ph m Text
ẩ updated at ả Update s n ph m timestamp
ạ ỗ type_price Chu i mã hóa cho lo i giá timestamp
ả ế B ng 6: Chi ti t Magenest_Ticket_Event
Tên l pớ Magenest_Ticket_Eventoption
ộ Tên thu c tính Mô tả Ki uể
Int ự ệ eventoption_id Mã đinh danh cho s ki n
ự ệ ử ụ Mã s ki n s d ng Int event_id
ử ụ ả ẩ Mã s n ph m s d ng Int product_id
ể ị Mã đ a đi m Int location
eventoption_is_ ậ ự ệ B t s ki n Boolean
enabled
ả ế ớ ả B ng 7: B ng chi ti t l p Magenest Ticket Eventoption
Tên l pớ Magenest_Ticket_Eventoption_Date
ộ Tên thu c tính Mô tả Ki uể
ị Int Mã đ nh danh ngày
Int
date_id ự ệ event_option_id Mã S Ki n ẩ ả Int Mã S n Ph m product_id
timestamp Ngày
ậ ắ ự ệ Boolean t s ki n
date date_is_enabled B t t ả ế ả B ng 8: B ng chi ti t Magenest_Ticket_Eventoption_Date
50
Tên l pớ Magenest_Ticket_Eventoption_Session
ộ Tên thu c tính Mô tả Ki uể
ự ệ ị Mã đ nh danh phiên s ki n Int session_id
ị Mã đ nh danh ngày Int event_date_id
ả ẩ ị Mã đ nh danh s n ph m Int product_id
ắ ờ Th i gian b t đâu timestamp start_time
ế ờ Th i gian k t thúc timestamp end_time
session_is_enab ậ ắ ự ệ B t/T t S Ki n Boolean
led
ố ượ ố S l ng t i đa Int max_qty
ả ả B ng 9: B ng chi ti ế Magenest_Ticket_Eventoption_Session t
Tên l pớ Magenest_Ticket_Eventoption_Type
ộ Tên thu c tính Mô tả Ki uể
ị Mã đ nh danh type Int
Int
type_id ự ệ ị even_session_id Mã đ nh danh phiên s ki n ị ẩ ả Mã đ nh danh s n ph m Int product_id
Tên Type Text title
Mã Type Text sku
Gía trên Type Decimal price
ố ặ sort_order S đ t hàng Int
ố qty S Vé Bán Int
ố available_qty S Vé còn Int
ố ượ purcharsed_qty S l ng mua Int
ề ổ revenue T ng ti n Int
tax Thuế Int
51
Boolean Boolean
type_is_enabled Có th dùng ư ồ S d ng r i hay ch a use_max ả ả B ng 10: B ng chi ti ể ử ụ t ế Magenest_Ticket_Eventoption_Type
Tên l pớ Magenest_Ticket_Location
ộ Tên thu c tính Mô tả Ki uể
ể ị Mã đinh danh đ a đi m Int Id
ậ ắ B t hay t t Int status
ể ị Đ a đi m Text name
ỉ ị Đ a ch Text address
ả ả B ng 11: B ng chi ti ế Magenest_Ticket_Location t
Tên l pớ Magenest_Ticket_Ticket
ộ Tên thu c tính Mô tả Ki uể
ị Mã đ nh danh vé ticket_id
ị ự ệ Mã đ nh danh s ki n event_id
Tên vé title
Mã code
code customer_name Tên khách hàng customer_mail Mail
ị Mã đ nh danh khách customer_id
Mã order order_id
order_increment ơ Mã đ n hàng
_id order_item_id Mã order
ố ượ qty S l ng
ố status S vé thanh toán
52
created_at Ngày t oạ
updated_at Ngày update
ị type_id Mã đ nh danh type
ả ả B ng 12: B ng Chi ti ế Magenest_Ticket_Ticket t
ạ ộ ế 2.Phân tích ti n trình plugin ho t đ ng
ả ạ ẩ ớ 2.1 T o S n Ph m M i
ướ ầ ự ư Các b c tu n t nh sau:
ọ + Admin ch n Product Type ( Event ticket)
ơ ả ậ ạ ờ + Admin nh p thông tin c b n cho vé : Tên,giá,th i gian,tr ng thái,…
ủ ậ ậ ầ + Admin c p nh t thông tin cho ph n riêng c a plugin Event Booking:
ố ượ ể ọ ị ử type (Ch n đ a đi m và các đ i t ng),Pdf template (file vé g i cho khách),
ộ ố ố ở ộ ầ ợ config email, ph n vé m r ng, m t s th ng kê mua bán và l ậ i nhu n khi s ự
ệ ượ ki n đ c bán ra ….
ẽ ượ ư ạ ề ấ +Thông tin v vé s đ c l u l i sau khi n save
ể ậ ẽ ọ +Sau khi save thành công admin s ch n Event Slot Quick Insert đ c p
ậ ế ề ờ ị ở ộ ự ể ọ nh t thông tin chi ti t v ngày, gi ,đ a đi m và các l a ch n m r ng cho s ự
ệ ừ ượ ạ ki n v a đ c t o ra
ộ ự ệ ạ ậ ẽ ượ ể ị +M t s ki n ( product) là t o l p thành công thì s đ c hi n th ra
ườ trang phía ng i dùng
ứ 2.2 Ch c năng mua hàng
Chọn địa điểm chọn thời gian tham gia
chọn ngày sự kiện
chọn loại vé đặt vé và thanh toán
ướ ầ ự ư Các b c tu n t nh sau:
ọ ả ế ẩ +Khách hàng ch n s n ph m và xem thông tin chi ti t
53
ể ể ọ ọ ị ị ữ ệ ẽ ử +Khách hàng ch n đ a đi m, sau khi ch n đ a đi m yêu d li u s g i
ớ ể ẽ ả ề ế ề ệ ả t i trung tâm .Sau đó trung tâm đi u khi n s tr v k t qu và hi n ra màn
ự ệ ạ ị hình ngày có s ki n t ể i đ a đi m đó
ọ ờ ổ ữ ệ ứ ẽ ể ề +Khách hàng ch n th i gian t ch c.D li u s chuy n v trung tâm
ẽ ả ạ ế ự ệ ả ệ ệ ờ ờ sau đó s tr l i k t qu hi n ra giao di n th i gian có s ki n theo gi
ọ ố ượ ừ +Khách hàng ch n s l ng vé cho t ng type sau đó book session now
ả ề ử ể ệ ề ề ể ữ ệ ẽ d li u s chuy n v trung tâm đi u khi n.H thông x lý tr v thông tin
ẩ ỏ ả s n ph m khách đã mua trên gi hàng
ế ủ ạ ượ 3. K t Q a Đ t Đ c
ầ 3.1 Ph n Backend
ạ ả ầ ầ ẩ Ph n Backend chia làm 2 ph n chính : T o s n ph m dành riêng cho
ệ ả vi c bán vé và qu n lý vé
ườ ạ ả ẽ ả ẩ ộ +Ng i qu n lý s có m t lo i s n ph m riêng dành cho bán vé
ứ ạ Hình 20: Ch c năng t o Event Ticket Product
54
ệ ạ ộ ớ + Giao di n t o m t vé m i.
ệ ạ Hình 21: Giao di n t o vé
ạ ả ử ụ ứ ẩ + Ch c năng riêng s d ng khi t o s n ph m vé
55
ủ ấ Hình 22 : C u hình vé c a plugin
ố ể ậ ậ + C p nh t background và thông s đ in vé cho khách
ể ử ấ Hình 23: C u hình background vé đ g i cho khách
ườ ể ử ấ Hình 24: C u hình các tr ng vé đ g i cho khách
56
ấ ạ + C u hình cách t o mã code và email cùng map
ấ Hình 25: C u hình cho plugin
ỗ ợ ứ ự ệ ể ấ ạ ế ị + Plugin h tr ch c năng t o đ a đi m,c u hình s ki n chi ti t
ủ ứ Hình 26: Các ch c năng c a plugin
57
ứ ể ạ ị Hình 27: Ch c năng t o đ a đi m t ổ ứ ch c
ệ ự ệ Hình 28: Giao di n insert ,edit s ki n
58
ự ệ ứ ạ Hình 29: Ch c năng xem s ki n đã t o
ả ế Hình 30: B ng chi ti t event
59
ệ ể ổ ố + Ki m tra order và duy t order cùng thay đ i thông s order
ể Hình 31 :Ki m tra order
ử ụ ử ụ ư ứ Hình 32: Ch c năng xem vé và check vé s d ng hay ch a s d ng
ầ 3.2 Ph n Frontend
ượ ế ế ả ẩ Khách hàng khi mua đ c bi t thông tin chi ti ơ t s n ph m ngày và n i
ọ ả ể ễ ị ờ ẩ di n ra và ch n s n ph m theo ngày đ a đi m gi
60
ả ẩ Hình 33 : Trang mua s n ph m khi khách hàng xem
ậ ượ ặ ế ả Khi đ t hàng thành công khách hàng nh n đ c hình nh phi u
ả ượ ử Hình 34 : Hình nh vé đ c in ra g i vào mail cho khách
61
ể ể ả ả ị Trong qu n lý tài kho n khách hàng có th xem vé và đ a đi m khách
ử ụ s d ng vé
ả Hình 35: Hình nh trang thông tin khách hàng
ủ Hình 36: Vé c a khách
62
ề Hình 37: Thông tin v các order
63
ƯƠ Ệ Ứ Ử Ụ Ể CH NG V: TRI N KHAI VÀ TH NGHI M NG D NG
ườ 1. Môi tr ể ng tri n khai
ượ ữ ể ằ Trang web đ c phát tri n b ng ngôn ng PHP 5, HTML 5, CSS
3, Javascript
ụ ụ ử ụ ử ệ ầ S d ng VPS ph c v cho nhu c u th nghi m
ử ụ ở ệ ề H đi u hành s d ng đây là Ubuntu 14.04
ử ụ ề ặ ườ 2. M c tiêu đ t hàng thành công và g i mã code v cho ng i dung
ẽ ệ ả ế ề ả ẩ ẩ Khi khách xem s n ph m s hi n thông tin chi ti t v s n ph m,ngày
ờ ị ể gi ,đ a đi m
64
ề ả ẩ Hình 38: Thông tin v s n ph m
ọ ờ ẽ ệ ươ ứ ớ Khi ch n ngày xong,thì gi ấ s xu t hi n t ng ng,v i các ngày đã
ặ ờ ờ ẽ ọ ế h t th i gian ho c gi thì s không cho khách ch n
ọ ỏ ẽ Hình 39: Khi ch n vé vào gi s có thông báo thanh toán
65
ượ ườ ẽ ả ồ Sau khi khách thanh toán và đ c ng i qu n lý đ ng ý thì s có email
ử ề g i v
ử ề Hình 40: Email g i v kèm theo vé
66
ƯƠ Ậ CH Ế NG VI: K T LU N
ả ạ ượ ế 1. Các k t qu đ t đ c
Ư ể 1.1. u đi m
ư ề ầ ồ ụ Đ án đã hoàn thành các m c tiêu đ ra ban đ u nh sau:
ử ụ ồ ớ S d ng thành công mã ngu n m i magento 2
ớ ố ộ ệ ố ạ ổ ơ ớ ị H th ng ch y n đ nh v i t c đ nhanh h n so v i magento 1.x
ễ ử ụ ệ ệ ặ ợ ớ Plugin đ t vé có giao di n thân thi n, d s d ng phù h p v i ng ườ i
dùng
ượ 1.2. Nh ể c đi m
ệ ệ ả ơ Giao di n Plugin hi n ra còn đ n gi n
ữ ế ạ Ch a t ư ố ư ượ i u đ ệ c liên k t gi a đi n tho i và web
ướ ể ươ 2. H ng phát tri n trong t ng lai
ệ ạ ồ ơ ả ứ ạ ớ ỉ Hi n t i đ án m i ch hoàn thành các ch c năng c b n là: t o các
ử ề ổ event,g i mail và tính t ng ti n và in vé
ươ ố ứ ự ể Trong t ng lai, có th xây d ng thêm 1 s ch c năng:
ẽ ệ ể ạ ợ ự ộ + Em s tích h p ki m tra vé trên đi n tho i và t đ ng check vé nào đã
ư ồ dung r i vé nào ch a dung
67
Ả Ệ TÀI LI U THAM KH O
[1]. http://php.net/
[2]. http://jquery.com/
[3]. http://www.w3schools.com/css/DEFAULT.asp
[4]. http://www.w3schools.com/json/
[5]. http://vnmage.com/gioithieumagento2/
[6]. https://www.magentovietnam.com/threads/gioithieusukhacnhau
giuamagento1vamagento2.4493/
[7]. https://alanstorm.com/
http://devdocs.magento.com/? [8].
_ga=1.130122635.52618895.1463323605
ư ỗ ự ứ ứ ụ Xây d ng ng d ng bán đá quí trang s c trên [9]. Đ Quang H ng “
ườ ạ ọ ộ ề ả n n t ng website ” – Tr ng đ i h c Bách Khoa Hà N i, 20015.
68

