测试携程结算代码
This commit is contained in:
parent
d3f80dc45e
commit
c6da4013be
|
@ -9,6 +9,7 @@ import org.springframework.stereotype.Component;
|
|||
|
||||
import static com.chint.infrastructure.constant.BelongSystemConstant.*;
|
||||
import static com.chint.infrastructure.constant.SupplierNameConstant.SUPPLIER_C_TRIP;
|
||||
import static com.chint.infrastructure.constant.SupplierNameConstant.SUPPLIER_L_Y;
|
||||
|
||||
@Component
|
||||
public class OrderRecordFactory {
|
||||
|
@ -16,6 +17,12 @@ public class OrderRecordFactory {
|
|||
@Autowired
|
||||
private UserRepository userRepository;
|
||||
|
||||
@Autowired
|
||||
private CTripOrderRecordExtensionFactory cTripOrderRecordExtensionFactory;
|
||||
|
||||
@Autowired
|
||||
private LyOrderRecordExtensionFactory lyOrderRecordExtensionFactory;
|
||||
|
||||
public OrderRecordBasic buildWithRouteOrder(RouteOrder routeOrder) {
|
||||
routeOrder.reloadStatus();
|
||||
OrderRecordBasic orderRecordBasic = new OrderRecordBasic();
|
||||
|
@ -63,4 +70,12 @@ public class OrderRecordFactory {
|
|||
}
|
||||
return orderRecordBasic;
|
||||
}
|
||||
|
||||
public OrderRecordExtensionFactory extensionFactoryOfSupplierName(String supplierName) {
|
||||
return switch (supplierName) {
|
||||
case SUPPLIER_C_TRIP -> cTripOrderRecordExtensionFactory;
|
||||
case SUPPLIER_L_Y -> lyOrderRecordExtensionFactory;
|
||||
default -> null;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.chint.domain.repository;
|
|||
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -37,14 +38,32 @@ public interface CTripOrderDetailRepository {
|
|||
void saveAllCarRecord(List<CTripCarRecordBase> ctripCarOrderDetailList);
|
||||
|
||||
CTripCarRecordBase findCarByRecordId(Long id);
|
||||
|
||||
void saveAllCTripFlightRecord(List<CTripFlightRecord> cTripFlightRecordList);
|
||||
|
||||
CTripFlightRecord findFlightRecordById(Long id);
|
||||
|
||||
CTripFlightRecord findFlightRecordByRecordId(String recordId);
|
||||
|
||||
void saveAllCTripHotelRecord(List<CTripHotelRecord> cTripHotelRecordList);
|
||||
|
||||
CTripHotelRecord findHotelRecordById(Long id);
|
||||
|
||||
CTripHotelRecord findHotelRecordByRecordId(String recordId);
|
||||
|
||||
void saveAllCTripTrainRecord(List<CTripTrainRecord> cTripTrainRecordList);
|
||||
|
||||
CTripTrainRecord findTrainRecordByRecordId(String recordId);
|
||||
|
||||
void saveAllCTripCarRecord(List<CTripCarRecord> cTripCarRecordList);
|
||||
|
||||
CTripCarRecord findCarRecordByRecordId(String recordId);
|
||||
|
||||
List<CTripHotelRecord> findHotelRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime);
|
||||
|
||||
List<CTripFlightRecord> findFlightRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime);
|
||||
|
||||
List<CTripCarRecord> findCarRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime);
|
||||
|
||||
List<CTripTrainRecord> findTrainRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime);
|
||||
}
|
||||
|
|
|
@ -5,29 +5,41 @@ import com.chint.domain.aggregates.order.order_record.OrderCarRecord;
|
|||
import com.chint.domain.aggregates.order.order_record.OrderFlightRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.OrderHotelRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.OrderTrainRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripCarRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripFlightRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripHotelRecord;
|
||||
import com.chint.domain.factoriy.order_record.CTripOrderRecordExtensionFactory;
|
||||
import com.chint.domain.factoriy.order_record.OrderRecordExtensionFactory;
|
||||
import com.chint.domain.factoriy.order_record.OrderRecordFactory;
|
||||
import com.chint.domain.repository.CTripOrderDetailRepository;
|
||||
import com.chint.domain.service.OrderDetailDomainService;
|
||||
import com.chint.infrastructure.repository.jdbc.JdbcCtripHotelOrderDetailRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
import static com.chint.infrastructure.constant.SupplierNameConstant.SUPPLIER_C_TRIP;
|
||||
|
||||
@Component
|
||||
public class CTripOrderRecordDomainService implements OrderRecordDomainService{
|
||||
public class CTripOrderRecordDomainService implements OrderRecordDomainService {
|
||||
|
||||
|
||||
@Autowired
|
||||
private CTripOrderRecordExtensionFactory cTripOrderRecordExtensionFactory;
|
||||
@Autowired
|
||||
private OrderDetailDomainService orderDetailDomainService;
|
||||
@Autowired
|
||||
private CTripOrderDetailRepository cTripOrderDetailRepository;
|
||||
@Autowired
|
||||
private OrderRecordFactory orderRecordFactory;
|
||||
|
||||
|
||||
@Override
|
||||
public List<OrderHotelRecord> generateHotelRecord(OrderRecordGenerateCommand command) {
|
||||
|
||||
return null;
|
||||
List<CTripHotelRecord> records = cTripOrderDetailRepository.findHotelRecordByCreateTime(command.getStartTime(), command.getEndTime());
|
||||
OrderRecordExtensionFactory orderRecordExtensionFactory = orderRecordFactory.extensionFactoryOfSupplierName(SUPPLIER_C_TRIP);
|
||||
List<OrderHotelRecord> list = records.stream().map(orderRecordExtensionFactory::createHotelOrderRecord).toList();
|
||||
return orderDetailDomainService.saveHotelOrderRecordBatch(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -38,13 +50,17 @@ public class CTripOrderRecordDomainService implements OrderRecordDomainService{
|
|||
|
||||
@Override
|
||||
public List<OrderFlightRecord> generateFlightRecord(OrderRecordGenerateCommand command) {
|
||||
|
||||
return null;
|
||||
List<CTripFlightRecord> records = cTripOrderDetailRepository.findFlightRecordByCreateTime(command.getStartTime(), command.getEndTime());
|
||||
OrderRecordExtensionFactory orderRecordExtensionFactory = orderRecordFactory.extensionFactoryOfSupplierName(SUPPLIER_C_TRIP);
|
||||
List<OrderFlightRecord> list = records.stream().map(orderRecordExtensionFactory::createFlightOrderRecord).toList();
|
||||
return orderDetailDomainService.saveFlightOrderRecordBatch(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OrderCarRecord> generateCarRecord(OrderRecordGenerateCommand command) {
|
||||
|
||||
return null;
|
||||
List<CTripCarRecord> records = cTripOrderDetailRepository.findCarRecordByCreateTime(command.getStartTime(), command.getEndTime());
|
||||
OrderRecordExtensionFactory orderRecordExtensionFactory = orderRecordFactory.extensionFactoryOfSupplierName(SUPPLIER_C_TRIP);
|
||||
List<OrderCarRecord> list = records.stream().map(orderRecordExtensionFactory::createCarOrderRecord).toList();
|
||||
return orderDetailDomainService.saveCarOrderRecordBatch(list);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ import com.chint.infrastructure.repository.jdbc.*;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -163,11 +164,25 @@ public class CTripOrderDetailImpl implements CTripOrderDetailRepository {
|
|||
public CTripCarRecord findCarRecordByRecordId(String recordId) {
|
||||
return jdbcCTripCarRecordRepository.findByRecordId(recordId);
|
||||
}
|
||||
//
|
||||
// @Override
|
||||
// public Client findByClientId(String clientId){
|
||||
// return jdbcClientRepository.findByClientId(clientId);
|
||||
// }
|
||||
|
||||
@Override
|
||||
public List<CTripHotelRecord> findHotelRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime) {
|
||||
return jdbcCTripHotelRecordRepository.findByCreateTimeBetween(startTime, endTime);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CTripFlightRecord> findFlightRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime) {
|
||||
return jdbcCTripFlightRecordRepository.findByCreateTimeBetween(startTime, endTime);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CTripCarRecord> findCarRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime) {
|
||||
return jdbcCTripCarRecordRepository.findByCreateTimeBetween(startTime, endTime);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CTripTrainRecord> findTrainRecordByCreateTime(LocalDateTime startTime, LocalDateTime endTime) {
|
||||
return jdbcCTripTrainRecordRepository.findByCreateTimeBetween(startTime, endTime);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -3,10 +3,16 @@ package com.chint.infrastructure.repository.jdbc;
|
|||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripCarRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripCarRecordBase;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripFlightRecordBase;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripHotelRecord;
|
||||
import org.springframework.data.repository.CrudRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface JdbcCTripCarRecordRepository extends CrudRepository<CTripCarRecord,Long> {
|
||||
CTripCarRecord findByRecordId(String recordId);
|
||||
|
||||
List<CTripCarRecord> findByCreateTimeBetween(LocalDateTime createTime, LocalDateTime createTime2);
|
||||
}
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
package com.chint.infrastructure.repository.jdbc;
|
||||
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripFlightRecord;
|
||||
import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripHotelRecord;
|
||||
import org.springframework.data.repository.CrudRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface JdbcCTripFlightRecordRepository extends CrudRepository<CTripFlightRecord,Long> {
|
||||
|
||||
CTripFlightRecord findByRecordId(String recordId);
|
||||
List<CTripFlightRecord> findByCreateTimeBetween(LocalDateTime createTime, LocalDateTime createTime2);
|
||||
}
|
||||
|
|
|
@ -5,7 +5,12 @@ import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripHo
|
|||
import org.springframework.data.repository.CrudRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface JdbcCTripHotelRecordRepository extends CrudRepository<CTripHotelRecord,Long> {
|
||||
CTripHotelRecord findByRecordId(String recordId);
|
||||
|
||||
List<CTripHotelRecord> findByCreateTimeBetween(LocalDateTime createTime, LocalDateTime createTime2);
|
||||
}
|
||||
|
|
|
@ -5,7 +5,12 @@ import com.chint.domain.aggregates.order.order_record.ctrip_order_record.CTripTr
|
|||
import org.springframework.data.repository.CrudRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface JdbcCTripTrainRecordRepository extends CrudRepository<CTripTrainRecord,Long> {
|
||||
CTripTrainRecord findByRecordId(String recordId);
|
||||
|
||||
List<CTripTrainRecord> findByCreateTimeBetween(LocalDateTime createTime, LocalDateTime createTime2);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue