php基于Vue的万怡酒店管理系统(源码+文档+调试+讲解)

收藏关注不迷路!!

🌟文末获取源码+数据库🌟

感兴趣的可以先收藏起来,还有大家在毕设选题(免费咨询指导选题),项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人


前言

伴随着时代变革,在人类对欲望的追求下,五行八作都经历了沧海桑田、翻天覆地、日新月异的发展历程。科技在人类的醉心熏陶下成为了改变生活方式、提高工作效率的一项工具。人们生活的每个阶段都与现代先进技术融合在一起,并通过科学技术方法提高其收益。通过将网络技术与酒店业务结合,科技承担了改善酒店管理的任务,走双向共赢发展之路,以合作伙伴形式一洗酒店传统管理模式。它不仅降低了酒店服务交付的复杂性,而且还充分调动酒店管理的机动性。非凡性的酒店系统中以服务为主,管理为辅,二者相互搭配、交织,层层推进,促使富有创造力的管理人员可以主动发展和发起工作,这有利于酒店业务的推进发展。
本文从用户的功能要求出发,使用开发技术将酒店管理系统进行打造,适用于该计划的模块主要侧重于以下功能,例如房间视图浏览,预订操作和后台处理等等;经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与酒店预定平台实现的实际需求相结合,讨论了php开发酒店管理系统的使用。

详细视频演示

文章底部名片,联系我看更详细的演示视频

一、项目介绍

开发语言:PHP
数据库:MYSQL数据库
应用服务:apache服务器
使用框架:ThinkPHP+vue
开发工具:VScode/Dreamweaver/PhpStorm等均可

————————————————

二、功能介绍

此系统主要分为前端和后端。
前端主要有首页,客房信息,菜品信息,酒店公告等;
后端主要有用户和管理员,管理员功能包括续住登记,菜品分类,菜品信息,菜品订单,客房维修,系统管理等

三、系统测试

测试是和系统开发同步进行的,因此在需求阶段测试人员就已经对需求阶段的各个指标进行了相对应的验证测试,在系统开发过程中进行单元测试,在系统开发完成后针对性能、功能性和可用性进行系统测试。限于篇幅所限,下面主要围绕功能测试用例和测试总结两个方面进行说明。

系统功能测试

测试用例描述操作过程及数据预期结果测试结果
以用户身份登录按照系统要求填写用户登录名和密码信息点击“确定”系统跳转至用户可使用的前台首页通过
以管理人员身份登录按照系统要求填写管理人员登录名和密码信息点击“确定系统跳转至管理人员可使用的后台首页通过
以未注册身份登录按照系统要求填写并未注册登录名和密码信息点击“确定”系统提示用户名或密码错误通过
用户名为空用户没有填写用户名系统提示用户名未填写通过

四、核心代码

部分代码:

<?php




session_start();
class YonghuController extends CommonController {

    public function __construct()
    {
        header("Access-Control-Allow-Origin: *");
        header("Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, DELETE");
        header('Access-Control-Allow-Headers:Origin,Content-Type,Accept,token,X-Requested-With,device');
    }
    public $columData = [
		'id','addtime'
        ,'zhanghao'
        ,'xingming'
        ,'mima'
        ,'shoujihao'
        ,'xingbie'
        ,'nianling'
        ,'touxiang'
        ,'sfsh'
        ,'shhf'
        ,'vip'
    ];


    /**
     * 登录接口
     * POST
     * */
    public function login(){
        $username = isset($_REQUEST['username'])?$_REQUEST['username']:"";
        $password = isset($_REQUEST['password'])?$_REQUEST['password']:"";


        $sql = "select * from `yonghu` where `zhanghao` = '".$username."' and `mima` = '".$password."'";
        $result = table_sql($sql);
        if ($result->num_rows > 0) {
            // 输出数据
            while($row = $result->fetch_assoc()) {
                if ($row['sfsh'] != "是") {
                    exit(json_encode(['code' => -1,'msg'=>"账号已锁定,请联系管理员审核!"]));
                }
                $token_array = [
                    "iat" => time(), //签发时间
                    "exp" => time()+7200, //token 过期时间
                    'tablename'=> 'yonghu',//表名
                    'columData' => $this->columData,
                    'id' => $row['id'],
                    'isAdmin' => 0,
                    "success" => $row,//记录的uid的信息,如果有其它信息,可以再添加数组的键值对
                    'username' => $row['zhanghao'],
                ];
                $tokens = base64_encode(json_encode($token_array));
                $_SESSION[$tokens] = $row["id"];
                $colum = "zhanghao";
                $md5 = md5($row["id"]."+10086");
                $_SESSION[$md5] = $row[$colum];
				
                $data = ['code' => 0, 'token' => $tokens];
                exit(json_encode($data));
            }
        } else {
            exit(json_encode(['code'=>500,'msg'=>"账号或密码错误"]));
        }
    }


