| | |
| | | package com.xiaopeng.operation.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient; |
| | | import com.xiaopeng.api.model.operation.XpTargetedService; |
| | | import com.xiaopeng.api.model.operation.XpTargetedServiceVehicle; |
| | | import com.xiaopeng.api.model.vehicleConvoy.XpVehicle; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.operation.mapper.XpTargetedServiceMapper; |
| | | import com.xiaopeng.operation.mapper.XpTargetedServiceVehicleMapper; |
| | | import com.xiaopeng.operation.service.XpTargetedServiceService; |
| | | import com.xiaopeng.operation.service.XpTargetedServiceVehicleService; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | @Service |
| | | public class XpTargetedServiceVehicleServiceImpl extends ServiceImpl<XpTargetedServiceVehicleMapper, XpTargetedServiceVehicle> implements XpTargetedServiceVehicleService { |
| | | |
| | | @Resource |
| | | private XpVehicleClient xpVehicleClient; |
| | | |
| | | @Resource |
| | | private XpTargetedServiceService xpTargetedServiceService; |
| | | |
| | | |
| | | |
| | | @Override |
| | |
| | | this.remove(wrapper); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public List<String> getVehicleVinByTargetedService(String cityCode) { |
| | | List<XpTargetedService> targetedServices = xpTargetedServiceService.list(new QueryWrapper<XpTargetedService>().eq("status", 1) |
| | | .eq("city_code", cityCode).last(" and (is_long_valid = 1 or now() between start_time and end_time)")); |
| | | List<Long> collect = targetedServices.stream().map(XpTargetedService::getId).collect(Collectors.toList()); |
| | | if(collect.isEmpty()){ |
| | | return Collections.emptyList(); |
| | | } |
| | | List<XpTargetedServiceVehicle> list = this.list(new QueryWrapper<XpTargetedServiceVehicle>().in("targeted_service_id", collect)); |
| | | List<String> vinList = list.stream().map(item -> { |
| | | XpVehicle xpVehicle = xpVehicleClient.queryById(item.getVehicleId()).getData(); |
| | | return xpVehicle.getVehicleVin(); |
| | | }).collect(Collectors.toList()); |
| | | return vinList; |
| | | } |
| | | } |
| | | |
| | | |