فهرست منبع

Merge remote-tracking branch 'origin/develop' into develop

lchao 1 سال پیش
والد
کامیت
9fe5550652

+ 2 - 1
authority-admin/src/main/java/com/ruoyi/web/controller/authority/ProjectAuthorityController.java

@@ -44,7 +44,8 @@ public class ProjectAuthorityController {
         log.info("认证secretKey:{}",secretKey);
         SysSecretProject sysSecretProject = sysSecretProjectMapper.selectBaseBySecretKey(secretKey);
         Date now = new Date();
-        Date date = dateFormat.parse(sysSecretProject.getOverdueDate().toString());
+        // 获取过期日期加一天,例25号过期,实际是26号0点过期;
+        Date date = dateFormat.parse(sysSecretProject.getOverdueDate().plusDays(1).toString());
         long seconds = (date.getTime() - now.getTime()) / 1000;
         if (!sysSecretProject.getIsSwitch()) {
             map.put("isOverdue", true);

+ 39 - 49
authority-admin/src/main/java/com/ruoyi/web/controller/system/SysSecretProjectController.java

@@ -49,20 +49,19 @@ public class SysSecretProjectController extends BaseController {
         List<SysSecretProjectDTO> list = sysSecretProjectService.selectSysSecretProjectList(sysSecretProjectDTO);
         // 获取当前日期
         LocalDate currentDate = LocalDate.now();
-        // 获取当前日期前七天的日期
-        LocalDate previousDate = currentDate.minusDays(7);
         for (SysSecretProjectDTO var : list) {
-            int comparisonResult = var.getOverdueDate().compareTo(currentDate);
-            if (comparisonResult > 0) {
+            // 获取过期日期加一天的前七天日期,例25号过期,实际是26号0点过期;
+            LocalDate overdueDate = var.getOverdueDate().plusDays(1);
+            LocalDate previousDate = overdueDate.minusDays(7);
+            int comparisonResult = overdueDate.compareTo(currentDate);
+            if (currentDate.isAfter(previousDate) && currentDate.isBefore(overdueDate)) {
+                var.setStatus(3L);
+            } else if (comparisonResult > 0) {
                 var.setStatus(1L);
-                sysSecretProjectMapper.updateSysSecretProject(var);
-            } else if (comparisonResult < 0) {
+            } else {
                 var.setStatus(2L);
-                sysSecretProjectMapper.updateSysSecretProject(var);
-            } else if (var.getOverdueDate().isAfter(previousDate) && var.getOverdueDate().isBefore(currentDate)) {
-                var.setStatus(3L);
-                sysSecretProjectMapper.updateSysSecretProject(var);
             }
+            sysSecretProjectMapper.updateSysSecretProject(var);
         }
         return getDataTable(list);
     }
@@ -83,25 +82,10 @@ public class SysSecretProjectController extends BaseController {
     public AjaxResult add(@RequestBody SysSecretProjectDTO sysSecretProjectDTO) {
         // 获取当前日期
         LocalDate currentDate = LocalDate.now();
-        // 获取当前日期前七天的日期
-        LocalDate previousDate = currentDate.minusDays(7);
-        long milliseconds = Duration.between(LocalDateTime.now(), sysSecretProjectDTO.getOverdueDate().atStartOfDay()).toMillis();
-        JSONObject json = new JSONObject();
-        json.set("projectId", sysSecretProjectDTO.getProjectId());
-        json.set("projectName", sysSecretProjectDTO.getProjectName());
-        json.set("overdueDate", sysSecretProjectDTO.getOverdueDate());
-        String jwt = JWTExample.createJWT(json.toString(), milliseconds,sysSecretProjectDTO.getMacAddress());
-        sysSecretProjectDTO.setSecretKey(jwt);
-        int comparisonResult = sysSecretProjectDTO.getOverdueDate().compareTo(currentDate);
-        if (comparisonResult > 0) {
-            sysSecretProjectDTO.setStatus(1L);
-//            sysSecretProjectDTO.setIsSwitch(1L);
-        } else if (comparisonResult < 0) {
-            sysSecretProjectDTO.setStatus(2L);
-        } else if (sysSecretProjectDTO.getOverdueDate().isAfter(previousDate) && sysSecretProjectDTO.getOverdueDate().isBefore(currentDate)) {
-//            sysSecretProjectDTO.setIsSwitch(1L);
-            sysSecretProjectDTO.setStatus(3L);
-        }
+        // 获取过期日期前七天的日期
+        LocalDate previousDate = sysSecretProjectDTO.getOverdueDate().minusDays(7);
+        getMilliseconds(sysSecretProjectDTO);
+        compareToDate(sysSecretProjectDTO, currentDate, previousDate);
         return toAjax(sysSecretProjectService.insertSysSecretProject(sysSecretProjectDTO));
     }
 
@@ -112,31 +96,36 @@ public class SysSecretProjectController extends BaseController {
     @PutMapping
     public AjaxResult edit(@RequestBody SysSecretProjectDTO sysSecretProjectDTO) {
         if (sysSecretProjectDTO.getAuthorityType().equals("2")) {
-            sysSecretProjectDTO.setIsSwitch(true);
-            long milliseconds = Duration.between(LocalDateTime.now(), sysSecretProjectDTO.getOverdueDate().atStartOfDay()).toMillis();
-            JSONObject json = new JSONObject();
-            json.set("projectId", sysSecretProjectDTO.getProjectId());
-            json.set("projectName", sysSecretProjectDTO.getProjectName());
-            json.set("overdueDate", sysSecretProjectDTO.getOverdueDate());
-            String jwt = JWTExample.createJWT(json.toString(), milliseconds,sysSecretProjectDTO.getMacAddress());
-            sysSecretProjectDTO.setSecretKey(jwt);
+            getMilliseconds(sysSecretProjectDTO);
         }
-
         // 获取当前日期
         LocalDate currentDate = LocalDate.now();
-        // 获取当前日期前七天的日期
-        LocalDate previousDate = currentDate.minusDays(7);
-        int comparisonResult = sysSecretProjectDTO.getOverdueDate().compareTo(currentDate);
-        if (comparisonResult > 0) {
+        // 获取过期日期前七天的日期
+        LocalDate previousDate = sysSecretProjectDTO.getOverdueDate().minusDays(7);
+        compareToDate(sysSecretProjectDTO, currentDate, previousDate);
+        return toAjax(sysSecretProjectService.updateSysSecretProject(sysSecretProjectDTO));
+    }
+
+    private void getMilliseconds(@RequestBody SysSecretProjectDTO sysSecretProjectDTO) {
+        long milliseconds = Duration.between(LocalDateTime.now(), sysSecretProjectDTO.getOverdueDate().plusDays(1).atStartOfDay()).toMillis();
+        JSONObject json = new JSONObject();
+        json.set("projectId", sysSecretProjectDTO.getProjectId());
+        json.set("projectName", sysSecretProjectDTO.getProjectName());
+        json.set("overdueDate", sysSecretProjectDTO.getOverdueDate());
+        String jwt = JWTExample.createJWT(json.toString(), milliseconds, sysSecretProjectDTO.getMacAddress());
+        sysSecretProjectDTO.setSecretKey(jwt);
+    }
+
+    private void compareToDate(@RequestBody SysSecretProjectDTO sysSecretProjectDTO, LocalDate currentDate, LocalDate previousDate) {
+        int comparisonResult = sysSecretProjectDTO.getOverdueDate().plusDays(1).compareTo(currentDate);
+        sysSecretProjectDTO.setIsSwitch(true);
+        if (currentDate.isAfter(previousDate) && currentDate.isBefore(sysSecretProjectDTO.getOverdueDate().plusDays(1))) {
+            sysSecretProjectDTO.setStatus(3L);
+        } else if (comparisonResult > 0) {
             sysSecretProjectDTO.setStatus(1L);
-//            sysSecretProjectDTO.setIsSwitch(1L);
-        } else if (comparisonResult < 0) {
+        } else {
             sysSecretProjectDTO.setStatus(2L);
-        } else if (sysSecretProjectDTO.getOverdueDate().isAfter(previousDate) && sysSecretProjectDTO.getOverdueDate().isBefore(currentDate)) {
-//            sysSecretProjectDTO.setIsSwitch(1L);
-            sysSecretProjectDTO.setStatus(3L);
         }
-        return toAjax(sysSecretProjectService.updateSysSecretProject(sysSecretProjectDTO));
     }
 
     /**
@@ -151,7 +140,7 @@ public class SysSecretProjectController extends BaseController {
         LocalDate previousDate = currentDate.minusDays(7);
         sysSecretProjectDTO.setOverdueDate(previousDate);
         sysSecretProjectDTO.setStatus(2L);
-//        sysSecretProjectDTO.setIsSwitch(1L);
+        sysSecretProjectDTO.setIsSwitch(true);
         RestUtil.get(sysSecretProjectService.selectSysSecretProjectAddress(sysSecretProjectDTO));
         return toAjax(sysSecretProjectService.updateSysSecretProject(sysSecretProjectDTO));
     }
@@ -185,4 +174,5 @@ public class SysSecretProjectController extends BaseController {
         return toAjax(sysSecretProjectService.updateIsSwitch(sysSecretProjectDTO));
     }
 
+
 }

+ 1 - 0
authority-ui/src/views/authority/secret/index.vue

@@ -136,6 +136,7 @@
         <el-form-item label="MAC地址" prop="macAddress" style="width: 360px">
           <el-input v-model="form.macAddress" placeholder="请输入MAC地址"></el-input>
         </el-form-item>
+        <h style="padding: 90px">MAC地址必须以-分隔,且英文必须为大写</h>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>