日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

计算机毕业设计选题火锅店预约平台系统

發(fā)布時間:2024/3/26 windows 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机毕业设计选题火锅店预约平台系统 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

💖🔥作者主頁:計算機畢設小程
精彩專欄推薦訂閱:在 下方專欄👇🏻👇🏻👇🏻👇🏻

Java實戰(zhàn)項目

文章目錄

    • Java實戰(zhàn)項目
  • 一、開發(fā)介紹
    • 1.1 開發(fā)環(huán)境
  • 二、系統(tǒng)介紹
    • 2.1圖片展示
  • 三、部分代碼設計
    • 3.1.部分代碼如下:

一、開發(fā)介紹

1.1 開發(fā)環(huán)境

  • 開發(fā)語言:Java
  • 數(shù)據(jù)庫:MySQL
  • 系統(tǒng)架構(gòu):B/S
  • 后端:Springboot/SSM(Spring+SpringMVC+Mybatis)
  • 前端:Vue
  • 工具:IDEA或者Eclipse、JDK1.8、Maven

二、系統(tǒng)介紹

2.1圖片展示

用戶注冊登錄模塊:
首頁模塊:餐廳模塊:
小吃排行:
個人資料:
我的訂單模塊:
餐廳管理員模塊:餐廳管理、美食管理、留言管理、座位管理、座位預定管理
餐廳管理模塊:餐廳管理員上傳餐廳信息、修改功能;

美食管理模塊:餐廳管理員新增美食菜品信息、編輯、刪除功能;
留言管理模塊:查看用戶評價回復功能;
座位管理模塊:新增桌位信息、修改、刪除功能;
座位預定管理:審核用戶預定的座位是否同意;
管理員模塊:餐廳信息管理、用戶管理、美食類別管理
餐廳信息管理:新增餐廳信息、查看管理員信息、編輯、刪除功能;

用戶管理模塊:查看用戶信息、刪除功能;
美食類別管理模塊:新增美食類型信息、刪除功能;

三、部分代碼設計

3.1.部分代碼如下:

