1. Trang chủ
  2. » Giáo Dục - Đào Tạo

xây dựng website bán sách

50 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Phát biểu bài toán Quản trị viên: Quản trị viên truy cập vào trang quản trị của website sau đó hệ thống chuyển sang trang đăng nhập, hệ thống sẽ kiểm tra thông tin đăng nhập nếu thông t

Trang 1

0 ĐẠI HỌC ĐÀ NẴNG

TRƯỜNG ĐHSP KỸ THUẬT KHOA ĐIỆN – BỘ MÔN CNTT

Đà Nẵng, tháng 9/2021

Trang 2

SVTH: Trần Đăng Vũ 1

LỜI CẢM ƠN

Em xin chân thành cảm ơn các Thầy Cô trong Tổ bộ môn Công nghệ Thông tin của Trường Đại Học Sư Phạm Kỹ Thuật là những người đã hết lòng dạy dỗ và truyền đạt những kiến thức quý báu cho em trong suốt thời gian học tập

Em xin gởi lời cảm ơn sâu sắc đến TS.Hoàng Thị Mỹ Lệ là người đã tận tình hướng dẫn và giúp đỡ em trong quá trình làm đồ án tốt nghiệp

Đồng thời, em cũng xin cảm ơn gia đình và bạn bè đã không ngừng cổ vũ, động viên, góp ý em trong suốt quá trình học tập cũng như trong thời gian làm đồ án

Trong quá trình làm đồ án, không tránh khỏi những thiếu sót Mong Thầy Cô thông cảm và góp ý thêm

Em xin chân thành cảm ơn!

Đà Nẵng, ngày 27 tháng 09 năm 2021

Trang 3

SVTH: Trần Đăng Vũ 2

LỜI CAM ĐOAN

Em xin cam đoan: Những nội dung trong báo cáo này là do em thực hiện dưới sự hướng dẫn trực tiếp của cô Hoàng Thị Mỹ Lệ

Mọi tham khảo dùng trong báo cáo này đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố

Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, em xin chịu hoàn toàn trách nhiệm

Đà Nẵng, ngày tháng 09 năm 2021

Trang 6

SVTH: Trần Đăng Vũ 5

MỤC LỤC

Lời cảm ơn 1

Lời cam đoan 2

Nhận xét giáo viên hướng dẫn 3

Chương 1 – Tổng Quan Đề Tài 7

1 Giới thiệu chung 7

1.8 Nội dung nghiên cứu 8

1.9 Kế hoạch thực hiện đề tài 8

Chương 2 – Cơ Sở Lý Thuyết 1 Tổng quan về công nghệ 10

Trang 7

2 Hướng phát triển đề tài 47

3 Bài học rút ra từ quá trình thực hiện đồ án 48

Tài Liệu Tham Khảo

Trang 8

SVTH: Trần Đăng Vũ 7

CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI

I Giới thiệu chung 1.2 Tên đề tài: Xây dựng website bán sách trực tuyến 1.3 Lý do chọn đề tài

Hiện nay, các công nghệ tiên tiến phát triển ngày càng mạnh mẽ và được ứng dụng ngày càng nhiều vào các lĩnh vực kinh tế, sản xuất cũng như đời sống thường nhật của con người Một điểm tiêu biểu trong việc phát triển các công nghệ đó phải kể đến việc ứng dụng công nghệ thông tin vào hầu khắp các hoạt động Nhờ đó, các công việc được thực hiện nhanh, chính xác và đạt kết quả cao hơn rất nhiều

Cùng với các lý do nêu trên, qua tìm hiểu nhóm đồ án được biết việc ứng dụng bán sách trực tuyến sẽ giúp cho khách hàng giảm bớt được thời gian và công sức phải đến tận cửa hàng để mua Muốn lựa chọn cho mình một cuốn sách ưng ý phù hợp với túi tiền thì khách hàng chỉ cần ngồi bên chiếc máy tính có nối mạng internet là có thể mua được mặt hàng điện thoại mình cần

Do đó em chọn thực hiện đề tài “Wesbite bán sách” Xây dựng với định hướng giúp việc mua sắm Sách của khách hàng dễ dàng và nhanh gọn hơn, không mất thời gian và công sức

Qua quá trình khảo sát thực tế, tìm hiểu và phân tích thiết kế em đưa ra bản báo cáo gồm các phần sau để giúp người đọc hiểu rõ về chức năng của Website

