博主介紹:?全網(wǎng)粉絲20W+,csdn特邀作者、博客專(zhuān)家、CSDN新星計(jì)劃導(dǎo)師、java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者,CSDN博客之星TOP100、掘金/華為云/阿里云/InfoQ等平臺(tái)優(yōu)質(zhì)作者、專(zhuān)注于Java技術(shù)領(lǐng)域和畢業(yè)設(shè)計(jì)?
???文末獲取聯(lián)系??
?? 精彩專(zhuān)欄推薦????????????????
java項(xiàng)目精品實(shí)戰(zhàn)案例《100套》https://blog.csdn.net/weixin_39709134/category_11128297.html
?前言介紹:?
以往的酒店管理系統(tǒng)相關(guān)信息管理,都是工作人員手工統(tǒng)計(jì)。這種方式不但時(shí)效性低,而且需要查找和變更的時(shí)候很不方便。隨著科學(xué)的進(jìn)步,技術(shù)的成熟,計(jì)算機(jī)信息化也日新月異的發(fā)展,如今計(jì)算機(jī)已經(jīng)進(jìn)入了人類(lèi)社會(huì)發(fā)展的各個(gè)領(lǐng)域,并且發(fā)揮著十分重要的作用。本系統(tǒng)充分利用網(wǎng)絡(luò)的便捷,在工作效率上,得到極大地提高,延伸至服務(wù)水平也會(huì)有好的收獲,有了網(wǎng)絡(luò),酒店管理系統(tǒng)的各方面的管理更加科學(xué)和系統(tǒng),更加規(guī)范和簡(jiǎn)便。為用戶提供酒店管理系統(tǒng),方便管理員及時(shí)高效的管理所有的信息,給用戶提供簡(jiǎn)單方便快捷的方式,并且數(shù)據(jù)準(zhǔn)確,用戶可以足不出戶就可以對(duì)酒店管理系統(tǒng)相關(guān)信息進(jìn)行查詢等操作,而且還能節(jié)省用戶查詢信息的等待時(shí)間,所以開(kāi)發(fā)酒店管理系統(tǒng)給工作人員帶來(lái)很大的方便,可以大大的提高系統(tǒng)人員工作效率。
系統(tǒng)設(shè)計(jì):
主要功能模塊設(shè)計(jì)?
酒店管理系統(tǒng)采用B/S結(jié)構(gòu)、java開(kāi)發(fā)語(yǔ)言、以及Mysql數(shù)據(jù)庫(kù)等技術(shù)。系統(tǒng)主要分為管理員和用戶二部分,管理員:首頁(yè)、個(gè)人中心、用戶管理、客房類(lèi)型管理、客房信息管理、客房預(yù)訂管理、入住登記管理、退房評(píng)價(jià)管理、系統(tǒng)管理,用戶;首頁(yè)、個(gè)人中心、客房預(yù)訂管理、入住登記管理、點(diǎn)餐管理、退房評(píng)價(jià)管理、我的收藏管理,前臺(tái)首頁(yè);首頁(yè)、客房信息、酒店公告、個(gè)人中心、后臺(tái)管理、在線咨詢等功能,基本上實(shí)現(xiàn)了整個(gè)酒店管理系統(tǒng)信息管理的過(guò)程。本系統(tǒng)在一般酒店管理系統(tǒng)的基礎(chǔ)上增加了最新信息的功能方便用戶快速瀏覽,是一個(gè)高效的、動(dòng)態(tài)的、相互友好的酒店管理系統(tǒng)。
??
用戶登錄注冊(cè)時(shí)序圖
前端用戶發(fā)送登錄請(qǐng)求-驗(yàn)證輸入的賬號(hào)虛線-執(zhí)行數(shù)據(jù)查詢-返回查詢結(jié)果-判斷用戶是否存在-前端根據(jù)結(jié)果集執(zhí)行不同的操作?
?
功能截圖:
登陸注冊(cè):
用戶登錄、用戶注冊(cè),在注冊(cè)頁(yè)面可以填寫(xiě)用戶名、密碼、姓名、聯(lián)系電話、身份證等信息進(jìn)行注冊(cè)、登錄
系統(tǒng)前端:
系統(tǒng)首頁(yè):
酒店信息:
客房信息:
客房預(yù)定:
餐飲下單:
酒店餐飲:
酒店資訊:
個(gè)人中心:
用戶登錄、用戶注冊(cè),在注冊(cè)頁(yè)面可以填寫(xiě)用戶名、密碼、姓名、聯(lián)系電話、身份證等信息進(jìn)行注冊(cè)、登錄
客服信息:
?用戶后臺(tái)管理:
系統(tǒng)后端:
個(gè)人信息:
客房分類(lèi):
在客房類(lèi)型管理頁(yè)面可以查看客房類(lèi)型等信息,并可根據(jù)需要進(jìn)行刪除,修改等操作
酒店信息:
?編輯修改等
酒店餐飲:
用戶管理:
客房預(yù)訂:
客房續(xù)房:
退房評(píng)價(jià):
餐飲訂單:
餐飲配送:
輪播圖管理:
酒店資訊:
數(shù)據(jù)設(shè)計(jì):
在該系統(tǒng)的信息中,由于數(shù)據(jù)庫(kù)的支持,我們可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行收集、整理、更新和加工等操作。由于數(shù)據(jù)庫(kù)的存儲(chǔ)功能強(qiáng)大,所以數(shù)據(jù)庫(kù)已經(jīng)成為了計(jì)算機(jī)必不可少的一部分,一個(gè)數(shù)據(jù)庫(kù)的好壞直接影響該系統(tǒng)的質(zhì)量和效率。一個(gè)系統(tǒng)中的數(shù)據(jù)庫(kù)是必不可少的,并且起著決定性因素。通過(guò)之前的系統(tǒng)分析,可以規(guī)劃出本系統(tǒng)中使用的主要等,下面設(shè)計(jì)出這幾個(gè)關(guān)鍵實(shí)體的實(shí)體關(guān)系圖:
(1)用戶信息實(shí)體E-R圖如圖所示:
??(2)客房信息實(shí)體E-R圖如圖所示:
?(3)入住登記信息實(shí)體E- R圖,如圖所示:
代碼實(shí)現(xiàn):
/**
* 酒店餐飲
* 后端接口
* @author
* @email
* @date 2022-01-11 13:23:20
*/
@RestController
@RequestMapping("/jiudiancanyin")
public class JiudiancanyinController {
@Autowired
private JiudiancanyinService jiudiancanyinService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,JiudiancanyinEntity jiudiancanyin, HttpServletRequest request){
EntityWrapper<JiudiancanyinEntity> ew = new EntityWrapper<JiudiancanyinEntity>();
PageUtils page = jiudiancanyinService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiudiancanyin), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,JiudiancanyinEntity jiudiancanyin, HttpServletRequest request){
EntityWrapper<JiudiancanyinEntity> ew = new EntityWrapper<JiudiancanyinEntity>();
PageUtils page = jiudiancanyinService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiudiancanyin), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( JiudiancanyinEntity jiudiancanyin){
EntityWrapper<JiudiancanyinEntity> ew = new EntityWrapper<JiudiancanyinEntity>();
ew.allEq(MPUtil.allEQMapPre( jiudiancanyin, "jiudiancanyin"));
return R.ok().put("data", jiudiancanyinService.selectListView(ew));
}
/**
* 查詢
*/
@RequestMapping("/query")
public R query(JiudiancanyinEntity jiudiancanyin){
EntityWrapper< JiudiancanyinEntity> ew = new EntityWrapper< JiudiancanyinEntity>();
ew.allEq(MPUtil.allEQMapPre( jiudiancanyin, "jiudiancanyin"));
JiudiancanyinView jiudiancanyinView = jiudiancanyinService.selectView(ew);
return R.ok("查詢酒店餐飲成功").put("data", jiudiancanyinView);
}
/**
* 后端詳情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
JiudiancanyinEntity jiudiancanyin = jiudiancanyinService.selectById(id);
return R.ok().put("data", jiudiancanyin);
}
/**
* 前端詳情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") String id){
JiudiancanyinEntity jiudiancanyin = jiudiancanyinService.selectById(id);
return R.ok().put("data", jiudiancanyin);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody JiudiancanyinEntity jiudiancanyin, HttpServletRequest request){
jiudiancanyin.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(jiudiancanyin);
jiudiancanyinService.insert(jiudiancanyin);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody JiudiancanyinEntity jiudiancanyin, HttpServletRequest request){
jiudiancanyin.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(jiudiancanyin);
jiudiancanyinService.insert(jiudiancanyin);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody JiudiancanyinEntity jiudiancanyin, HttpServletRequest request){
//ValidatorUtils.validateEntity(jiudiancanyin);
jiudiancanyinService.updateById(jiudiancanyin);//全部更新
return R.ok();
}
/**
* 刪除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
jiudiancanyinService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<JiudiancanyinEntity> wrapper = new EntityWrapper<JiudiancanyinEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
int count = jiudiancanyinService.selectCount(wrapper);
return R.ok().put("count", count);
}
}
@Service("chatService")
public class ChatServiceImpl extends ServiceImpl<ChatDao, ChatEntity> implements ChatService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
Page<ChatEntity> page = this.selectPage(
new Query<ChatEntity>(params).getPage(),
new EntityWrapper<ChatEntity>()
);
return new PageUtils(page);
}
@Override
public PageUtils queryPage(Map<String, Object> params, Wrapper<ChatEntity> wrapper) {
Page<ChatView> page =new Query<ChatView>(params).getPage();
page.setRecords(baseMapper.selectListView(page,wrapper));
PageUtils pageUtil = new PageUtils(page);
return pageUtil;
}
@Override
public List<ChatVO> selectListVO(Wrapper<ChatEntity> wrapper) {
return baseMapper.selectListVO(wrapper);
}
@Override
public ChatVO selectVO(Wrapper<ChatEntity> wrapper) {
return baseMapper.selectVO(wrapper);
}
@Override
public List<ChatView> selectListView(Wrapper<ChatEntity> wrapper) {
return baseMapper.selectListView(wrapper);
}
@Override
public ChatView selectView(Wrapper<ChatEntity> wrapper) {
return baseMapper.selectView(wrapper);
}
}
論文參考:
??
源碼獲?。?/h3>
大家點(diǎn)贊、收藏、關(guān)注、評(píng)論啦 、查看????????????獲取聯(lián)系方式????????????
打卡 文章 更新?298/? 365天
?精彩專(zhuān)欄推薦訂閱:在下方專(zhuān)欄????????????????
Java項(xiàng)目精品實(shí)戰(zhàn)案例《100套》文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-849747.html
web前端期末大作業(yè)網(wǎng)頁(yè)實(shí)戰(zhàn)《100套》文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-849747.html
到了這里,關(guān)于基于Java+Spring+mybatis+vue+element實(shí)現(xiàn)酒店管理系統(tǒng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!