    /**
     * 退出
     * post
     */
    public function logout(){
        $token = $this->token();
        unset($token);
        exit(json_encode(['code'=>0,'msg'=>'退出成功']));
    }
    /**
     * 注册
     * post
     */
    public function register(){
        $tmpData = strval(file_get_contents("php://input"));
        $postData = json_decode($tmpData,true);


        $colum = "zhanghao";
        $trues = "select * from `yonghu` where `zhanghao` = '".$postData[$colum]."'";
        $result = table_sql($trues);
        if($result->num_rows<1){
			$keyArr = $valArr = array();
			foreach ($postData as $key => $value){
                if (in_array($key, $this->columData) && $value != ''){
                    array_push($keyArr,"`".$key."`");
                    array_push($valArr,"'".$value."'");
                }
            }
			$key = implode(',',$keyArr);
			$v = implode(',',$valArr);
            $sql = "INSERT INTO `yonghu` (`id`,".$key.") VALUES (".time().",".$v.")";
            $result = table_sql($sql);
            if (!$result) exit(json_encode(['code'=>500,'msg'=>'注册失败。']));
            exit(json_encode(['code'=>0]));
        }
        exit(json_encode(['code'=>500,'msg'=>"用户名已存在。"]));
    }


数据库参考


--
-- Current Database: `phpci7firyg`
--

/*!40000 DROP DATABASE IF EXISTS `phpci7firyg`*/;

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `phpci7firyg` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;

USE `phpci7firyg`;

--
-- Table structure for table `aboutus`
--

DROP TABLE IF EXISTS `aboutus`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `aboutus` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `title` varchar(200) NOT NULL COMMENT '标题',
  `subtitle` varchar(200) DEFAULT NULL COMMENT '副标题',
  `content` longtext NOT NULL COMMENT '内容',
  `picture1` longtext COMMENT '图片1',
  `picture2` longtext COMMENT '图片2',
  `picture3` longtext COMMENT '图片3',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='关于我们';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `aboutus`
--

LOCK TABLES `aboutus` WRITE;
/*!40000 ALTER TABLE `aboutus` DISABLE KEYS */;
INSERT INTO `aboutus` VALUES (1,'2024-04-23 14:43:11','关于我们','ABOUT US','当你设想门外是寒冷可怕的世界时,你还应该开门出去看看,是否真的如此。如果你有信心,你对前途就不犹豫了。如果你有勇气,你就不怕前途是否有困难或危险了每个人心中都应有两盏灯,一盏是希望的灯,一盏是勇气的灯。有了这两盏灯,我们就不怕海上的黑暗和风涛的险恶了。人的一生很像是在雾中行走。远远望去,只是迷蒙一片,辨不出方向和吉凶。可是,当你鼓起勇气,放下恐惧和怀疑,一步一步向前走去的时候,你就会发现,每走一步,你都能把下一步路看得清楚一点。“往前走,别站在远远的地方观望!”你就可以找到你的方向。','upload/aboutus_picture1.jpg','upload/aboutus_picture2.jpg','upload/aboutus_picture3.jpg');
/*!40000 ALTER TABLE `aboutus` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `caipindingdan`
--

DROP TABLE IF EXISTS `caipindingdan`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `caipindingdan` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `dingdanbianhao` varchar(200) DEFAULT NULL COMMENT '订单编号',
  `caipinbianhao` varchar(200) DEFAULT NULL COMMENT '菜品编号',
  `caipinmingcheng` varchar(200) DEFAULT NULL COMMENT '菜品名称',
  `tupian` longtext COMMENT '图片',
  `caipinshuliang` int(11) DEFAULT NULL COMMENT '菜品数量',
  `caipinjiage` double DEFAULT NULL COMMENT '菜品价格',
  `zongjine` double DEFAULT NULL COMMENT '总金额',
  `kehuzhanghao` varchar(200) DEFAULT NULL COMMENT '客户账号',
  `kehuxingming` varchar(200) DEFAULT NULL COMMENT '客户姓名',
  `lianxidianhua` varchar(200) DEFAULT NULL COMMENT '联系电话',
  `fangjianhao` varchar(200) DEFAULT NULL COMMENT '房间号',
  `xiadanshijian` datetime DEFAULT NULL COMMENT '下单时间',
  `ispay` varchar(200) DEFAULT '未支付' COMMENT '是否支付',
  PRIMARY KEY (`id`),
  UNIQUE KEY `dingdanbianhao` (`dingdanbianhao`)
) ENGINE=InnoDB AUTO_INCREMENT=119 DEFAULT CHARSET=utf8 COMMENT='菜品订单';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `caipindingdan`
--

LOCK TABLES `caipindingdan` WRITE;
/*!40000 ALTER TABLE `caipindingdan` DISABLE KEYS */;
INSERT INTO `caipindingdan` VALUES (111,'2024-04-23 14:43:11','1111111111','菜品编号1','菜品名称1','upload/caipindingdan_tupian1.jpg,upload/caipindingdan_tupian2.jpg,upload/caipindingdan_tupian3.jpg',1,1,1,'客户账号1','客户姓名1','联系电话1','房间号1','2024-04-23 22:43:11','未支付'),(112,'2024-04-23 14:43:11','2222222222','菜品编号2','菜品名称2','upload/caipindingdan_tupian2.jpg,upload/caipindingdan_tupian3.jpg,upload/caipindingdan_tupian4.jpg',2,2,2,'客户账号2','客户姓名2','联系电话2','房间号2','2024-04-23 22:43:11','未支付'),(113,'2024-04-23 14:43:11','3333333333','菜品编号3','菜品名称3','upload/caipindingdan_tupian3.jpg,upload/caipindingdan_tupian4.jpg,upload/caipindingdan_tupian5.jpg',3,3,3,'客户账号3','客户姓名3','联系电话3','房间号3','2024-04-23 22:43:11','未支付'),(114,'2024-04-23 14:43:11','4444444444','菜品编号4','菜品名称4','upload/caipindingdan_tupian4.jpg,upload/caipindingdan_tupian5.jpg,upload/caipindingdan_tupian6.jpg',4,4,4,'客户账号4','客户姓名4','联系电话4','房间号4','2024-04-23 22:43:11','未支付'),(115,'2024-04-23 14:43:11','5555555555','菜品编号5','菜品名称5','upload/caipindingdan_tupian5.jpg,upload/caipindingdan_tupian6.jpg,upload/caipindingdan_tupian7.jpg',5,5,5,'客户账号5','客户姓名5','联系电话5','房间号5','2024-04-23 22:43:11','未支付'),(116,'2024-04-23 14:43:11','6666666666','菜品编号6','菜品名称6','upload/caipindingdan_tupian6.jpg,upload/caipindingdan_tupian7.jpg,upload/caipindingdan_tupian8.jpg',6,6,6,'客户账号6','客户姓名6','联系电话6','房间号6','2024-04-23 22:43:11','未支付'),(117,'2024-04-23 14:43:11','7777777777','菜品编号7','菜品名称7','upload/caipindingdan_tupian7.jpg,upload/caipindingdan_tupian8.jpg,upload/caipindingdan_tupian9.jpg',7,7,7,'客户账号7','客户姓名7','联系电话7','房间号7','2024-04-23 22:43:11','未支付'),(118,'2024-04-23 14:43:11','8888888888','菜品编号8','菜品名称8','upload/caipindingdan_tupian8.jpg,upload/caipindingdan_tupian9.jpg,upload/caipindingdan_tupian10.jpg',8,8,8,'客户账号8','客户姓名8','联系电话8','房间号8','2024-04-23 22:43:11','未支付');
/*!40000 ALTER TABLE `caipindingdan` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `caipinfenlei`
--

DROP TABLE IF EXISTS `caipinfenlei`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `caipinfenlei` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `caipinfenlei` varchar(200) DEFAULT NULL COMMENT '菜品分类',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=99 DEFAULT CHARSET=utf8 COMMENT='菜品分类';
/*!40101 SET character_set_client = @saved_cs_client */;

五、效果图

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目录

第一章绪论 2
1.1研究背景及意义 2
1.2系统研究现状 2
1.3系统研究内容 2
第二章关键技术介绍 3
2.1 PHP开发语言 3
2.2 vue框架 4
2.3 MySQL数据库 4
2.4 B/S模式 4
第三章系统需求分析 6
3.1设计目标 6
3.2系统可行性分析 6
3.2.1技术可行性 6
3.2.2经济可行性 6
3.2.3操作可行性 6
3.3系统UML用例分析 7
3.4系统流程分析 8
3.4.1系统的流程图 8
3.4.2用户登录逻辑流程图 9
第四章系统设计 11
4.1系统功能模块设计 11
4.2数据库设计 11
4.2.1数据库概念设计 11
4.2.2 数据库表设计 12
第五章系统实现 20
5.1前台功能实现 20
5.1.1首页页面功能实现 20
5.1.2个人中心页面实现 21
5.2后台模块实现 22
5.2.1管理员功能实现 22
5.2.2作者功能实现 26
第六章系统测试 27
6.1测试目的 27
6.2测试方法 27
6.3系统测试用例 27
6.3.1平台登录模块的测试 27
6.3.2用户中心模块的测试 28
6.3.3用户管理模块的测试 29
结论 30
参考文献 31
致谢 32

七 、源码获取

下方名片联系我即可!!

大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻
精彩专栏推荐订阅:在下方专栏👇🏻
计算机毕业设计精品实战案例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值