SysUserServiceImpl.java 2.3 KB
Newer Older
Q
qinxiaodong@pannk.com 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
package com.pannk.mms.modules.sys.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pannk.mms.common.base.Result;
import com.pannk.mms.common.utils.RedisUtil;
import com.pannk.mms.common.utils.TokenUtil;
import com.pannk.mms.modules.sys.dao.SysUserMapper;
import com.pannk.mms.modules.sys.entity.SysRoleEntity;
import com.pannk.mms.modules.sys.entity.SysUserEntity;
import com.pannk.mms.modules.sys.service.SysRoleService;
import com.pannk.mms.modules.sys.service.SysUserService;
import com.pannk.mms.modules.sys.vo.LoginForm;
import com.pannk.mms.modules.sys.vo.SysUserInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 系统用户服务
 * Created by wolf on 20-11-2.
 */
@Slf4j
@Service("sysUserService")
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity> implements SysUserService {

    @Autowired
    private RedisUtil redisUtil;

    @Autowired
    private SysRoleService sysRoleService;


    @Override
    public SysUserEntity queryByUserName(String userName) {
        return baseMapper.queryByUserName(userName);
    }

    @Override
    public Result login(LoginForm loginForm) {
        SysUserEntity sysUserEntity = queryByUserName(loginForm.getUserName());
        if (sysUserEntity == null || !sysUserEntity.getPassword().equals(loginForm.getPassword())) {
            return Result.error("账号或密码不正确");
        }
        if (sysUserEntity.getStatus() == 1) {
            return Result.error("账号被锁定,请联系管理员处理");
        }
        String token = TokenUtil.generateToken();
        redisUtil.set(sysUserEntity.getCode(), token);
        return Result.success(token);
    }

    @Override
    public SysUserInfo queryUserInfo(Long id) {
        SysUserEntity sysUserEntity = getById(id);
        SysUserInfo sysUserInfo = new SysUserInfo();
        if (sysUserEntity == null) {
            return null;
        }
        List<SysRoleEntity> roles = sysRoleService.queryUserRole(sysUserEntity.getId());
        sysUserInfo.setRoles(roles);
        sysUserInfo.setAvatar("avatar");
        sysUserInfo.setIntroduction("This is a user info");
        sysUserInfo.setName(sysUserEntity.getFullName());
        return sysUserInfo;
    }
}