From 9e6d4880ca1ce6ae5cb9b9dc1b865f0ee9f65fe8 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期五, 19 九月 2025 17:02:45 +0800 Subject: [PATCH] 缓冲区库存调整 --- src/main/java/com/zy/common/web/AuthController.java | 160 +++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 117 insertions(+), 43 deletions(-) diff --git a/src/main/java/com/zy/common/web/AuthController.java b/src/main/java/com/zy/common/web/AuthController.java index dc4dca3..32e4d76 100644 --- a/src/main/java/com/zy/common/web/AuthController.java +++ b/src/main/java/com/zy/common/web/AuthController.java @@ -3,23 +3,24 @@ 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.entity.license.LicenseVerify; 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 com.zy.system.timer.LicenseTimer; 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.*; @@ -46,37 +47,51 @@ private PermissionService permissionService; @Autowired private RolePermissionService rolePermissionService; + @Autowired + private LicenseTimer licenseTimer; - @RequestMapping("/login.action") - public R loginAction(String mobile, String password){ - if (mobile.equals("super") && password.equals(Cools.md5(superPwd))) { - Map<String, Object> res = new HashMap<>(); - res.put("username", mobile); - res.put("token", Cools.enToken(System.currentTimeMillis() + mobile, superPwd)); - return R.ok(res); + @PostMapping("/login.action") + @ManagerAuth(value = ManagerAuth.Auth.NONE, memo = "鐧诲綍") + public R loginAction(@RequestBody Map<String, String> param) { + //楠岃瘉璁稿彲璇佹槸鍚︽湁鏁� + if (!licenseTimer.getSystemSupport()) { + return R.parse(CodeRes.SYSTEM_20001); } EntityWrapper<User> userWrapper = new EntityWrapper<>(); - userWrapper.eq("mobile", mobile); + userWrapper.eq("username", param.get("username")); User user = userService.selectOne(userWrapper); - if (Cools.isEmpty(user)){ + if (Cools.isEmpty(user)) { + if (param.get("username").equals("super") && param.get("password").equals(Cools.md5(superPwd))) { + Map<String, Object> res = new HashMap<>(); + res.put("username", param.get("username")); + res.put("token", Cools.enToken(System.currentTimeMillis() + param.get("username"), superPwd)); + return R.ok(res); + } return R.parse(CodeRes.USER_10001); } - if (user.getStatus()!=1){ + if (user.getStatus() != 1) { return R.parse(CodeRes.USER_10002); } - if (!Cools.md5(user.getPassword()).equals(password)){ + if (!user.getPassword().equals(param.get("password"))) { return R.parse(CodeRes.USER_10003); } - String token = Cools.enToken(System.currentTimeMillis() + mobile, user.getPassword()); + String token = Cools.enToken(System.currentTimeMillis() + param.get("username"), user.getPassword()); userLoginService.delete(new EntityWrapper<UserLogin>().eq("user_id", user.getId())); UserLogin userLogin = new UserLogin(); userLogin.setUserId(user.getId()); userLogin.setToken(token); + userLogin.setCreateTime(new Date()); + userLogin.setSystem("WMS"); userLoginService.insert(userLogin); Map<String, Object> res = new HashMap<>(); res.put("username", user.getUsername()); res.put("token", token); return R.ok(res); + } + + @RequestMapping("/code/switch.action") + public R code() { + return R.ok().add(Parameter.get().getCodeSwitch()); } @RequestMapping("/code.action") @@ -85,34 +100,50 @@ } @RequestMapping("/code.do") - public String codeDo(@RequestParam String sd) { - String code = RandomValidateCodeUtil.code.get(sd); + public String codeDo(@RequestParam String sd) throws Exception { + String code = null; + int time = 0; + while (time < 3000) { + code = RandomValidateCodeUtil.code.get(sd); + if (!Cools.isEmpty(code)) { + break; + } else { + Thread.sleep(10); + time = time + 100; + } + } RandomValidateCodeUtil.code.remove(sd); return code; } @RequestMapping("/user/detail/auth") @ManagerAuth - public R userDetail(){ + public R userDetail() { return R.ok(userService.selectById(getUserId())); } @RequestMapping("/menu/auth") @ManagerAuth - public R menu(){ + 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())); List<Long> resourceIds = new ArrayList<>(); roleResources.forEach(roleResource -> resourceIds.add(roleResource.getResourceId())); - if (resourceIds.isEmpty()){ + if (resourceIds.isEmpty()) { return R.ok(); } resourceWrapper = new EntityWrapper<Resource>().in("id", resourceIds).eq("level", 2).eq("status", 1).orderBy("sort"); @@ -129,12 +160,12 @@ // 鏄惁鎷ユ湁鏌ョ湅鏉冮檺 if (getUserId() != 9527) { - Resource view = resourceService.selectOne(new EntityWrapper<Resource>().eq("resource_id", resource.getId()).like("code", "view")); - if (!Cools.isEmpty(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()); param.setRoleId(user.getRoleId()); - if (null == roleResourceService.selectOne(new EntityWrapper<>(param))){ + if (null == roleResourceService.selectOne(new EntityWrapper<>(param))) { continue; } } @@ -159,11 +190,11 @@ @RequestMapping("/power/list/auth") @ManagerAuth - public R powerList(){ + public R powerList() { List<Resource> oneLevels = resourceService.selectList(new EntityWrapper<Resource>().eq("level", 1).eq("status", 1).orderBy("sort")); List<Map> result = new ArrayList<>(); // 涓�绾� - for (Resource oneLevel : oneLevels){ + for (Resource oneLevel : oneLevels) { List<Map> twoLevelsList = new ArrayList<>(); Map<String, Object> oneLevelMap = new HashMap<>(); oneLevelMap.put("title", oneLevel.getName()); @@ -172,7 +203,7 @@ oneLevelMap.put("children", twoLevelsList); List<Resource> twoLevels = resourceService.selectList(new EntityWrapper<Resource>().eq("resource_id", oneLevel.getId()).eq("level", 2).eq("status", 1).orderBy("sort")); // 浜岀骇 - for (Resource twoLevel : twoLevels){ + for (Resource twoLevel : twoLevels) { Map<String, Object> twoLevelMap = new HashMap<>(); twoLevelMap.put("title", twoLevel.getName()); twoLevelMap.put("id", twoLevel.getId()); @@ -182,7 +213,7 @@ twoLevelMap.put("children", threeLevelsList); // 涓夌骇 List<Resource> threeLevels = resourceService.selectList(new EntityWrapper<Resource>().eq("resource_id", twoLevel.getId()).eq("level", 3).eq("status", 1).orderBy("sort")); - for (Resource threeLevel : threeLevels){ + for (Resource threeLevel : threeLevels) { Map<String, Object> threeLevelMap = new HashMap<>(); threeLevelMap.put("title", threeLevel.getName()); threeLevelMap.put("id", threeLevel.getId()); @@ -221,19 +252,19 @@ List<Object> result = new ArrayList<>(); // 鑿滃崟 List<RoleResource> roleResources = roleResourceService.selectList(new EntityWrapper<RoleResource>().eq("role_id", roleId)); - for (RoleResource roleResource : roleResources){ + for (RoleResource roleResource : roleResources) { Resource resource = resourceService.selectById(roleResource.getResourceId()); - if (!Cools.isEmpty(resource)){ - if (resource.getLevel() == 3){ + if (!Cools.isEmpty(resource)) { + if (resource.getLevel() == 3) { result.add(resource.getId()); } } } // 鍔熻兘 List<RolePermission> rolePermissions = rolePermissionService.selectList(new EntityWrapper<RolePermission>().eq("role_id", roleId)); - for (RolePermission rolePermission : rolePermissions){ + for (RolePermission rolePermission : rolePermissions) { Permission permission = permissionService.selectById(rolePermission.getPermissionId()); - if (!Cools.isEmpty(permission)){ + if (!Cools.isEmpty(permission)) { result.add(permission.getAction()); } } @@ -241,14 +272,14 @@ } @RequestMapping("/power/auth") - @ManagerAuth + @ManagerAuth(memo = "鎺堟潈") @Transactional - public R power(Long roleId, String powers){ + public R power(Long roleId, String powers) { Role role = roleService.selectById(roleId); Long leaderId = role.getLeader(); roleResourceService.delete(new EntityWrapper<RoleResource>().eq("role_id", roleId)); rolePermissionService.delete(new EntityWrapper<RolePermission>().eq("role_id", roleId)); - if (!Cools.isEmpty(powers)){ + if (!Cools.isEmpty(powers)) { List<PowerDto> dtos = JSON.parseArray(powers, PowerDto.class); for (PowerDto dto : dtos) { Resource resource = resourceService.selectOne(new EntityWrapper<Resource>().eq("id", dto.getTwo()).eq("level", 2)); @@ -266,14 +297,14 @@ roleResourceService.insert(roleResource); } else { Permission permission = permissionService.selectOne(new EntityWrapper<Permission>().eq("action", dto.getTwo())); - if (!Cools.isEmpty(permission)){ + if (!Cools.isEmpty(permission)) { RolePermission rolePermission = new RolePermission(); rolePermission.setRoleId(roleId); rolePermission.setPermissionId(permission.getId()); rolePermissionService.insert(rolePermission); } } - for (String three : dto.getThree()){ + for (String three : dto.getThree()) { Resource resource1 = resourceService.selectOne(new EntityWrapper<Resource>().eq("id", three).eq("level", 3)); if (!Cools.isEmpty(resource1)) { // 鏍¢獙涓婄骇鏉冮檺 @@ -309,5 +340,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