|
|
@@ -2,12 +2,15 @@ package org.dromara.backstage.business.self;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
+import org.dromara.backstage.business.lock.LockBusiness;
|
|
|
import org.dromara.backstage.cardCenter.domain.bo.PtCardBo;
|
|
|
import org.dromara.backstage.cardCenter.service.IPtCardService;
|
|
|
+import org.dromara.backstage.domain.bo.lock.RoomCardBo;
|
|
|
import org.dromara.backstage.domain.bo.yc.YcTraineeBo;
|
|
|
import org.dromara.backstage.domain.convert.YcVoConvert;
|
|
|
import org.dromara.backstage.domain.vo.card.PtCardVo;
|
|
|
@@ -20,8 +23,10 @@ import org.dromara.backstage.payment.domain.vo.PtBagVo;
|
|
|
import org.dromara.backstage.payment.service.IPtBagService;
|
|
|
import org.dromara.backstage.payment.service.IPtUserAccountService;
|
|
|
import org.dromara.common.core.constant.CacheNames;
|
|
|
+import org.dromara.common.core.constant.HotelBusinessConstants;
|
|
|
import org.dromara.common.core.domain.R;
|
|
|
import org.dromara.common.core.domain.model.ErrorInfo;
|
|
|
+import org.dromara.common.core.enums.RoomCardTypeEnum;
|
|
|
import org.dromara.common.redis.utils.RedisUtils;
|
|
|
import org.dromara.hotel.api.domain.bo.RemoteOrderBo;
|
|
|
import org.dromara.hotel.api.domain.bo.RemoteTeamBo;
|
|
|
@@ -64,6 +69,7 @@ public class TraineeBusiness {
|
|
|
private final IPtUserAccountService userAccountService;
|
|
|
private final IPtCardService cardService;
|
|
|
private final IPtBagService bagService;
|
|
|
+ private final LockBusiness lockBusiness;
|
|
|
|
|
|
/**
|
|
|
* 获取报到学员信息
|
|
|
@@ -109,7 +115,6 @@ public class TraineeBusiness {
|
|
|
* @param traineeVo 报到后信息
|
|
|
* @return 报到结果
|
|
|
*/
|
|
|
-
|
|
|
public R<ErrorInfo> registerTrainee(YcTraineeBo bo, YcTraineeVo traineeVo) {
|
|
|
// 学员基本信息
|
|
|
PtUserAccountBo accountBo = new PtUserAccountBo().setUserId(Long.valueOf(bo.getUserId()));
|
|
|
@@ -130,8 +135,6 @@ public class TraineeBusiness {
|
|
|
roomCode = bo.getRoomCode();
|
|
|
}
|
|
|
if (ObjectUtil.isNotEmpty(roomCode)) {
|
|
|
- // TODO 2024-11-17 luoyibo 获取房卡信息
|
|
|
-
|
|
|
// 办理住宿
|
|
|
RemoteOrderVo kfOrderVo = checkInTeamByBo(bo);
|
|
|
ycTraineeVo.setGuesterId(kfOrderVo.getGuestId().toString());
|
|
|
@@ -139,6 +142,10 @@ public class TraineeBusiness {
|
|
|
ycTraineeVo.setRoomId(kfOrderVo.getRoomId());
|
|
|
ycTraineeVo.setGuestRoomId(kfOrderVo.getRoomId());
|
|
|
ycTraineeVo.setOrderIndex(ObjectUtil.isNotEmpty(kfOrderVo.getOrderIndex()) ? kfOrderVo.getOrderIndex() : 0);
|
|
|
+
|
|
|
+ // TODO 2024-11-17 luoyibo 获取房卡信息
|
|
|
+ String cardData = getRoomCardData(kfOrderVo);
|
|
|
+ ycTraineeVo.setRoomCardData(cardData);
|
|
|
}
|
|
|
|
|
|
// 培训班级信息
|
|
|
@@ -273,9 +280,26 @@ public class TraineeBusiness {
|
|
|
remoteBo.setRoomCode(bo.getRoomCode());
|
|
|
remoteBo.setStartTime(bo.getCheckInDate());
|
|
|
remoteBo.setEndTime(bo.getCheckoutDate());
|
|
|
- remoteBo.setOrderStatus("1");
|
|
|
+ remoteBo.setOrderStatus(HotelBusinessConstants.ORDER_STATUS_RZ);
|
|
|
remoteBo.setUpdatedBy(Long.valueOf(bo.getUserId()));
|
|
|
|
|
|
return kfOrderService.checkInTeamByBo(remoteBo);
|
|
|
}
|
|
|
+
|
|
|
+ private String getRoomCardData(RemoteOrderVo orderVo) {
|
|
|
+ RoomCardBo roomCardBo = new RoomCardBo();
|
|
|
+ roomCardBo.setStartTime(DateUtil.toLocalDateTime(orderVo.getCheckinDate()));
|
|
|
+ roomCardBo.setEndTime(DateUtil.toLocalDateTime(orderVo.getCheckoutDate()));
|
|
|
+ roomCardBo.setCardType(RoomCardTypeEnum.GUEST.code());
|
|
|
+ roomCardBo.setRealName(orderVo.getName());
|
|
|
+ roomCardBo.setPhone(orderVo.getPhone());
|
|
|
+ roomCardBo.setRoomCode(orderVo.getRoomCode());
|
|
|
+ roomCardBo.setLockId(orderVo.getLockId());
|
|
|
+ R<String> result= lockBusiness.getWriteCardData(roomCardBo);
|
|
|
+ if(R.isSuccess(result)){
|
|
|
+ return result.getData();
|
|
|
+ } else{
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|