Przeglądaj źródła

添加查询条件

黄远 5 lat temu
rodzic
commit
eb5951e947

+ 6 - 0
lift-batch-service/src/main/resources/mapper/LiftDataMapper.xml

@@ -32,6 +32,12 @@
             p.region_id = r.id
         where
             pclr.mt_company_id = #{mtCompanyId}
+        <if test = "startTimeDateStr != null and startTimeDateStr != ''">
+            and (
+                pclr.create_date <![CDATA[ >= ]]> #{startTimeDateStr}
+                or
+                pclr.create_date is null)
+        </if>
         <if test = "endTimeDateStr != null and endTimeDateStr != ''">
             and (
                 pclr.create_date <![CDATA[ <= ]]> #{endTimeDateStr}

+ 1 - 2
lift-push-pc/src/main/java/cn/com/ty/lift/push/app/PushConsumer.java

@@ -24,12 +24,11 @@ import java.util.List;
 public class PushConsumer {
 
     private TimeMessageService TimeMessageService;
-    private RedisTemplate redisTemplate;
 
     @JmsListener(destination = WebSocketConstants.PUSH_MESSAGE_TO_PC)
     public void listenPCAllQueue(List<TimeMessage> timeMessageList) {
         log.info("listen {} receive message: {}", WebSocketConstants.PUSH_MESSAGE_TO_PC, timeMessageList);
-        TimeyMessageHandler timeMessageHandler = new TimeyMessageHandler(TimeMessageService, redisTemplate);
+        TimeyMessageHandler timeMessageHandler = new TimeyMessageHandler(TimeMessageService);
         timeMessageHandler.saveAndPushMessageToUsers(timeMessageList);
     }
 }

+ 0 - 110
lift-push-pc/src/main/java/cn/com/ty/lift/push/conf/RedisConfig.java

@@ -1,110 +0,0 @@
-package cn.com.ty.lift.push.conf;
-
-import com.fasterxml.jackson.annotation.JsonAutoDetect;
-import com.fasterxml.jackson.annotation.PropertyAccessor;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
-import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
-import org.springframework.cache.CacheManager;
-import org.springframework.cache.annotation.CachingConfigurerSupport;
-import org.springframework.cache.annotation.EnableCaching;
-import org.springframework.cache.interceptor.KeyGenerator;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.data.redis.cache.RedisCacheConfiguration;
-import org.springframework.data.redis.cache.RedisCacheManager;
-import org.springframework.data.redis.connection.RedisConnectionFactory;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
-import org.springframework.data.redis.serializer.RedisSerializationContext;
-import org.springframework.data.redis.serializer.RedisSerializer;
-import org.springframework.data.redis.serializer.StringRedisSerializer;
-
-import java.lang.reflect.Method;
-import java.time.Duration;
-
-/**
- * @author huangyuan
- * @date 2020/5/29
- * @description
- */
-@Configuration
-@EnableCaching
-public class RedisConfig extends CachingConfigurerSupport {
-    /**
-     * 设置自动key的生成规则,配置spring boot的注解,进行方法级别的缓存
-     */
-    @Bean
-    @Override
-    public KeyGenerator keyGenerator() {
-        return new KeyGenerator() {
-            @Override
-            public Object generate(Object target, Method method, Object... params) {
-                StringBuilder sb = new StringBuilder();
-                sb.append(target.getClass().getName());
-                sb.append(method.getName());
-                for (Object param : params) {
-                    sb.append(param.toString());
-                }
-                return sb.toString();
-            }
-        };
-    }
-
-    /**
-     * 缓存管理
-     */
-    @SuppressWarnings({ "rawtypes", "unchecked" })
-    @Bean
-    public CacheManager cacheManager(RedisConnectionFactory factory) {
-        // 初始化缓存管理器
-        RedisSerializer<String> redisSerializer = new StringRedisSerializer();
-        Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
-
-        //解决查询缓存转换异常的问题
-        ObjectMapper om = new ObjectMapper();
-        om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
-        om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
-        jackson2JsonRedisSerializer.setObjectMapper(om);
-
-        // 配置序列化(解决乱码的问题),过期时间30秒
-        RedisCacheConfiguration config = RedisCacheConfiguration.defaultCacheConfig()
-                .entryTtl(Duration.ofSeconds(30))
-                .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(redisSerializer))
-                .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(jackson2JsonRedisSerializer))
-                .disableCachingNullValues();
-
-        RedisCacheManager cacheManager = RedisCacheManager.builder(factory)
-                .cacheDefaults(config)
-                .build();
-        return cacheManager;
-    }
-
-    @Bean("redisTemplate")
-    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory jedisConnectionFactory) {
-
-        Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(Object.class);
-        ObjectMapper om = new ObjectMapper();
-        om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
-        om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
-        jackson2JsonRedisSerializer.setObjectMapper(om);
-        //解决jackson2无法反序列化LocalDateTime的问题
-        om.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
-        om.registerModule(new JavaTimeModule());
-        // 配置redisTemplate
-        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
-        redisTemplate.setConnectionFactory(jedisConnectionFactory);
-        RedisSerializer<String> stringSerializer = new StringRedisSerializer();
-        // key序列化
-        redisTemplate.setKeySerializer(stringSerializer);
-        // value序列化
-        redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);
-        // Hash key序列化
-        redisTemplate.setHashKeySerializer(stringSerializer);
-        // Hash value序列化
-        redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer);
-        redisTemplate.afterPropertiesSet();
-        return redisTemplate;
-
-    }
-}

