1. Trang chủ
  2. » Tất cả

(Đồ án hcmute) xây dựng giải pháp thực đơn thông minh cho quán cafe

142 5 0

Đ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

Định dạng
Số trang 142
Dung lượng 8,35 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG XÂY DỰNG GIẢI PHÁP THỰC ĐƠN THÔNG MINH CHO QUÁN CAFE GVHD: ThS NGUYỄN VĂN HIỆP SVTH: NGUYỄN ĐỨC HẠNH MSSV: 15341008 SVTH: TRƯƠNG ĐÌNH LỰU MSSV: 15341021 SKL 0 5 Tp Hồ Chí Minh, tháng 01/2017 an TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC TP HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP Tp HCM, ngày tháng năm 2017 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Nguyễn Đức Hạnh MSSV: 15341008 Trương Đình Lựu MSSV: 15341021 Chuyên ngành: CN KT Điện Tử Truyền Thông Mã ngành: 41 Hệ đào tạo: Đại học quy Mã hệ: Khóa: 2015 Lớp: 153410 Họ tên sinh viên: I TÊN ĐỀ TÀI: XÂY DỰNG GIẢI PHÁP THỰC ĐƠN THÔNG MINH CHO QUÁN CAFE II NHIỆM VỤ Các số liệu ban đầu: Dựa vào đề tài đồ án khóa trước phát triển lên, tên đề tài khóa trước “ THIẾT KẾ THỰC ĐƠN NHÀ HÀNG THÔNG MINH ” Nội dung thực hiện:  Lập trình ứng dụng điện thoại Android  Lập trình ứng dụng quản lý qn cafe máy tính  Tạo web server để ứng dụng sử dụng từ xa  Tạo sở liệu để lưu trữ liệu quán cafe sử dụng ứng dụng III NGÀY GIAO NHIỆM VỤ : 20/10/2016 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 3/01/2017 V GIÁO VIÊN HƯỚNG DẪN : Th.S Nguyễn Văn Hiệp GIÁO VIÊN HƯỚNG DẪN BM ĐIỆN TỬ CÔNG NGHIỆP an NHẬT KÝ THỰC HIỆN ĐATN Tuần/ngày Nội dung Xác nhận GVHD Tuần Đăng kí đề tài, nhận nhiệm vụ đồ án Tuần Phác thảo đồ án Tuần Tìm hiểu hệ điều hành Android,tìm hiểu web server, tìm hiểu sở liệu mysql Tuần Tìm hiểu cài đặt công cụ phần mềm Android studio mô thiết bị Android Tuần Tìm hiểu ngơn ngữ lập trình java, thiết kế ứng dụng Android đơn giản Tuần Viết chương trình kết nối ứng dụng máy tính với web server truy xuất sở liệu Tuần Tìm hiểu web service phục vụ cho ứng dụng điện thoại Android Tuần 10 Thiết kế giao diện cho ứng dụng điện thoại Android, thiết kế giao diện cho ứng dụng máy tính Tuần 11 Giao tiếp ứng dụng máy tính ứng dụng điện thoại Android thơng qua webser Tuần 12 Hồn thành ứng dụng điện thoại Android ứng dụng máy tính Tuần 13 Viết báo cáo cân chỉnh kiểm tra hoạt động ứng dụng GV HƯỚNG DẪN ( Ký ghi rõ họ tên) an LỜI CAM ĐOAN Đề tài nhóm tự thực dựa vào số tài liệu trước khơng chép từ tài liệu hay cơng trình có trước Người thực đề tài Nguyễn Đức Hạnh Trương Đình Lựu an Lời Cảm Ơn Nhóm thực đồ án xin có lời cảm ơn chân thành đến quý thầy cô khoa Điện – Điện tử, Bộ môn Điện Tử Công Nghiệp hỗ trợ nhóm suốt thời gian thực đề tài Nhóm thực đồ án xin gởi lời tri ân đến thầy hướng dẫn Nguyễn Văn Hiệp người trực tiếp hỗ trợ kiến thức động viên mặt tinh thần lúc khó khăn để nhóm hồn thành đồ án cách tốt đẹp Nhóm thực đồ án xin gởi lời cảm ơn đến gia đình ln bên cạnh, quan tâm động viên nhóm lúc khó khăn, ủng hộ tinh thần vật chất để nhóm hoàn thành đồ án cách tốt đẹp Cuối cùng, nhóm thực đồ án khơng qn gởi lời cảm ơn đến tất bạn lớp trao đổi có đóng góp bổ ích để đề tài hoàn thiện Chúc tất thành cơng chào đón đường Mặc dù có nhiều cố gắng nỗ lực thực hiện, kiến thức thân nhiều hạn chế nên trình thực đề tài khơng thể tránh khỏi sai phạm, thiếu sót… Nhóm thực đồ án mong nhận góp ý, dẫn từ q thầy bạn sinh viên Xin chân thành cảm ơn! Nhóm sinh viên thực Nguyễn Đức Hạnh Trương Đình Lựu an MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP………………………………………………… NHẬT KÝ THỰC HIỆN ĐATN………………………………………………………… LỜI CAM ĐOAN………………………………………………………………………… Lời Cảm Ơn……………………………………………………………………………… Liệt Kê Hình……………………………………………………………………………… TĨM TẮT………………………………………………………………………………… Chương Giới Thiệu 1.1 Vai trò ứng dụng công nghệ 1.2 Lý chọn đề tài 1.3 Mục tiêu nghiên cứu 1.4 phương pháp nghiên cứu 1.5 Phạm vi nghiên cứu 1.6 Bố cục luận văn Chương Cơ Sở Lý Thuyết 2.1 Hệ điều hành Android 2.1.1 giới thiệu hệ điều hành Android 2.1.2 Lịch sử phát triển hệ điều hành Android 2.1.3 Ứng dụng 2.1.4 Các phiên Android 2.1.5 Đặc điểm hệ điều hành Android 10 2.1.6 Kiến trúc Hệ điều hành Android 10 2.1.7 Bộ công cụ Android SDK 14 2.2 Webservice 15 2.2.1 Tổng quan webservice 15 2.2.2 Đặc điểm web service 16 2.2.3 Kiến trúc web service 17 2.2.4 Các thành phần Web service 19 an 2.2.5 An toàn cho Web service 22 2.2.6 Xây dựng dịch vụ web 24 2.2.7 Tích hợp dịch vụ Web theo chuẩn 25 2.3 Tìm hiểu ngơn ngữ lập trình java 26 2.3.1 Tổng quan ngôn ngữ java 26 2.3.2 Sự đời java 27 2.3.3 Triết lý java 28 2.3.4 Một số đặc điểm java 29 2.3.5 Ứng dụng 31 2.3.6 Một vài khái niệm java 31 Chương Tính Tốn Thiết kế 33 3.1 Giới thiệu 33 3.2 Thiết kế 34 3.2.1 Thiết kế sơ đồ khối cho hệ thống 35 3.2.2 Chức khối hệ thống 35 3.2.3 Tính tốn thiết kế khối hệ thống 36 Chương 4: Thi Công Hệ Thống 47 4.1 Giới thiệu 47 4.2 Thi công 47 4.2.1 Tạo web server 47 4.2.2 Tạo sở liệu cho hệ thống 53 4.2.3 Thi cơng ứng dụng máy tính 57 4.2.4 Thi công ứng dụng menu điện thoại Android 69 Chương Kết Quả Và Nhận Xét 81 5.1 kết 81 5.1.1 kết học hỏi nhóm sinh viên thực đề tài 81 5.1.2 kết thực đề tài 82 5.1.3 kết chạy ứng dụng máy tính ( PC ) 82 5.1.4 Kết chạy ứng dụng điện thoại Android 87 an 5.2 Nhận xét 90 5.2.1 Ưu điểm 90 5.2.2 Hạn chế 91 Chương Kết luận Và Hướng Phát Triển 92 6.1 Kết luận 92 6.2 Hướng phát triển 92  TÀI LIỆU THAM KHẢO 94 Sách tham khảo: 94 Website tham khảo: 94 PHỤ LỤC 95  MÃ NGUỒN CHƯƠNG TRÌNH TRÊN PC 95 Code kết nối database web server 95 Code web service tạo phương thức truy xuất với database web server 96  MÃ NGUỒN CHƯƠNG TRÌNH TRÊN ANDROID 124 Code giao diện ACTIVITIL 124 an Liệt Kê Hình HÌNH 1: HÌNH ẢNH MỘT SỐ PHIÊN BẢN CŨ ANDROID HÌNH 2:MƠ HÌNH KIẾN TRÚC NỀN TẢNG ANDROID 11 HÌNH 3:MƠ HÌNH HỢP TÁC GIỮA MÁY ẢO DALVIK VÀ NAVITE 14 HÌNH 4: KIẾN TRÚC WEB SERVICE 18 HÌNH 5: MƠ TẢ VẬN CHUYỂN DỮ LIỆU WEB SERVICE 19 Hình 1: Mơ hình phác thảo đề tài………………………………………… … 33 HÌNH 2: SƠ ĐỒ KHỐI HỆ THỐNG 35 HÌNH 3: SƠ ĐỒ CHI TIẾT TRONG CƠ SỞ DỮ LIỆU CỦA HỆ THỐNG 38 HÌNH 4: MƠ HÌNH THỰC THỂ ERD 39 HÌNH 5: LƯU ĐỒ CHƯƠNG TRÌNH ỨNG DỤNG HOẠT ĐỘNG TRÊN MÁY TÍNH 42 HÌNH 6: LƯU ĐỒ CHI TIẾT KHỐI ỨNG DỤNG TRÊN ĐIỆN THOẠI ANDROID 45 Hình 1: Đăng ký hosting jvmhost………………………………………… 48 HÌNH 2: THƠNG TIN CÁC GĨI HỖ TRỢ CỦA HOST 49 HÌNH 3: ĐĂNG KÝ TÊN MIỀN CHO HOST 49 HÌNH 4: ĐIỀN THÔNG TIN ĐĂNG KÝ TÀI KHOẢN 50 HÌNH 5: TÊN MIỀN HOST SERVER 50 HÌNH 6: SERVER QUẢN LÝ FILE CHƯƠNG TRÌNH CỦA ỨNG DỤNG 51 HÌNH 7: BẢNG ĐIỀU KHIỂN WEB SERVER 52 HÌNH 8: BẢNG BÀN TRONG CƠ SỞ DỮ LIỆU 54 HÌNH 9: BẢNG CHI TIẾT HĨA ĐƠN TRONG CƠ SỞ DỮ LIỆU 55 HÌNH 10: BẢNG ĐĂNG NHẬP TRONG CƠ SỞ DỮ LIỆU 55 HÌNH 11: BẢNG HÓA ĐƠN TRONG CƠ SỞ DỮ LIỆU 56 HÌNH 12: BẢNG NHÂN VIÊN TRONG CƠ SỞ DỮ LIỆU 56 HÌNH 13: BẢNG THỰC ĐƠN TRONG CƠ SỞ DỮ LIỆU 57 HÌNH 14: GIAO DIỆN ĐĂNG NHẬP 58 an HÌNH 15: GIAO DIỆN CHÍNH KHI ĐĂNG NHẬP HỆ THỐNG 58 HÌNH 16: THI CƠNG GIAO DIỆN QUẢN LÝ BÀN 59 HÌNH 17: THI CƠNG GIAO DIỆN QUẢN LÝ THỰC ĐƠN 60 HÌNH 18: THI CƠNG GIAO DIỆN QUẢN LÝ NHÂN VIÊN 60 HÌNH 19: THI CƠNG GIAO DIỆN THỐNG KÊ DOANH THU 61 HÌNH 20: GIAO DIỆN GIỚI THIỆU VỀ ĐỀ TÀI 61 HÌNH 21: LƯU ĐỒ GIẢI THUẬT FORM ĐĂNG NHẬP 62 HÌNH 22: LƯU ĐỒ CHƯƠNG TRÌNH FORM QUẢN LÝ BÀN TRÊN MÁY TÍNH 63 HÌNH 23: LƯU ĐỒ CHƯƠNG TRÌNH FORM QUẢN LÝ THỰC ĐƠN 64 HÌNH 24: LƯU ĐỒ CHƯƠNG TRÌNH QUẢN LÝ NHÂN VIÊN 66 HÌNH 25: LƯU ĐỒ QUẢN LÝ THỐNG KÊ DOANH THU CỦA ỨNG DỤNG 68 HÌNH 26: GIAO DIỆN KHỞI ĐƠNG ANDROID STUDIO 70 HÌNH 27: ĐẶT TÊN ỨNG DỤNG 70 HÌNH 28: CHỌN SDK 71 HÌNH 29: CHỌN ACTIVITY 71 HÌNH 30: CHỌN TÊN ACTIVITY 72 HÌNH 31: GIAO DIỆN SỐ 72 HÌNH 32: GIAO DIỆN SỐ 74 HÌNH 33: GIAO DIỆN CHO MÀN HÌNH SỐ 75 HÌNH 34: GIAO DIỆN SỐ 75 HÌNH 35: CUSTOM LÍSTVIEW 76 HÌNH 36: LƯU ĐỒ CHƯƠNG TRÌNH ĐẶT BÀN TRÊN ĐIỆN THOẠI ANDROID 77 HÌNH 37: LƯU ĐỒ CHƯƠNG TRÌNH MENU CHÍNH TRÊN ĐIỆN THOẠI ANDROID 78 HÌNH 38: LƯU ĐỒ CHƯƠNG TRÌNH MENU CON TRÊN ĐIỆN THOẠI ANDROID 79 Hình 1: Giao diện đăng nhập PC……………………………………………… 82 HÌNH 2: GIAO DIỆN CHÍNH KHI ĐĂNG NHẬP 83 HÌNH 3: TAB QUẢN LÝ BÀN KHI TRỐNG KHÁCH 83 an Trang 116 ĐỒ ÁN TỐT NGHIỆP Statement stm = con.createStatement(); ResultSet rs = stm.executeQuery("select * from chitiethoadon"); while(rs.next()){ kq1+="{"+"\"macthd\"" +":"+ "\""+rs.getString("macthd")+"\""+" , "+"\"mahd\""+":"+"\""+rs.getString("mahd")+"\""+" , "+"\"maban\"" +":"+ "\""+rs.getString("maban")+"\""+" , "+"\"mamon\""+":"+"\""+rs.getString("mamon")+"\""+","+"\"dongia\"" +":"+ "\""+rs.getString("dongia")+"\""+","+"\"soluong\"" +":"+ "\""+rs.getString("soluong")+"\""+","+"\"thanhtien\"" +":"+ "\""+rs.getString("thanhtien")+"\""+"}"+","; } } catch (SQLException ex) { Logger.getLogger(Webserviceqlcoffeeshop.class.getName()).log(Level.SEVERE, null, ex); } kq1 = kq1.substring(0, kq1.length() - 1); kq2+=kq1; kq2+="]"; return kq2; } /** * Web service operation */ @WebMethod(operationName = "Thembanchitiethoadon") public String Thembanchitiethoadon(@WebParam(name = "macthd") String macthd, @WebParam(name = "mahd") String mahd, @WebParam(name = "maban") String Phụ lục an Trang 117 ĐỒ ÁN TỐT NGHIỆP maban, @WebParam(name = "mamon") String mamon, @WebParam(name = "dongia") String dongia, @WebParam(name = "soluong") String soluong, @WebParam(name = "thanhtien") String thanhtien) { String loi = ""; try { Connection = Database.layketnoi(); String sql = "insert into chitiethoadon (macthd,mahd,maban,mamon,dongia,soluong,thanhtien) values(?,?,?,?,?,?,?)"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1,macthd); pst.setString(2, mahd); pst.setString(3,maban); pst.setString(4, mamon); pst.setString(5,dongia); pst.setString(6,soluong ); pst.setString(7,thanhtien); pst.executeUpdate(); } catch (SQLException ex) { loi = ex.getMessage(); } return loi; } /** * Web service operation Phụ lục an Trang 118 ĐỒ ÁN TỐT NGHIỆP */ @WebMethod(operationName = "Thembanhoadon") public String Thembanhoadon(@WebParam(name = "mahd") String mahd, @WebParam(name = "manv") String manv, @WebParam(name = "maban") String maban, @WebParam(name = "ngaytao") String ngaytao, @WebParam(name = "tongtien") String tongtien) { String loi = ""; try { Connection = Database.layketnoi(); String sql = "insert into hoadon (mahd,manv,maban,ngaytao,tongtien) values(?,?,?,?,?)"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1,mahd); pst.setString(2, manv); pst.setString(3,maban); pst.setString(4, ngaytao); pst.setString(5,tongtien); pst.executeUpdate(); } catch (SQLException ex) { loi = ex.getMessage(); } return loi; } /** Phụ lục an Trang 119 ĐỒ ÁN TỐT NGHIỆP * Web service operation */ @WebMethod(operationName = "Updatehoadon") public String Updatehoadon(@WebParam(name = "ngaytao") String ngaytao, @WebParam(name = "tongtien") String tongtien, @WebParam(name = "mahd") String mahd) { String loi = ""; try { Connection = Database.layketnoi(); String sql = "update hoadon set ngaytao=?,tongtien=? where mahd = ?"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1,ngaytao); pst.setString(2,tongtien); pst.setString(3,mahd); pst.executeUpdate(); } catch (SQLException ex) { loi = ex.getMessage(); } return loi; } /** * Web service operation */ @WebMethod(operationName = "Updatebanonoff") Phụ lục an Trang 120 ĐỒ ÁN TỐT NGHIỆP public String Updatebanonoff(@WebParam(name = "tinhtrang") String tinhtrang, @WebParam(name = "maban") String maban) { String loi = ""; try { Connection = Database.layketnoi(); String sql = "update ban set tinhtrang=? where maban = ?"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1,tinhtrang); pst.setString(2,maban); pst.executeUpdate(); } catch (SQLException ex) { loi = ex.getMessage(); } return loi; } /** * Web service operation */ @WebMethod(operationName = "Thembanchitiethoadon2") public String Thembanchitiethoadon2(@WebParam(name = "macthd") String macthd, @WebParam(name = "tinhtrang") String tinhtrang, @WebParam(name = "mahd") String mahd, @WebParam(name = "maban") String maban, @WebParam(name = "mamon") String mamon, @WebParam(name = "dongia") String dongia, @WebParam(name = "soluong") String soluong, @WebParam(name = "thanhtien") String thanhtien) { String loi = ""; Phụ lục an Trang 121 ĐỒ ÁN TỐT NGHIỆP try { Connection = Database.layketnoi(); String sql = "insert into chitiethoadon (macthd,Tinhtrang,mahd,maban,mamon,dongia,soluong,thanhtien) values(?,?,?,?,?,?,?,?)"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1,macthd); pst.setString(2,tinhtrang); pst.setString(3, mahd); pst.setString(4,maban); pst.setString(5, mamon); pst.setString(6,dongia); pst.setString(7,soluong ); pst.setString(8,thanhtien); pst.executeUpdate(); } catch (SQLException ex) { loi = ex.getMessage(); } return loi; } /** * Web service operation */ @WebMethod(operationName = "Updateonofbanchitiethoadon") Phụ lục an Trang 122 ĐỒ ÁN TỐT NGHIỆP public String Updateonofbanchitiethoadon(@WebParam(name = "tinhtrang") String tinhtrang, @WebParam(name = "key") String key) { String loi = ""; try { Connection = Database.layketnoi(); String sql = "update chitiethoadon set Tinhtrang=? where mahd = ?"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1,tinhtrang); pst.setString(2,key); pst.executeUpdate(); } catch (SQLException ex) { loi = ex.getMessage(); } return loi; } /** * Web service operation */ @WebMethod(operationName = "Doctatcachitiethoadon2") public String Doctatcachitiethoadon2() { String kq1 =""; String kq2="["; try { Phụ lục an Trang 123 ĐỒ ÁN TỐT NGHIỆP Connection = Database.layketnoi(); Statement stm = con.createStatement(); ResultSet rs = stm.executeQuery("select * from chitiethoadon"); while(rs.next()){ kq1+="{"+"\"macthd\"" +":"+ "\""+rs.getString("macthd")+"\""+" , "+"\"Tinhtrang\"" +":"+ "\""+rs.getString("Tinhtrang")+"\""+" , "+"\"mahd\""+":"+"\""+rs.getString("mahd")+"\""+" , "+"\"maban\"" +":"+ "\""+rs.getString("maban")+"\""+" , "+"\"mamon\""+":"+"\""+rs.getString("mamon")+"\""+","+"\"dongia\"" +":"+ "\""+rs.getString("dongia")+"\""+","+"\"soluong\"" +":"+ "\""+rs.getString("soluong")+"\""+","+"\"thanhtien\"" +":"+ "\""+rs.getString("thanhtien")+"\""+"}"+","; } } catch (SQLException ex) { Logger.getLogger(Webserviceqlcoffeeshop.class.getName()).log(Level.SEVERE, null, ex); } kq1 = kq1.substring(0, kq1.length() - 1); kq2+=kq1; kq2+="]"; return kq2; } } Phụ lục an Trang 124 ĐỒ ÁN TỐT NGHIỆP  MÃ NGUỒN CHƯƠNG TRÌNH TRÊN ANDROID Code giao diện ACTIVITIL Acti2 /> Activiti3 Activity hoa don

Ngày đăng: 02/02/2023, 09:34

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w