From ccfb7dd5574724024bc2c48d3ca36f9c8b6896d4 Mon Sep 17 00:00:00 2001 From: lxw <810412026@qq.com> Date: 星期四, 14 十二月 2023 10:27:10 +0800 Subject: [PATCH] 重置密码 --- src/main/java/com/whyc/service/UserInfService.java | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 49 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/whyc/service/UserInfService.java b/src/main/java/com/whyc/service/UserInfService.java index 0448ef4..ebe3e81 100644 --- a/src/main/java/com/whyc/service/UserInfService.java +++ b/src/main/java/com/whyc/service/UserInfService.java @@ -20,6 +20,7 @@ import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -117,6 +118,7 @@ } //鐧诲綍鎴愬姛 ServletContext servletContext = request.getServletContext(); + //鐧诲綍鎴愬姛 servletContext.setAttribute(uname, request.getSession().getId()); //Session瀛樺偍褰撳墠鐢ㄦ埛鍙婃潈闄愮粍鍒楄〃 UserInf userDB = (UserInf) subject.getPrincipal(); @@ -158,16 +160,62 @@ return new Response().set(1,flag>0,flag>0?"韬唤鍙樻洿鎴愬姛":"韬唤鍙樻洿澶辫触"); } //灏嗙鐞嗗憳鍙樻垚鏅�氱敤鎴� - public Response dropRole(int uid) { + public Response dropRole(int uid, HttpServletRequest request) { //鏌ヨ鏈�澶х殑uid String maxUid=mapper.getMaxUid(); if(maxUid==null){ maxUid="1001"; } + //鏍规嵁鐢ㄦ埛id鏌ヨ鐢ㄦ埛淇℃伅 + QueryWrapper qWrapper=new QueryWrapper(); + qWrapper.eq("uid",uid); + qWrapper.last("limit 1"); + UserInf uinf=mapper.selectOne(qWrapper); + //缂栬緫 UpdateWrapper wrapper =new UpdateWrapper(); wrapper.set("uid",Integer.valueOf(maxUid)+1); wrapper.eq("uid",uid); int flag= mapper.update(null,wrapper); + //濡傛灉鏄櫘閫氱敤鎴疯嚜宸卞己閫�锛屽皢鐢ㄦ埛鍚嶅搴旂殑sessionId鍙樻洿 + ServletContext servletContext = request.getServletContext(); + servletContext.setAttribute(uinf.getUname(),"123456"); return new Response().set(1,flag>0,flag>0?"韬唤鍙樻洿鎴愬姛":"韬唤鍙樻洿澶辫触"); } + //鐧诲綍妫�娴� + public Response checkUserWebSocket(HttpSession httpSession){ + Response model = new Response(); + try { + UserInf user = (UserInf) httpSession.getAttribute("user"); + if(user!=null){ + String sessionId = (String) httpSession.getServletContext().getAttribute(user.getUname()); + if(httpSession.getId().equals(sessionId)){ + model.set(1,user,null); + }else{ + if(sessionId.equals("123456")){ + model.set(1,false,"韬唤鏉冮檺鍙樻洿,璇烽噸鏂扮櫥褰�"); + }else{ + model.set(1,false,"涓嶅悓涓绘満鐧诲綍"); + } + //鐢ㄦ埛鍦ㄥ叾浠栦富鏈虹櫥褰�,寮鸿揩鐢ㄦ埛鍦ㄦ湰鏈虹殑session澶辨晥 + httpSession.invalidate(); + } + } + else { + model.set(1,false,"鐢ㄦ埛淇℃伅澶辨晥,璇烽噸鏂扮櫥褰�"); + } + }catch (Exception e){ + model.set(1,false,"鐧诲綍淇℃伅澶辨晥,閲嶆柊鐧诲綍"); + } + return model; + } + + //閲嶇疆瀵嗙爜 + public Response resetSnId(int uid ) { + UpdateWrapper wrapper=new UpdateWrapper(); + wrapper.set("usnid",RSAUtil.encrypt("123456",RSAUtil.getPublicKey())); + wrapper.eq("uid",uid); + int flag=mapper.update(null,wrapper); + return new Response().set(1,flag>0,flag>0?"淇敼鎴愬姛":"淇敼澶辫触"); + + } } -- Gitblit v1.9.1