whyczh
2021-04-23 16ab4f14e7ef78ad5557ede6c3e2ed4b6b31deba
更新用户实体类和登录接口
4个文件已修改
85 ■■■■■ 已修改文件
src/main/java/com/whyc/pojo/User.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/LoginService.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/UserBridgeService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/UserService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/User.java
@@ -1,19 +1,39 @@
package com.whyc.pojo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.apache.ibatis.type.Alias;
import java.util.Date;
@Alias("User")
@TableName( schema = "`db_3.5mw_web`",value = "tb_user")
@Data
@ApiModel
public class User {
    private Integer id;
    @ApiModelProperty("用户账号")
    private String name;
    @ApiModelProperty("用户密码")
    private String password;
    @ApiModelProperty("真实姓名")
    private String realName;
    @ApiModelProperty("性别")
    private Integer sex;
    @ApiModelProperty("手机号")
    private String phone;
    @ApiModelProperty("邮箱地址")
    private String email;
    @ApiModelProperty("部门")
    private String dept;
    @ApiModelProperty("职务")
    private String job;
    @ApiModelProperty("加密因子")
    private String salt;
    @ApiModelProperty("状态:0正常,1冻结,2删除")
    private Integer state;
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
@@ -25,45 +45,18 @@
        this.name = name;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
    public User(Integer id, String name, String password, String realName, Integer sex, String phone, String email, String dept, String job, String salt, Integer state, Date createTime) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getSalt() {
        return salt;
    }
    public void setSalt(String salt) {
        this.realName = realName;
        this.sex = sex;
        this.phone = phone;
        this.email = email;
        this.dept = dept;
        this.job = job;
        this.salt = salt;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.state = state;
        this.createTime = createTime;
    }
}
src/main/java/com/whyc/service/LoginService.java
@@ -1,17 +1,24 @@
package com.whyc.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.whyc.dto.Response;
import com.whyc.mapper.UserMapper;
import com.whyc.pojo.User;
import com.whyc.util.ShiroUtil;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.subject.Subject;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
@Service
public class LoginService {
    @Resource
    private UserMapper userMapper;
    public Response login(String userName, String password, HttpServletRequest request) {
        UsernamePasswordToken userToken = new UsernamePasswordToken(userName, password);
@@ -19,6 +26,7 @@
        try {
            subject.login(userToken);
        }catch (Exception e){
            e.printStackTrace();
            return new Response<>().set(1,false);
        }
        if (subject.isAuthenticated()){
@@ -26,7 +34,10 @@
            //同一个账号,后面登录的,会挤掉之前登录的SessionId
            System.out.println("全局存储中当前SessionId为:"+request.getSession().getId());
            request.getServletContext().setAttribute(userName,request.getSession().getId());
            return new Response<>().set(1,true);
            QueryWrapper<User> queryWrapper = Wrappers.query();
            queryWrapper.eq("name",userName);
            User user = userMapper.selectOne(queryWrapper);
            return new Response<>().set(1,user);
        }
        return new Response<>().set(1,false);
    }
src/main/java/com/whyc/service/UserBridgeService.java
@@ -37,7 +37,11 @@
        QueryWrapper<User> queryWrapper = Wrappers.query();
        queryWrapper.select("id","name","password","salt").eq("name",userName);
        try{
            return userMapper.selectOne(queryWrapper);
            User user = userMapper.selectOne(queryWrapper);
            if(user==null){
                return new User(0,"用户不存在");
            }
            return user;
        }catch (Exception e){
            e.printStackTrace();
            return new User(0,"用户不存在");
src/main/java/com/whyc/service/UserService.java
@@ -44,6 +44,7 @@
                return new Response<>().set(1, false, "用户已存在");
            }
            user.setCreateTime(new Date());
            user.setState(0);
            Map<String, String> encryptMap = DigestsUtil.encryptPassword(user.getPassword());
            user.setPassword(encryptMap.get("password"));
            user.setSalt(encryptMap.get("salt"));