Trang 9

SVTH: Trần Đăng Vũ 8

1.5 Phạm vi sử dụng

Tất cả người sử dụng internet đều có thể sử dụng được Dành cho tất cả các shop bán sách nhỏ và vừa

1.6 Phương pháp nghiên cứu

Tìm hiểu trên các website trực tuyến đã có Phân tích, thiết kế cơ sở dữ liệu cho webiste trực tuyến Nghiên cứu giải pháp bán hàng hợp lý thuận tiện cho mọi người sử dụng

1.7 Công nghệ

- Ngôn ngữ lập trình: PHP - Framework: Laravel - Hệ quản trị cơ sở dữ liệu: MySQL

Lý do chọn Laravel và MySQL để xây dựng hệ thống là vì cả 2 đều là mã nguồn mở và đặc biệt giá thành của nó là miễn phí

1.8 Nội Dung Nghiên Cứu:

- Nghiên cứu lý thuyết về PHP,Framework Laravel, hệ quản trị cơ sở dữ liệu Mysql, HTML, CSS, JavaScript,Ajax,Bootstrap

- Xây dựng giao diện đơn giản, dễ nhìn, dễ sử dụng - Xây dựng các chức năng thông dụng, dễ sử dụng và hiệu quả - Xây dựng trang quản trị (Admin) và trang người dùng - Xậy dựng chức năng thanh toán online: Qua VNPay

1.9 Kế hoạch thực hiện đề tài

1 Tìm hiểu,khảo sát đề tài và mục

2 Phân tích và thiết kế CSDL 3 tuần 3 Thiết kế giao diện website 2 tuần 4 Xây dựng website bằng laravel 4 tuần

Trang 10

SVTH: Trần Đăng Vũ 9

5 Kiểm thử và nhập dữ liệu 1 tuần 6 Hoàn chỉnh báo cáo tốt nghiệp 2 tuần

Trang 11

SVTH: Trần Đăng Vũ 10

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT

1 Tổng quan về công nghệ Laravel

Laravel được viết trên môn hình MVC (Model, View, Controller), khái quát về mô hình MVC minh sẽ có một bài viết để nói rõ hơn về mô hình này Laravel có rất nhiều tính năng nhưng trong giới hạn bài viết này mình sẽ nêu ra một số tính năng chính

• Modularity: Như mình đã giới thiệu, laravel được xây dựng từ hơn 20 thư

viện nổi tiếp của PHP hiện nay, và trong bản thân nó cũng được chia modul một cách rất rõ ràng và khoa học, với những dự án lớn Laravel hỗ trợ chúng ta chia dự án ra làm những modul nhỏ giúp dự án được quản lí dễ dàng hơn

• Testability: Đôi với một lập trình viên hiện nay, code sản phẩm chạy được

vẫn là chưa đủ, chúng ta phải thực hiện test trên từng dòng code của mình và đảm bảo nó chạy đúng như logic và code của mình code sẽ không ảnh hưởng đến những phần khác Đừng lo nhé, Laravel hỗ trợ các bạn rất tốt trong việc này, khi đến bài về test mình sẽ nói kĩ hơn

• Routing: Laravel cung cấp cho chúng ta cách khai báo một route trong dự án

cực kì đơn giản và mềm dẻo, với các phương thức như GET, POST, PUT, DELETE

• Configuration Management: Một dự án khi chúng ta phát triển thường nó sẽ

được chạy ở nhiều môi trường khác nhau như Local ( máy tính làm việc), server test, server staging, server production … với những môi trường khác nhau thì các thông số config sẽ khác nhau, một ví dụ điển hình nhất là thông số về database Laravel cho phép chúng ta làm việc này rất dễ dàng bằng việc tạo ra 1 file env (Environment) để chúng ta cấu hình các thông số lên trên đó

• QueryBuilder and ORM: Đây là 2 tính năng cực kì quan trọng trong laravel,

nó cho phép chúng ta làm việc với CSDL một cách dễ dàng, cung cấp các câu truy vấn ngắn gọn để lấy dự liệu Nó làm việc được với nhiều cơ sở dự liệu khác nhau như PostgreSQL, SQLite, Mysql and SQL Server

• Schema builder, migration and seeding: Đây là các tính năng cho phép các

