用户查看车辆列表优化

This commit is contained in:
attiya 2025-04-25 15:05:30 +08:00
parent cd27de6977
commit c5fbb67c93

View File

@ -12,7 +12,6 @@ import com.cdzy.orders.enums.OrderType;
import com.cdzy.orders.mapper.UserOrdersMapper;
import com.cdzy.orders.model.dto.req.ReqBikeDto;
import com.cdzy.orders.model.dto.req.ReqOrderDto;
import com.ebike.feign.model.res.ResFeignOrderPaymentDto;
import com.cdzy.orders.model.dto.res.RedisPoint;
import com.cdzy.orders.model.dto.res.RspBikeDto;
import com.cdzy.orders.model.entity.EbikeUserOrders;
@ -23,6 +22,7 @@ import com.cdzy.orders.uitls.TimeUtils;
import com.ebike.feign.clients.MaintenanceFeignClient;
import com.ebike.feign.clients.OperateFeignClient;
import com.ebike.feign.model.res.ResFeignEbikeSysRcostsetDto;
import com.ebike.feign.model.res.ResFeignOrderPaymentDto;
import com.ebike.feign.model.rsp.FeignEbikeBikeInfoDto;
import com.ebike.feign.model.rsp.FeignEbikeEcuInfo;
import com.ebike.feign.model.rsp.FeignEbikeRegionDto;
@ -35,7 +35,6 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.CompletableFuture;
import static com.cdzy.orders.enums.TimeDivisionCharging.TIME_SLOT;
@ -199,16 +198,11 @@ public class UserOrdersServiceImpl extends ServiceImpl<UserOrdersMapper, EbikeUs
List<RedisPoint> nearbyMembers = redisUtil.findNearbyMembers(bikeDto.getLongitude(), bikeDto.getLatitude(), bikeDto.getRadius() == null ? 3.0 : bikeDto.getRadius());
List<String> list = nearbyMembers.stream().map(RedisPoint::getMember).toList();
List<Object> objects = redisUtil.multiGet(list);
return nearbyMembers.stream().filter(Objects::nonNull).map(redisPoint -> {
for (Object object : objects) {
String jsonString = JSONObject.toJSONString(object);
ResGPSDto resGpsDto = JSONObject.parseObject(jsonString, ResGPSDto.class);
if (resGpsDto.getEcuSn().equals(redisPoint.getMember())){
return new RspBikeDto(redisPoint.getMember(), resGpsDto.getSoc(), redisPoint.getPoint().getX(), redisPoint.getPoint().getY());
}
}
return null;
}).filter(Objects::nonNull).toList();
return objects.stream().map(object -> {
String jsonString = JSONObject.toJSONString(object);
ResGPSDto resGpsDto = JSONObject.parseObject(jsonString, ResGPSDto.class);
return new RspBikeDto(resGpsDto.getEcuSn(), resGpsDto.getSoc(), resGpsDto.getLongitude(), resGpsDto.getLatitude());
}).toList();
}
@Override