From d16d3b70e94f798d7e5abd145f8566d81d0c66c9 Mon Sep 17 00:00:00 2001
From: 18516761980 <4761516tqsxp>
Date: 星期二, 14 六月 2022 18:07:45 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/web/AuthController.java |   72 ++++++++++++++++++++++++++++++------
 1 files changed, 60 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/zy/common/web/AuthController.java b/src/main/java/com/zy/common/web/AuthController.java
index 835ba54..086d243 100644
--- a/src/main/java/com/zy/common/web/AuthController.java
+++ b/src/main/java/com/zy/common/web/AuthController.java
@@ -3,24 +3,22 @@
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.core.annotations.ManagerAuth;
+import com.core.common.*;
+import com.core.exception.CoolException;
 import com.zy.common.CodeRes;
 import com.zy.common.entity.Parameter;
 import com.zy.common.model.PowerDto;
 import com.zy.common.model.enums.HtmlNavIconType;
+import com.zy.common.properties.OSinfo;
+import com.zy.common.properties.SystemProperties;
 import com.zy.common.utils.RandomValidateCodeUtil;
 import com.zy.system.entity.*;
 import com.zy.system.service.*;
-import com.core.annotations.ManagerAuth;
-import com.core.common.Cools;
-import com.core.common.R;
-import com.core.exception.CoolException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.*;
@@ -66,7 +64,7 @@
         if (user.getStatus()!=1){
             return R.parse(CodeRes.USER_10002);
         }
-        if (!Cools.md5(user.getPassword()).equals(password)){
+        if (!user.getPassword().equals(password)){
             return R.parse(CodeRes.USER_10003);
         }
         String token = Cools.enToken(System.currentTimeMillis() + mobile, user.getPassword());
@@ -74,6 +72,7 @@
         UserLogin userLogin = new UserLogin();
         userLogin.setUserId(user.getId());
         userLogin.setToken(token);
+        userLogin.setCreateTime(new Date());
         userLoginService.insert(userLogin);
         Map<String, Object> res = new HashMap<>();
         res.put("username", user.getUsername());
@@ -115,15 +114,21 @@
     }
 
     @RequestMapping("/menu/auth")
-    @ManagerAuth(memo = "棣栭〉鑿滃崟")
+    @ManagerAuth
     public R menu(){
         // 鑾峰彇鎵�鏈変竴绾ц彍鍗�
-        List<Resource> oneLevel = resourceService.selectList(new EntityWrapper<Resource>().eq("level", 1).eq("status", 1).orderBy("sort"));
+        List<Resource> oneLevel;
         User user = null;
         Wrapper<Resource> resourceWrapper;
         if (getUserId() == 9527) {
+            oneLevel = resourceService.selectList(new EntityWrapper<Resource>().eq("level", 1).orderBy("sort"));
             resourceWrapper = new EntityWrapper<Resource>().eq("level", 2).eq("status", 1).orderBy("sort");
         } else {
+            // 婵�娲荤爜楠岃瘉
+            if (!SystemProperties.SYSTEM_ACTIVATION) {
+                return R.ok();
+            }
+            oneLevel = resourceService.selectList(new EntityWrapper<Resource>().eq("level", 1).eq("status", 1).orderBy("sort"));
             // 鑾峰彇褰撳墠鐢ㄦ埛鐨勬墍鏈変簩绾ц彍鍗�
             user = userService.selectById(getUserId());
             List<RoleResource> roleResources = roleResourceService.selectList(new EntityWrapper<RoleResource>().eq("role_id", user.getRoleId()));
@@ -146,7 +151,7 @@
 
                     // 鏄惁鎷ユ湁鏌ョ湅鏉冮檺
                     if (getUserId() != 9527) {
-                        Resource view = resourceService.selectOne(new EntityWrapper<Resource>().eq("resource_id", resource.getId()).like("code", "view"));
+                        Resource view = resourceService.selectOne(new EntityWrapper<Resource>().eq("resource_id", resource.getId()).like("code", "#view"));
                         if (!Cools.isEmpty(view)){
                             RoleResource param = new RoleResource();
                             param.setResourceId(view.getId());
@@ -326,5 +331,48 @@
         return R.ok(resources);
     }
 
+    @GetMapping(value = "/system/activation/auth")
+    public R activation() {
+        if (SystemProperties.SYSTEM_ACTIVATION) {
+            String activationCode = SystemProperties.getActivationCode(OSinfo.getOSname().getActivationCodePath());
+            String timeStr = AesUtils.decrypt(activationCode, SystemProperties.SALT);
+            if (null == timeStr) {
+                SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
+                return R.error();
+            }
+            Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
+            if (new Date().getTime() < exprTime.getTime()) {
+                return R.ok().add(DateUtils.convert(exprTime));
+            } else {
+                SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
+                return R.error();
+            }
+        } else {
+            return R.error();
+        }
+    }
+
+    @PostMapping(value = "/system/secret/auth")
+    @ManagerAuth
+    public R systemSecret(@RequestParam(value = "secret") String secret) {
+        if (Cools.isEmpty(secret)) {
+            return R.error("璇疯緭鍏ユ縺娲荤爜");
+        }
+        // 楠岃瘉婵�娲荤爜
+        String timeStr = AesUtils.decrypt(secret, SystemProperties.SALT);
+        if (null == timeStr) {
+            return R.error("婵�娲荤爜閿欒");
+        }
+        Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
+        if (new Date().getTime() >= exprTime.getTime()) {
+            return R.error("婵�娲荤爜宸插け鏁�");
+        }
+        boolean result = SystemProperties.saveActivationCode(OSinfo.getOSname().getActivationCodePath(), secret);
+        if (!result) {
+            return R.error("婵�娲诲け璐�");
+        }
+        SystemProperties.SYSTEM_ACTIVATION = Boolean.TRUE;
+        return R.ok("婵�娲绘垚鍔燂紝鏈夋晥鏈熻嚦"+DateUtils.convert(exprTime));
+    }
 
 }

--
Gitblit v1.9.1