|
@@ -205,8 +205,6 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
// 判断课表,临时人员
|
|
// 判断课表,临时人员
|
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
String userId = establishOrderDto.getUserId();
|
|
String userId = establishOrderDto.getUserId();
|
|
|
|
|
|
|
|
String houseId = establishOrderDto.getHouseId();
|
|
String houseId = establishOrderDto.getHouseId();
|
|
@@ -216,6 +214,33 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
return CommonResult.fail("无此房间,请重新查询");
|
|
return CommonResult.fail("无此房间,请重新查询");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// 计算总金额
|
|
|
|
|
+ BigDecimal totalPrice = houseOrderService.getHouseOrderPrice(establishOrderDto.getHouseOrderNumber(), userId, houseId, establishOrderDto.getReserveLiveTime(), establishOrderDto.getReserveLeaveTime(),source);
|
|
|
|
|
+ double v = totalPrice.doubleValue();
|
|
|
|
|
+ Integer roomType = house.getRoomType();
|
|
|
|
|
+// 当金额不是0时,则判断时间是否为当天
|
|
|
|
|
+ if (roomType==1) {
|
|
|
|
|
+
|
|
|
|
|
+ if (v > 0) {
|
|
|
|
|
+// 判断是否到12点了
|
|
|
|
|
+ LocalDateTime now = LocalDateTime.now();
|
|
|
|
|
+ LocalDateTime localDateTime = now.withHour(12).withMinute(0).withSecond(0);
|
|
|
|
|
+ if (now.isBefore(localDateTime)) {
|
|
|
|
|
+ return CommonResult.fail("未到预定时间");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ LocalDateTime start =now.withHour(0).withMinute(0).withSecond(0);
|
|
|
|
|
+ LocalDateTime end = start.plusDays(1);
|
|
|
|
|
+ LocalDateTime end2 = start.plusDays(2);
|
|
|
|
|
+// 预定时间在start和end之前,离店时间在
|
|
|
|
|
+ LocalDateTime time = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
|
|
|
|
|
+ LocalDateTime time2 = LocalDateTime.parse(reserveLeaveTime, dateTimeFormatter1);
|
|
|
|
|
+
|
|
|
|
|
+ if (!(time.isAfter(start)&&time.isBefore(end)&&time2.isAfter(end)&&time2.isBefore(end2))) {
|
|
|
|
|
+ return CommonResult.fail("不支持跨天预定");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
// if (house.getNumber() < Func.parseInt(establishOrderDto.getHouseOrderNumber())) {
|
|
// if (house.getNumber() < Func.parseInt(establishOrderDto.getHouseOrderNumber())) {
|
|
|
// return CommonResult.fail("超出限定房间数量");
|
|
// return CommonResult.fail("超出限定房间数量");
|
|
@@ -238,8 +263,7 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
ids = ids + "," + id;
|
|
ids = ids + "," + id;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-// String reserveLiveTime = establishOrderDto.getReserveLiveTime();
|
|
|
|
|
-// String reserveLeaveTime = establishOrderDto.getReserveLeaveTime();
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
LocalDateTime now = LocalDateTime.now();
|
|
LocalDateTime now = LocalDateTime.now();
|
|
@@ -268,8 +292,8 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
|
|
|
|
|
HouseOrder houseOrder = new HouseOrder();
|
|
HouseOrder houseOrder = new HouseOrder();
|
|
|
|
|
|
|
|
-// 计算总金额
|
|
|
|
|
- BigDecimal totalPrice = houseOrderService.getHouseOrderPrice(establishOrderDto.getHouseOrderNumber(), userId, houseId, establishOrderDto.getReserveLiveTime(), establishOrderDto.getReserveLeaveTime(),source);
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
|
|
|
BigDecimal payPrice = establishOrderDto.getPayPrice();
|
|
BigDecimal payPrice = establishOrderDto.getPayPrice();
|
|
|
// 返回的结果是int类型,-1表示小于,0是等于,1是大于。
|
|
// 返回的结果是int类型,-1表示小于,0是等于,1是大于。
|
|
@@ -303,7 +327,7 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
HouseNumberState houseNumberState = new HouseNumberState();
|
|
HouseNumberState houseNumberState = new HouseNumberState();
|
|
|
houseNumberState.setHouseNumberId(id);
|
|
houseNumberState.setHouseNumberId(id);
|
|
|
houseNumberState.setStatus(3);
|
|
houseNumberState.setStatus(3);
|
|
|
- Integer roomType = house.getRoomType();
|
|
|
|
|
|
|
+// Integer roomType = house.getRoomType();
|
|
|
if (1 == roomType) {
|
|
if (1 == roomType) {
|
|
|
// DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
// DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
// LocalDateTime start = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
|
|
// LocalDateTime start = LocalDateTime.parse(reserveLiveTime, dateTimeFormatter1);
|
|
@@ -343,7 +367,7 @@ public class HouseOrderController implements HouseOrderAPI {
|
|
|
|
|
|
|
|
// 单价 全日房 价格单价=总价/房间数/天数
|
|
// 单价 全日房 价格单价=总价/房间数/天数
|
|
|
// 钟点房 价格单价=总价/房间数
|
|
// 钟点房 价格单价=总价/房间数
|
|
|
- Integer roomType = house.getRoomType();
|
|
|
|
|
|
|
+// Integer roomType = house.getRoomType();
|
|
|
BigDecimal price;
|
|
BigDecimal price;
|
|
|
if (roomType == 1) {
|
|
if (roomType == 1) {
|
|
|
price = payPrice.divide(new BigDecimal(houseOrderNumber), 2, BigDecimal.ROUND_HALF_UP).divide(new BigDecimal(establishOrderDto.getLiveDay()), 2, BigDecimal.ROUND_HALF_UP);
|
|
price = payPrice.divide(new BigDecimal(houseOrderNumber), 2, BigDecimal.ROUND_HALF_UP).divide(new BigDecimal(establishOrderDto.getLiveDay()), 2, BigDecimal.ROUND_HALF_UP);
|