bạn định nghĩa cấu trúc database trong code khi làm việc với Laravel, các bạn có thể tạo table, xoá table, tạo cột, xoá cột mọi thao tác đều được thực hiện trên code và được quản lý rất khoa học Tính năng Seeding cung cấp cho chúng ta tạo ra các dữ liệu mẫu trong database

• Template Engine: Laravel sử dụng Blade cho phần view của mình, với Blade

chúng ta có thể show dữ liệu và khai báo các câu điều khiển ở trên view một cách dễ dàng

• E-Mailing: Laravel cung cấp cho chúng ta thư viện để có thể gủi email trong

dự án, hầu như tính năng này đểu có ở tất cả các dự án, Ngoài ra nó cũng hỗ trợ chúng ta làm việc với các mail service như SendGrid, Mailgun and Mandrill

Trang 12

SVTH: Trần Đăng Vũ 11

• Authentication: Đây là một tính năng hầu như bắt buộc phải có ở tất cả các

dự án, Laravel đã cung cấp sẵn cho chúng ta toàn bộ các tính năng liên quan đến authentication như login, logout, register, forgot password chúng ta chỉ việc sử dụng mà không cần phải làm lại các tính năng này

• Redis: Đây là phương thức cache dữ liệu giúp cho website chúng ta chạy

nhanh hơn và ít truy vấn vào Database hơn, mình sẽ có một bài viết nói sâu hơn về tính năng này

• Event and command bus: Tính năng cho phép chúng ta bắt các sự kiện xảy

ra trong ứng dụng của mình

• Queues: Laravel tương thích với nhiều dịch vụ queues như Amazon SQS,

Beanstalkd and IronMQ

2 Các thành phần trong Laravel

Client User, Route, View, Controller, Model

3 Cách xây dựng ứng dụng Laravel…

Trang 13

SVTH: Trần Đăng Vũ 12

CHƯƠNG 3:PHÂN TÍCH THIẾT KẾ HỆ THỐNG

1 Phát biểu bài toán Quản trị viên:

Quản trị viên truy cập vào trang quản trị của website sau đó hệ thống chuyển sang trang đăng nhập, hệ thống sẽ kiểm tra thông tin đăng nhập nếu thông tin đăng nhập sai thì hệ thống sẽ báo lỗi, còn nếu hệ thống kiểm tra thông tin chính xác sẽ báo đăng nhập thành công, sau khi đăng nhập thành công quản trị viên có thể thực hiện các chức năng:

• Quản lý thành viên: Quản trị viên chọn menu “Quản lý thành viên” hệ

thống sẽ hiễn thị danh sách thành viên, khi quản trị viên chọn menu “Thêm mới thành viên” sẽ hiển thị các các TextBox nhập mới thông tin thành viên như họ tên, ngày sinh, mật khẩu, giới tính, địa chỉ, số điện thoại liên lạc sau khi nhập xong nhấn nút “Cập nhật” để thêm thành viên vào hệ thống và phân quyền cho thành viên

• Quản lý Sách: Quản trị viên chọn menu “Quản lý sách” hệ thống sẽ hiễn

thị danh sách Nhà xuất bản, Tác Giả, Thể loại sách,Sách Khi quản trị viên chọn menu “thêm nhà xuất bản, tác giả, thể loại sách, sách” sẽ hiển thị các các TextBox để nhập mới, nội dung sản phẩm, loại sản phẩm, sau khi nhập xong nhấn nút “Cập nhật” để thêm danh mục sản phẩm vào hệ thống

• Quản lý đơn hàng: Quản trị viên chọn menu “Quản lý đơn hàng” hệ

thống sẽ hiễn thị danh sách đơn hàng, khi quản trị viên chọn menu “quản lý đơn hàng” sẽ hiển thị các TextBox để quản lý đơn hàng, nội dung mã

đơn hàng, tên khách hàng, địa chỉ,số điện thoại,email,ghi chú • Quản lý thống kê: Quản trị viên chọn “Thống kê” hệ thống sẽ hiển thị

danh sách Hàng tôn kho, Tiền Lãi,khi quản trị viên chọn Hàng Tồn Kho sẽ hiển thị các textbox, tên sách, số lượng đặt hàng, tổng, số lượng còn lại khi quản trị viên chọn Tiền lãi sẽ hiển thị các textbox thống kê tiền lãi của sản phẩm

