mirror of
https://github.com/FreeeBird/hotel.git
synced 2025-11-02 05:24:46 +08:00
入住登记完成
This commit is contained in:
@@ -22,21 +22,33 @@ public class CheckInController {
|
||||
|
||||
/**
|
||||
* 入住登记
|
||||
* @param peo_count
|
||||
* @param peoCount
|
||||
* @param persons
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/in")
|
||||
public int addCheckIn(int orderId, int peo_count, String persons, String ids){
|
||||
public int addCheckIn(int orderId, int peoCount, String persons, String ids){
|
||||
CheckIn checkIn = new CheckIn();
|
||||
checkIn.setOrderId(orderId);
|
||||
checkIn.setPeoCount(peo_count);
|
||||
checkIn.setPeoCount(peoCount);
|
||||
checkIn.setPersons(persons);
|
||||
checkIn.setIds(ids);
|
||||
return checkInService.insert(checkIn);
|
||||
return checkInService.checkIn(checkIn);
|
||||
}
|
||||
|
||||
/**
|
||||
* 退房登记
|
||||
*
|
||||
* @param roomNumber
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/out")
|
||||
public int checkOut(String roomNumber){
|
||||
return checkInService.updateByRoomNumber(roomNumber);
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/delete")
|
||||
public int deleteCheckIn(int checkId){
|
||||
return checkInService.delete(checkId);
|
||||
@@ -50,10 +62,7 @@ public class CheckInController {
|
||||
return checkInService.update(checkIn);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/out")
|
||||
public int checkOut(String roomNumber){
|
||||
return checkInService.updateByRoomNumber(roomNumber);
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/withId")
|
||||
public CheckIn getById(int checkId){
|
||||
|
||||
@@ -159,4 +159,15 @@ public class OrderController {
|
||||
return orderService.selectById(orderId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据姓名、预留手机号查找订单
|
||||
* 主要用于客户入住
|
||||
* @param name
|
||||
* @param phone
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/withNameAndPhone")
|
||||
public Order getByNameAndPhone(String name,String phone){
|
||||
return orderService.selectByNameAndPhone(name,phone);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,8 @@ public class CheckIn {
|
||||
|
||||
private Integer orderId;
|
||||
|
||||
private Integer roomId;
|
||||
|
||||
private String roomNumber;
|
||||
|
||||
private Integer peoCount;
|
||||
@@ -55,6 +57,13 @@ public class CheckIn {
|
||||
this.roomNumber = roomNumber == null ? null : roomNumber.trim();
|
||||
}
|
||||
|
||||
public Integer getRoomId() {
|
||||
return roomId;
|
||||
}
|
||||
|
||||
public void setRoomId(Integer roomId) {
|
||||
this.roomId = roomId;
|
||||
}
|
||||
|
||||
public Integer getPeoCount() {
|
||||
return peoCount;
|
||||
@@ -107,7 +116,8 @@ public class CheckIn {
|
||||
public CheckIn() {
|
||||
}
|
||||
|
||||
public CheckIn(String roomNumber, String roomType, Integer peoCount, String persons, String ids, Date checkInTime) {
|
||||
public CheckIn(Integer roomId,String roomNumber, Integer peoCount, String persons, String ids, Date checkInTime) {
|
||||
this.roomId = roomId;
|
||||
this.roomNumber = roomNumber;
|
||||
this.peoCount = peoCount;
|
||||
this.persons = persons;
|
||||
@@ -130,4 +140,4 @@ public class CheckIn {
|
||||
", updateTime=" + updateTime +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,6 +15,8 @@ public interface CheckInMapper {
|
||||
|
||||
CheckIn selectByPrimaryKey(Integer checkInId);
|
||||
|
||||
CheckIn selectByRoomNumber(String roomNumber);
|
||||
|
||||
int updateByRoomNumber(String roomNumber);
|
||||
|
||||
int updateByPrimaryKeySelective(CheckIn record);
|
||||
@@ -23,4 +25,4 @@ public interface CheckInMapper {
|
||||
|
||||
List<CheckIn> selectAll();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,8 @@ public interface OrderMapper {
|
||||
|
||||
Order selectByPrimaryKey(Integer orderId);
|
||||
|
||||
Order selectByNameAndPhone(Order record);
|
||||
|
||||
int updateByPrimaryKeySelective(Order record);
|
||||
|
||||
int updateByPrimaryKey(Order record);
|
||||
|
||||
@@ -15,6 +15,8 @@ public interface RoomMapper {
|
||||
|
||||
Room selectByPrimaryKey(Integer roomId);
|
||||
|
||||
Room selectByNumber(String roomNumber);
|
||||
|
||||
int updateByPrimaryKeySelective(Room record);
|
||||
|
||||
int updateByPrimaryKey(Room record);
|
||||
|
||||
@@ -8,6 +8,8 @@ public interface CheckInService {
|
||||
|
||||
int insert(CheckIn checkIn);
|
||||
|
||||
int checkIn(CheckIn checkIn);
|
||||
|
||||
int delete(int checkInId);
|
||||
|
||||
int update(CheckIn checkIn);
|
||||
|
||||
@@ -14,6 +14,8 @@ public interface OrderService {
|
||||
|
||||
Order selectById(Integer orderId);
|
||||
|
||||
Order selectByNameAndPhone(String name,String phone);
|
||||
|
||||
int update(Order record);
|
||||
|
||||
int payOrder(int orderId);
|
||||
|
||||
@@ -10,6 +10,7 @@ public interface RoomService {
|
||||
int delete(int roomId);
|
||||
int update(Room room);
|
||||
Room selectById(int roomId);
|
||||
Room selectByNumber(String roomNumber);
|
||||
List<Room> selectByStatus(int roomStatus);
|
||||
List<Room> selectByType(int typeId);
|
||||
List<Room> selectAll();
|
||||
|
||||
@@ -1,11 +1,18 @@
|
||||
package cn.mafangui.hotel.service.impl;
|
||||
|
||||
import cn.mafangui.hotel.entity.CheckIn;
|
||||
import cn.mafangui.hotel.entity.Order;
|
||||
import cn.mafangui.hotel.entity.Room;
|
||||
import cn.mafangui.hotel.entity.RoomType;
|
||||
import cn.mafangui.hotel.enums.OrderStatus;
|
||||
import cn.mafangui.hotel.mapper.CheckInMapper;
|
||||
import cn.mafangui.hotel.service.CheckInService;
|
||||
import cn.mafangui.hotel.service.OrderService;
|
||||
import cn.mafangui.hotel.service.RoomService;
|
||||
import cn.mafangui.hotel.service.RoomTypeService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -13,13 +20,57 @@ import java.util.List;
|
||||
public class CheckInServiceImpl implements CheckInService {
|
||||
@Autowired
|
||||
private CheckInMapper checkInMapper;
|
||||
|
||||
@Autowired
|
||||
private OrderService orderService;
|
||||
@Autowired
|
||||
private RoomTypeService roomTypeService;
|
||||
@Autowired
|
||||
private RoomService roomService;
|
||||
|
||||
@Override
|
||||
public int insert(CheckIn checkIn) {
|
||||
return checkInMapper.insert(checkIn);
|
||||
}
|
||||
|
||||
/**
|
||||
* 入住登记
|
||||
* @param checkIn
|
||||
* 1.获取订单
|
||||
* 2.获取房间类型
|
||||
* 3.获取房间
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int checkIn(CheckIn checkIn) {
|
||||
Order order = orderService.selectById(checkIn.getOrderId());
|
||||
RoomType rt = roomTypeService.selectById(order.getRoomTypeId());
|
||||
Room r=roomService.selectById(roomService.inRoom(order.getRoomTypeId()));
|
||||
if (r == null) return -3;
|
||||
checkIn.setRoomId(r.getRoomId());
|
||||
checkIn.setRoomNumber(r.getRoomNumber());
|
||||
if (roomTypeService.updateRest(rt.getTypeId(),-1) <= 0) return -2;
|
||||
order.setOrderStatus(OrderStatus.CHECK_IN.getCode());
|
||||
if (orderService.update(order) <=0 ) return -1;
|
||||
return checkInMapper.insert(checkIn);
|
||||
}
|
||||
|
||||
/**
|
||||
* 退房登记
|
||||
* 1.获取房间
|
||||
* 2.获取房型
|
||||
* 3.获取checkIn
|
||||
* @param roomNumber
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public int checkOut(String roomNumber) {
|
||||
Room r = roomService.selectByNumber(roomNumber);
|
||||
RoomType ty = roomTypeService.selectById(r.getTypeId());
|
||||
CheckIn checkIn = checkInMapper.selectByPrimaryKey(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int delete(int checkInId) {
|
||||
return checkInMapper.deleteByPrimaryKey(checkInId);
|
||||
@@ -30,10 +81,7 @@ public class CheckInServiceImpl implements CheckInService {
|
||||
return checkInMapper.updateByPrimaryKeySelective(checkIn);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int checkOut(String roomNumber) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int updateByRoomNumber(String roomNumber) {
|
||||
|
||||
@@ -47,6 +47,14 @@ public class OrderServiceImpl implements OrderService {
|
||||
return orderMapper.selectByPrimaryKey(orderId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Order selectByNameAndPhone(String name, String phone) {
|
||||
Order order = new Order();
|
||||
order.setName(name);
|
||||
order.setPhone(phone);
|
||||
return orderMapper.selectByNameAndPhone(order);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int update(Order order) {
|
||||
return orderMapper.updateByPrimaryKeySelective(order);
|
||||
|
||||
@@ -35,6 +35,11 @@ public class RoomServiceImpl implements RoomService {
|
||||
return roomMapper.selectByPrimaryKey(roomId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Room selectByNumber(String roomNumber) {
|
||||
return roomMapper.selectByNumber(roomNumber);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Room> selectByStatus(int roomStatus) {
|
||||
return roomMapper.selectByStatus(roomStatus);
|
||||
@@ -59,12 +64,19 @@ public class RoomServiceImpl implements RoomService {
|
||||
return roomMapper.updateByPrimaryKeySelective(room);
|
||||
}
|
||||
|
||||
/**
|
||||
* 房间入住
|
||||
* @param typeId
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public int inRoom(int typeId) {
|
||||
Room room = roomMapper.randomSelectByTypeAndStatus(typeId,RoomStatus.ORDERED.getCode());
|
||||
if (room == null) return -1;
|
||||
Room room = roomMapper.randomSelectByTypeAndStatus(typeId,RoomStatus.AVAILABLE.getCode());
|
||||
System.out.println(room);
|
||||
room.setRoomStatus(RoomStatus.IN_USE.getCode());
|
||||
return roomMapper.updateByPrimaryKeySelective(room);
|
||||
if (roomMapper.updateByPrimaryKeySelective(room) <= 0)
|
||||
return -1;
|
||||
else return room.getRoomId();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user