分頁插件代碼package com.utils;import java.io.Serializable; import java.util.List; import java.util.Map;import com.baomidou.mybatisplus.plugins.Page;/*** 分頁工具類*/ public class PageUtils implements Serializable {private static final long serialVersionUID = 1L;//總記錄數(shù)private long total;//每頁記錄數(shù)private int pageSize;//總頁數(shù)private long totalPage;//當前頁數(shù)private int currPage;//列表數(shù)據(jù)private List<?> list;/*** 分頁* @param list 列表數(shù)據(jù)* @param totalCount 總記錄數(shù)* @param pageSize 每頁記錄數(shù)* @param currPage 當前頁數(shù)*/public PageUtils(List<?> list, int totalCount, int pageSize, int currPage) {this.list = list;this.total = totalCount;this.pageSize = pageSize;this.currPage = currPage;this.totalPage = (int)Math.ceil((double)totalCount/pageSize);}/*** 分頁*/public PageUtils(Page<?> page) {this.list = page.getRecords();this.total = page.getTotal();this.pageSize = page.getSize();this.currPage = page.getCurrent();this.totalPage = page.getPages();}/** 空數(shù)據(jù)的分頁*/public PageUtils(Map<String, Object> params) {Page page =new Query(params).getPage();new PageUtils(page);} <script type="text/javascript">var vue = new Vue({el: '#app',data: {menu: menu,roles: []},created(){for(let item in this.menu) {if(this.menu[item].hasFrontLogin=='是') {this.roles.push(this.menu[item]);}} },methods: {jump(url) {jump(url)}}})layui.use(['layer', 'element', 'carousel', 'form', 'http', 'jquery'], function() {var layer = layui.layer;var element = layui.element;var carousel = layui.carousel;var form = layui.form;var http = layui.http;var jquery = layui.jquery;function randomString() {var len = 4;var chars = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k','l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v','w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G','H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R','S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2','3', '4', '5', '6', '7', '8', '9']var colors = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f']var sizes = ['14', '15', '16', '17', '18']var output = []for (var i = 0; i < len; i++) {// 隨機驗證碼var key = Math.floor(Math.random() * chars.length)codes[i].num = chars[key]// 隨機驗證碼顏色var code = '#'for (var j = 0; j < 6; j++) {var key = Math.floor(Math.random() * colors.length)code += colors[key]}codes[i].color = code// 隨機驗證碼方向var rotate = Math.floor(Math.random() * 45)var plus = Math.floor(Math.random() * 2)if (plus == 1) rotate = '-' + rotatecodes[i].rotate = 'rotate(' + rotate + 'deg)'// 隨機驗證碼字體大小var size = Math.floor(Math.random() * sizes.length)codes[i].size = sizes[size] + 'px'}var str = ''for(var i = 0;i<codes.length;i++) {str += '<span style="color:' + codes[i].color + ';transform:' + codes[i].rotate + ';fontSize:' + codes[i].size + ';padding: 0 3px;display:inline-block">'+codes[i].num+'</span>'}jquery('#nums').html('').append(str);}jquery('#nums').click(function(){randomString();})randomString();// 登錄form.on('submit(login)', function(data) {data = data.field;if (vue.roles.length!=1) {if (!data.role) {layer.msg('請選擇登錄用戶類型', {time: 2000,icon: 5});return false;}} else {data.role = vue.roles[0].tableName;}http.request(data.role + '/login', 'get', data, function(res) {layer.msg('登錄成功', {time: 2000,icon: 6});// 登錄憑證localStorage.setItem('Token', res.token);var roleName = "";if(typeof(jquery('#role:checked').attr('title')) == "undefined") {roleName = vue.roles[0].roleName;} else {roleName = jquery('#role:checked').attr('title');}localStorage.setItem('role', roleName);// 當前登錄用戶角色localStorage.setItem('userTable', data.role);localStorage.setItem('sessionTable', data.role);// 用戶名稱localStorage.setItem('adminName', data.username);http.request(data.role + '/session', 'get', {}, function(res) {// 用戶idlocalStorage.setItem('userid', res.data.id);if(res.data.vip) {localStorage.setItem('vip', res.data.vip);}// 路徑訪問設置window.location.href = '../../index.html';})});return false});});/*** 跳轉(zhuǎn)登錄* @param {Object} tablename*/function registerClick(tablename) {window.location.href = '../' + tablename + '/register.html?tablename=' + tablename;}</script> /*** Mybatis-Plus工具類*/ public class MPUtil {public static final char UNDERLINE = '_';//mybatis plus allEQ 表達式轉(zhuǎn)換public static Map allEQMapPre(Object bean,String pre) {Map<String, Object> map =BeanUtil.beanToMap(bean);return camelToUnderlineMap(map,pre);}//mybatis plus allEQ 表達式轉(zhuǎn)換public static Map allEQMap(Object bean) {Map<String, Object> map =BeanUtil.beanToMap(bean);return camelToUnderlineMap(map,"");}public static Wrapper allLikePre(Wrapper wrapper,Object bean,String pre) {Map<String, Object> map =BeanUtil.beanToMap(bean);Map result = camelToUnderlineMap(map,pre);return genLike(wrapper,result);}public static Wrapper allLike(Wrapper wrapper,Object bean) {Map result = BeanUtil.beanToMap(bean, true, true);return genLike(wrapper,result);}public static Wrapper genLike( Wrapper wrapper,Map param) {Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();int i=0;while (it.hasNext()) {if(i>0) wrapper.and();Map.Entry<String, Object> entry = it.next();String key = entry.getKey();String value = (String) entry.getValue();wrapper.like(key, value);i++;}return wrapper;}public static Wrapper likeOrEq(Wrapper wrapper,Object bean) {Map result = BeanUtil.beanToMap(bean, true, true);return genLikeOrEq(wrapper,result);}public static Wrapper genLikeOrEq( Wrapper wrapper,Map param) {Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();int i=0;while (it.hasNext()) {if(i>0) wrapper.and();Map.Entry<String, Object> entry = it.next();String key = entry.getKey();if(entry.getValue().toString().contains("%")) {wrapper.like(key, entry.getValue().toString().replace("%", ""));} else {wrapper.eq(key, entry.getValue());}i++;}return wrapper;}public static Wrapper allEq(Wrapper wrapper,Object bean) {Map result = BeanUtil.beanToMap(bean, true, true);return genEq(wrapper,result);}public static Wrapper genEq( Wrapper wrapper,Map param) {Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();int i=0;while (it.hasNext()) {if(i>0) wrapper.and();Map.Entry<String, Object> entry = it.next();String key = entry.getKey();wrapper.eq(key, entry.getValue());i++;}return wrapper;}public static Wrapper between(Wrapper wrapper,Map<String, Object> params) {for(String key : params.keySet()) {String columnName = "";if(key.endsWith("_start")) {columnName = key.substring(0, key.indexOf("_start"));if(StringUtils.isNotBlank(params.get(key).toString())) {wrapper.ge(columnName, params.get(key));}}if(key.endsWith("_end")) {columnName = key.substring(0, key.indexOf("_end"));if(StringUtils.isNotBlank(params.get(key).toString())) {wrapper.le(columnName, params.get(key));}}}return wrapper;}public static Wrapper sort(Wrapper wrapper,Map<String, Object> params) {String order = "";if(params.get("order") != null && StringUtils.isNotBlank(params.get("order").toString())) {order = params.get("order").toString();}if(params.get("sort") != null && StringUtils.isNotBlank(params.get("sort").toString())) {if(order.equalsIgnoreCase("desc")) {wrapper.orderDesc(Arrays.asList(params.get("sort")));} else {wrapper.orderAsc(Arrays.asList(params.get("sort")));}}return wrapper;}/*** 駝峰格式字符串轉(zhuǎn)換為下劃線格式字符串** @param param* @return*/public static String camelToUnderline(String param) {if (param == null || "".equals(param.trim())) {return "";}int len = param.length();StringBuilder sb = new StringBuilder(len);for (int i = 0; i < len; i++) {char c = param.charAt(i);if (Character.isUpperCase(c)) {sb.append(UNDERLINE);sb.append(Character.toLowerCase(c));} else {sb.append(c);}}return sb.toString();}public static void main(String[] ages) {System.out.println(camelToUnderline("ABCddfANM"));}public static Map camelToUnderlineMap(Map param, String pre) {Map<String, Object> newMap = new HashMap<String, Object>();Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, Object> entry = it.next();String key = entry.getKey();String newKey = camelToUnderline(key);if (pre.endsWith(".")) {newMap.put(pre + newKey, entry.getValue());} else if (StringUtils.isEmpty(pre)) {newMap.put(newKey, entry.getValue());} else {newMap.put(pre + "." + newKey, entry.getValue());}}return newMap;} }

總結(jié)

以上是生活随笔為你收集整理的计算机毕业设计选题火锅店预约平台系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。