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

báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh

57 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
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 đề Áp Dụng Mẫu Thiết Kế Vào Quản Lý Cửa Hàng Thức Ăn Nhanh
Tác giả Huỳnh Quang Huy, Truong Tan Hung, Tran Minh Kha, Cao Bao Thai, Huynh Nguyen Hoai Bao
Người hướng dẫn THS-Vũ Đình Hồng
Trường học Trường Đại Học Tôn Đức Thắng
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Tập Lớn/Đồ Án Cuối Kỳ
Năm xuất bản 2021
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 57
Dung lượng 7,11 MB

Cấu trúc

  • 1.2 Sơ đồ Use case.......................... 5 52212212 2122121122112 rey 9 (11)
  • 1.3 Các tác nhân trong hệ thống........................ 5 ST 1 1E 2122121212 tre 9 (0)
  • 1.4 Các Use case trong hệ thống.........................- 1S SE EE E122 1121 11122111 tra 10 (12)
  • 2.3 State Paff€rn..................... HH HT TH TH HT HH KH kh 31 (0)
  • 2.6 Decorator Pattern... icc (32)
  • 2.7 Command Patffern........................- ch HH HH TH HH KH kg kh 34 (34)
  • 2.8 Template Method Pattern.........................- .L Q 0 1221112 1n 1110111111211 kg 1x the, 35 3-CÁC FILE CHI TIẾT ĐƯỢC ỨNG DỤNG TRONG DEMO (35)

Nội dung

10 Nhân viên bếp | - Chế biến món ăn trong bếp -Quản lý nhân viên 1.4 Các Use case trong hệ thông UC01 | Thêm bản Nhân viên tạo thêm bàn để đáp ứng nhu cầu về số lượng k

Sơ đồ Use case 5 52212212 2122121122112 rey 9

—— Nhân viên Nhân viên bản hàng ———

Bang | So dé Use Case

1.3 Cac tac nhan trong hé thong

STT Tac nhan Mo ta

