酒店管理系统可视化开发实战

系统截图预览

对应系统的登录入口: 酒店管理系统

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

简介

一个简单的酒店管理系统,其中包括会员管理、房间类型管理、房间管理、预约订单管理、订单管理等功能
后端使用 springboot + mybatis-plus + mysql 自动生成 + 手写, 前端使用 light2f 在线开发工具生成的 react18 + antd5 单页项目

下面是接口文档,然后通过在线可视化开发工具 Light2f 结合这些接口文档,耗时一个小时开发的完整系统,首页有完整全程开发的视频

小伙伴也可以使用下面的接口来手动开发练手,也可以来尝试使用可视化方式开来发,看一看是否能够更快速便捷

当然,从在实践中感受到还是有许多地方还有很大的便捷改进空间,如多个远程下拉组件应该做一次就好等

接口调用说明

为了方便,字段名就随意定义,接口都使用 post 请求方式, 以及任意域都可以访问(任何人都可以直接访问,可以用于前端项目练习接口)
登录接口不需要校验 token,调用成功会返回正确的 token,其它接口会校验请求的 header 中是否有正确的 token 信息

接口 base 路径:

https://test.light2f.com/test/

接口返回的数据结构:

{
    code: 0, //非零表示有问题
    data: {}, //接口数据
    message: "", //消息
}

注意 每个分页查询都有固定分页参数,后续不再在每个查询条件中一一枚举

pageNo: number, //页数
pageSize: number //每页大小

注意 每个分页查询返回的数据结构中的 data 也是相同如下:

{
    current: number, //当前页数
    size: number, //每页大小
    total: number,//查询的总数
    records: any[], //查询出来的数据,后续分页查询出的数据只解释此单个对象
}

接口说明

下面是各个接口的路径、入参、返回数据的详情

登录
//路径
user/login 
//request params:  
{
    userAccount: 'admin', //帐号,固定 admin
    userPassword: '123456' //密码,固定 123456
} 
//数据结构中的 data
{
    token: '...', //令牌
    user: {} //个人信息
}
会员管理
  1. 添加或更新
