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

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

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