-Là người có nhiệm vụ quản lý bàn và đặt món cho khách Nhân viên bản `

Nhân viên bếp | - Chế biến món ăn trong bếp

Quản lý - Đăng thông báo cho nhân viên

-Quản lý nhân viên 1.4 Các Use case trong hệ thông

ID Tên UseCase Mo ta

UC01 | Thêm bản Nhân viên tạo thêm bàn để đáp ứng nhu cầu về số lượng khách

UC02 Xoa ban Nhân viên xoá bàn khi không có khách hoặc muốn sắp xép lại các bàn

UC03 | Sửa bản Nhân viên thay đôi thông tin của bàn(ID, tên ban)

UC04 Cập nhật trạng thái của bàn | Nhân viên cập nhật tình trạng của bàn (bàn trồng, bàn đã được đặt trước, bàn đang được sử dụng)

UC05 Đặt món Nhân viên đặt món ăn mà khách hàng mong muốn đề chế biến UC06 Chọn nước uéng Nhân viên chọn nước uống cho khách hàng UC07 Chọn thức ăn Nhân viên chọn thức ăn cho khách hàng

UC08 | Thanh toán Nhân viên tiến hành thu tiền thanh toán từ khách hàng UC09 Thêm nhân viên Quản lý thêm nhân viên mới vào cửa hàng UCI0 Xoá nhân viên cửa hàng Quản lý xoá bỏ thông tin nhân viên khỏi

UCII | Sửa nhân viên Quản lý sửa đối thông tin nhân viên, có thé cập nhật tình trạng cấp bậc của nhân viên(thăng chức, hạ chức) UCI2 Đăng thông báo Quản lý đăng thông báo mới cho cửa hàng UCI3 Xoá thông báo Quản lý xoá thông báo đã đăng

UC14 Chế biến món ăn Nhân viên bếp chế biến món ăn theo thông tin mà nhân viên bán hàng gửi

Ngữ cảnh | Nhân viên tạo thêm bàn mới khi quản đông

Mo ta Nhân viên tạo thêm bàn đê đáp ứng nhu câu về số lượng khách Tác nhân | Nhân viên bán hàng

Sự kiện Muôn tạo thêm bàn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Thêm bàn thành công

Luông sự System kién 1.Nhân viên vào quan li ban 1.1 Hé thong hién thi cac ban hién can thém

2 Nhân viên nhập thông tin ban có

3 Nhân viên chọn “thêm” 3.1 Bàn mới được tạo

Bang 2 Dac ta UseCase Thém ban

Ngữ cảnh | Nhân viên xóa bản khi không cân thiết

Mo ta Nhân viên xoá bàn khi không có khách hoặc muôn sắp xếp lại các ban Tác nhân | Nhân viên bán hàng

Sự kiện Muôn xóa bàn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Xóa bàn thành công

1.Nhân viên vào quan li ban 1.1 Hé thong hién thi cac ban hién

Luong sw có kiện 2 Nhân viên chọn bàn muốn xóa

3 Nhân viên chọn “Xóa” 3.1 Bản đã được xóa

Bảng 3 Đặc tả UseCase Xóa bàn

Ngữ cảnh Nhân viên muôn sửa thông tin ban

Mô ta Nhân viên thay đôi thông tin của bàn(ID, tên bàn)

Tác nhân | Nhân viên bán hàng

Sự kiện Muôn sửa bàn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Sửa bàn thành công

1.Nhân viên vào quản lí bàn 1.1 Hệ thông hiện thị các bàn hiện có x 2 Nhân viên chọn bản muôn sửa 2.1 Hệ thống sẽ hiển thị thông tin Luông sự ban dé kién ance

3 Nhân viên nhập những thông tin cần chỉnh sửa

4 Nhân viên nhân nút “Sửa”

Bang 4: Dac ta UseCase Suwa ban

Use Case Cập nhật trạng thái bàn

Ngữ cảnh | Nhân viên muôn cập nhật trạng thai ban

Mo ta Nhân viên cập nhật tỉnh trạng của ban (ban trông, bàn đã được đặt trước, bàn đang được sử dụng)

Tác nhân | Nhân viên bán hàng

Sự kiện Muôn cập nhật trạng thái bàn kich hoat Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Bàn cập nhật trạng thái thành công

1.Nhân viên vào quan li ban 1.1 Hé thong hién thi cac ban hién

Nhân viên chọn bàn muốn cập nhật trạng thái Hệ thống sẽ hiển thị những nhật trạng thái (bàn trông, bàn đã bàn đã cập nhật trạng thái/ được đặt trước, bàn đang được sử dụng).

Bảng 5 Đặc tả UseCase Cập nhật trạng thái ban

Mô tả Nhân viên đặt món ăn mà khách hàng mong muôn đê chế biên Tác nhân | Nhân viên bán hàng

Sự kiện Muôn chọn đặt món kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Vào gioa diện đặt món

1.Nhân viên vào chức năng đặt

1.1 Hệ thông hiển thị các lựa chọn đặt món gôm nước uông và thức món kiện ăn

Bang 6 Dac ta UseCase Dat mon

Use Case Chọn nước uông

Ngữ cảnh | Nhân viên chọn thức uông mà khách hàng đặt

Mo ta Nhân viên chọn nước uống cho khách hàng

Tác nhân | Nhân viên bán hàng

Sự kiện Nhân viên chọn chọn vào bảng thức uống kích hoạt Điều kiện tiên quyết

Truy cập vào bảng chọn nước uông

Kết quả — | Giá tiên và chỉ tiết món đặt hiện ra

1.Nhân viên vào “Đặt món” 1.1 Hệ thông hiển thị bảng lựa

Luông sự chọn thức ăn và nước uống kiện + Nhân viên chon vao phần thức 2.1 Hé thong sẽ hiển thị chỉ tiết và uông và chọn các món mà khách giá tỉ An các món mà nhân viên hàng yêu cầu chọn

Bảng 7 Đặc tả UseCase Chọn nước uông

Use Case Chọn thức ăn

Ngữ cảnh | Nhân viên chọn thức ăn mà khách hàng đặt

Mô tả Nhân viên chọn thức ăn cho khách hàng

Tác nhân | Nhân viên bán hàng

Sự kiện Nhân viên chọn chọn vào bảng thức ăn kích hoạt Điều kiện tiên quyết

Truy cập vào bảng chọn nước uông

Kết quả — | Giá tiên và chỉ tiết món đặt hiện ra

1.Nhân viên vào “Đặt món” 1.1 Hệ thông hiển thị bảng lựa

Luông sự chọn thức ăn và nước uống kiện 2 Nhân viên chọn vào phần thức 2.1 Hệ thống sẽ hiền thị chỉ tiết và ăn và chọn các món mà khách giá tiền các món mà nhân viên hàng yêu cầu chọn

Bảng 8 Đặc tả UseCase Chọn thức ăn

Ngữ cảnh | Nhân viên thanh toán hoá đơn cho khách hàng

Mô tả Nhân viên tiên hành thu tiên thanh toán từ khách hàng gôm các loại thanh toán (tiền mặt, thẻ ngân hang, ví điện tử)

Tác nhân | Nhân viên bán hàng

Sự kiện Nhân viên nhân nút “Thanh toán” kích hoạt Điều kiện tiên quyết

Nhân viên đã chọn xong món mà khách hàng đặt

Ket qua Thanh toán thành công

1.Nhân viên nhân nút thanh toán ở | 1.1 Hé thong hién thi giao diện giao diện “Đặt món” trang thanh toán gồm có số tiền cần trả sự > Nhân viên chọn loại thanh toán 2.1 Hệ thống sẽ hiển thị tiền tiền Ỹ và nhập sô tiên nhận thừa

3 Nhân viên nhân “Hoàn tắt thanh | 3.1 Hệ thống sẽ báo “Thành công” toán”

Bang 9 Dac ta UseCase Thanh toán

Use Case Thêm nhân viên

Ngữ cảnh | Quản lí muôn thêm nhân viên mới

Mô tả Quản lý thêm nhân viên mới vào cửa hàng

Sự kiện Muôn thêm nhân viên kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Thêm nhân viên thành công

Luông sự Actor System kién 1.Quan lí vào quản lí nhân viên 1.1 Hệ thông hiện thị các nhân

2 Quản lí nhập thông tin nhân viên mới và chọn “thêm” viên có trong hệ thông

2.1 Hệ thống sẽ hiện thị nhân viên mới trong danh sách

Bảng 10 Đặc tả UseCase Thêm nhân viên

Use Case Xoá nhân viên

Ngữ cảnh | Quản lí muôn xoá I nhân viên ra khỏi hệ thông

Mô tả Quản lý muôn xoá nhân viên khỏi cửa hàng

Sự kiện Muôn xoá nhân viên kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Ket qua Sua ban thành công

1.Quan lí vào quản lí nhân viên 1.1 Hệ thông hiến thị các nhân viên có trong hệ thống

Luong sw a |r ân viên cÄ ⁄ „ sa 2 Quản lí chọn nhân viên cân xoá 2.1 Hệ thông sẽ hiện thị thông tin kiện nhân viên

3 Quản lí chọn “Sa thai” đề xoá nhân viên 3.1 Hệ thông sẽ xoá nhân viên ra khỏi danh sách Ngoại lệ Không

Bảng II Đặc tả UseCase Xoá nhân viên

Use Case Sửa nhân viên

Ngữ cảnh | Quản lí muốn sửa thông tin nhân viên

Mo ta Quản lý sửa đôi thông tin nhân viên, có thê cập nhật tình trạng cấp bậc của nhân viên(thăng chức, hạ chức)

Sự kiện Muôn thay đôi thông tin nhân viên kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Thông tin nhân viên thay đôi

1.Quản lí vào quản lí nhân viên 1.1 Hệ thông hiện thị các nhân viên có trong hệ thống

2 Quản lí chọn nhân viên cân sửa 2.1 Hệ thống sẽ hiện thị thông tin

Luồng sự nhân viên kiện 3 Quán lí nhập thông tin cần chỉnh sửa (Có thê thăng chức và hạ chức nhân viên)

4 Quản lí nhân nút “Sửa”

4.1 Thông tin nhân viên thay đôi trong hệ thống

Bảng I2 Đặc tả UseCase Sửa nhân viên

Use Case Dang thong bao

Ngữ cảnh | Quán lí muôn đăng thông báo về cửa hang cho nhân viên và khách hàng biết

Mo ta Quản lý đăng thông báo mới cho cửa hàng

Sự kiện Muôn đăng thông báo kích hoạt Điều kiện | Truy cập vào quản lí nhân viên tiên quyết

Kết quả Đăng thông báo thành công

1.Quản lí vào “Quản lí nhân viên” | 1.1 Hé thông hiện thị mục đăng

Luong sự thông báo dưới danh sách nhân kiện viên

2 Quản lí nhập thông báo muôn 2.1 Hệ thống sẽ hiền thi thong bao đăng vào ô textbox quản lí nhập lên

Bang 13 Dac ta UseCase Dang thong bao

Use Case Xoa théng bao

Ngữ cảnh | Quản lí muôn xoá thông báo đã đăng

Mo ta Quan ly xoa théng bao da dang

Sự kiện Xoá thông báo đã đăng kích hoạt Điều kiện | Truy cập vào hệ thông tiên quyết

Kết quả Xoá thông báo thành công

1.Sau khi đăng thông báo, quản lí | 1.1 Hệ thông sẽ xoá thông báo vừa

Luong sy chon nút “Xoá thông báo” đăng kiện

Bang 14 Dac ta UseCase Xoa thong bao

Use Case | Chế biến món ăn

Ngữ cảnh | Nhân viên bếp khi nhập được đơn từ nhân viên bán hàng

Mo ta Nhân viên bếp chê biên món ăn theo thông tin mà nhân viên bán hàng Tác nhân | Nhân viên bếp gửi

Sự kiện Chế biển món ăn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Chê biên món ăn thành công

1 Nhân viên bêp chọn vào “Quản | 1.1 Hé thong hién thị món ăn có

Luong sy li khu bép” trong hé thong kién 2 Nhân viên chọn món ăn cần chế biên 2.1 Hệ thống sẽ hiển thị công thức chê biên món đó

Bang 15 Dac ta UseCase Chế biến món ăn

Khi khách hàng đến mua món ăn nhanh mà họ muốn, nhân viên sẽ chọn các món mà khách hàng mong muôn thông qua màn hình của nhân viên, sau đó xem trạng thái bàn đề biết còn bản nào phù hợp dé sắp xếp cho khách hàng Sau khi đã chọn món ăn khách hàng cần, nhân viên sẽ gửi yêu cầu xuống bếp đề nhân viên bếp thực hiện các món ăn đó

1.7 Giao diện của ứng dụng: sẼ ManagerScreen o Đặt Món as

Quan If nhan viễn lsage Khu Bếp

Hình I Giao diện hiện thị các chức năng chính của hệ thông

Hiển thị các chức năng mà hệ thống có như Đặt món, Quản lí nhân viên, Khu bếp, Quản lí bàn a OrderScreen - o x

Tương ớt + Gà rán + Vịp_ 1

Gà rán Hamburger Pizza Tương cà

Khoai tây chiến Bánh ngọt

Pepsi Coca Trả sữa Banh flan

+ Ga ran + Vi phd mai + Khoai tay chien

Hình 2 G1ao diện đặt món ăn

Sau khi chọn chức năng Đặt món sẽ có giao diện nhự hình trên, tại đây có thê chọn các thức ăn hoặc thức uống có trên màn hình, có thể chọn thêm Phần thêm hoặc Topping Có thể nhập số lượng món ăn cần mua, hiển thị tống giá tiền cần phải thanh toán và có thể huỷ món ăn hoặc huỷ đơn.

Hình 3 Giao diện khi thanh toán

Khi đã chọn xong món tiến hành đến việc thanh toán Ở đây có thê thanh toán bằng tiền mặt, thẻ tín dụng, Momo aB PaymentScreen

Hinh 4 Giao dién khi hoan tat thanh toan

Khi chọn phương thức thanh toán thì nhập số tiền nhận từ khách hàng và nhắn “Hoàn tất thanh toán” thì hệ thống sẽ tính số tiền thừa cần hoàn trả lại cho khách

Thông báo nép bãi i Email

3reletete phó: class Jelly : NilkTeadecorator Tes ae

? pubLic Je11y(TWiLETea milktea) : baseCuilktea)

| ¡ va Lic override String dotilkTeat) Thêm ee | Hang Ove —

String type = base doMilkTeaC); NhânViên TrêngTin return type + addJeLly(); | | He One

1 Thông báo nộp hải return 5000 + base.Cost();

Rang Xỏằ © Noitcsestourd + Thông Thông

Value Hình 5 Giao diện quản lý nhân viênoe Đây là giao diện quản lý nhân viên dành cho quản lý Tại đây quản lý có thê có các thao tác như Thêm nhân viên mới, Sửa thông tin nhân viên, sa thải nhân viên, tăng chức hoặc hạ chức nhân viên Tại đây quản lý cũng có thê đăng thông báo cho cho nhân viên khi cần thiết

Chuẩn bị cánh gà, đùi gà, ức gà và gia vị -> Tẩm gia vị vào Pizza Thập cẩm gà -> Bỏ gà vào chảo chiên ->

Thêm vị phô mai vào gà

Hình 6 Giao diện chế biến món ăn ở Khu bếp

Khi chọn vào mục "Khu bếp", giao diện sẽ hiển thị đa dạng món ăn để bạn lựa chọn chế biến Sau khi chọn một món ăn, hệ thống sẽ hướng dẫn chi tiết cách thức thực hiện món ăn đó.

Còn Trống Còn Trống ut

Còn Trống Còn Trống Còn Trống

Tên Bàn s Bàn 12 Bàn 14 Bàn 15 Trạng Thái

‘) Còn Trống Còn Trống Còn Trống Thêm Sửa Xóa

Hình 7 Cao diện quản lý bản

Tại giao điện quan ly bản thì nhân viên có thể thêm bàn, sửa thông tin bàn, xoá bản đề phù hợp với các tình huống khách hàng khác nhau Nhân viên cũng có thể cập nhật trạng thái của bàn trong cửa hàng như Bàn Trồng, bàn Đã đặt trước, bàn Đang được sử dụng

2-CÁC MẪU THIẾT KẺ ĐƯỢC SỬ DỤNG

View view: DeviceObserver view: Kitchenscreen

+Command Pattern +Decorator Pattern +ObserverNotification +StatePatternForManagerTable +StrategyForPayment +TemplateMethodPattern +Manage()

Update -model: HoaDonMadel model: TableModel

Hình 8 Sơ đồ lớp MVC Pattern

Lý do áp dụng: Áp dụng MVC (Model - View - Controller) để đễ dàng thao tác dữ liệu giữa Frontend va Backend, dé dang hon trong viéc kiém tra, phat hién 16i để đảm bảo chất lượng phần mềm có kết quả cao hơn

Hinh 9 So dé lép Singleton Pattern

Các Use case trong hệ thống .- 1S SE EE E122 1121 11122111 tra 10

ID Tên UseCase Mo ta

UC01 | Thêm bản Nhân viên tạo thêm bàn để đáp ứng nhu cầu về số lượng khách

UC02 Xoa ban Nhân viên xoá bàn khi không có khách hoặc muốn sắp xép lại các bàn

UC03 | Sửa bản Nhân viên thay đôi thông tin của bàn(ID, tên ban)

UC04 Cập nhật trạng thái của bàn | Nhân viên cập nhật tình trạng của bàn (bàn trồng, bàn đã được đặt trước, bàn đang được sử dụng)

UC05 Đặt món Nhân viên đặt món ăn mà khách hàng mong muốn đề chế biến UC06 Chọn nước uéng Nhân viên chọn nước uống cho khách hàng UC07 Chọn thức ăn Nhân viên chọn thức ăn cho khách hàng

UC08 | Thanh toán Nhân viên tiến hành thu tiền thanh toán từ khách hàng UC09 Thêm nhân viên Quản lý thêm nhân viên mới vào cửa hàng UCI0 Xoá nhân viên cửa hàng Quản lý xoá bỏ thông tin nhân viên khỏi

UCII | Sửa nhân viên Quản lý sửa đối thông tin nhân viên, có thé cập nhật tình trạng cấp bậc của nhân viên(thăng chức, hạ chức) UCI2 Đăng thông báo Quản lý đăng thông báo mới cho cửa hàng UCI3 Xoá thông báo Quản lý xoá thông báo đã đăng

UC14 Chế biến món ăn Nhân viên bếp chế biến món ăn theo thông tin mà nhân viên bán hàng gửi

Ngữ cảnh | Nhân viên tạo thêm bàn mới khi quản đông

Mo ta Nhân viên tạo thêm bàn đê đáp ứng nhu câu về số lượng khách Tác nhân | Nhân viên bán hàng

Sự kiện Muôn tạo thêm bàn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Thêm bàn thành công

Luông sự System kién 1.Nhân viên vào quan li ban 1.1 Hé thong hién thi cac ban hién can thém

2 Nhân viên nhập thông tin ban có

3 Nhân viên chọn “thêm” 3.1 Bàn mới được tạo

Bang 2 Dac ta UseCase Thém ban

Ngữ cảnh | Nhân viên xóa bản khi không cân thiết

Mo ta Nhân viên xoá bàn khi không có khách hoặc muôn sắp xếp lại các ban Tác nhân | Nhân viên bán hàng

Sự kiện Muôn xóa bàn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Xóa bàn thành công

1.Nhân viên vào quan li ban 1.1 Hé thong hién thi cac ban hién

Luong sw có kiện 2 Nhân viên chọn bàn muốn xóa

3 Nhân viên chọn “Xóa” 3.1 Bản đã được xóa

Bảng 3 Đặc tả UseCase Xóa bàn

Ngữ cảnh Nhân viên muôn sửa thông tin ban

Mô ta Nhân viên thay đôi thông tin của bàn(ID, tên bàn)

Tác nhân | Nhân viên bán hàng

Sự kiện Muôn sửa bàn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Sửa bàn thành công

1.Nhân viên vào quản lí bàn 1.1 Hệ thông hiện thị các bàn hiện có x 2 Nhân viên chọn bản muôn sửa 2.1 Hệ thống sẽ hiển thị thông tin Luông sự ban dé kién ance

3 Nhân viên nhập những thông tin cần chỉnh sửa

4 Nhân viên nhân nút “Sửa”

Bang 4: Dac ta UseCase Suwa ban

Use Case Cập nhật trạng thái bàn

Ngữ cảnh | Nhân viên muôn cập nhật trạng thai ban

Mo ta Nhân viên cập nhật tỉnh trạng của ban (ban trông, bàn đã được đặt trước, bàn đang được sử dụng)

Tác nhân | Nhân viên bán hàng

Sự kiện Muôn cập nhật trạng thái bàn kich hoat Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Bàn cập nhật trạng thái thành công

1.Nhân viên vào quan li ban 1.1 Hé thong hién thi cac ban hién

Luong sw có kiện 2 Nhân viên chọn ban muốn cập 2.1 Hệ thống sẽ hiển thị những nhật trạng thái (bàn trông, bàn đã bàn đã cập nhật trạng thái/ được đặt trước, bàn đang được sử dụng)

Bảng 5 Đặc tả UseCase Cập nhật trạng thái ban

Mô tả Nhân viên đặt món ăn mà khách hàng mong muôn đê chế biên Tác nhân | Nhân viên bán hàng

Sự kiện Muôn chọn đặt món kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Vào gioa diện đặt món

1.Nhân viên vào chức năng đặt

1.1 Hệ thông hiển thị các lựa chọn đặt món gôm nước uông và thức món kiện ăn

Bang 6 Dac ta UseCase Dat mon

Use Case Chọn nước uông

Ngữ cảnh | Nhân viên chọn thức uông mà khách hàng đặt

Mo ta Nhân viên chọn nước uống cho khách hàng

Tác nhân | Nhân viên bán hàng

Sự kiện Nhân viên chọn chọn vào bảng thức uống kích hoạt Điều kiện tiên quyết

Truy cập vào bảng chọn nước uông

Kết quả — | Giá tiên và chỉ tiết món đặt hiện ra

1.Nhân viên vào “Đặt món” 1.1 Hệ thông hiển thị bảng lựa

Hệ thống sẽ hiển thị chi tiết các món ăn và đồ uống mà nhân viên đã chọn vào phần thức ăn và nước uống Sau đó, khách hàng chỉ cần chọn các món mà họ yêu cầu để nhân viên phục vụ đem ra.

Bảng 7 Đặc tả UseCase Chọn nước uông

Use Case Chọn thức ăn

Ngữ cảnh | Nhân viên chọn thức ăn mà khách hàng đặt

Mô tả Nhân viên chọn thức ăn cho khách hàng

Tác nhân | Nhân viên bán hàng

Sự kiện Nhân viên chọn chọn vào bảng thức ăn kích hoạt Điều kiện tiên quyết

Truy cập vào bảng chọn nước uông

Kết quả — | Giá tiên và chỉ tiết món đặt hiện ra

1.Nhân viên vào “Đặt món” 1.1 Hệ thông hiển thị bảng lựa

Luông sự chọn thức ăn và nước uống kiện 2 Nhân viên chọn vào phần thức 2.1 Hệ thống sẽ hiền thị chỉ tiết và ăn và chọn các món mà khách giá tiền các món mà nhân viên hàng yêu cầu chọn

Bảng 8 Đặc tả UseCase Chọn thức ăn

Ngữ cảnh | Nhân viên thanh toán hoá đơn cho khách hàng

Mô tả Nhân viên tiên hành thu tiên thanh toán từ khách hàng gôm các loại thanh toán (tiền mặt, thẻ ngân hang, ví điện tử)

Tác nhân | Nhân viên bán hàng

Sự kiện Nhân viên nhân nút “Thanh toán” kích hoạt Điều kiện tiên quyết

Nhân viên đã chọn xong món mà khách hàng đặt

Ket qua Thanh toán thành công

Nhân viên bấm nút "Thanh toán" trên giao diện "Đặt món" để mở ra trang thanh toán hiển thị số tiền cần trả Sau đó, nhân viên lựa chọn hình thức thanh toán và nhập số tiền nhận thừa Hệ thống sẽ hiển thị số tiền thừa cần trả lại cho khách hàng.

3 Nhân viên nhân “Hoàn tắt thanh | 3.1 Hệ thống sẽ báo “Thành công” toán”

Bang 9 Dac ta UseCase Thanh toán

Use Case Thêm nhân viên

Ngữ cảnh | Quản lí muôn thêm nhân viên mới

Mô tả Quản lý thêm nhân viên mới vào cửa hàng

Sự kiện Muôn thêm nhân viên kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Thêm nhân viên thành công

Luông sự Actor System kién 1.Quan lí vào quản lí nhân viên 1.1 Hệ thông hiện thị các nhân

2 Quản lí nhập thông tin nhân viên mới và chọn “thêm” viên có trong hệ thông

2.1 Hệ thống sẽ hiện thị nhân viên mới trong danh sách

Bảng 10 Đặc tả UseCase Thêm nhân viên

Use Case Xoá nhân viên

Ngữ cảnh | Quản lí muôn xoá I nhân viên ra khỏi hệ thông

Mô tả Quản lý muôn xoá nhân viên khỏi cửa hàng

Sự kiện Muôn xoá nhân viên kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Ket qua Sua ban thành công

1.Quan lí vào quản lí nhân viên 1.1 Hệ thông hiến thị các nhân viên có trong hệ thống

Luong sw a |r ân viên cÄ ⁄ „ sa 2 Quản lí chọn nhân viên cân xoá 2.1 Hệ thông sẽ hiện thị thông tin kiện nhân viên

3 Quản lí chọn “Sa thai” đề xoá nhân viên 3.1 Hệ thông sẽ xoá nhân viên ra khỏi danh sách Ngoại lệ Không

Bảng II Đặc tả UseCase Xoá nhân viên

Use Case Sửa nhân viên

Ngữ cảnh | Quản lí muốn sửa thông tin nhân viên

Mo ta Quản lý sửa đôi thông tin nhân viên, có thê cập nhật tình trạng cấp bậc của nhân viên(thăng chức, hạ chức)

Sự kiện Muôn thay đôi thông tin nhân viên kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Thông tin nhân viên thay đôi

1.Quản lí vào quản lí nhân viên 1.1 Hệ thông hiện thị các nhân viên có trong hệ thống

2 Quản lí chọn nhân viên cân sửa 2.1 Hệ thống sẽ hiện thị thông tin

Luồng sự nhân viên kiện 3 Quán lí nhập thông tin cần chỉnh sửa (Có thê thăng chức và hạ chức nhân viên)

4 Quản lí nhân nút “Sửa”

4.1 Thông tin nhân viên thay đôi trong hệ thống

Bảng I2 Đặc tả UseCase Sửa nhân viên

Use Case Dang thong bao

Ngữ cảnh | Quán lí muôn đăng thông báo về cửa hang cho nhân viên và khách hàng biết

Mo ta Quản lý đăng thông báo mới cho cửa hàng

Sự kiện Muôn đăng thông báo kích hoạt Điều kiện | Truy cập vào quản lí nhân viên tiên quyết

Kết quả Đăng thông báo thành công

1.Quản lí vào “Quản lí nhân viên” | 1.1 Hé thông hiện thị mục đăng

Luong sự thông báo dưới danh sách nhân kiện viên

2 Quản lí nhập thông báo muôn 2.1 Hệ thống sẽ hiền thi thong bao đăng vào ô textbox quản lí nhập lên

Bang 13 Dac ta UseCase Dang thong bao

Use Case Xoa théng bao

Ngữ cảnh | Quản lí muôn xoá thông báo đã đăng

Mo ta Quan ly xoa théng bao da dang

Sự kiện Xoá thông báo đã đăng kích hoạt Điều kiện | Truy cập vào hệ thông tiên quyết

Kết quả Xoá thông báo thành công

1.Sau khi đăng thông báo, quản lí | 1.1 Hệ thông sẽ xoá thông báo vừa

Luong sy chon nút “Xoá thông báo” đăng kiện

Bang 14 Dac ta UseCase Xoa thong bao

Use Case | Chế biến món ăn

Ngữ cảnh | Nhân viên bếp khi nhập được đơn từ nhân viên bán hàng

Mo ta Nhân viên bếp chê biên món ăn theo thông tin mà nhân viên bán hàng Tác nhân | Nhân viên bếp gửi

Sự kiện Chế biển món ăn kích hoạt Điều kiện tiên quyết

Truy cập vào hệ thông

Kết quả Chê biên món ăn thành công

1 Nhân viên bêp chọn vào “Quản | 1.1 Hé thong hién thị món ăn có

Luong sy li khu bép” trong hé thong kién 2 Nhân viên chọn món ăn cần chế biên 2.1 Hệ thống sẽ hiển thị công thức chê biên món đó

Bang 15 Dac ta UseCase Chế biến món ăn

Khi khách hàng đến mua món ăn nhanh mà họ muốn, nhân viên sẽ chọn các món mà khách hàng mong muôn thông qua màn hình của nhân viên, sau đó xem trạng thái bàn đề biết còn bản nào phù hợp dé sắp xếp cho khách hàng Sau khi đã chọn món ăn khách hàng cần, nhân viên sẽ gửi yêu cầu xuống bếp đề nhân viên bếp thực hiện các món ăn đó

1.7 Giao diện của ứng dụng: sẼ ManagerScreen o Đặt Món as

Quan If nhan viễn lsage Khu Bếp

Hình I Giao diện hiện thị các chức năng chính của hệ thông

Hiển thị các chức năng mà hệ thống có như Đặt món, Quản lí nhân viên, Khu bếp, Quản lí bàn a OrderScreen - o x

Tương ớt + Gà rán + Vịp_ 1

Gà rán Hamburger Pizza Tương cà

Khoai tây chiến Bánh ngọt

Pepsi Coca Trả sữa Banh flan

+ Ga ran + Vi phd mai + Khoai tay chien

Hình 2 G1ao diện đặt món ăn

Sau khi chọn chức năng Đặt món sẽ có giao diện nhự hình trên, tại đây có thê chọn các thức ăn hoặc thức uống có trên màn hình, có thể chọn thêm Phần thêm hoặc Topping Có thể nhập số lượng món ăn cần mua, hiển thị tống giá tiền cần phải thanh toán và có thể huỷ món ăn hoặc huỷ đơn.

Hình 3 Giao diện khi thanh toán

Khi đã chọn xong món tiến hành đến việc thanh toán Ở đây có thê thanh toán bằng tiền mặt, thẻ tín dụng, Momo aB PaymentScreen

Hinh 4 Giao dién khi hoan tat thanh toan

Khi chọn phương thức thanh toán thì nhập số tiền nhận từ khách hàng và nhắn “Hoàn tất thanh toán” thì hệ thống sẽ tính số tiền thừa cần hoàn trả lại cho khách

Thông báo nép bãi i Email

3reletete phó: class Jelly : NilkTeadecorator Tes ae

? pubLic Je11y(TWiLETea milktea) : baseCuilktea)

| ¡ va Lic override String dotilkTeat) Thêm ee | Hang Ove —

String type = base doMilkTeaC); NhânViên TrêngTin return type + addJeLly(); | | He One

1 Thông báo nộp hải return 5000 + base.Cost();

Rang Xỏằ © Noitcsestourd + Thông Thông

Value Hình 5 Giao diện quản lý nhân viênoe Đây là giao diện quản lý nhân viên dành cho quản lý Tại đây quản lý có thê có các thao tác như Thêm nhân viên mới, Sửa thông tin nhân viên, sa thải nhân viên, tăng chức hoặc hạ chức nhân viên Tại đây quản lý cũng có thê đăng thông báo cho cho nhân viên khi cần thiết

Chuẩn bị cánh gà, đùi gà, ức gà và gia vị -> Tẩm gia vị vào Pizza Thập cẩm gà -> Bỏ gà vào chảo chiên ->

Thêm vị phô mai vào gà

Hình 6 Giao diện chế biến món ăn ở Khu bếp

Khi chọn Khu bếp sẽ hiện thị giao diện chọn các món ăn chê biên Khi chọn vào món ăn thì sẽ hiển thị cách thức thực hiện món ăn đó sẼ TableManager = D x

Còn Trống Còn Trống ut

Còn Trống Còn Trống Còn Trống

Tên Bàn s Bàn 12 Bàn 14 Bàn 15 Trạng Thái

‘) Còn Trống Còn Trống Còn Trống Thêm Sửa Xóa

Hình 7 Cao diện quản lý bản

Tại giao điện quan ly bản thì nhân viên có thể thêm bàn, sửa thông tin bàn, xoá bản đề phù hợp với các tình huống khách hàng khác nhau Nhân viên cũng có thể cập nhật trạng thái của bàn trong cửa hàng như Bàn Trồng, bàn Đã đặt trước, bàn Đang được sử dụng

2-CÁC MẪU THIẾT KẺ ĐƯỢC SỬ DỤNG

View view: DeviceObserver view: Kitchenscreen

+Command Pattern +Decorator Pattern +ObserverNotification +StatePatternForManagerTable +StrategyForPayment +TemplateMethodPattern +Manage()

Update -model: HoaDonMadel model: TableModel

Hình 8 Sơ đồ lớp MVC Pattern

Lý do áp dụng: Áp dụng MVC (Model - View - Controller) để đễ dàng thao tác dữ liệu giữa Frontend va Backend, dé dang hon trong viéc kiém tra, phat hién 16i để đảm bảo chất lượng phần mềm có kết quả cao hơn

Hinh 9 So dé lép Singleton Pattern

Decorator Pattern icc

Sơ đồ lớp cho thức ăn(gà rán) ôinterfaceằ

+doChicken(): String +Cost(): double +addPotatoChick(): String

Hình 13 So dé lép Decorator Pattern (Ga rán)

So dé 1ép cho nuée uéng(tra sita) interfaceằ

EB +doMilkTea(): String +Cost(}: double ad ceee====-C a

+doMilkTea(): String +Cost(): double taddJelly(): String

+doMilkTea(): String +Cost(): double +addBubble(): String

Hình 14 Sơ đồ lớp Decorator Pattern(Tra sita)

Command Patffern - ch HH HH TH HH KH kg kh 34

+Command ButtonShow +Command EnableCmd +Command DisableCmd +Command ButtonHide +Command DefColor

+Button{] button +Button[] button +Button{] button

+execute() void +execute() void +execute(): void +execute(): void +execute(): void

Hình 15 Sơ đồ lớp Command Pattern

Command Pattern giúp quản lý tập trung các nút chọn món trong giao diện đặt món, bao gồm các thao tác bật, tắt, đổi màu, ẩn/hiện nút Điều này đơn giản hóa quá trình lập trình bằng cách tập hợp các lệnh liên quan đến nút vào một nơi, tránh trường hợp thiếu hoặc thừa lệnh (như quên bật hoặc tắt nút).

Template Method Pattern .- L Q 0 1221112 1n 1110111111211 kg 1x the, 35 3-CÁC FILE CHI TIẾT ĐƯỢC ỨNG DỤNG TRONG DEMO

#abstract preprocessing(): string | - - abstract prepairMaterial(): string

#abstract processing(: strng abstract preprocessing(): string

#abstract taste(string n): string abstract processingj): string

+prepareFood():string abstract taste(string n) string

#abstract prepairMaterial(): string #abstract prepairMaterial() string #abstract prepairMatenal(): string

#abstract preprocessing(): string #abstract preprocessing(): string #abstract preprocessing(): string

#abstract processing(): stnng #abstract processing(): string #abstract processing(): string

#abstract taste(string n): string #abstract taste(string n): string #abstract taste(string n): string

Hinh 16 So dé lép Template Method Pattern

Ly do ap dung: Template Method Pattern la mt quá trình bao gồm các bước theo thứ tự không thay đôi, và cũng có những bước thường xuyên thay đôi tuỳ vào nhu cầu Do đó ở đây dùng dé nêu ra một sô phương thức chung dùng đề chế biến các món ăn và việc thực hiện cụ thê các món ăn đó được nêu rõ ở môi món nêu cụ thê

3-CÁC FILE CHI TIẾT ĐƯỢC ỨNG DỤNG TRONG DEMO

3.1 MVC Pattern: Áp dụng MVC(Model-View-Controller) vào việc quản lý cỏc ủle đề dễ dàng thao tỏc hơn và trỏnh sự nhằm lẫn đề đạt hiệu quả cao hơn

34 fq Solution ‘Demo’ (1 of 1 project)

#8 Dependencies a_] Properties E1 ConfigDTB E1 Controller © Model

E View vv vr vv VY

Hình L7 Tên các file code và code st dung MVC Pattern

3.2 Singleton Pattern Được ỏp dụng trong việc tạo kết nối giữa cỏc thực thờ, sử dụng trong fủle ProvideDatabase.cs

13 private string connectionString = @"Data Source=(LocalDB)\MSSQLLocaLDB ; AttachDbFilename=D: \SUBJECTS\thuchanhmauthietke\cuoiky\sourc

23 m4 = public DataTable Query (string query, object[] param = null)

26 = using (SqlConnection connection = new SqlConnection(connectionString)) ~

E8JDemo + _Ê$ Demo.ConfigDTE.ProvideDatabase + ` #ẦconnectionString ~ +

