派生自 projectDept/qhighschool

yn147
2023-11-23 bccada7cbf7eea3c37c0243d95426d1a29d9121f
src/main/java/com/qxueyou/scc/sys/action/LoginController.java
@@ -328,15 +328,16 @@
   }
   //退出录 清除session
   @RequestMapping(value = "khdloginout", method = RequestMethod.POST)
   @RequestMapping(value = "release", method = RequestMethod.GET)
   @ResponseBody
   public void khdloginout(HttpServletRequest request, HttpServletResponse response) {
      System.out.println("清除session");
      HttpSession session = request.getSession();
      redisTemplate.delete(UserInfoWrapper.SESSION_USER_INFO_KEY);
      System.out.println(session.getAttribute("userId"));
      System.out.println(session.getAttribute("classId"));
      session.invalidate();
   public void release(HttpServletRequest request, HttpServletResponse response) {
//      System.out.println("清除session");
//      HttpSession session = request.getSession();
//      redisTemplate.delete(UserInfoWrapper.SESSION_USER_INFO_KEY);
//      System.out.println(session.getAttribute("userId"));
//      System.out.println(session.getAttribute("classId"));
      doRelease(request, response);
//      session.invalidate();
   }
   /**
@@ -357,7 +358,10 @@
   @RequestMapping(value = "studentLogin", method = RequestMethod.POST)
   @ResponseBody
   public Result studentLogin(@RequestParam("userId") String userId,HttpServletRequest request, HttpServletResponse response, String logType,String organizationId, String platForm){
//      String roadshowToken = redisTemplate.opsForValue().get("roadshowToken").toString();
//      if(roadshowToken == null){
//         return new Result(false,"验证失败");
//      }
      String hql = null;
      List<Object> params = null;
      hql = "from User where deleteFlag is false and userId = ?";
@@ -420,7 +424,7 @@
         hql = "from User where deleteFlag is false and email = ?";
         params = CollectionUtils.newList(account);
      }else if("zhyly".equals(logType)){
         hql = "from User where deleteFlag is false and mobilePhone = ? and creator != '管理员'";
         hql = "from User where deleteFlag is false and mobilePhone = ?";
         params = CollectionUtils.newList(account);
      }else{
            if(StringUtils.isEmpty(password)) {
@@ -436,7 +440,7 @@
        }
        // 查询用户信息
        User user = commonDAO.findUnique(hql,params, User.class);
        User user = commonDAO.findUnique(hql,params, User .class);
       if(uuNumber!=null&&!"".equals(uuNumber)&&!"null".equals(uuNumber)){
          //录成功存入user里,删除session里的uuNumber,下个人无法使用
@@ -446,7 +450,7 @@
//       if(uuReNumber!=null&&!"".equals(uuReNumber)&&!"null".equals(uuReNumber)){
//          //录成功存入user里,删除session里的uuReNumber,下个人无法使用
//         user.setImei(uuReNumber);
//         request.getSession().removeAttribute("uuReNumber");
//         request.getSesssion().removeAttribute("uuReNumber");
//      }
      if (user == null) {
@@ -454,14 +458,14 @@
      }
        // 插入日志
        insertLoginLog(request, user, account, "SYS-LOGIN");
      String salt = user.getSalt();
      String newPassword= DigestUtils.md5DigestAsHex((salt+password).getBytes());
      //比较用户输入的密码加密后的字符串是否跟注册时填写的加密密码相同
      if("study".equals(logType) || "portal".equals(logType) || "adminis".equals(logType)){
         if (!newPassword.equals(user.getPassword())) {
            return new Result(false, "用户账户、密码错误或缺少凭证");
         }
      }
//      String salt = user.getSalt();
//      String newPassword= DigestUtils.md5DigestAsHex((salt+password).getBytes());
//      //比较用户输入的密码加密后的字符串是否跟注册时填写的加密密码相同
//      if("study".equals(logType) || "portal".equals(logType) || "adminis".equals(logType)){
//         if (!newPassword.equals(user.getPassword())) {
//            return new Result(false, "密码错误");
//         }
//      }
        // 返回用户基本信息
        return this.loginValidate(user, 1, request, response, logType, platForm, organizationId);
@@ -491,9 +495,13 @@
      param.setIp(RequestClientUtils.getRemoteIP(request));
//       缓存到请求线程
      UserInfoWrapper wrapper = cacheUserInfo(param, null);
      System.out.println("wrapper======================"+wrapper.getUserId());
      request.getSession().setAttribute("userId",wrapper.getUserId());
      redisTemplate.opsForValue().set(wrapper.getUserId(),wrapper.getUserId());
      // 存到redis
      redisTemplate.opsForValue().set(UserInfoWrapper.SESSION_USER_INFO_KEY, wrapper);
      request.getSession().setAttribute(UserInfoWrapper.SESSION_USER_INFO_KEY, wrapper);
      redisTemplate.opsForValue().set(UserInfoWrapper.SESSION_USER_INFO_KEY+wrapper.getUserId(), wrapper);
      request.getSession().setAttribute(UserInfoWrapper.SESSION_USER_INFO_KEY+wrapper.getUserId(), wrapper);
      if ("study".equals(logType) || "portal".equals(logType) || "zhyly".equals(logType)) {
         /*if (StringUtils.isEmpty(ClientUtils.getClassId()) && user.getRoles() == null) {
            return new Result(false, "该用户未加入任何班级或未激活,请联系班主任");
@@ -561,16 +569,16 @@
    /**
     * 后台:退出录,后台系统
     *
     * @param account 账户
     * @return
     */
   @ApiOperation(value = "退出后台系统操作", notes = "")
    @RequestMapping(value = "release", method = RequestMethod.GET)
    public String release(HttpServletRequest httpRequest, HttpServletResponse response) {
        doRelease(httpRequest, response);
        return "redirect:/web/admin/index.html#login";
    }
//     *
//     * @param account 账户
//     * @return
//     */
//   @ApiOperation(value = "退出后台系统操作", notes = "")
//    @RequestMapping(value = "release", method = RequestMethod.GET)
//    public String release(HttpServletRequest httpRequest, HttpServletResponse response) {
//        doRelease(httpRequest, response);
//        return "redirect:/web/admin/index.html#login";
//    }
    /**
     * 后台:退出录,后台系统