1. Trang chủ
  2. » Luận Văn - Báo Cáo

Lập trình web Đề tài website bán rau củ

29 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

Thông tin cơ bản

Tiêu đề Website bán rau củ
Tác giả Trần Văn Du, Phạm Ngọc Bảo, Phạm Gia Bảo, Đoàn Long Âu
Người hướng dẫn ThS. Nguyễn Trung Hiếu
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thông
Thể loại Đề tài
Năm xuất bản 2023
Thành phố Hồ Chí Minh
Định dạng
Số trang 29
Dung lượng 8,73 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Phân quyền và chức năng - Có 3 nhóm phân quyền: Người dùng chưa có tài khoản, Người dùng có tài khoản, Admin - Người dùng chưa có tài khoản Tìm kiếm sản phẩm Xem thông tin sản phẩm Đăng

Trang 1

BỘ THÔNG TIN VÀ TRUYỀN THÔNG

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH

LẬP TRÌNH WEB

ĐỀ TÀI: WEBSITE BÁN RAU CỦ

Phạm Ngọc Bảo – N20DCCN006 Phạm Gia Bảo – N20DCCN005 Đoàn Long Âu – N20DCCN004

Hồ Chí Minh ngày 10 tháng 06 năm 2023

0

Trang 2

Mục lục

I KHẢO SÁT VÀ PHÂN TÍCH HỆ THỐNG 2

1 Tên đề tài: Xây dựng website bán rau củ 2

2 Sử dụng 2

3 Công cụ sử dụng 2

4 Phân quyền và chức năng 2

- Người dùng chưa có tài khoản 2

- Người dùng có tài khoản 2

- Admin 2

5 Phân tích hệ thống 2

II GIAO DIỆN 4

1 Trang chủ 4

2 Trang đăng kí và đăng nhập 6

3 Trang xem sản phẩm 7

4 Trang đặt hàng 8

5 Trang thông tin liên hệ 9

6 Trang xem đơn đặt hàng của người dùng 10

7 Trang Admin quản lý sản phẩm 11

8 Trang Admin quản lý người dùng 11

9 Trang Admin quản lí order 12

III TÍNH NĂNG 13

1 Tìm kiếm 13

2 Đăng kí – đăng nhập 13

3 Sửa thông tin người dùng 18

4 Xem danh sách đơn đặt hàng 18

5 Thêm vào giỏ hàng, xóa khỏi giỏ hàng, đặt hàng 18

a Thêm giỏ hàng 18

b Xóa sản phẩm khỏi giỏ hàng 20

c Tiến hàng đặt hàng 21

6 Liên lạc 23

7 Tính năng quản lý (Admin) 25

a Quản lý sản phẩm 25

b Thêm sản phẩm 25

c Sửa sản phẩm 26

d Thêm người dùng 28

e Quản lý giao hàng 28

Trang 3

I KHẢO SÁT VÀ PHÂN TÍCH HỆ THỐNG

1 Tên đề tài: Xây dựng website bán rau củ

2 Sử dụng

- Spring MVC, SQL Server

- Hibernate, Validation, Bean, Email

- HTML, CSS, Bootstrap, Jquery và một vài thư viện được thiết kế sẵn

3 Công cụ sử dụng

- Microsoft SQL Server 2019

- Eclispe IDE

4 Phân quyền và chức năng

- Có 3 nhóm phân quyền: Người dùng chưa có tài khoản, Người dùng có tài khoản, Admin

- Người dùng chưa có tài khoản

Tìm kiếm sản phẩm

Xem thông tin sản phẩm

Đăng kí tài khoản

Gửi phản hồi

- Người dùng có tài khoản

Có các quyền như người dùng chưa có tài khoản

Xem đơn hàng và trạng thái đặt hàng

Sửa thông tin cá nhân

Trang 5

II. GIAO DIỆN

1 Trang chủ

4

Trang 7

2 Trang đăng kí và đăng nhập

6

Trang 8

3 Trang xem sản phẩm

Trang 9

4 Trang đặt hàng

8

Trang 10

5 Trang thông tin liên hệ

Trang 11

6 Trang xem đơn đặt hàng của người dùng

10

Trang 12

7 Trang Admin quản lý sản phẩm

8 Trang Admin quản lý người dùng

- Quản lí người dùng

- Thêm người dùng

Trang 13

9 Trang Admin quản lí order

12

Trang 15