• Quản Lý Blog: Quản trị viên chọn “Blog” hệ thống sẽ hiển thị các blog đã được viết và quản trị viên thể thêm blog cho website của mình

Trang 14

• Tạo tài khoản: Khách hàng chọn “đăng ký tài khoản” hệ thống sẽ hiển

thị cho khách hàng những thông tin để khách hàng có thể đăng ký tài khoản cho mình

• Xem blog sản phẩm: Khách hàng chọn “blog sản phẩm” hệ thống sẽ

hiển thị các blog viết về cuốn sách đó

• Xem chi tiết sản phẩm: Khách hàng chọn “xem chi tiết sản phẩm” hệ

thống sẽ hiển thị chi tiết sản phẩm đó từ giá khuyến mãi tới nội dung cuốn sách

• Đặt hàng: Khách hàng chọn “đặt hàng” hệ thống sẽ hiển thị tiền sản

phẩm đó và tổng tiền giỏ hàng

• Giỏ hàng: Khách hàng chọn “giỏ hàng” hệ thống sẽ hiển thị các sản

phẩm bạn muốn mua và tổng tiền giỏ hàng đó khách hàng có thể thêm, sửa, xóa sản phẩm trong giỏ hàng

• Thanh toán: Khách hàng chọn “thanh toán” hệ thống sẽ hiển thị các

bước nhập thông tin đặt hàng và khách hàng có thể chọn phương thức thanh toán COD Hoặc VNPay

2 Sơ đồ Use-Case

Trang 15

SVTH: Trần Đăng Vũ 14

Hình 2.1 Sơ đồ use-case

3 Đặc tả Use-Case và sơ đồ ERD cục bộ

1 Use case đăng nhập

- Đối tượng sử dụng (actor) bao gồm: khách hàng - Use case này mô tả các bước đăng nhập của các actor vào hệ thống - Các bước thực hiện:

• Hệ thống yêu cầu actor cung cấp thông tin đăng nhập gồm tên đăng nhập và mật khẩu

• Actor nhập xong thông tin đăng nhập và click nút đăng nhập • Hệ thống check lại thông tin đăng nhập và thông báo thành

công/thất bại cho actor Nếu đăng nhập thành công hệ thống dựa trên thông tin đăng nhập sẽ đồng thời phân quyền tùy theo loại nhân viên Nếu đăng nhập thất bại, hệ thống sẽ hiện thông báo cho người dùng và yêu cầu đăng nhập lại

2 Use case Đăng xuất

- Đối tượng sử dụng (Actor) bao gồm các thành viên trong use case đăng nhập

- Use case này mô tả việc đăng xuất khỏi hệ thống - Các bước thực hiện:

• Actor thực hiện chức năng đăng xuất khỏi hệ thống • Hệ thống hiển thị yêu cầu xác nhận từ actor

• Actor dùng xác nhận đăng xuất

Trang 16

SVTH: Trần Đăng Vũ 15

• Hệ thống đăng xuất tài khoản actor khỏi hệ thống Nếu Actor không xác nhận đăng xuất thì hệ thống sẽ giữ nguyên hiện trạng

3 Usecase hủy đơn hàng

- Đối tượng sử dụng (Actor) bao gồm các thành viên trong use case đăng nhập

- Use case này mô tả việc hủy đơn hàng trong hệ thống - Các bước thực hiện

• Actor cần đăng nhập vào hệ thống • Actor chọn món hàng, hoặc đơn hàng mình muốn hủy • Actor xác nhận hủy

6 Usecase quản lý blog Website

- Đối tượng sử dụng (Actor) Admin trong use case đăng nhập

- Usecase này mô tả việc đăng tải các tin tức về website - Các bước thực hiện

• Actor đăng nhập vào hệ thống • Actor vào trang tin tức của website • Chỉnh sửa, thêm các blog

• Xác nhận chỉnh sửa, thêm

7 Usecase quản lý khuyến mãi

- Đối tượng sử dụng (Actor) Admin trong use case đăng nhập - Usecase này mô tả việc đăng tải cập nhật các khuyến mãi của các

sản phẩm - Các bước thực hiện

Trang 17

SVTH: Trần Đăng Vũ 16

• Actor đăng nhập vào hệ thống • Actor vào trang khuyến mãi của website • Chỉnh sửa, thêm các sự kiện khuyến mãi

• Xác nhận chỉnh sửa, thêm

