Browse Source

新增、修改 添加修改状态逻辑

bihuisong 1 year ago
parent
commit
76c64b0296

+ 27 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysSecretProjectController.java

@@ -3,6 +3,7 @@ package com.ruoyi.web.controller.system;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.Duration;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.HashMap;
@@ -47,6 +48,8 @@ import com.ruoyi.common.core.page.TableDataInfo;
 public class SysSecretProjectController extends BaseController {
     @Autowired
     private ISysSecretProjectService sysSecretProjectService;
+    @Autowired
+    private SysSecretProjectMapper sysSecretProjectMapper;
 
 
     /**
@@ -73,9 +76,21 @@ public class SysSecretProjectController extends BaseController {
     @Log(title = "新增项目授权管理", businessType = BusinessType.INSERT)
     @PostMapping
     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();
         String jwt = JWTExample.createJWT(sysSecretProjectDTO.getProjectName(), milliseconds);
         sysSecretProjectDTO.setSecretKey(jwt);
+        int comparisonResult = sysSecretProjectDTO.getOverdueDate().compareTo(currentDate);
+        if (comparisonResult < 0) {
+            sysSecretProjectDTO.setStatus(2L);
+            sysSecretProjectMapper.updateSysSecretProject(sysSecretProjectDTO);
+        } else if (sysSecretProjectDTO.getOverdueDate().isAfter(previousDate) && sysSecretProjectDTO.getOverdueDate().isBefore(currentDate)) {
+            sysSecretProjectDTO.setStatus(3L);
+            sysSecretProjectMapper.updateSysSecretProject(sysSecretProjectDTO);
+        }
         return toAjax(sysSecretProjectService.insertSysSecretProject(sysSecretProjectDTO));
     }
 
@@ -85,9 +100,21 @@ public class SysSecretProjectController extends BaseController {
     @Log(title = "修改项目授权管理", businessType = BusinessType.UPDATE)
     @PutMapping
     public AjaxResult edit(@RequestBody SysSecretProjectDTO sysSecretProjectDTO) {
+        // 获取当前日期
+        LocalDate currentDate = LocalDate.now();
+        // 获取当前日期前七天的日期
+        LocalDate previousDate = currentDate.minusDays(7);
         long milliseconds = Duration.between(LocalDateTime.now(), sysSecretProjectDTO.getOverdueDate().atStartOfDay()).toMillis();
         String jwt = JWTExample.createJWT(sysSecretProjectDTO.getProjectName(), milliseconds);
         sysSecretProjectDTO.setSecretKey(jwt);
+        int comparisonResult = sysSecretProjectDTO.getOverdueDate().compareTo(currentDate);
+        if (comparisonResult < 0) {
+            sysSecretProjectDTO.setStatus(2L);
+            sysSecretProjectMapper.updateSysSecretProject(sysSecretProjectDTO);
+        } else if (sysSecretProjectDTO.getOverdueDate().isAfter(previousDate) && sysSecretProjectDTO.getOverdueDate().isBefore(currentDate)) {
+            sysSecretProjectDTO.setStatus(3L);
+            sysSecretProjectMapper.updateSysSecretProject(sysSecretProjectDTO);
+        }
         return toAjax(sysSecretProjectService.updateSysSecretProject(sysSecretProjectDTO));
     }