//路径
HotelVip/insertOrUpdate 
//request params:  
{
    vipId?: number, //主键,有为更新
    vipName: string, //名称 
    vipPhone: string //手机,有唯一验证
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 删除
//路径
HotelVip/delete 
//request params:  
{
    vipId: number, //主键,可以按主键删除,也可以按其它条件
    vipName?: string, //名称 
    vipPhone?: string //手机
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 查询
//路径
HotelVip/search 
//request params:  
{
    vipName?: string, //名称 
    vipPhone?: string //手机 
} 
//records 对象结构
{
    vipId: number, //主键,可以按主键删除,也可以按其它条件
    vipName: string, //名称 
    vipPhone: string //手机
    createdAt: number //创建日期时间戳
} 
房间类型管理
  1. 添加或更新
//路径
HotelRoomType/insertOrUpdate 
//request params:  
{
    typeId?: number, //主键,有为更新
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number //容纳人数
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 删除
//路径
HotelRoomType/delete 
//request params:  
{
    typeId: number, //主键,可以按主键删除,也可以按其它条件
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number //容纳人数
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 查询
//路径
HotelRoomType/search 
//request params:  
{
    typeName?: string, //名称  
} 
//records 对象结构
{
    typeId: number, //主键
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number, //容纳人数
    createdAt: number //创建日期时间戳
} 
房间管理
  1. 添加或更新
//路径
HotelRoom/insertOrUpdate 
//request params:  
{
    roomId?: number, //主键,有为更新
    roomNo: string, //房号,有唯一验证
    typeId: number, //房间类型主键 
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 删除
//路径
HotelRoom/delete 
//request params:  
{
    roomId: number, //主键,可以按主键删除,也可以按其它条件
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 查询
//路径
HotelRoom/search 
//request params:  
{
    roomNo?: string, //房号  
    typeId?: number //房房间类型表主鍵
} 
//records 对象结构
{
    roomId: number, //主键
    roomNo: string, //房号
    roomStatus: string, //房间状态,empty:空闲, ing: 正在使用(已入住)
    createdAt: number, //创建日期时间戳
    //房间类型表
    typeId: number, //主键
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number //容纳人数 
} 
  1. 选择房间类型的选项

调用 房间类型管理 - 查询,参数:

{
    pageNo:1
    pageSize: 9999
}
预约订单管理
  1. 添加或更新
//路径
HotelPrebook/insertOrUpdate 
//request params:  
{
    prebookId?: number, //主键,有为更新
    vipId: number, //会员主键
    typeId: number, //房间类型主键 
    prebookStartedAt: date, //开始入住日期
    prebookEndedAt: date //结束日期
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 删除
//路径
HotelPrebook/delete 
//request params:  
{
    prebookId: number, //主键,可以按主键删除,也可以按其它条件
    vipId: number, //会员主键
    typeId: number, //房间类型主键 
    prebookStartedAt: date, //开始入住日期
    prebookEndedAt: date //结束日期
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 查询
//路径
HotelPrebook/search 
//request params:  
{
    vipName?: string, //会员名
    vipPhone?: string, //会员手机号  
} 
//records 对象结构
{
    prebookId: number, //主键
    prebookStartedAt: date, //开始入住日期
    prebookEndedAt: date, //结束日期
    prebookDayCount: number, //入住天数
    prebookPrice: number //总价
    prebookStatus: string //预定状态,book: 已预定, finish: 已转订单, cancel: 已取消
    createdAt: number, //创建日期时间戳
    //会员表
    vipId: number,
    vipName: string, //会员名
    vipPhone: string, //会员手机号  
    //房间类型表
    typeId: number, //主键
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number //容纳人数 
} 
  1. 取消预约
//路径
HotelPrebook/cancel 
//request params:  
{
    prebookId: number //主键
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 转为订单
//路径
HotelPrebook/toOrder 
//request params:  
{
    prebookId: number, //主键
    prebookStartedAt: date, //开始入住日期
    prebookEndedAt: date, //结束日期
    prebookDayCount: number, //入住天数
    prebookPrice: number //总价
    prebookStatus: string //预定状态
    createdAt: number, //创建日期时间戳
    //会员表
    vipId: number,
    vipName: string, //会员名
    vipPhone: string, //会员手机号  
    //房间类型表
    typeId: number, //主键
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number //容纳人数 
    //房间信息
    roomId: number
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 转为订单选择房间的列表

调用 房间管理 - 查询,参数:

{
    roomNo?: string, //房间号
    typeId: number, //房间类型主键
    roomStatus: 'empty', //固定值,空房
}
  1. 选择会员的选项

调用 会员管理 - 查询,参数:

{
    pageNo:1
    pageSize: 9999
}
  1. 选择房间类型的选项

调用 房间类型管理 - 查询,参数:

{
    pageNo:1
    pageSize: 9999
}
订单管理
  1. 添加或更新
//路径
HotelOrder/insertOrUpdate 
//request params:  
{
    orderId?: number, //主键,有为更新
    vipId: number, //会员主键
    typeId: number, //房间类型主键 
    roomId: number, //房间主键
    orderStartedAt: date, //开始日期
    orderEndedAt: date //结束日期
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 删除
//路径
HotelOrder/delete 
//request params:  
{
    orderId: number, //主键,可以按主键删除,也可以按其它条件
    vipId: number, //会员主键
    typeId: number, //房间类型主键 
    roomId: number, //房间主键
    orderStartedAt: date, //开始日期
    orderEndedAt: date //结束日期
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 查询
//路径
HotelOrder/search 
//request params:  
{
    vipName?: string, //会员名
    vipPhone?: string, //会员手机号  
} 
//records 对象结构
{
    orderId: number, //主键
    orderStartedAt: date, //开始日期
    orderEndedAt: date, //结束日期
    orderDayCount: number, //入住天数
    orderPrice: number //总价
    orderStatus: string //订单状态, ing: 进行中, finish: 已完成
    createdAt: number, //创建日期时间戳
    //会员表
    vipId: number,
    vipName: string, //会员名
    vipPhone: string, //会员手机号  
    //房间类型表
    typeId: number, //主键
    typeName: string, //名称 
    typePrice: number, //单价
    typeArea: number, //面积
    typeUserCount: number //容纳人数 
    //房间表
    roomId: number //主键
    roomNo: string //房间号
} 
  1. 退房
//路径
HotelOrder/checkOut 
//request params:  
{
    orderId: string, //主键 
} 
//数据结构中的 data
data: boolean //成功或失败
  1. 选择会员的选项

调用 会员管理 - 查询,参数:

{
    pageNo:1
    pageSize: 9999
}
  1. 选择房间类型的选项

调用 房间类型管理 - 查询,参数:

{
    pageNo:1
    pageSize: 9999
}
  1. 选择房间的选项

调用 房间管理 - 查询,参数:

{
    typeId: number, //选择的房间类型主键
    orderId?: number, //订单主键,有的话,编辑时候会将当前订单使用的房间也查出来
    pageNo:1
    pageSize: 9999
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值