- Trước tiên, nó sử dụng phương thức authenticateUser của đối tượng userDao đểxác thực người dùng Nếu xác thực thành công, nó tạo một đối tượng HttpSession

để lưu trữ thông tin đăng nhập và chuyển hướng người dùng đến các trang tươngứng

- Nếu xác thực không thành công, phương thức kiểm tra xem tài khoản và mật khẩu

có được nhập không và thêm thông báo tương ứng vào mô hình model Sau đó, nótrả về trang Login/login để hiển thị lại form đăng nhập với thông báo lỗi

- Phương thức logout được sử dụng để đăng xuất người dùng Nó nhận đối tượngHttpServletRequest và HttpSession Phương thức sử dụng phương thứcremoveAttribute của đối tượng HttpSession để xóa thuộc tính loggedInUser Sau

đó, nó chuyển hướng đến trang được chỉ định trong request.getHeader("Referer"),

để quay lại trang trước đó

14

Trang 17

- Sau khi đăng ký thông tin đăng ký sẽ được lưu vào cơ sở dữ liệu bằng cách sửdụng Session và Transaction để bắt đầu một giao dịch và thực hiện việc thêm mớisản phẩm Nếu tên người dùng đã tồn tại thì sẽ trả về trang Login/SignUp và thôngbáo lỗi.

16

Trang 19

3 Sửa thông tin người dùng

- Người dùng có thể tự sửa thông tin của mình

4 Xem danh sách đơn đặt hàng

- Khách hàng có thể xem danh sách các đơn hàng và trạng thái của đơn

5 Thêm vào giỏ hàng, xóa khỏi giỏ hàng, đặt hàng

a Thêm giỏ hàng

- Sử dụng session để lưu thông tin giỏ hàng

18

Trang 20

- Phương thức addCart nhận vào HttpServletRequest, HttpSession và id củasản phẩm được chọn Đầu tiên, nó kiểm tra xem giỏ hàng có tồn tại trongsession hay không Nếu không tồn tại, nó tạo một đối tượngHashMap<Integer, cartDto> mới.

- Sau đó, phương thức gọi addCart để thêm sản phẩm vào giỏ hàng Phươngthức này truyền id của sản phẩm và giỏ hàng hiện tại vào để thực hiện việcthêm Kết quả trả về là một giỏ hàng đã được cập nhật

- Sau khi cập nhật giỏ hàng, phương thức lưu giỏ hàng vào session bằngcách gán giỏ hàng vào thuộc tính Cart của session Đồng thời, nó cũng lưutổng giá trị của giỏ hàng bằng cách gọi phương thức totalPrice của cartDao

và lưu vào thuộc tính TotalPrice của session

- Cuối cùng, phương thức chuyển hướng đến trang được chỉ định trongrequest.getHeader("Referer") để quay lại trang trước đó sau khi thêm sảnphẩm vào giỏ hàng

- Tuy nhiên, nếu người dùng đăng xuất thì giỏ hàng sẽ biến mất

Trang 21

b Xóa sản phẩm khỏi giỏ hàng

- Tương tự như chức năng thêm giỏ hàng

20

Trang 22

c Tiến hàng đặt hàng

- Chức năng này người dùng cần phải đăng nhập để có thể đặt hàng

- Người dùng cần phải điền đầy đủ thông tin để có thể hoàn thành việc đặt hàng

- Sau khi đặt hàng thì toàn bộ sản phẩm trong giỏ hàng sẽ được httpSession xóakhỏi giỏ hàng

Trang 24

6 Liên lạc

Trang 26

7 Tính năng quản lý (Admin)

Trang 27

c Sửa sản phẩm

26

Trang 28

Phương thức editProduct nhận các tham số là ModelMap và

@ModelAttribute("editProduct") Products editProduct Trong đó:

ModelMap được sử dụng để truyền dữ liệu giữa Controller và View

@ModelAttribute("editProduct") sử dụng để gắn kết đối tượng Productsđược truyền từ form với biến editProduct trong phương thức

Sau đó, phương thức mở một phiên làm việc với cơ sở dữ liệu, bắt đầu mộtgiao dịch và thực hiện việc cập nhật thông tin sản phẩm

d Thêm người dùng

Trang 29

- Giống với thêm sản phẩm.

e Quản lý giao hàng

- Giống với quản lý sản phẩm

28

Ngày đăng: 23/02/2025, 21:28