26 using (SqlConnection connection = new SqlConnection(connectionstring))

29 SqlCommand cmd = new SqlCommand(query, connection); 3

43 a4 SqlDataddapter adapter = new SqlDataAdapter(cmd);

1% -& đo A2 + vd #ô ‘ ằ Lm9 Ch25 SPC CRLF

Hinh 18 Tén cac file code va code str dung Singleton Pattern

Str dung State Pattern trong việc quản ly trạng thái bàn, áp dụng mẫu thiết kế này trong cac file TabeFreeState.cs, TabelOrderedState.cs, TableContext.cs, TableState.cs, TableUsedState.cs

~ | 9gDemo.ControlierStatePattemForManagerTable TableUsedSt ~ _ Ếì returnSate()

=lsing Demo.ConfigDTB; using Demo.View; using System; using System.Collections Generic; using System.Ling; using System.Text;

{ 3 references public class TableUsedstate:Tablestate

System.Collections Generic; using Systen.Ling; using System Text;

TableState.cs TabelOrderedState.cs TabefreeState.cs

+ 4g Demo.ControllerStatePattemForManagerTable.TableContex ~ CAstate using System Threading Tasks; namespace Demo.Controller StatePatternForManagerTable

E Lic class TableContext private TableState state;

S references public void SetStatus(int id, Tablestate state)

{ int status = 0; this.state = state; Ẹ if(state 1s TabLeUsedState)

{ status = 1; else if(state is TableFreeState)

{ status = 0; else if (state is Tableorderedstate) £ status = 2; ®o AI! + Vv | ¥e r1 Ch: 1

TableUsedState.cs TableState.cs TableContext.cs TabelOrderedState.cs * = BEGG eitay * ® *

+ Â@$Demo.Contraller.StatePatternForManagerTable.TableOrciere ~ bP tle

Hé 19 = public class TableOrderedstate : TableState

91 % 2 @ No issues found Wô Chi SPC CRLF

TableUsedState.cs TableState.cs TableContextcs TabelOrderedState.cs TabeFreeState.cs + X ~ &

[Demo + #$Demo.Controller.StatePatternForManagerTable.TableFree5tz ~ ( retumSate0 ~+

91% ằ@ @ Noissues found Wô Lnr† Chỉ! SPC CRLF

Hình 19 Tên các file code và code str dung State Pattern

3.4 Observer Pattern Được sử dụng trong việc tạo thông báo của quản lý cho nhân viên Áp dụng mẫu thiết kế này trong cac file Iobserver.cs, IsubjectNotification.cs, Subject.cs

IObserver,cs +2 xÌ®© Demo.C ification.Subj 7 DRegister (Observer observer) 7

F i ~ using System.Collections.Generic; using System.Ling; using System Text; using system Threading Tasks;

EU 1i wa aa La elcome observer);

AM 13 void notify0bserver(string Notification) ;

Sbjecs TEA ener _ ~ _ ®$Demo,Controller.ObserverNotificatienISubjectNotification ~ | Gobservers x) ~

‘ollections.Generic; using An Lin

| using ae Tieoniligi: Tasks; namespace Demo.Controller.ObserverNotification

{ 5 refereoc a 9 a pubis class ISubjectNotification : Subject i

17 this.notification = "Chưa có thông bao";

2 6G public void ReplaceNotification(string noti)

25 Lreference public void RemoveNotification() x on &

Subject.cs aU tie uke amas IODSEVEr.CS + @

& ~ _ Ÿ$Demo.Centroller.ObserverNotification.SubjectNotification ~ observers - ˆ

28 „notification = "Chưa có thông bảo";

Mr 32 public void RegisterObserver(TObserver observer)

Mr 36 = public void UnregisterObserver(IObserver observer)

39 at ue public void notifyObserver(string Notification) al 42 foreach(IObserver observer in observers)

91% xi Noisuesfound #v ni Chỉ SPC CRLF mưme vax

Subject.cs ISubjectNotification.cs |iObservercs + X | +o

~ | ©© Demo.Controller.ObserverNotification.IObserver + @ Update(string Notification) ~ namespace Demo.Controller.ObserverNotification

M 11 public void Update(string Notification);

91% + @ @ Noissues found #ô Ln1 Chỉ! SPC CRLF

Hình 20 Tên các file code và code sử dụng Observer Pattern

3.5 Strategy Pattern Được sử dụng trong việc thanh toán Áp dụng mẫu thiết ké nay trong cac file ByCash.cs, Context.cs, CreditCard.cs, Momo.cs, Payment.cs

| 4 reference m@ oi public String methodPay(String n);

S references m 12 public Double pay(double a, double b);

15 x n5 — MMGSGENRON Cốc SOULS, 3 yng as demo + | %gDemo Controller StrategyForPayment MoMo bd | © methodPay(string n) x+

2references mo 9 œ1 public class MoMo : Payment

2 teferences m@ 11 8 public String methodPay(string n)

2 13 return "Thanh toan bang Momo";

2 references m 15 public double pay(double a, double b)

91% + @ Noisuesfound ¥~ Lat Chỉ! SPC CRLF

6 relerences mw © public void SetPayment(Payment strategy)

'ontext +| Gpayment xị$ rico wpupercire = — wit

Oreferences public Payment getPayment() return payment;

Sreferences public String methodPay(String n)

3referenices public double pay(double a, double b) return payment.pay(a, b);

1% ~@ 600 AI + v|i#‹- Lai Chỉ! = MIXED CRLF x

Payment.cs MoMo.cs CreditCard.cs Context.cs ByCash.c< Ẹ -®

E8lDemo ~ ®e Demo.Controller.StrategyForPayment.ByCash + Ÿ methodPay(string n) ~+

Lủ „ - public class ByCash : Payment

13 12 xeturn "Thanh toán bằng tiển mặt";

@ 1s public double pay(double a, double b)

1% ~@ @ No issues found LAÁA Ln1 Chị SPC CRLF

Payment cs MoMo.cs CreditCard.cs +ằ x [ACRES ByCash.cs +a

3) Demo ~ _ #$ Demo,Conrollsr.5trategyForPayment.CreditCard ~ @methodPay(string ni ~+

13 return "Thanh toan bang thé tin dung";

@ 15 public double pay(double a, double b)

91% +1@ © Noissues found CÁ z1 Chị! SPC CRLE

Hình 2l Tên các file code và code str dung Strategy Pattern

3.6 Decorator Pattern Được sử dụng trong việc thờm Phần thờm hoặc Topping Áp dụng trong cỏc ủle

CheeseTopping.cs, Chicken.cs, ChickenDecorator.cs, Ichicken.cs, PotatoChick.cs, SpicyFlavor.cs,

SweetCakeChick.cs, Hamburger.cs, HamburgerDecorator.cs, [hamburger.cs, MeatHamburger.cs, Vegetable Hamburger.cs, Bubble.cs, FlanCake.cs, GreenMilkTea.cs, ImilkTea.cs, Jelly.cs, MilkTea.cs, MilkTeaDecorator.cs, RedMilkTea.cs, ss “+ ca 6088 Z2) |

: 46 - ig Syste Line using Syatee Text,

[wedng System Mewading Tasks; spemeonarn,bee:corolt ep necaratareu re: chi chenmacnrton

@ ô9 ôpublic class SweetCalechick : ChickenDecorator te

1 3 publC 5®eetCaleCliek{IChiclsen chíckwen) : base(chicken)

} Bh Ae NGaatznlak#a-nbssreee ec public everride druble cost() Solution Explorer Gt anges return 3608 + base.cost(); vax etter private string aesmwetcake()

; =e Sree = | Search Solution Esplarer (Cit) FF)

2 Musing sy: ? i [using sy, ‘220005 sin teste umecesey , $© Sensee

: M% ` ĐuBXÍC €lAss UwortableMawburosr | HamburgrrOecoratar D OC™ SweetCaxeHiamcs: u Ỉ { Ð &C® VepeabieHamluf0et.G nà n \ 4 SBD MakteaDecorator

1 PC venlieeseeorsbesoyeslke0 base(tan) sọc

Mu - qblic override 3trìng đdeuabergerC) PSone a 3 { DOCH 9y

19 ‘String type = base.ddtasburger(); é AC*đ MửKTeics

9 return type + aadvetQ; ĐC MaxtesDecorators

= D AF Rethamtas ce _ a đơn Solution Eapferev Git Changes

# z 2B 4 + wblic override double Cost) f return bise.Cost(); Properties HamburgerDecorator folie Propetes ax

\ 1 “+ ©) @8 95-286 #=| lf 3 Ling: — " ` otk z 4 ing Syaten.Text;

` + naaespace Dene.ControLLer.Decoratorattern.WiLiuIeaðecorator

Fy; a i m public class ReumieTes 1 MLATeAaDecerator oe t

2 public RecMiliTeaCINi Lien milktea) : base(milktea)

3 { co as ì m ou nv public override string denttereaQ 1

28 ba borer = a 1 Sdution Exploer Git Changes wM z 2 > patie override double Cost() return T698 + base.Cost(); Properties MaxTesDecorator folder Froperbes vax

= Ahi aa Secale vs mrx © No aces to ¥ te) che) SPC CAF 1S plier lane AdMfesDecrvntor

Hinh 22 Tén các file code và code sử dung Decorator Pattern

The Command pattern is utilized to handle buttons, as well as disable and enable buttons within the toppings and add-on sections of an application This design pattern is implemented in the CommandBase.cs and RadioCommandBase.cs files.

Ez ae a ~ ` #&Demo.Controller.CommandPartern.CheckBoxCommandBase ~| items +

13 5 protected CheckBoxCommandBase(params CheckBox[] items)

17 11 references ew is public abstract void execute();

2ứ 2 ceterences et 21 a class ToppingOn : CheckBoxCommandBase

23 public ToppingOn(params CheckBox[] items) : baseCitems) { }

SB references ew © public override void execute()

25 2% © foreach (var button in items)

91% + @ © Noissues found | #+ Lni Chị! CRLF

Show output from: Debug ;l&|ọ&+lI=ia

The thread @xfa74 has exited with code ỉ (0x8) la!

The thnead 8xc178 has exited uith code 8 (8x0).

3 public Toppingoff(params Checksox[{] items) : base(items) { } gt 35 public override void execute()

37 foreach (var button in items)

43 } et du class CheckboxEnableCmd : CheckBoxCommandBase

46 public CheckboxEnableCmd(params Check8ox[] items) : base(items) { } et 47 = public override void execute()

49 foreach (var button in items)

@ 55 & class CheckboxDisablecmd : CheckBoxComnandBase s7 public CheckboxDisableCmd(params Check8ox[] items) : base(items) { }

Show output from: Debug ~|| oe | oe ae

The thread @xfa74 has exited with code @ (0x0)

The thread @xci7@ has exited with code @ (8x0) af

~ ` #&Demo.ControllerCommandPattern.CheckBoxComrnandBasc ~ đề ¡items

= a ~ foreach (var button in items) button.Enabled = true;

2references class Checkbox0isabLeCnd : CheckBoxComnandBase

S32Jn0S 8ỉ XON|O0J 12/0|đX3 42/J2+ 8 lL reference public CheckboxDisablecmd(params CheckBox[] items) : base(items) { } reference: s a —

8 z public override void execute() r 8 foreach (var button in items) a 3S button.EnabLed = false; san? oO ~

|Dema + | #&Demo ControllerCommandPattern CommandBase | Gitems +

LU references mo -= abstract class Command8ase

13 E= protected CommandBase(params Button[] items)

28 es aaa class EnabLeCmd : CommandBase

23 public Enablecmd(params Button[] items) : baseCitems) { }

\O references aa < public override void execute()

2% 65 foreach (var button in items)

91% + @ Noisoesfcund ¥r but Ch1 SPC CRLF

Show output from: Debug ô|| Ze) ee) lS

The thread Oxfa74 has exited with code @ (0x0)

The thread Oxcl7@ has exited with code @ (@x8)

(demo + *%Demo.Controller,CommandPattern.CommandBase ~ Gites ~+

35 pubtic 0isabLeCnd(params Button[] items) : base(itens) { }

@ 36 ôCE public override void execute()

38 £ foreach (var button in items) do button.EnabLed = faLse;

46 public pefColor(params Button[] items) : base(items) { } mo o47 public override void execute() ug & { foreach (var button in items)

{ for% -1@ — @ Noissues found a 2 - ` : Let Gt SPC CRIF © _RadioCommandBase.cs ee ~ @

* Demo ~ _ #& Demo.Contollet.CommandPattern.CommandBase ~' @items -+

“ 58 public ButtonHide(params Button[] items) : base(items) { } Ÿ mt so public override void execute()

69 61L £E foreach (var button in items)

69 public Buttonshow(params Button[] items) : base(items) { } st 7e public override void execute()

72 71 foreach (var button in items)

91% ~@ @Noissuesiound #v Unt Get SPC CRƯ

The thread @xfa74 has exited with code @ (@x@)

Hinh 23 Tén cac file code va code su dung Command Pattern

The Template Method Pattern is used to define a template for an operation, allowing subclasses to define specific steps while the overall structure remains the same This pattern is demonstrated in the Kitchen project, where the FoodTemplate class defines the general cooking process, and subclasses like GaranFood, Hamburger, and PizzaFood implement specific cooking steps to create different dishes.

S22IQS E}E(] XGQ|OOL 13iO|dX3 lAAiSS

GEER Hemvurgerroodics ‘GaranFood.cs _foodTemplate.cs

2 references a 9 = public class PizzaFood : FoodTemplate

@ in - protected override string prepairMaterial()

13 12 return "Chuẩn bị bột bánh";

@ ois a protected override string preprocessing()

17 return "Xếp bột và nguyên Liệu vào khuôn;

[ 3 relererces a 19 = protected override string processing()

21 return "Bé khuôn pizza đã xếp vào tò nướng";

2 references as 23 3 protected override string taste(string n)

26 27 return "Nguyên Liệu 1à hải sản";

31 return "Nguyên Liệu là thập cẩn";

91% x+@ Noksuesfound Wv xi %1 SPC CRLF

OOH ee tt gael Ree + *

@) afising System; using System.CoLLections.Generic; using System.Ling; using System.Text;

“| protected override string prepairMateria\() return "Chuẩn bị bánh mì và nguyên Liệu";

Dreferemes protected override string preprocessing()

2references protected override string processing()

{ return "Xếp thịt và rau củ vào bánh mì";

2 tefrenaces protected override string taste(string n)

{ return "Nguyên Liệu gồm thịt"; etse return "Nguyén Việu gồm rau"; © No issues found { _#x return "Cắt nguyên Việu sao cho bằng với bánh mỉ";

Ngày đăng: 26/09/2024, 16:18

HÌNH ẢNH LIÊN QUAN

Bảng  3  Đặc  tả  UseCase  Xóa  bàn - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
ng 3 Đặc tả UseCase Xóa bàn (Trang 14)
Bảng  5  Đặc  tả  UseCase  Cập  nhật  trạng  thái  ban - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
ng 5 Đặc tả UseCase Cập nhật trạng thái ban (Trang 16)
Bảng  7  Đặc  tả  UseCase  Chọn  nước  uông - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
ng 7 Đặc tả UseCase Chọn nước uông (Trang 17)
Bảng  8  Đặc  tả  UseCase  Chọn  thức  ăn - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
ng 8 Đặc tả UseCase Chọn thức ăn (Trang 18)
Bảng  10  Đặc  tả  UseCase  Thêm  nhân  viên - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
ng 10 Đặc tả UseCase Thêm nhân viên (Trang 20)
Bảng  I2  Đặc  tả  UseCase  Sửa  nhân  viên - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
ng I2 Đặc tả UseCase Sửa nhân viên (Trang 21)
Hình  I  Giao  diện  hiện  thị  các  chức  năng  chính  của  hệ  thông - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh I Giao diện hiện thị các chức năng chính của hệ thông (Trang 24)
Hình  2  G1ao  diện  đặt  món  ăn - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 2 G1ao diện đặt món ăn (Trang 25)
Hình  6  Giao  diện  chế  biến  món  ăn  ở  Khu  bếp - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 6 Giao diện chế biến món ăn ở Khu bếp (Trang 28)
Hình  7  Cao  diện  quản  lý  bản - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 7 Cao diện quản lý bản (Trang 29)
Hình  8  Sơ  đồ  lớp  MVC  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 8 Sơ đồ lớp MVC Pattern (Trang 30)
Hình  10  So  dé  lép  State  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 10 So dé lép State Pattern (Trang 31)
Hình  12  Sơ  đồ  lớp  Strategy  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 12 Sơ đồ lớp Strategy Pattern (Trang 32)
Hình  13  So  dé  lép  Decorator  Pattern  (Ga  rán) - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 13 So dé lép Decorator Pattern (Ga rán) (Trang 33)
Hình  14  Sơ  đồ  lớp  Decorator  Pattern(Tra  sita) - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 14 Sơ đồ lớp Decorator Pattern(Tra sita) (Trang 33)
Hình  15  Sơ  đồ  lớp  Command  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 15 Sơ đồ lớp Command Pattern (Trang 34)
Hình  L7  Tên  các  file  code  và  code  st  dung  MVC  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh L7 Tên các file code và code st dung MVC Pattern (Trang 36)
Hình  19  Tên  các  file  code  và  code  str  dung  State  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 19 Tên các file code và code str dung State Pattern (Trang 40)
Hình  20  Tên  các  file  code  và  code  sử  dụng  Observer  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 20 Tên các file code và code sử dụng Observer Pattern (Trang 42)
Hình  2l  Tên  các  file  code  và  code  str  dung  Strategy  Pattern - báo cáo cuối kỳ áp dụng mẫu thiết kế vào quản lý cửa hàng thức ăn nhanh
nh 2l Tên các file code và code str dung Strategy Pattern (Trang 45)