开放携程火车差旅申请单同步逻辑

This commit is contained in:
lulz1 2024-04-11 15:44:01 +08:00
parent 1ce0b7a4d7
commit 13b248c9a3
3 changed files with 14 additions and 5 deletions

View File

@ -11,6 +11,8 @@ import com.chint.interfaces.rest.ctrip.dto.search.flight.*;
import com.chint.interfaces.rest.ctrip.dto.search.hotel.ClientInfo; import com.chint.interfaces.rest.ctrip.dto.search.hotel.ClientInfo;
import com.chint.interfaces.rest.ctrip.dto.search.hotel.HotelOrderInfoEntity; import com.chint.interfaces.rest.ctrip.dto.search.hotel.HotelOrderInfoEntity;
import com.chint.interfaces.rest.ctrip.dto.search.hotel.PaymentReceived; import com.chint.interfaces.rest.ctrip.dto.search.hotel.PaymentReceived;
import com.chint.interfaces.rest.ctrip.dto.search.train.TrainBasicInfo;
import com.chint.interfaces.rest.ctrip.dto.search.train.TrainOrderInfoEntity;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -64,9 +66,7 @@ public class CTripOrderExtensionFactoryImpl implements OrderExtensionFactory {
.filter(it -> it.getOrderNo().equals(orderNo)) .filter(it -> it.getOrderNo().equals(orderNo))
.findFirst() .findFirst()
.orElseThrow(() -> new NotFoundException(NOT_FOUND)); .orElseThrow(() -> new NotFoundException(NOT_FOUND));
CarOrderDetail carOrderDetail = orderDetailFactory.buildCarWithRouteOrderAndOrderDetail(routeOrder, orderDetail); CarOrderDetail carOrderDetail = orderDetailFactory.buildCarWithRouteOrderAndOrderDetail(routeOrder, orderDetail);
//这里要更新用车的状态 //这里要更新用车的状态
OrderEvent lastEvent = orderDetail.getLastEvent(); OrderEvent lastEvent = orderDetail.getLastEvent();
if (lastEvent != null) { if (lastEvent != null) {
@ -146,13 +146,17 @@ public class CTripOrderExtensionFactoryImpl implements OrderExtensionFactory {
@Override @Override
public TrainOrderDetail createTrainOrderDetail(Object trainOrderDetailData) { public TrainOrderDetail createTrainOrderDetail(Object trainOrderDetailData) {
TrainOrderInfoEntity trainOrderInfoEntity = (TrainOrderInfoEntity) trainOrderDetailData;
TrainBasicInfo basicInfo = trainOrderInfoEntity.getBasicInfo();
// 携程暂无火车 // 携程暂无火车
return null; return null;
} }
@Override @Override
public TrainOrderDetail updateTrainOrderDetailData(TrainOrderDetail flightOrderDetail, Object trainOrderInfo) { public TrainOrderDetail updateTrainOrderDetailData(TrainOrderDetail flightOrderDetail, Object trainOrderInfo) {
// 携程暂无火车 // 携程暂无火车
return null; return null;
} }

View File

@ -161,9 +161,9 @@ public class LegDomainService {
List<Leg> legItems = routeOrder.getLegItems(); List<Leg> legItems = routeOrder.getLegItems();
legItems = legItems.stream().filter(it -> !it.getLegType().equals(LEG_TYPE_OTHER)).toList(); legItems = legItems.stream().filter(it -> !it.getLegType().equals(LEG_TYPE_OTHER)).toList();
if (supplierName.equals("CTrip")) { // if (supplierName.equals("CTrip")) {
legItems = legItems.stream().filter(it -> !it.getLegType().equals(LEG_TYPE_TRAIN)).toList(); // legItems = legItems.stream().filter(it -> !it.getLegType().equals(LEG_TYPE_TRAIN)).toList();
} // }
List<Long> alreadySyncLegs = routeOrder.getRouteRequestList() List<Long> alreadySyncLegs = routeOrder.getRouteRequestList()
.stream() .stream()

View File

@ -79,6 +79,11 @@ public class CTripNoteController {
String productType = cTripStatusNotification.getProductType(); String productType = cTripStatusNotification.getProductType();
if(productType.equals("Train") || productType.equals("OverseaTrain")) {
return Result.Success("暂不接受携程火车数据回推");
}
String orderStatus = cTripStatusNotification.getOrderStatus(); String orderStatus = cTripStatusNotification.getOrderStatus();
String orderId = cTripStatusNotification.getOrderId(); String orderId = cTripStatusNotification.getOrderId();
String putCTripSign = Digest.getPutCTripStatusSign(cTripStatusNotification.getCorpId(), productType, orderStatus, orderId, C_TRIP_REQUEST_SECRET); String putCTripSign = Digest.getPutCTripStatusSign(cTripStatusNotification.getCorpId(), productType, orderStatus, orderId, C_TRIP_REQUEST_SECRET);