Quellcode durchsuchen

查看证书有效期时间

yjj vor 1 Jahr
Ursprung
Commit
c318c5ae72

+ 7 - 0
src/main/java/com/example/demo/demos/web/service/EcsInfoService.java

@@ -3,5 +3,12 @@ package com.example.demo.demos.web.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.example.demo.demos.web.domain.EcsInfo;
 import com.example.demo.demos.web.domain.EcsInfo;
 
 
+import java.util.List;
+
 public interface EcsInfoService extends IService<EcsInfo> {
 public interface EcsInfoService extends IService<EcsInfo> {
+    /**
+     * 获取快过期的ssl证书
+     * @return
+     */
+    List<EcsInfo> getInfos();
 }
 }

+ 30 - 0
src/main/java/com/example/demo/demos/web/service/impl/EcsInfoServiceImpl.java

@@ -1,12 +1,42 @@
 package com.example.demo.demos.web.service.impl;
 package com.example.demo.demos.web.service.impl;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.example.demo.demos.web.mapper.EcsInfoMapper;
 import com.example.demo.demos.web.mapper.EcsInfoMapper;
 import com.example.demo.demos.web.service.EcsInfoService;
 import com.example.demo.demos.web.service.EcsInfoService;
 import com.example.demo.demos.web.domain.EcsInfo;
 import com.example.demo.demos.web.domain.EcsInfo;
+import com.example.demo.demos.web.util.DateUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.ArrayList;
+import java.util.List;
+
 @Service
 @Service
 public class EcsInfoServiceImpl extends ServiceImpl<EcsInfoMapper, EcsInfo> implements EcsInfoService {
 public class EcsInfoServiceImpl extends ServiceImpl<EcsInfoMapper, EcsInfo> implements EcsInfoService {
 
 
+    @Autowired
+    private EcsInfoMapper mapper;
+
+    @Override
+    public List<EcsInfo> getInfos() {
+        LambdaQueryWrapper<EcsInfo> wrapper = Wrappers.lambdaQuery();
+        List<EcsInfo> ecsInfos = mapper.selectList(wrapper);
+
+        List<EcsInfo> list = new ArrayList<>();
+        ecsInfos.forEach(ecsInfo -> {
+            String endOfExpiration = DateUtil.parseDateToStr(DateUtil.YYYY_MM_DD, ecsInfo.getNotAfter());
+            String nowDateStr = DateUtil.parseDateToStr(DateUtil.YYYY_MM_DD, DateUtil.getNowDate());
+
+            Long[] longs = DateUtil.computeDate(nowDateStr, endOfExpiration);
+            Long month = longs[0];
+            Long day = longs[1];
+            if (month == 0 && day < 20) {
+                list.add(ecsInfo);
+            }
+        });
+
+        return list;
+    }
 }
 }

+ 2 - 0
src/main/java/com/example/demo/demos/web/util/DateUtil.java

@@ -193,6 +193,8 @@ public class DateUtil extends DateUtils {
         LocalDate start = LocalDate.parse(startDate, DateTimeFormatter.ISO_LOCAL_DATE);
         LocalDate start = LocalDate.parse(startDate, DateTimeFormatter.ISO_LOCAL_DATE);
         LocalDate end = LocalDate.parse(endDate, DateTimeFormatter.ISO_LOCAL_DATE);
         LocalDate end = LocalDate.parse(endDate, DateTimeFormatter.ISO_LOCAL_DATE);
 
 
+        if (start.isAfter(end)) return new Long[]{};
+
         long monthsBetween = ChronoUnit.MONTHS.between(start, end);
         long monthsBetween = ChronoUnit.MONTHS.between(start, end);
         LocalDate tempDate = start.plusMonths(monthsBetween);
         LocalDate tempDate = start.plusMonths(monthsBetween);