Procházet zdrojové kódy

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java
zhangcl před 1 týdnem
rodič
revize
c6850bea31

+ 13 - 13
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java

@@ -340,20 +340,20 @@ public class DateUtils {
         return timestamp;
     }
 
-    public static boolean checkIfFullDayDifference(String timeStr) {
-        DateTimeFormatter formatter = new DateTimeFormatterBuilder()
-                .appendPattern("yyyy-MM-dd HH:mm:ss")
-                .optionalStart()
-                .appendLiteral('.')
-                .appendFraction(ChronoField.MILLI_OF_SECOND, 1, 3, false)
-                .optionalEnd()
-                .toFormatter();
-        LocalDateTime givenTime = LocalDateTime.parse(timeStr, formatter);
-        LocalDateTime now = LocalDateTime.now();
+        public static boolean checkIfFullDayDifference(String timeStr) {
+            DateTimeFormatter formatter = new DateTimeFormatterBuilder()
+                    .appendPattern("yyyy-MM-dd HH:mm:ss")
+                    .optionalStart()
+                    .appendLiteral('.')
+                    .appendFraction(ChronoField.MILLI_OF_SECOND, 1, 3, false)
+                    .optionalEnd()
+                    .toFormatter();
+            LocalDateTime givenTime = LocalDateTime.parse(timeStr, formatter);
+            LocalDateTime now = LocalDateTime.now();
 
-        long minutesDifference = ChronoUnit.MINUTES.between(givenTime, now);
-        return Math.abs(minutesDifference) >= 5;
-    }
+            long minutesDifference = ChronoUnit.MINUTES.between(givenTime, now);
+            return Math.abs(minutesDifference) >= 5;
+        }
 
         public static LocalDateTime contactTime(LocalDateTime targetTime ) {
             LocalDateTime now = LocalDateTime.now();

+ 11 - 7
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/job/TdCronJob.java

@@ -30,8 +30,8 @@ public class TdCronJob implements JobHandler {
     private IotDeviceMapper iotDeviceMapper;
     @Autowired
     private TDDeviceMapper deviceMapper;
-    @Autowired
-    private StringRedisTemplate redisTemplate;
+    @Resource
+    private StringRedisTemplate stringRedisTemplate;
 
     @Override
     @TenantIgnore
@@ -48,11 +48,14 @@ public class TdCronJob implements JobHandler {
         List<String> allTableNames = deviceMapper.getAllTableNames();
         for (IotDeviceDO device : devices) {
             String deviceCode = device.getDeviceCode();
+            if ("YF6660388".equals(deviceCode)) {
+                System.out.println("************************");
+            }
             allDevice.stream().filter(e -> e.getSerialNumber().equals(deviceCode)).findFirst().ifPresent(e -> {
                 device.setYfDeviceId(e.getDeviceId());
 //                Integer i = deviceMapper.tableIfExist(e.getSerialNumber().toLowerCase());
                 if (allTableNames.contains("device_"+e.getSerialNumber().toLowerCase())) {//如果存在表
-                    Map<Object, Object> hashAll = redisTemplate.opsForHash().entries("TSLV:"+e.getProductId()+"_"+e.getSerialNumber());
+                    Map<Object, Object> hashAll = stringRedisTemplate.opsForHash().entries("TSLV:"+e.getProductId()+"_"+e.getSerialNumber());
 
                     Map<String, String> result = new HashMap<>();
                     String timestamp = "";
@@ -114,17 +117,17 @@ public class TdCronJob implements JobHandler {
                         device.setIfInline(4);
                     }
 
-                    Object lat = redisTemplate.opsForHash().get("TSLV:" + device.getDeviceCode(), "lat");
+                    Object lat = stringRedisTemplate.opsForHash().get("TSLV:" + device.getDeviceCode(), "lat");
                     if (Objects.nonNull(lat)) {
                         JSONObject jsonObject = JSON.parseObject(lat.toString());
                         device.setLat(Double.valueOf((String) jsonObject.get("value")));
                     }
-                    Object lng = redisTemplate.opsForHash().get("TSLV:" + device.getDeviceCode(), "lng");
+                    Object lng = stringRedisTemplate.opsForHash().get("TSLV:" + device.getDeviceCode(), "lng");
                     if (Objects.nonNull(lng)) {
                         JSONObject jsonObject = JSON.parseObject(lng.toString());
                         device.setLng(Double.valueOf((String) jsonObject.get("value")));
                     }
-                    Object online = redisTemplate.opsForHash().get("TSLV:" + device.getDeviceCode(), "online");
+                    Object online = stringRedisTemplate.opsForHash().get("TSLV:" + device.getDeviceCode(), "online");
                     if (Objects.nonNull(online)) {
                         JSONObject jsonObject = JSON.parseObject(online.toString());
                         String value = String.valueOf(jsonObject.get("value"));
@@ -151,7 +154,8 @@ public class TdCronJob implements JobHandler {
 
 
     public static void main(String[] args) {
-        String abc = "2026-01-21 10:25:40";
+        System.out.println(new Date().toString());
+        String abc = "2026-09-03 18:48:38.42";
         System.out.println(DateUtils.checkIfFullDayDifference(abc));
     }
 }