diff --git a/src/main/java/cn/hellohao/auth/filter/SubjectFilter.java b/src/main/java/cn/hellohao/auth/filter/SubjectFilter.java index 4636398..be1504a 100644 --- a/src/main/java/cn/hellohao/auth/filter/SubjectFilter.java +++ b/src/main/java/cn/hellohao/auth/filter/SubjectFilter.java @@ -32,9 +32,10 @@ public class SubjectFilter extends BasicHttpAuthenticationFilter { HttpServletResponse httpServletResponse =(HttpServletResponse) response; String serviceName = httpServletRequest.getServletPath();//获取接口 String Users_Origin = httpServletRequest.getHeader("usersOrigin"); - + String token = httpServletRequest.getHeader("Authorization"); //验证前端域名 - if(httpServletRequest.getMethod().equals("POST") && !serviceName.contains("/api") && !serviceName.contains("/verifyCode")){ + if(httpServletRequest.getMethod().equals("POST") && !serviceName.contains("/api") + && !serviceName.contains("/verifyCode") && !serviceName.contains("/client")){ try{ if(Users_Origin.compareTo(SecureUtil.md5(WEBHOST))!=0){ System.out.println("前端域名校验未通过"); @@ -50,10 +51,40 @@ public class SubjectFilter extends BasicHttpAuthenticationFilter { return false; } } - String token = httpServletRequest.getHeader("Authorization"); + + if(serviceName.contains("/client")){ + token = httpServletRequest.getHeader("jwttoken"); + String userToken = httpServletRequest.getHeader("userToken"); + User user = new User(); + user.setToken(userToken); + User userData = userService.loginByToken(userToken); + if(null==userData){ + this.CODE = "110404"; + return false; + }else{ + if(userData.getIsok()<1){ + this.CODE = "110403"; + return false; + } + Subject sub = SecurityUtils.getSubject(); + User u = (User) sub.getPrincipal(); + if(null==u){ + httpServletRequest.getSession().setAttribute("user",userData); + Subject subject = SecurityUtils.getSubject(); + UsernamePasswordToken tokenOBJ = new UsernamePasswordToken(userData.getEmail(),userData.getPassword()); + tokenOBJ.setRememberMe(true); + //执行登录方法,如果没有异常,说明登录成功 + subject.login(tokenOBJ); + SecurityUtils.getSubject().getSession().setTimeout(3600000); + User loginUser = (User) SecurityUtils.getSubject().getPrincipal(); + } + } + } + +// String token = httpServletRequest.getHeader("Authorization"); JSONObject jsonObject = JWTUtil.checkToken(token); if(!jsonObject.getBoolean("check")){ - if(!serviceName.contains("admin")){ + if(!serviceName.contains("admin") || serviceName.contains("admin/client")){ return true; }else{ this.CODE = "403"; @@ -102,6 +133,10 @@ public class SubjectFilter extends BasicHttpAuthenticationFilter { info = "当前用户无权访问该请求"; }else if(this.CODE.equals("402")){ info = "当前web请求不合规"; + }else if(this.CODE.equals("110403")){ + info = "该账户暂时无法使用"; + }else if(this.CODE.equals("110404")){ + info = "用户未找到"; } System.err.println("拦截器False-"+info); response.setContentType("application/json;charset=UTF-8"); diff --git a/src/main/java/cn/hellohao/controller/AdminController.java b/src/main/java/cn/hellohao/controller/AdminController.java index 3e72095..4cfc5a6 100644 --- a/src/main/java/cn/hellohao/controller/AdminController.java +++ b/src/main/java/cn/hellohao/controller/AdminController.java @@ -16,7 +16,6 @@ import org.apache.shiro.subject.Subject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; - import javax.servlet.http.HttpSession; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -51,7 +50,7 @@ public class AdminController { private deleImages deleimages; - @PostMapping(value = "/overviewData") //new + @PostMapping(value = "/overviewData") @ResponseBody public Msg overviewData(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -60,12 +59,13 @@ public class AdminController { user = userService.getUsers(user); JSONObject jsonObject = new JSONObject(); UploadConfig uploadConfig = uploadConfigService.getUpdateConfig(); - Imgreview imgreview = imgreviewService.selectByPrimaryKey(1);//查询非法个数 - Imgreview isImgreviewOK = imgreviewService.selectByusing(1);//查询有没有启动鉴别功能 + Imgreview imgreview = imgreviewService.selectByPrimaryKey(1); + Imgreview isImgreviewOK = imgreviewService.selectByusing(1); String ok = "false"; - jsonObject.put("myImgTotal", imgService.countimg(user.getId())); //我的图片数 - jsonObject.put("myAlbumTitle", albumService.selectAlbumCount(user.getId()));//我的画廊数量 - long memory = Long.valueOf(user.getMemory());//分配量 + jsonObject.put("myToken", user.getToken()); + jsonObject.put("myImgTotal", imgService.countimg(user.getId())); + jsonObject.put("myAlbumTitle", albumService.selectAlbumCount(user.getId())); + long memory = Long.valueOf(user.getMemory()); Long usermemory = imgService.getusermemory(user.getId())==null?0L:imgService.getusermemory(user.getId()); if(memory==0){ jsonObject.put("myMemory","无容量"); @@ -80,32 +80,31 @@ public class AdminController { jsonObject.put("myMemorySum",SetFiles.readableFileSize(memory)); if(user.getLevel()>1){ ok = "true"; - //管理员 - jsonObject.put("imgTotal", imgService.counts(null) ); //站点图片数 + jsonObject.put("imgTotal", imgService.counts(null) ); jsonObject.put("userTotal", userService.getUserTotal()); - jsonObject.put("ViolationImgTotal", imgreview.getCount()); //非法图片 - jsonObject.put("ViolationSwitch", isImgreviewOK==null?0:isImgreviewOK.getId()); //非法图片开关 - jsonObject.put("VisitorUpload", uploadConfig.getIsupdate());//是否禁用了游客上传 + jsonObject.put("ViolationImgTotal", imgreview.getCount()); + jsonObject.put("ViolationSwitch", isImgreviewOK==null?0:isImgreviewOK.getId()); + jsonObject.put("VisitorUpload", uploadConfig.getIsupdate()); jsonObject.put("VisitorMemory", SetFiles.readableFileSize(Long.valueOf(uploadConfig.getVisitormemory())));//访客共大小 if(uploadConfig.getIsupdate()!=1){ - jsonObject.put("VisitorUpload", 0);//是否禁用了游客上传 - jsonObject.put("VisitorProportion",100.00);//游客用量%占比 - jsonObject.put("VisitorMemory", "禁用");//访客共大小 + jsonObject.put("VisitorUpload", 0); + jsonObject.put("VisitorProportion",100.00); + jsonObject.put("VisitorMemory", "禁用"); }else{ Long temp = imgService.getusermemory(0)==null?0:imgService.getusermemory(0); - jsonObject.put("UsedMemory", (temp == null ? 0 : SetFiles.readableFileSize(temp)));//访客已用大小 + jsonObject.put("UsedMemory", (temp == null ? 0 : SetFiles.readableFileSize(temp))); if(Long.valueOf(uploadConfig.getVisitormemory())==0){ - jsonObject.put("VisitorProportion",100.00);//游客用量%占比 + jsonObject.put("VisitorProportion",100.00); }else if(Long.valueOf(uploadConfig.getVisitormemory())==-1){ - jsonObject.put("VisitorProportion",0);//游客用量%占比 - jsonObject.put("VisitorMemory", "无限");//访客共大小 + jsonObject.put("VisitorProportion",0); + jsonObject.put("VisitorMemory", "无限"); }else{ double sum = Double.valueOf(uploadConfig.getVisitormemory()); Double aDouble = Double.valueOf(String.format("%.2f", ((double) temp / sum) * 100)); if(aDouble>=999){ - jsonObject.put("VisitorProportion",999);//游客用量%占比 + jsonObject.put("VisitorProportion",999); }else{ - jsonObject.put("VisitorProportion",aDouble);//游客用量%占比 + jsonObject.put("VisitorProportion",aDouble); } } } @@ -115,7 +114,7 @@ public class AdminController { return msg; } - @PostMapping(value = "/SpaceExpansion")//new + @PostMapping(value = "/SpaceExpansion") @ResponseBody public Msg SpaceExpansion(@RequestParam(value = "data", defaultValue = "") String data) { final Msg msg = new Msg(); @@ -151,9 +150,9 @@ public class AdminController { } } - @PostMapping("/getRecently")//new + @PostMapping("/getRecently") @ResponseBody - public Msg getRecently(@RequestParam(value = "data", defaultValue = "") String data) { + public Msg getRecently() { Msg msg = new Msg(); final JSONObject jsonObject = new JSONObject(); try { @@ -176,9 +175,32 @@ public class AdminController { return msg; } - @PostMapping("/getYyyy")//new + @PostMapping("/updateToken") @ResponseBody - public Msg getYyyy(@RequestParam(value = "data", defaultValue = "") String data){ + public Msg updateToken() { + Msg msg = new Msg(); + try{ + Subject subject = SecurityUtils.getSubject(); + User user = (User) subject.getPrincipal(); + User u = new User(); + u.setId(user.getId()); + u.setToken(UUID.randomUUID().toString().replace("-", "")); + userService.changeUser(u); + user.setToken(u.getToken()); + msg.setData(u.getToken()); + msg.setInfo("Token更新成功,即可生效"); + }catch (Exception e){ + e.printStackTrace(); + msg.setCode("500"); + msg.setInfo("Token更新失败"); + } + return msg; + + } + + @PostMapping("/getYyyy") + @ResponseBody + public Msg getYyyy(){ final Msg msg = new Msg(); Subject subject = SecurityUtils.getSubject(); User u = (User) subject.getPrincipal(); @@ -189,14 +211,13 @@ public class AdminController { return msg; } - @PostMapping("/getChart")//new + @PostMapping("/getChart") @ResponseBody public Msg getChart(@RequestParam(value = "data", defaultValue = "") String data){ Msg msg = new Msg(); JSONObject jsonObject = JSONObject.parseObject(data); String yyyy = jsonObject.getString("yyyy"); Integer type = jsonObject.getInteger("type"); - Subject subject = SecurityUtils.getSubject(); User u = (User) subject.getPrincipal(); List list =null; @@ -232,7 +253,7 @@ public class AdminController { return msg; } - @PostMapping("/getStorage")//new + @PostMapping("/getStorage") @ResponseBody public Msg getStorage() { Msg msg = new Msg(); @@ -241,7 +262,7 @@ public class AdminController { return msg; } - @PostMapping("/getStorageName")//new + @PostMapping("/getStorageName") @ResponseBody public Msg getStorageName() { Msg msg = new Msg(); @@ -250,7 +271,7 @@ public class AdminController { return msg; } - @PostMapping(value = "/selectPhoto")//new + @PostMapping(value = {"/selectPhoto","/client/selectPhoto"}) @ResponseBody public Msg selectPhoto(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -313,7 +334,7 @@ public class AdminController { return msg; } - @PostMapping(value = "/getUserInfo") //new + @PostMapping(value = "/getUserInfo") @ResponseBody public Msg getUserInfo() { Msg msg = new Msg(); @@ -335,7 +356,7 @@ public class AdminController { return msg; } - @PostMapping("/setUserInfo") //new + @PostMapping("/setUserInfo") @ResponseBody public Msg setUserInfo(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -398,7 +419,7 @@ public class AdminController { return msg; } - @PostMapping("/deleImages") //new + @PostMapping({"/deleImages","/client/deleImages"}) @ResponseBody public Msg deleImages(HttpSession httpSession, @RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -412,7 +433,6 @@ public class AdminController { final String[] split = images.split(","); Subject subject = SecurityUtils.getSubject(); User user = (User) subject.getPrincipal(); - if(null == user){ msg.setCode("500"); msg.setInfo("当前用户信息不存在"); @@ -443,7 +463,7 @@ public class AdminController { return msg; } - @PostMapping("/GetDelprogress") //new + @PostMapping({"/GetDelprogress","/client/GetDelprogress"}) @ResponseBody public Msg GetDelprogress(HttpSession httpSession) { Msg msg =new Msg(); @@ -514,9 +534,7 @@ public class AdminController { default : ch = "";//可选 //语句 } - return ch; - } } diff --git a/src/main/java/cn/hellohao/controller/AdminRootController.java b/src/main/java/cn/hellohao/controller/AdminRootController.java index db440cd..2f4608c 100644 --- a/src/main/java/cn/hellohao/controller/AdminRootController.java +++ b/src/main/java/cn/hellohao/controller/AdminRootController.java @@ -19,9 +19,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import java.util.HashMap; import java.util.List; -import java.util.Map; @Controller @RequestMapping("/admin/root") @@ -42,30 +40,35 @@ public class AdminRootController { private ImgService imgService; @Autowired private ImgreviewService imgreviewService; + @Autowired + private AppClientService appClientService; - @PostMapping(value = "/getUserList")//new + @PostMapping(value = "/getUserList") @ResponseBody - public Map getUserList(@RequestParam(value = "data", defaultValue = "") String data) { - JSONObject jsonObj = JSONObject.parseObject(data); - Integer pageNum = jsonObj.getInteger("pageNum"); - Integer pageSize = jsonObj.getInteger("pageSize"); - String queryText = jsonObj.getString("queryText"); - PageHelper.startPage(pageNum, pageSize); - List users = userService.getuserlist(queryText); - PageInfo rolePageInfo = new PageInfo<>(users); - Map map = new HashMap(); - map.put("count", rolePageInfo.getTotal()); - map.put("users", rolePageInfo.getList()); - return map; + public Msg getUserList(@RequestParam(value = "data", defaultValue = "") String data) { + Msg msg = new Msg(); + try{ + JSONObject jsonObj = JSONObject.parseObject(data); + Integer pageNum = jsonObj.getInteger("pageNum"); + Integer pageSize = jsonObj.getInteger("pageSize"); + String queryText = jsonObj.getString("queryText"); + PageHelper.startPage(pageNum, pageSize); + List users = userService.getuserlist(queryText); + PageInfo rolePageInfo = new PageInfo<>(users); + msg.setData(rolePageInfo); + }catch (Exception e){ + msg.setCode("500"); + } + return msg; } - @PostMapping(value = "/updateUserInfo")//new + @PostMapping(value = "/updateUserInfo") @ResponseBody public Msg updateUserInfo(@RequestParam(value = "data", defaultValue = "") String data) { final Msg msg = new Msg(); - try{ + try { Subject subject = SecurityUtils.getSubject(); User u = (User) subject.getPrincipal(); JSONObject jsonObj = JSONObject.parseObject(data); @@ -74,7 +77,7 @@ public class AdminRootController { Long memory = jsonObj.getLong("memory"); Integer groupid = jsonObj.getInteger("groupid"); Integer isok = jsonObj.getInteger("isok"); - if(memory<0 || memory>1048576L){ + if (memory < 0 || memory > 1048576L) { msg.setCode("500"); msg.setInfo("容量不得超过1048576"); return msg; @@ -85,14 +88,14 @@ public class AdminRootController { User userInfo = userService.getUsers(user2); user.setId(id); user.setEmail(email); - user.setMemory(Long.toString(memory*1024*1024)); + user.setMemory(Long.toString(memory * 1024 * 1024)); user.setGroupid(groupid); - if(userInfo.getLevel()==1){ - user.setIsok(isok==1?1:-1); + if (userInfo.getLevel() == 1) { + user.setIsok(isok == 1 ? 1 : -1); } userService.changeUser(user); msg.setInfo("修改成功"); - }catch (Exception e){ + } catch (Exception e) { msg.setCode("500"); msg.setInfo("修改失败"); e.printStackTrace(); @@ -101,7 +104,7 @@ public class AdminRootController { } - @PostMapping("/disableUser")//new + @PostMapping("/disableUser") @ResponseBody public Msg disableUser(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -112,7 +115,7 @@ public class AdminRootController { User u = new User(); u.setId(userIdList.getInteger(i)); User u2 = userService.getUsers(u); - if(u2.getLevel()==1){ + if (u2.getLevel() == 1) { User user = new User(); user.setId(userIdList.getInteger(i)); user.setIsok(-1); @@ -121,7 +124,7 @@ public class AdminRootController { } msg.setInfo("所选用户已被禁用"); - }catch (Exception e){ + } catch (Exception e) { e.printStackTrace(); msg.setInfo("系统错误"); msg.setCode("500"); @@ -129,7 +132,7 @@ public class AdminRootController { return msg; } - @PostMapping("/deleUser")//new + @PostMapping("/deleUser") @ResponseBody public Msg deleuser(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -141,18 +144,18 @@ public class AdminRootController { User u = new User(); u.setId(userIdList.getInteger(i)); User user = userService.getUsers(u); - if(user.getLevel()==1){ + if (user.getLevel() == 1) { userService.deleuser(userIdList.getInteger(i)); - }else{ + } else { b = true; } } - if(b && userIdList.size()==1){ + if (b && userIdList.size() == 1) { msg.setInfo("管理员账户不可删除"); - }else { + } else { msg.setInfo("用户已删除成功"); } - }catch (Exception e){ + } catch (Exception e) { e.printStackTrace(); msg.setInfo("系统错误"); msg.setCode("500"); @@ -160,7 +163,7 @@ public class AdminRootController { return msg; } - @PostMapping("/getKeysList") //new + @PostMapping("/getKeysList") @ResponseBody public Msg getKeysList() { Msg msg = new Msg(); @@ -169,7 +172,7 @@ public class AdminRootController { return msg; } - @PostMapping("/LoadInfo")//new + @PostMapping("/LoadInfo") @ResponseBody public Msg LoadInfo(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -177,34 +180,34 @@ public class AdminRootController { JSONObject jsonData = JSONObject.parseObject(data); Integer keyId = jsonData.getInteger("keyId"); JSONObject jsonObject = new JSONObject(); - jsonObject.put("id",keyId); + jsonObject.put("id", keyId); Keys key = keysService.selectKeys(keyId); Integer ret = 0; - if(key.getStorageType()==1){ + if (key.getStorageType() == 1) { ret = NOSImageupload.Initialize(key); - }else if (key.getStorageType()==2){ + } else if (key.getStorageType() == 2) { ret = OSSImageupload.Initialize(key); - }else if(key.getStorageType()==3){ + } else if (key.getStorageType() == 3) { ret = USSImageupload.Initialize(key); - }else if(key.getStorageType()==4){ + } else if (key.getStorageType() == 4) { ret = KODOImageupload.Initialize(key); - }else if(key.getStorageType()==6){ + } else if (key.getStorageType() == 6) { ret = COSImageupload.Initialize(key); - }else if(key.getStorageType()==7){ + } else if (key.getStorageType() == 7) { ret = FTPImageupload.Initialize(key); - }else if(key.getStorageType()==8){ + } else if (key.getStorageType() == 8) { ret = UFileImageupload.Initialize(key); } Long l = imgService.getsourcememory(keyId); - jsonObject.put("isok",ret); - jsonObject.put("storagetype",key.getStorageType()); - if(l==null){ - jsonObject.put("usedCapacity",0); - }else{ + jsonObject.put("isok", ret); + jsonObject.put("storagetype", key.getStorageType()); + if (l == null) { + jsonObject.put("usedCapacity", 0); + } else { jsonObject.put("usedCapacity", SetFiles.readableFileSize(l)); } msg.setData(jsonObject); - }catch (Exception e){ + } catch (Exception e) { e.printStackTrace(); msg.setCode("500"); } @@ -212,7 +215,7 @@ public class AdminRootController { } - @PostMapping("/updateStorage") //new + @PostMapping("/updateStorage") @ResponseBody public Msg updateStorage(@RequestParam(value = "data", defaultValue = "") String data) { JSONObject jsonObj = JSONObject.parseObject(data); @@ -237,7 +240,7 @@ public class AdminRootController { return msg; } - @PostMapping("/getStorageById")//new + @PostMapping("/getStorageById") @ResponseBody public Msg getselectkey(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -248,7 +251,7 @@ public class AdminRootController { return msg; } - @PostMapping("/getSettingConfig") //new + @PostMapping("/getSettingConfig") @ResponseBody public Msg getSettingConfig(@RequestParam(value = "data", defaultValue = "") String data) { final Msg msg = new Msg(); @@ -259,13 +262,15 @@ public class AdminRootController { UploadConfig uploadConfig = uploadConfigService.getUpdateConfig(); Config config = configService.getSourceype(); SysConfig sysConfig = sysConfigService.getstate(); - uploadConfig.setUsermemory(Long.toString(Long.valueOf(uploadConfig.getUsermemory())/1024/1024)); - uploadConfig.setVisitormemory(Long.toString(Long.valueOf(uploadConfig.getVisitormemory())/1024/1024)); - uploadConfig.setFilesizetourists(Long.toString(Long.valueOf(uploadConfig.getFilesizetourists())/1024/1024)); - uploadConfig.setFilesizeuser(Long.toString(Long.valueOf(uploadConfig.getFilesizeuser())/1024/1024)); - jsonObject.put("uploadConfig",uploadConfig); - jsonObject.put("config",config); - jsonObject.put("sysConfig",sysConfig); + AppClient appClientData = appClientService.getAppClientData("app"); + uploadConfig.setUsermemory(Long.toString(Long.valueOf(uploadConfig.getUsermemory()) / 1024 / 1024)); + uploadConfig.setVisitormemory(Long.toString(Long.valueOf(uploadConfig.getVisitormemory()) / 1024 / 1024)); + uploadConfig.setFilesizetourists(Long.toString(Long.valueOf(uploadConfig.getFilesizetourists()) / 1024 / 1024)); + uploadConfig.setFilesizeuser(Long.toString(Long.valueOf(uploadConfig.getFilesizeuser()) / 1024 / 1024)); + jsonObject.put("uploadConfig", uploadConfig); + jsonObject.put("config", config); + jsonObject.put("sysConfig", sysConfig); + jsonObject.put("appClient", appClientData); msg.setData(jsonObject); } catch (Exception e) { e.printStackTrace(); @@ -276,36 +281,44 @@ public class AdminRootController { } - @PostMapping("/updateConfig")//new + @PostMapping("/updateConfig") @ResponseBody public Msg updateConfig(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); try { JSONObject jsonObject = JSONObject.parseObject(data); - UploadConfig uploadConfig = JSON.toJavaObject((JSON) jsonObject.get("uploadConfig"),UploadConfig.class); - String vm = uploadConfig.getVisitormemory(); - if((Long.valueOf(vm)<-1) || Long.valueOf(vm) > 104857600 || Long.valueOf(uploadConfig.getFilesizetourists())<0 || Long.valueOf(uploadConfig.getFilesizetourists()) > 5120 - || Long.valueOf(uploadConfig.getUsermemory())<0 || Long.valueOf(uploadConfig.getUsermemory())>1048576 - || Long.valueOf(uploadConfig.getFilesizeuser())<0 || Long.valueOf(uploadConfig.getFilesizeuser())>5120 ){ + UploadConfig uploadConfig = JSON.toJavaObject((JSON) jsonObject.get("uploadConfig"), UploadConfig.class); + String vm = uploadConfig.getVisitormemory(); + if ((Long.valueOf(vm) < -1) || Long.valueOf(vm) > 104857600 || Long.valueOf(uploadConfig.getFilesizetourists()) < 0 || Long.valueOf(uploadConfig.getFilesizetourists()) > 5120 + || Long.valueOf(uploadConfig.getUsermemory()) < 0 || Long.valueOf(uploadConfig.getUsermemory()) > 1048576 + || Long.valueOf(uploadConfig.getFilesizeuser()) < 0 || Long.valueOf(uploadConfig.getFilesizeuser()) > 5120) { msg.setInfo("你输入的值不正确"); msg.setCode("500"); - return msg; + return msg; } - Config config = JSON.toJavaObject((JSON) jsonObject.get("config"),Config.class); - SysConfig sysConfig = JSON.toJavaObject((JSON) jsonObject.get("sysConfig"),SysConfig.class); - if(Integer.valueOf(vm)==-1){ + Config config = JSON.toJavaObject((JSON) jsonObject.get("config"), Config.class); + SysConfig sysConfig = JSON.toJavaObject((JSON) jsonObject.get("sysConfig"), SysConfig.class); + AppClient appClient = JSON.toJavaObject((JSON) jsonObject.get("appClient"), AppClient.class); + if (Integer.valueOf(vm) == -1) { uploadConfig.setVisitormemory("-1"); - }else{ - uploadConfig.setVisitormemory(Long.toString(Long.valueOf(uploadConfig.getVisitormemory())*1024*1024)); + } else { + uploadConfig.setVisitormemory(Long.toString(Long.valueOf(uploadConfig.getVisitormemory()) * 1024 * 1024)); } - uploadConfig.setFilesizetourists(Long.toString(Long.valueOf(uploadConfig.getFilesizetourists())*1024*1024)); - uploadConfig.setUsermemory(Long.toString(Long.valueOf(uploadConfig.getUsermemory())*1024*1024)); - uploadConfig.setFilesizeuser(Long.toString(Long.valueOf(uploadConfig.getFilesizeuser())*1024*1024)); + uploadConfig.setFilesizetourists(Long.toString(Long.valueOf(uploadConfig.getFilesizetourists()) * 1024 * 1024)); + uploadConfig.setUsermemory(Long.toString(Long.valueOf(uploadConfig.getUsermemory()) * 1024 * 1024)); + uploadConfig.setFilesizeuser(Long.toString(Long.valueOf(uploadConfig.getFilesizeuser()) * 1024 * 1024)); uploadConfigService.setUpdateConfig(uploadConfig); configService.setSourceype(config); sysConfigService.setstate(sysConfig); + if (!appClient.getIsuse().equals("on")) { + appClient.setIsuse("off"); + } + if (!appClient.getAppupdate().equals("on")) { + appClient.setAppupdate("off"); + } + appClientService.editAppClientData(appClient); msg.setInfo("配置保存成功"); - }catch (Exception e){ + } catch (Exception e) { e.printStackTrace(); msg.setInfo("操作出现异常"); msg.setCode("500"); @@ -314,7 +327,7 @@ public class AdminRootController { } - @PostMapping(value = "/getOrderConfig")//new + @PostMapping(value = "/getOrderConfig") @ResponseBody public Msg emailconfig() { final Msg msg = new Msg(); @@ -324,8 +337,8 @@ public class AdminRootController { final JSONObject jsonObject = new JSONObject(); emailConfig = emailConfigService.getemail(); imgreview = imgreviewService.selectByPrimaryKey(1); - jsonObject.put("emailConfig",emailConfig); - jsonObject.put("imgreview",imgreview); + jsonObject.put("emailConfig", emailConfig); + jsonObject.put("imgreview", imgreview); msg.setData(jsonObject); } catch (Exception e) { e.printStackTrace(); @@ -336,17 +349,17 @@ public class AdminRootController { } - @PostMapping("/updateEmailConfig") //new + @PostMapping("/updateEmailConfig") @ResponseBody - public Msg updateemail(@RequestParam(value = "data", defaultValue = "") String data ) { + public Msg updateemail(@RequestParam(value = "data", defaultValue = "") String data) { final Msg msg = new Msg(); try { JSONObject jsonObj = JSONObject.parseObject(data); - EmailConfig emailConfig = JSON.toJavaObject(jsonObj,EmailConfig.class); - if(null==emailConfig.getId() || null==emailConfig.getEmailname() || null==emailConfig.getEmailurl() || null==emailConfig.getEmails() - || null==emailConfig.getEmailkey() || null==emailConfig.getPort() || null==emailConfig.getUsing() - || emailConfig.getEmailname().equals("") || emailConfig.getEmailurl().equals("") || emailConfig.getEmails().equals("") - || emailConfig.getEmailkey().equals("") || emailConfig.getPort().equals("")){ + EmailConfig emailConfig = JSON.toJavaObject(jsonObj, EmailConfig.class); + if (null == emailConfig.getId() || null == emailConfig.getEmailname() || null == emailConfig.getEmailurl() || null == emailConfig.getEmails() + || null == emailConfig.getEmailkey() || null == emailConfig.getPort() || null == emailConfig.getUsing() + || emailConfig.getEmailname().equals("") || emailConfig.getEmailurl().equals("") || emailConfig.getEmails().equals("") + || emailConfig.getEmailkey().equals("") || emailConfig.getPort().equals("")) { msg.setCode("110400"); msg.setInfo("各参数不能为空"); return msg; @@ -361,18 +374,18 @@ public class AdminRootController { return msg; } - @PostMapping("/mailTest") //new + @PostMapping("/mailTest") @ResponseBody - public Msg mailTest(@RequestParam(value = "data", defaultValue = "") String data ) { + public Msg mailTest(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); JSONObject jsonObj = JSONObject.parseObject(data); String tomail = jsonObj.getString("tomail"); - EmailConfig emailConfig = JSON.toJavaObject(jsonObj,EmailConfig.class); - if(null==emailConfig.getEmails() || null==emailConfig.getEmailkey() || null==emailConfig.getEmailurl() - || null==emailConfig.getPort() || null==emailConfig.getEmailname() || null==tomail){ + EmailConfig emailConfig = JSON.toJavaObject(jsonObj, EmailConfig.class); + if (null == emailConfig.getEmails() || null == emailConfig.getEmailkey() || null == emailConfig.getEmailurl() + || null == emailConfig.getPort() || null == emailConfig.getEmailname() || null == tomail) { msg.setCode("110400"); msg.setInfo("邮箱配置参数不能为空"); - }else{ + } else { msg = NewSendEmail.sendTestEmail(emailConfig, tomail); } return msg; diff --git a/src/main/java/cn/hellohao/controller/AlbumController.java b/src/main/java/cn/hellohao/controller/AlbumController.java index f6adb40..3b3b000 100644 --- a/src/main/java/cn/hellohao/controller/AlbumController.java +++ b/src/main/java/cn/hellohao/controller/AlbumController.java @@ -35,13 +35,13 @@ public class AlbumController { @Autowired private UserService userService; - @PostMapping("/admin/getGalleryList") //new + @PostMapping("/admin/getGalleryList") @ResponseBody - public Map getGalleryList (@RequestParam(value = "data", defaultValue = "") String data){ + public Msg getGalleryList (@RequestParam(value = "data", defaultValue = "") String data){ + Msg msg = new Msg(); Subject subject = SecurityUtils.getSubject(); User user = (User) subject.getPrincipal(); user = userService.getUsers(user); - Map map = new HashMap(); Album album = new Album(); JSONObject jsonObj = JSONObject.parseObject(data); Integer pageNum = jsonObj.getInteger("pageNum"); @@ -56,20 +56,17 @@ public class AlbumController { try { albums = albumServiceImpl.selectAlbumURLList(album); PageInfo rolePageInfo = new PageInfo<>(albums); - map.put("code", 200); - map.put("info", ""); - map.put("count", rolePageInfo.getTotal()); - map.put("data", rolePageInfo.getList()); + msg.setData(rolePageInfo); } catch (Exception e) { e.printStackTrace(); - map.put("code", 500); - map.put("info", "获取数据异常"); + msg.setInfo("获取数据异常"); + msg.setCode("500"); } - return map; + return msg; } - @PostMapping("/admin/deleGallery") //new 删除画廊 + @PostMapping("/admin/deleGallery") @ResponseBody public Msg deleGallery (@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -101,7 +98,7 @@ public class AlbumController { } //后台列表要修改时的查询表单 - @PostMapping("/admin/getAlbumListForKey") //new + @PostMapping("/admin/getAlbumListForKey") @ResponseBody public Msg getAlbumListForKey(@RequestParam(value = "data", defaultValue = "") String data){ Msg msg = new Msg(); @@ -132,7 +129,7 @@ public class AlbumController { } - @PostMapping("/getAlbumImgList") //new + @PostMapping("/getAlbumImgList") @ResponseBody public Msg getAlbumImgList(@RequestParam("data") String data) { Msg msg = new Msg(); @@ -143,7 +140,7 @@ public class AlbumController { return msg; } - @PostMapping("/SaveForAlbum")//new + @PostMapping("/SaveForAlbum") @ResponseBody public Msg SaveForAlbum(@RequestParam(value = "data", defaultValue = "") String data){ data = StringEscapeUtils.unescapeHtml4(data); @@ -205,7 +202,7 @@ public class AlbumController { } - @PostMapping("/admin/UpdateForAlbum")//new + @PostMapping("/admin/UpdateForAlbum") @ResponseBody public Msg UpdateForAlbum(@RequestParam(value = "data", defaultValue = "") String data){ data = StringEscapeUtils.unescapeHtml4(data); @@ -264,7 +261,7 @@ public class AlbumController { } - @PostMapping("/checkPass")//new + @PostMapping("/checkPass") @ResponseBody public Msg checkPass(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); @@ -298,7 +295,7 @@ public class AlbumController { return msg; } - @PostMapping("/getAlbumList") //new + @PostMapping("/getAlbumList") @ResponseBody public Msg getAlbumList(@RequestParam(value = "data", defaultValue = "") String data){ Msg msg = new Msg(); diff --git a/src/main/java/cn/hellohao/controller/ClientAppController.java b/src/main/java/cn/hellohao/controller/ClientAppController.java new file mode 100644 index 0000000..201cdaf --- /dev/null +++ b/src/main/java/cn/hellohao/controller/ClientAppController.java @@ -0,0 +1,101 @@ +package cn.hellohao.controller; + +import cn.hellohao.auth.token.JWTUtil; +import cn.hellohao.pojo.AppClient; +import cn.hellohao.pojo.Msg; +import cn.hellohao.pojo.UploadConfig; +import cn.hellohao.pojo.User; +import cn.hellohao.service.AppClientService; +import cn.hellohao.service.ImgService; +import cn.hellohao.service.UploadConfigService; +import cn.hellohao.service.impl.UserServiceImpl; +import com.alibaba.fastjson.JSONObject; +import org.apache.shiro.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @author Hellohao + * @version 1.0 + * @date 2022-05-16 32:45 + */ +@RestController +@RequestMapping("/client") +public class ClientAppController { + + @Autowired + private ImgService imgService; + @Autowired + private AppClientService appClientService; + @Autowired + private UserServiceImpl userService; + @Autowired + private UploadConfigService uploadConfigService; + + @PostMapping("/loginByToken") + @ResponseBody + public Msg loginByToken(@RequestParam(value = "data", defaultValue = "") String data) { + Msg msg = new Msg(); + JSONObject jsonObj = JSONObject.parseObject(data); + JSONObject jsonObject = new JSONObject(); + try{ + User newUser = new User(); + String userToken = jsonObj.getString("userToken"); + newUser.setToken(userToken); + User userData = userService.loginByToken(userToken); + if(userData.getIsok()<1){ + SecurityUtils.getSubject().logout(); + msg.setInfo("账号暂时无法使用,请咨询管理员"); + msg.setCode("110403"); + return msg; + } + String jwtToken = JWTUtil.createToken(userData); + UploadConfig uploadConfig = uploadConfigService.getUpdateConfig(); + jsonObject.put("username", userData.getUsername()); + jsonObject.put("jwttoken", jwtToken); + jsonObject.put("suffix",uploadConfig.getSuffix().split(",")); + jsonObject.put("myImgTotal", imgService.countimg(userData.getId())); + jsonObject.put("filesize",Integer.valueOf(uploadConfig.getFilesizeuser())/1024); + jsonObject.put("imgcount",uploadConfig.getImgcountuser()); + jsonObject.put("uploadSwitch",uploadConfig.getUserclose()); + long memory = Long.valueOf(userData.getMemory()); + Long usermemory = imgService.getusermemory(userData.getId())==null?0L:imgService.getusermemory(userData.getId()); + if(memory==0){ + jsonObject.put("myMemory","无容量"); + }else{ + Double aDouble = Double.valueOf(String.format("%.2f", (((double)usermemory/(double)memory)*100))); + if(aDouble>=999){ + jsonObject.put("myMemory",999); + }else{ + jsonObject.put("myMemory",aDouble); + } + } + msg.setData(jsonObject); + }catch (Exception e){ + e.printStackTrace(); + msg.setCode("110500"); + msg.setInfo("未获取到用户,请先在设置中添加Token"); + } + return msg; + } + + @PostMapping("/getVersion") + @ResponseBody + public Msg getVersion() { + Msg msg = new Msg(); + try { + AppClient app = appClientService.getAppClientData("app"); + if(app.getAppupdate().equals("on")){ + msg.setData(app.getPackurl()); + }else{ + msg.setCode("000"); + } + }catch (Exception e){ + msg.setCode("000"); + } + return msg; + } + + + +} diff --git a/src/main/java/cn/hellohao/controller/CodeController.java b/src/main/java/cn/hellohao/controller/CodeController.java index 6d422f1..5c8c0b7 100644 --- a/src/main/java/cn/hellohao/controller/CodeController.java +++ b/src/main/java/cn/hellohao/controller/CodeController.java @@ -26,10 +26,10 @@ public class CodeController { @Autowired private CodeService codeService; - @RequestMapping(value = "/selectCodeList")//new + @RequestMapping(value = "/selectCodeList") @ResponseBody - public Map selectCodeList(@RequestParam(value = "data", defaultValue = "") String data) { - Map map = new HashMap(); + public Msg selectCodeList(@RequestParam(value = "data", defaultValue = "") String data) { + Msg msg = new Msg(); JSONObject jsonObj = JSONObject.parseObject(data); Integer pageNum = jsonObj.getInteger("pageNum"); Integer pageSize = jsonObj.getInteger("pageSize"); @@ -38,19 +38,16 @@ public class CodeController { try { codes = codeService.selectCode(null); PageInfo rolePageInfo = new PageInfo<>(codes); - map.put("code", 200); - map.put("info", ""); - map.put("count", rolePageInfo.getTotal()); - map.put("data", rolePageInfo.getList()); + msg.setData(rolePageInfo); } catch (Exception e) { e.printStackTrace(); - map.put("code", 500); - map.put("info", "获取数据异常"); + msg.setCode("500"); + msg.setInfo("获取数据异常"); } - return map; + return msg; } - @RequestMapping("/deleteCodes")//new + @RequestMapping("/deleteCodes") @ResponseBody public Msg deletecodes(@RequestParam(value = "data", defaultValue = "") String data){ final Msg msg = new Msg(); @@ -72,7 +69,7 @@ public class CodeController { } - @RequestMapping("/addCode")//new + @RequestMapping("/addCode") @ResponseBody public Msg addcode(@RequestParam(value = "data", defaultValue = "") String data){ final Msg msg = new Msg(); diff --git a/src/main/java/cn/hellohao/controller/GroupController.java b/src/main/java/cn/hellohao/controller/GroupController.java index ca5e5db..55732db 100644 --- a/src/main/java/cn/hellohao/controller/GroupController.java +++ b/src/main/java/cn/hellohao/controller/GroupController.java @@ -12,9 +12,8 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; -import java.util.HashMap; + import java.util.List; -import java.util.Map; /** * @author Hellohao @@ -28,7 +27,7 @@ public class GroupController { private GroupService groupService; - @PostMapping("/getGrouplistForUsers") //new + @PostMapping("/getGrouplistForUsers") @ResponseBody public Msg getGrouplistForUsers() { Msg msg = new Msg(); @@ -37,10 +36,10 @@ public class GroupController { return msg; } - @PostMapping(value = "/getGroupList")//new + @PostMapping(value = "/getGroupList") @ResponseBody - public Map getgrouplist(@RequestParam(value = "data", defaultValue = "") String data) { - Map map = new HashMap(); + public Msg getgrouplist(@RequestParam(value = "data", defaultValue = "") String data) { + Msg msg = new Msg(); JSONObject jsonObj = JSONObject.parseObject(data); Integer pageNum = jsonObj.getInteger("pageNum"); Integer pageSize = jsonObj.getInteger("pageSize"); @@ -49,19 +48,16 @@ public class GroupController { try { group = groupService.grouplist(null); PageInfo rolePageInfo = new PageInfo<>(group); - map.put("code", 200); - map.put("info", ""); - map.put("count", rolePageInfo.getTotal()); - map.put("data", rolePageInfo.getList()); + msg.setData(rolePageInfo); } catch (Exception e) { e.printStackTrace(); - map.put("code", 500); - map.put("info", "获取数据异常"); + msg.setCode("500"); + msg.setInfo("获取数据异常"); } - return map; + return msg; } - @PostMapping(value = "/addGroup")//new + @PostMapping(value = "/addGroup") @ResponseBody public Msg addisgroup(@RequestParam(value = "data", defaultValue = "") String data) { JSONObject jsonObject = JSONObject.parseObject(data); @@ -74,7 +70,7 @@ public class GroupController { return msg; } - @PostMapping("/updateGroup")//new + @PostMapping("/updateGroup") @ResponseBody public Msg updategroup(@RequestParam(value = "data", defaultValue = "") String data) { JSONObject jsonObject = JSONObject.parseObject(data); @@ -93,7 +89,7 @@ public class GroupController { return msg; } - @PostMapping(value = "/deleGroup")//new + @PostMapping(value = "/deleGroup") @ResponseBody public Msg delegroup(@RequestParam(value = "data", defaultValue = "") String data) { JSONObject jsonObject = JSONObject.parseObject(data); diff --git a/src/main/java/cn/hellohao/controller/IndexController.java b/src/main/java/cn/hellohao/controller/IndexController.java index 8c2ff76..267c0c7 100644 --- a/src/main/java/cn/hellohao/controller/IndexController.java +++ b/src/main/java/cn/hellohao/controller/IndexController.java @@ -3,11 +3,14 @@ package cn.hellohao.controller; import cn.hellohao.auth.token.JWTUtil; import cn.hellohao.pojo.*; import cn.hellohao.service.*; -import cn.hellohao.service.impl.*; -import cn.hellohao.utils.*; +import cn.hellohao.service.impl.AlbumServiceImpl; +import cn.hellohao.service.impl.UploadServicel; +import cn.hellohao.service.impl.deleImages; import cn.hellohao.utils.verifyCode.IVerifyCodeGen; import cn.hellohao.utils.verifyCode.SimpleCharVerifyCodeGenImpl; -import cn.hellohao.utils.verifyCode.VerifyCode; +import cn.hutool.captcha.CaptchaUtil; +import cn.hutool.captcha.ShearCaptcha; +import cn.hutool.captcha.generator.MathGenerator; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.apache.shiro.SecurityUtils; @@ -17,11 +20,14 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; -import java.io.*; +import java.io.IOException; import java.util.List; +import java.util.Timer; +import java.util.TimerTask; @Controller public class IndexController { @@ -30,8 +36,6 @@ public class IndexController { @Autowired private SysConfigService sysConfigService; @Autowired - IRedisService iRedisService; - @Autowired private ConfigService configService; @Autowired private UploadConfigService uploadConfigService; @@ -41,6 +45,8 @@ public class IndexController { private deleImages deleimages; @Autowired AlbumServiceImpl albumService; + @Autowired + AppClientService appClientService; @RequestMapping(value = "/webInfo") @@ -51,6 +57,7 @@ public class IndexController { UploadConfig updateConfig = uploadConfigService.getUpdateConfig(); SysConfig sysConfig = sysConfigService.getstate(); JSONObject jsonObject = new JSONObject(); + AppClient appClient = appClientService.getAppClientData("app"); jsonObject.put("webname",config.getWebname()); jsonObject.put("websubtitle",config.getWebsubtitle()); jsonObject.put("keywords",config.getWebkeywords()); @@ -63,18 +70,22 @@ public class IndexController { jsonObject.put("logo",config.getLogo()); jsonObject.put("api",updateConfig.getApi()); jsonObject.put("register",sysConfig.getRegister()); + jsonObject.put("isuse",appClient.getIsuse()); + jsonObject.put("packurl",appClient.getPackurl()); + jsonObject.put("clientname",appClient.getAppname()); + jsonObject.put("clientlogo",appClient.getApplogo()); + jsonObject.put("appupdate",appClient.getAppupdate()); msg.setData(jsonObject); return msg; } - @PostMapping(value = "/upload")// new + @PostMapping(value = {"/upload","/client/upload"})// new @ResponseBody - public Msg upimg(HttpServletRequest request,HttpSession httpSession - , @RequestParam(value = "file", required = false) MultipartFile multipartFile,Integer day) { + public Msg upimg(HttpServletRequest request, @RequestParam(value = "file", required = false) MultipartFile multipartFile,Integer day) { return uploadServicel.uploadForLoc(request,multipartFile,day,null); } - @PostMapping(value = "/uploadForUrl") //new + @PostMapping(value = {"/uploadForUrl","/client/uploadForUrl"}) //new @ResponseBody public Msg upurlimg(HttpServletRequest request,@RequestParam(value = "data", defaultValue = "") String data) { JSONObject jsonObj = JSONObject.parseObject(data); @@ -186,15 +197,22 @@ public class IndexController { public void verifyCode(HttpServletRequest request, HttpServletResponse response,HttpSession httpSession) { IVerifyCodeGen iVerifyCodeGen = new SimpleCharVerifyCodeGenImpl(); try { - VerifyCode verifyCode = iVerifyCodeGen.generate(80, 38); - String code = verifyCode.getCode(); - String userIP = GetIPS.getIpAddr(request); - iRedisService.setValue(userIP+"_hellohao_verifyCode",code); + ShearCaptcha captcha = CaptchaUtil.createShearCaptcha(90, 35, 2, 2); + captcha.setGenerator(new MathGenerator(1)); + httpSession.setAttribute("_hellohao_verifyCode",captcha); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/jpeg"); - response.getOutputStream().write(verifyCode.getImgBytes()); + captcha.write(response.getOutputStream()); + final Timer timer=new Timer(); + timer.schedule(new TimerTask() { + @Override + public void run() { + httpSession.removeAttribute("_hellohao_verifyCode"); + timer.cancel(); + } + },5*60*1000); response.getOutputStream().flush(); } catch (IOException e) { e.printStackTrace(); @@ -205,15 +223,21 @@ public class IndexController { public void verifyCodeForRegister(HttpServletRequest request, HttpServletResponse response,HttpSession httpSession) { IVerifyCodeGen iVerifyCodeGen = new SimpleCharVerifyCodeGenImpl(); try { - VerifyCode verifyCode = iVerifyCodeGen.generate(80, 38); - String code = verifyCode.getCode(); - String userIP = GetIPS.getIpAddr(request); - iRedisService.setValue(userIP+"_hellohao_verifyCodeForRegister",code); + ShearCaptcha captcha = CaptchaUtil.createShearCaptcha(90, 35, 2, 2); + httpSession.setAttribute("_hellohao_verifyCodeForRegister",captcha); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/jpeg"); - response.getOutputStream().write(verifyCode.getImgBytes()); + captcha.write(response.getOutputStream()); + final Timer timer=new Timer(); + timer.schedule(new TimerTask() { + @Override + public void run() { + httpSession.removeAttribute("_hellohao_verifyCodeForRegister"); + timer.cancel(); + } + },5*60*1000); response.getOutputStream().flush(); } catch (IOException e) { e.printStackTrace(); @@ -224,23 +248,28 @@ public class IndexController { public void verifyCodeForRetrieve(HttpServletRequest request, HttpServletResponse response,HttpSession httpSession) { IVerifyCodeGen iVerifyCodeGen = new SimpleCharVerifyCodeGenImpl(); try { - VerifyCode verifyCode = iVerifyCodeGen.generate(80, 38); - String code = verifyCode.getCode(); - System.out.println("verifyCodeForRetrieve-zhaoHui httpSession ID==="+httpSession.getId()); - String userIP = GetIPS.getIpAddr(request); - iRedisService.setValue(userIP+"_hellohao_verifyCodeForEmailRetrieve",code); + ShearCaptcha captcha = CaptchaUtil.createShearCaptcha(90, 35, 2, 2); + httpSession.setAttribute("_hellohao_verifyCodeForEmailRetrieve",captcha); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/jpeg"); - response.getOutputStream().write(verifyCode.getImgBytes()); + captcha.write(response.getOutputStream()); + final Timer timer=new Timer(); + timer.schedule(new TimerTask() { + @Override + public void run() { + httpSession.removeAttribute("_hellohao_verifyCodeForEmailRetrieve"); + timer.cancel(); + } + },5*60*1000); response.getOutputStream().flush(); } catch (IOException e) { e.printStackTrace(); } } - @PostMapping("/deleImagesByUid") //new + @PostMapping({"/deleImagesByUid","/client/deleImagesByUid"}) //new @ResponseBody public Msg deleImagesByUid(@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); diff --git a/src/main/java/cn/hellohao/controller/UserController.java b/src/main/java/cn/hellohao/controller/UserController.java index 01dd833..6856f0f 100644 --- a/src/main/java/cn/hellohao/controller/UserController.java +++ b/src/main/java/cn/hellohao/controller/UserController.java @@ -1,18 +1,14 @@ package cn.hellohao.controller; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.UUID; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; import cn.hellohao.auth.filter.SubjectFilter; import cn.hellohao.auth.token.JWTUtil; import cn.hellohao.config.SysName; import cn.hellohao.pojo.*; import cn.hellohao.service.*; import cn.hellohao.utils.*; +import cn.hutool.captcha.ShearCaptcha; import cn.hutool.core.util.HexUtil; +import com.alibaba.fastjson.JSONObject; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.IncorrectCredentialsException; import org.apache.shiro.authc.UnknownAccountException; @@ -21,9 +17,15 @@ import org.apache.shiro.subject.Subject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import com.alibaba.fastjson.JSONObject; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.UUID; + @Controller @RequestMapping("/user") @@ -43,15 +45,14 @@ public class UserController { @PostMapping("/register") @ResponseBody - public Msg Register(HttpServletRequest request, @RequestParam(value = "data", defaultValue = "") String data) {//Validated + public Msg Register(HttpSession httpSession, @RequestParam(value = "data", defaultValue = "") String data) {//Validated Msg msg = new Msg(); JSONObject jsonObj = JSONObject.parseObject(data); String username = jsonObj.getString("username"); String email = jsonObj.getString("email"); String password = Base64Encryption.encryptBASE64(jsonObj.getString("password").getBytes()); - String userIP = GetIPS.getIpAddr(request); String verifyCodeForRegister = jsonObj.getString("verifyCode"); - Object redis_verifyCodeForRegister = iRedisService.getValue(userIP+"_hellohao_verifyCodeForRegister"); + ShearCaptcha redis_verifyCodeForRegister = (ShearCaptcha) httpSession.getAttribute("_hellohao_verifyCodeForRegister");//iRedisService.getValue(userIP+"_verifyCodeForRegister"); if(!SetText.checkEmail(email)){ msg.setCode("110403"); msg.setInfo("邮箱格式不正确"); @@ -72,7 +73,7 @@ public class UserController { msg.setInfo("验证码不能为空。"); return msg; } - if((redis_verifyCodeForRegister.toString().toLowerCase()).compareTo((verifyCodeForRegister.toLowerCase()))==0){ + if(redis_verifyCodeForRegister.verify(verifyCodeForRegister.toLowerCase())){ User user = new User(); UploadConfig updateConfig = uploadConfigService.getUpdateConfig(); EmailConfig emailConfig = emailConfigService.getemail(); @@ -130,14 +131,13 @@ public class UserController { @PostMapping("/login")//new @ResponseBody - public Msg login(HttpServletRequest request,@RequestParam(value = "data", defaultValue = "") String data) { + public Msg login(HttpServletRequest request,HttpSession httpSession,@RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); JSONObject jsonObj = JSONObject.parseObject(data); String email = jsonObj.getString("email"); String password = Base64Encryption.encryptBASE64(jsonObj.getString("password").getBytes()); String verifyCode = jsonObj.getString("verifyCode"); - String userIP = GetIPS.getIpAddr(request); - Object redis_VerifyCode = iRedisService.getValue(userIP+"_hellohao_verifyCode"); + ShearCaptcha redis_VerifyCode = (ShearCaptcha)httpSession.getAttribute("_hellohao_verifyCode"); if(null==redis_VerifyCode){ msg.setCode("4035"); msg.setInfo("验证码已失效,请重新弄获取。"); @@ -147,7 +147,7 @@ public class UserController { msg.setInfo("验证码不能为空。"); return msg; } - if((redis_VerifyCode.toString().toLowerCase()).compareTo((verifyCode.toLowerCase()))==0){ + if(redis_VerifyCode.verify(verifyCode.toLowerCase())){ Subject subject = SecurityUtils.getSubject(); UsernamePasswordToken tokenOBJ = new UsernamePasswordToken(email,password); tokenOBJ.setRememberMe(true); @@ -238,15 +238,13 @@ public class UserController { @PostMapping("/retrievePass") //new @ResponseBody - public Msg retrievePass(HttpServletRequest request, @RequestParam(value = "data", defaultValue = "") String data) { + public Msg retrievePass(HttpServletRequest request,HttpSession httpSession, @RequestParam(value = "data", defaultValue = "") String data) { Msg msg = new Msg(); try { JSONObject jsonObj = JSONObject.parseObject(data); String email = jsonObj.getString("email"); String retrieveCode = jsonObj.getString("retrieveCode"); - String userIP = GetIPS.getIpAddr(request); - Object redis_verifyCodeForEmailRetrieve = iRedisService.getValue(userIP+"_hellohao_verifyCodeForEmailRetrieve"); - + ShearCaptcha redis_verifyCodeForEmailRetrieve =(ShearCaptcha) httpSession.getAttribute("_hellohao_verifyCodeForEmailRetrieve");// iRedisService.getValue(userIP+"_verifyCodeForEmailRetrieve"); EmailConfig emailConfig = emailConfigService.getemail(); if(null==redis_verifyCodeForEmailRetrieve){ msg.setCode("4035"); @@ -257,7 +255,7 @@ public class UserController { msg.setInfo("验证码不能为空。"); return msg; } - if((redis_verifyCodeForEmailRetrieve.toString().toLowerCase()).compareTo((retrieveCode.toLowerCase()))!=0){ + if(!redis_verifyCodeForEmailRetrieve.verify(retrieveCode.toLowerCase())){ msg.setCode("40034"); msg.setInfo("验证码不正确"); return msg; @@ -277,7 +275,7 @@ public class UserController { Config config = configService.getSourceype(); Thread thread = new Thread() { public void run() { - Integer a = NewSendEmail.sendEmailFindPass(emailConfig,user.getUsername(), user.getUid(), user.getEmail(),config);//SendEmail.sendEmailT(message, user.getUsername(), user.getUid(), user.getEmail(),emailConfig,config); + Integer a = NewSendEmail.sendEmailFindPass(emailConfig,user.getUsername(), user.getUid(), user.getEmail(),config);//SendEmail.sendEmailT(message, user.getUsername(), user.getUid(), user.getEmail(),emailConfig,config); } }; thread.start(); diff --git a/src/main/java/cn/hellohao/dao/AppClientMapper.java b/src/main/java/cn/hellohao/dao/AppClientMapper.java new file mode 100644 index 0000000..615ef82 --- /dev/null +++ b/src/main/java/cn/hellohao/dao/AppClientMapper.java @@ -0,0 +1,19 @@ +package cn.hellohao.dao; + +import cn.hellohao.pojo.AppClient; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + * @author Hellohao + * @version 1.0 + * @date 2022-06-10 18:33 + */ + +@Mapper +public interface AppClientMapper { + AppClient getAppClientData(@Param("id") String id); + + Integer editAppClientData(AppClient appClient); + +} diff --git a/src/main/java/cn/hellohao/dao/UserMapper.java b/src/main/java/cn/hellohao/dao/UserMapper.java index 398ffc3..6f84966 100644 --- a/src/main/java/cn/hellohao/dao/UserMapper.java +++ b/src/main/java/cn/hellohao/dao/UserMapper.java @@ -10,45 +10,24 @@ import java.util.List; @Mapper public interface UserMapper { - //注册 Integer register(User user); - - //登录 Integer login(@Param("email") String email, @Param("password") String password,@Param("uid") String uid); - - //获取用户信息 User getUsers(User user); - - //插入图片 + User loginByToken (@Param("token") String token); Integer insertimg(Images img); - - //修改资料 Integer change(User user); - Integer changeUser(User user); - //检查用户名是否重复 Integer checkUsername(@Param("username") String username); - Integer getUserTotal(); - List getuserlist(String username); - - //刪除用戶 Integer deleuser(@Param("id") Integer id); - - //查询用户名或者邮箱是否存在 Integer countusername(@Param("username") String username); - Integer countmail(@Param("email") String email); - Integer uiduser(@Param("uid") String uid); - User getUsersMail(@Param("uid") String uid); Integer setisok (User user); - Integer setmemory(User user); User getUsersid(@Param("id") Integer id); - List getuserlistforgroupid(@Param("groupid") Integer groupid); } diff --git a/src/main/java/cn/hellohao/pojo/AppClient.java b/src/main/java/cn/hellohao/pojo/AppClient.java new file mode 100644 index 0000000..fca9792 --- /dev/null +++ b/src/main/java/cn/hellohao/pojo/AppClient.java @@ -0,0 +1,70 @@ +package cn.hellohao.pojo; + +public class AppClient { + + private String id; + private String isuse; + private String packurl; + private String appname; + private String applogo; + private String appupdate; + + public AppClient(){} + + public AppClient(String id, String isuse, String packurl, String appname, String applogo, String appupdate) { + this.id = id; + this.isuse = isuse; + this.packurl = packurl; + this.appname = appname; + this.applogo = applogo; + this.appupdate = appupdate; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsuse() { + return isuse; + } + + public void setIsuse(String isuse) { + this.isuse = isuse; + } + + public String getPackurl() { + return packurl; + } + + public void setPackurl(String packurl) { + this.packurl = packurl; + } + + public String getAppname() { + return appname; + } + + public void setAppname(String appname) { + this.appname = appname; + } + + public String getApplogo() { + return applogo; + } + + public void setApplogo(String applogo) { + this.applogo = applogo; + } + + public String getAppupdate() { + return appupdate; + } + + public void setAppupdate(String isupdate) { + this.appupdate = isupdate; + } +} diff --git a/src/main/java/cn/hellohao/pojo/User.java b/src/main/java/cn/hellohao/pojo/User.java index 477b267..b1a70dd 100644 --- a/src/main/java/cn/hellohao/pojo/User.java +++ b/src/main/java/cn/hellohao/pojo/User.java @@ -16,6 +16,7 @@ public class User { private String memory; private Integer groupid; private String groupname; + private String token; private Long counts;//用户img counts @@ -25,7 +26,7 @@ public class User { } public User(Integer id, String username, String password, String email, String birthder, Integer level, String uid, - Integer isok, String memory, Integer groupid,String groupname,Long counts) { + Integer isok, String memory, Integer groupid,String groupname,Long counts,String token) { this.id = id; this.username = username; this.password = password; @@ -38,6 +39,7 @@ public class User { this.groupid = groupid; this.groupname = groupname; this.counts = counts; + this.token = token; } public Integer getId() { @@ -135,4 +137,12 @@ public class User { public void setCounts(Long counts) { this.counts = counts; } + + public String getToken() { + return token; + } + + public void setToken(String token) { + this.token = token; + } } diff --git a/src/main/java/cn/hellohao/service/AppClientService.java b/src/main/java/cn/hellohao/service/AppClientService.java new file mode 100644 index 0000000..3bb0f82 --- /dev/null +++ b/src/main/java/cn/hellohao/service/AppClientService.java @@ -0,0 +1,12 @@ +package cn.hellohao.service; + +import cn.hellohao.pojo.AppClient; +import org.springframework.stereotype.Service; + +@Service +public interface AppClientService { + + AppClient getAppClientData( String id); + + Integer editAppClientData(AppClient appClient); +} diff --git a/src/main/java/cn/hellohao/service/UserService.java b/src/main/java/cn/hellohao/service/UserService.java index 8ba9308..065298e 100644 --- a/src/main/java/cn/hellohao/service/UserService.java +++ b/src/main/java/cn/hellohao/service/UserService.java @@ -12,6 +12,8 @@ public interface UserService { Integer login(String email, String password,String uid); + User loginByToken (String token); + User getUsers(User user); Integer insertimg(Images img); diff --git a/src/main/java/cn/hellohao/service/impl/AppClientServiceImpl.java b/src/main/java/cn/hellohao/service/impl/AppClientServiceImpl.java new file mode 100644 index 0000000..ebb021e --- /dev/null +++ b/src/main/java/cn/hellohao/service/impl/AppClientServiceImpl.java @@ -0,0 +1,25 @@ +package cn.hellohao.service.impl; + +import cn.hellohao.dao.AppClientMapper; +import cn.hellohao.pojo.AppClient; +import cn.hellohao.service.AppClientService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class AppClientServiceImpl implements AppClientService { + + @Autowired + AppClientMapper appClientMapper; + + + @Override + public AppClient getAppClientData(String id) { + return appClientMapper.getAppClientData(id); + } + + @Override + public Integer editAppClientData(AppClient appClient) { + return appClientMapper.editAppClientData(appClient); + } +} diff --git a/src/main/java/cn/hellohao/service/impl/ClientService.java b/src/main/java/cn/hellohao/service/impl/ClientService.java index ac75b31..d581e32 100644 --- a/src/main/java/cn/hellohao/service/impl/ClientService.java +++ b/src/main/java/cn/hellohao/service/impl/ClientService.java @@ -219,7 +219,7 @@ public class ClientService { } updatePath = user.getUsername(); group= GetCurrentSource.GetSource(user.getId()); - memory = Long.valueOf(user.getMemory())*1024*1024;//单位 B + memory = Long.valueOf(user.getMemory());//单位 B TotleMemory = Long.valueOf(uploadConfig.getFilesizeuser());//单位 B UsedTotleMemory = imgMapper.getusermemory(user.getId())==null?0L:imgMapper.getusermemory(user.getId());//单位 B } diff --git a/src/main/java/cn/hellohao/service/impl/UploadServicel.java b/src/main/java/cn/hellohao/service/impl/UploadServicel.java index 595944b..8805deb 100644 --- a/src/main/java/cn/hellohao/service/impl/UploadServicel.java +++ b/src/main/java/cn/hellohao/service/impl/UploadServicel.java @@ -264,7 +264,7 @@ public class UploadServicel { } updatePath = user.getUsername(); group= GetCurrentSource.GetSource(user.getId()); - memory = Long.valueOf(user.getMemory())*1024*1024;//单位 B + memory = Long.valueOf(user.getMemory());//单位 B *1024*1024 TotleMemory = Long.valueOf(uploadConfig.getFilesizeuser());//单位 B UsedTotleMemory = imgMapper.getusermemory(user.getId())==null?0L:imgMapper.getusermemory(user.getId());//单位 B } diff --git a/src/main/java/cn/hellohao/service/impl/UserServiceImpl.java b/src/main/java/cn/hellohao/service/impl/UserServiceImpl.java index afb63c6..526af96 100644 --- a/src/main/java/cn/hellohao/service/impl/UserServiceImpl.java +++ b/src/main/java/cn/hellohao/service/impl/UserServiceImpl.java @@ -31,6 +31,11 @@ public class UserServiceImpl implements UserService { return userMapper.login(email, password,uid); } + @Override + public User loginByToken(String token) { + return userMapper.loginByToken(token); + } + @Override public User getUsers(User user) { // TODO Auto-generated method stub diff --git a/src/main/java/cn/hellohao/utils/FirstRun.java b/src/main/java/cn/hellohao/utils/FirstRun.java index 74b698e..5b33dee 100644 --- a/src/main/java/cn/hellohao/utils/FirstRun.java +++ b/src/main/java/cn/hellohao/utils/FirstRun.java @@ -1,14 +1,11 @@ package cn.hellohao.utils; import cn.hellohao.config.GlobalConstant; -import org.omg.CORBA.Environment; import org.springframework.beans.factory.InitializingBean; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import java.io.File; -import java.sql.SQLException; import java.util.Properties; import java.util.UUID; @@ -46,8 +43,6 @@ public class FirstRun implements InitializingBean { if(ret1==0){ Print.Normal("In execution..."); RunSqlScript.RunInsert(sql2); - ; - }else{ if(ret1>0){ Print.Normal("Stage 1"); @@ -85,6 +80,17 @@ public class FirstRun implements InitializingBean { RunSqlScript.RunInsert(sql9); Print.Normal("Stage 7"); } + Integer ret6 = RunSqlScript.RunSelectCount(judgeTable+" 'tbed.user' and column_name = 'token'"); + if(ret6==0){ + RunSqlScript.RunInsert(sql12); + Print.Normal("Add user.token"); + } + Integer isappclient = RunSqlScript.RunSelectCount(isTableName+"'appclient'"); + if(isappclient==0){ + Integer integer = RunSqlScript.RunInsert(createAppclient); + RunSqlScript.RunInsert(instartAppclient); + Print.Normal("Add table.appclient"); + } // Integer ret6 = RunSqlScript.RunSelectCount(judgeTable+" 'imgdata' and column_name = 'idname'"); // if(ret6==0){ // RunSqlScript.RunInsert(sql11); @@ -102,11 +108,12 @@ public class FirstRun implements InitializingBean { } //检查表是否存在,后边加'imgdata' and column_name = 'explains' 检查字段是否存在 + private String isTableName = "SELECT count(table_name) FROM information_schema.TABLES WHERE table_name ="; private String judgeTable = "select count(*) from information_schema.columns where table_name = "; //创建blacklist 2019-11-29 private String sql1 = "select count(*) from information_schema.columns where table_name = 'uploadconfig' and column_name = 'blacklist'"; private String sql2 = "alter table uploadconfig add blacklist varchar(500);"; - //创建imgandalbum和album 添加imgdata表字段explain 2019-12-20 + //创建imgandalbum和album 添加imgdata表字段explain 2019-12-20 private String sql3 ="CREATE TABLE `imgandalbum` (`imgname` varchar(5000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`albumkey` varchar(5000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic"; private String sql4 ="CREATE TABLE `album` (`albumkey` varchar(5000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`albumtitle` varchar(5000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`createdate` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `password` varchar(5000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic"; private String sql6 = "alter table imgdata add explains varchar(5000)"; @@ -120,8 +127,11 @@ public class FirstRun implements InitializingBean { // 图片标识名字段 private String sql11 = "alter table `imgdata` add idname varchar(255) DEFAULT '未命名' ;"; - //添加imgandalbum字段notes(添加画廊图片说明) -// private String sql11 = "alter table imgandalbum add notes varchar(1000) DEFAULT ' '"; + private String sql12 = "alter table user add `token` varchar(255)"; + //创建客户端程序相关表 + private String createAppclient = "CREATE TABLE `appclient` (`id` varchar(10) NOT NULL,`isuse` varchar(10) NOT NULL,`packurl` varchar(255) NULL DEFAULT NULL,`appname` varchar(20) NULL,`applogo` varchar(255) NULL,`appupdate` varchar(10) NOT NULL) "; + private String instartAppclient = "INSERT INTO `appclient` VALUES ('app', 'on', NULL, 'Hellohao图像托管', 'https://hellohao.nos-eastchina1.126.net/TbedClient/app.png', 'off');"; + private String inddx_md5key = "ALTER TABLE imgdata ADD INDEX index_md5key_url ( md5key,imgurl)"; // create index yarn_app_result_i4 on yarn_app_result (flow_exec_id(100), another_column(50)); diff --git a/src/main/java/cn/hellohao/utils/test/Demo.java b/src/main/java/cn/hellohao/utils/test/Demo.java new file mode 100644 index 0000000..735ecbb --- /dev/null +++ b/src/main/java/cn/hellohao/utils/test/Demo.java @@ -0,0 +1,66 @@ +package cn.hellohao.utils.test; + +import cn.hutool.http.HttpUtil; +import com.alibaba.fastjson.JSONObject; + +import java.util.HashMap; +import java.util.UUID; + +class counts { + public static Long i = 5000L; +} +//1.创建一个实现了Runnable接口的类 +class Demo implements Runnable { + //2.实现类去实现(重写)Runnable中的抽象方法:run() + @Override + public void run() { + + while (true){ + try{ + String uuid = UUID.randomUUID().toString().replace("-", "").toLowerCase(); + HashMap paramMap = new HashMap<>(); + paramMap.put("email", uuid.substring(0,10)+"@163.com"); + paramMap.put("pwd", uuid+uuid+uuid); + String result1 = HttpUtil.post("http://39.107.115.48/og/v1/user/login/email", paramMap); + JSONObject jsonObject = JSONObject.parseObject(result1); + System.out.println("执行第"+counts.i+"次:响应代码:"+jsonObject.getInteger("c")+","+jsonObject.getString("m")); + System.out.println("用户UUID:"+jsonObject.getJSONObject("d").getJSONObject("user").getString("object_id")); + if(jsonObject.getInteger("c")==200){ + String uuid2 = UUID.randomUUID().toString().replace("-", "").toLowerCase(); + HashMap paramMap2 = new HashMap<>(); + paramMap2.put("order_id", uuid2); + paramMap2.put("email", uuid.substring(0,10)+"@163.com"); + paramMap2.put("info", "pay&money=永久会员 ¥12 (随功能增多会涨价)"); + paramMap2.put("product_id", "beetodo"); + paramMap2.put("pay_channel", "unkown"); + paramMap2.put("click_pay_time", "unkown"); + paramMap2.put("version", "21/1.2.6"); + String result2 = HttpUtil.post("http://39.107.115.48/og/v1/user/login/email", paramMap); + JSONObject jsonObject2 = JSONObject.parseObject(result2); + System.out.println("提交订单的:"+jsonObject2.getInteger("c")); + } + counts.i++; + }catch (Exception e){ + e.printStackTrace(); + System.err.println("报错了"); + } + } + + } +} + +//测试类: +class ThreadTest { + public static void main(String[] args) { + + //同样为了展示多线程效果,我们在main主线程中也遍历输出一下作为对比 + for (int i = 0; i < 10; i++) { + //3.创建实现类的对象 + Demo d1 = new Demo(); +//4.将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象 + Thread thread = new Thread(d1); + //5.通过Thread类的对象调用start() + thread.start(); + } + } +} \ No newline at end of file diff --git a/src/main/resources/mapper/AppClientMapper.xml b/src/main/resources/mapper/AppClientMapper.xml new file mode 100644 index 0000000..1688a45 --- /dev/null +++ b/src/main/resources/mapper/AppClientMapper.xml @@ -0,0 +1,31 @@ + + + + + + + UPDATE `appclient` + + + isuse = #{isuse}, + + + packurl = #{packurl}, + + + appname = #{appname}, + + + `applogo` = #{applogo}, + + + `appupdate` = #{appupdate}, + + + + where id=#{id} + + + \ No newline at end of file diff --git a/src/main/resources/mapper/UserMapper.xml b/src/main/resources/mapper/UserMapper.xml index e0e817b..a0981b3 100644 --- a/src/main/resources/mapper/UserMapper.xml +++ b/src/main/resources/mapper/UserMapper.xml @@ -4,8 +4,8 @@ - INSERT INTO user (id, username, PASSWORD, email, birthder, LEVEL,uid,isok,memory,groupid) - VALUES (NULL, #{username}, #{password}, #{email}, #{birthder}, #{level},#{uid},#{isok},#{memory},#{groupid} ) + INSERT INTO user (id, username, PASSWORD, email, birthder, LEVEL,uid,isok,memory,groupid,token) + VALUES (NULL, #{username}, #{password}, #{email}, #{birthder}, #{level},#{uid},#{isok},#{memory},#{groupid},#{token}) - UPDATE `user` set `isok`=1 where uid=#{uid} @@ -30,8 +29,6 @@ + + + @@ -83,7 +93,8 @@ uid, isok, memory, - groupid + groupid, + token FROM user WHERE id = #{id} @@ -98,7 +109,8 @@ uid, isok, memory, - groupid + groupid, + token FROM user WHERE uid = #{uid} @@ -111,7 +123,6 @@ - UPDATE `user` @@ -129,6 +140,9 @@ `groupid` = #{groupid} + + `token` = #{token}, + where uid=#{uid} @@ -157,6 +171,9 @@ `uid` = #{uid}, + + `token` = #{token}, + where id=#{id} @@ -183,6 +200,7 @@ isok, ceil((memory/1024/1024)) as memory, groupid, + token, (select groupname from `group` where id = groupid) as groupname FROM user @@ -203,11 +221,9 @@ - UPDATE `user` set `isok`=#{isok} where id=#{id} - UPDATE `user` set `memory`=#{memory} where id=#{id}