+ 1 - 4
lift-push-pc/src/main/java/cn/com/ty/lift/push/websocket/config/WebSocketConfig.java

@@ -27,9 +27,6 @@ public class WebSocketConfig implements WebSocketConfigurer {
     @Resource
     private TimeMessageService timeMessageService;
 
-    @Resource(name = "redisTemplate")
-    private RedisTemplate redisTemplate;
-
     @Bean
     public TaskScheduler taskScheduler() {
         return new ConcurrentTaskScheduler(Executors.newSingleThreadScheduledExecutor());
@@ -37,7 +34,7 @@ public class WebSocketConfig implements WebSocketConfigurer {
 
     @Override
     public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
-        registry.addHandler(new TimeyMessageHandler(timeMessageService, redisTemplate), "/myMessageHandler")
+        registry.addHandler(new TimeyMessageHandler(timeMessageService), "/myMessageHandler")
                 .setAllowedOrigins("*")
                 .addInterceptors(new WebSocketInterceptor());
     }

+ 2 - 2
lift-push-pc/src/main/java/cn/com/ty/lift/push/websocket/config/WebSocketInterceptor.java

@@ -25,8 +25,8 @@ public class WebSocketInterceptor implements HandshakeInterceptor {
             ServletServerHttpRequest serverHttpRequest = (ServletServerHttpRequest) request;
             HttpServletRequest httpServletRequest = serverHttpRequest.getServletRequest();
             //获取token
-            String authorizationToken = httpServletRequest.getParameter(ApiConstants.AUTHORIZATION_TOKEN);
-            map.put(ApiConstants.AUTHORIZATION_TOKEN, authorizationToken);
+            String userId = httpServletRequest.getParameter(ApiConstants.CURRENT_USER_ID);
+            map.put(ApiConstants.CURRENT_USER_ID, userId);
         }
         return true;
     }

+ 6 - 17
lift-push-pc/src/main/java/cn/com/ty/lift/push/websocket/handler/TimeyMessageHandler.java

@@ -5,9 +5,11 @@ import cn.com.ty.lift.common.constants.WebSocketConstants;
 import cn.com.ty.lift.common.model.TimeMessage;
 import cn.com.ty.lift.push.message.service.TimeMessageService;
 import cn.com.ty.lift.push.websocket.model.RealTimeMessage;
+import cn.hutool.extra.spring.SpringUtil;
 import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.web.socket.*;
 
@@ -16,19 +18,15 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-@Slf4j
 public class TimeyMessageHandler implements WebSocketHandler {
 
     private TimeMessageService timeMessageService;
 
-    private RedisTemplate redisTemplate;
-
     public TimeyMessageHandler() {
     }
 
-    public TimeyMessageHandler(TimeMessageService TimeMessageService, RedisTemplate redisTemplate) {
+    public TimeyMessageHandler(TimeMessageService TimeMessageService) {
         this.timeMessageService = TimeMessageService;
-        this.redisTemplate = redisTemplate;
     }
 
     //在线用户列表
@@ -172,18 +170,9 @@ public class TimeyMessageHandler implements WebSocketHandler {
      * @date 2018年9月18日
      */
     private Long getCurrentUser(WebSocketSession session) {
-        String authToken = (String) session.getAttributes().get(ApiConstants.AUTHORIZATION_TOKEN);
-        Object mobileUserInfo = redisTemplate.opsForValue().get(authToken);
-        if (mobileUserInfo != null) {
-            log.error("用户手机信息有为:" + JSONUtil.parseObj(mobileUserInfo));
-            Object userInfo = redisTemplate.opsForValue().get(mobileUserInfo);
-            if (userInfo != null) {
-                Map<String, Object> currentUserInfoMap = JSONUtil.parseObj(userInfo);
-                log.error("用户信息是: " + JSONUtil.toJsonStr(currentUserInfoMap));
-                return (Long) currentUserInfoMap.get(ApiConstants.CURRENT_USER_ID);
-            }
-        } else {
-            log.error("用户手机号信息为空,redis没有联通");
+        String userId = (String) session.getAttributes().get(ApiConstants.CURRENT_USER_ID);
+        if(StringUtils.isNotBlank(userId)) {
+            return Long.parseLong(userId);
         }
         return null;
     }

+ 0 - 13
lift-push-pc/src/main/resources/application-prod.yml

@@ -5,19 +5,6 @@ spring:
     password: Tdkg-13250409
     driver-class-name: com.mysql.cj.jdbc.Driver
 
-  #redis缓存配置
-  redis:
-    database: 0 #数据库索引,默认为0
-    host: r-bp1j7odydtfqtprdvm.redis.rds.aliyuncs.com #(内网地址)服务器地址
-    port: 6379 #端口
-    password: Gdkc-290431 #验证密码
-    jedis:
-      pool:
-        max-active: 8 #最大连接数
-        max-idle: 8 #最大空闲链接
-        max-wait: 20000ms
-        min-idle: 0
-    timeout: 600000s
   # activemq配置
   activemq:
     #ActiveMQ通讯地址