提交 11458c96 authored 作者: huyufan's avatar huyufan

增加绑定车辆后redis留存记录用于过滤车辆列表

上级 e81abc99
......@@ -2,12 +2,16 @@ package com.clx.performance.component;
import cn.hutool.core.util.StrUtil;
import com.clx.performance.constant.RedisConstants;
import com.clx.performance.dao.OrderGoodsDriverTruckDao;
import com.clx.performance.model.OrderGoodsDriverTruck;
import com.msl.common.base.Optional;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import java.util.*;
import java.util.stream.Collectors;
@Slf4j
......@@ -17,6 +21,8 @@ public class GoodsOrderTruckRecordComponent {
private final RedisTemplate<String, String> redisTemplate;
private final OrderGoodsDriverTruckDao orderGoodsDriverTruckDao;
public void saveTruckRecord(String orderGoodsNo, List<String> truckList) {
redisTemplate.opsForSet().add(RedisConstants.ORDER_GOODS_TRUCK_RECORD + orderGoodsNo, truckList.toArray(new String[]{}));
......@@ -34,7 +40,8 @@ public class GoodsOrderTruckRecordComponent {
redisTemplate.opsForSet().remove(RedisConstants.ORDER_GOODS_TRUCK_RECORD + orderGoodsNo, truckNo);
}
public Set<String> getTruckList() {
//公开
public Set<String> getPublicTruckList() {
Set<String> orderGoodsList = redisTemplate.opsForSet().members(RedisConstants.ORDER_GOODS_RECORD);
if (orderGoodsList == null || orderGoodsList.isEmpty()) {
return null;
......@@ -42,4 +49,16 @@ public class GoodsOrderTruckRecordComponent {
return redisTemplate.opsForSet().union(orderGoodsList);
}
//定向
public List<String> getPrivateTruckList(String orderGoodsNo, Long userNo) {
Optional<List<OrderGoodsDriverTruck>> optional = orderGoodsDriverTruckDao.selectListByDriverUserNo(userNo);
if (!optional.isPresent()) {
return null;
}
List<String> truckList = optional.get().stream().map(OrderGoodsDriverTruck::getTruckNo).collect(Collectors.toList());
truckList.retainAll(redisTemplate.opsForSet().members(RedisConstants.ORDER_GOODS_TRUCK_RECORD + orderGoodsNo));
return truckList;
}
}
......@@ -13,6 +13,7 @@ import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
......@@ -38,24 +39,14 @@ public class JobTest {
@Autowired
private GoodsOrderTruckRecordComponent recordComponent;
@Test
public void test1() {
List<String> a3 = new LinkedList<>();
a3.add("3");
List<String> a4 = new LinkedList<>();
a4.add("4");
List<String> a1 = new LinkedList<>();
a1.add("1234");
a1.add("5678");
List<String> a2 = new LinkedList<>();
a2.add("22212");
a2.add("2341231");
recordComponent.saveTruckRecord("123",a2);
recordComponent.saveTruckRecord("123",a1);
recordComponent.saveTruckRecord("123",a3);
recordComponent.saveTruckRecord("456", a2);
recordComponent.saveTruckRecord("456", a4);
recordComponent.getTruckList();
List<String> list = new ArrayList<>();
list.add("晋A99999");
recordComponent.saveTruckRecord("123", list);
recordComponent.getPrivateTruckList("123", 1001183036834771013L);
System.out.println();
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论