9 Usecase quản lý sách - Đối tượng sử dụng (Actor) Admin trong use case đăng nhập - Usecase này thêm sản phẩm sách vào trong website

- Các bước thực hiện

• Actor đăng nhập vào hệ thống • Actor vào trang sách của website • Thêm tên sách, ngày sản xuất, hình ảnh, tác giả, nhà sản xuất, thể

loại, số lượng , giá nhập vào, giá nhập bán ra, giá khuyến mãi, mô tả sản phẩm

• Xác nhận thêm sản phẩm

10 Usecase quản lý nhà xuất bản

- Đối tượng sử dụng (Actor) Admin trong usecase đăng nhập - Usecase này thêm nhà xuất bản vào trang admin

- Các bước thực hiện • Actor đăng nhập vào hệ thống • Actor vào trang nhà sản xuất của website • Thêm tên nhà xuất bản, hình ảnh, địa chỉ, mô tả

11 Usecase quản lý tác giả - Đối tượng sử dụng (Actor) Admin trong usecase đăng nhập

- Usecase này thêm tác giả vào trang admin - Các bước thực hiện

• Actor đăng nhập vào hệ thống

Trang 18

SVTH: Trần Đăng Vũ 17

• Actor vào trang tác giả của website • Thêm tên tác giả, hình ảnh, địa chỉ, mô tả

4 Sơ Đồ Hoạt Động

4.1 Sơ đồ hoạt động đăng ký

4.2 Sơ đồ hoạt động đăng nhập

Trang 19

SVTH: Trần Đăng Vũ 18 4.3 Sơ đồ hoạt động thêm giỏ hàng

Trang 20

SVTH: Trần Đăng Vũ 19

Trang 21

SVTH: Trần Đăng Vũ 20

Trang 22

SVTH: Trần Đăng Vũ 21 4.6 Sơ đồ hoạt động quản lý đơn hàng

Trang 23

SVTH: Trần Đăng Vũ 22

4.6 Sơ đồ hoạt động thanh toán

5 Sơ đồ tuần tự

Trang 24

SVTH: Trần Đăng Vũ 23

5.1.Sơ đồ tuận tự đăng nhập

Trang 26

4 email_verified_at Varchar(255) Not null Xác minh email

Trang 27

SVTH: Trần Đăng Vũ 26 Table: khach_hang

Table: don_hang

Trang 28

SVTH: Trần Đăng Vũ 27

Table: chi_tiet_don_hang

Table: sach

8 Tac_gia Varchar(255) Foreign, not null Tác giả 9 Nha_xuat_ban Varchar(255) Foreign,not null Nhà XB

Trang 29

SVTH: Trần Đăng Vũ 28

Table: nha_xuat_ban

2 Ten_nha_xuat_ban Nvarchar(255) Not null Tên NXB

Table: tac_gia

2 Ten_tac_gia Nvarchar(255) Not null Tên tác giả

Trang 30

SVTH: Trần Đăng Vũ 29

Table: danh_muc_sach

Table: the_loai_sach

Table: gio_hang

Trang 31

SVTH: Trần Đăng Vũ 30 Table: blog

Trang 32

SVTH: Trần Đăng Vũ 31

CHƯƠNG 4: XÂY DỰNG WEBSITE

1 Giao diện trang chủ người dùng

Hình 3.1 Giao diện trang chủ người dùng

Trang 33

SVTH: Trần Đăng Vũ 32

Hình 3.2 Giao diện trang sản phẩm

Trang 34

SVTH: Trần Đăng Vũ 33

Hình 3.3 Trang Chi tiết sản phẩm

Trang 35

SVTH: Trần Đăng Vũ 34

Hình 3.3 Giỏ Hàng

Trang 36

SVTH: Trần Đăng Vũ 35

Hình 3.4 Thanh Toán Bằng COD

Trang 37

SVTH: Trần Đăng Vũ 36

Hình 3.5 Thanh Toán Online VNPay

Hình 3.6 Xác Thực OTP

Trang 38

SVTH: Trần Đăng Vũ 37

3.7 Lịch sử đặt hàng

Trang 39

SVTH: Trần Đăng Vũ 38

Hình 3.3 Giao diện trang đăng ký thành viên

Trang 40

SVTH: Trần Đăng Vũ 39

Hình 3.3 Giao diện trang đăng nhập thành viên

Ngày đăng: 17/09/2024, 14:11

w