package com.lf.server.service.sys;
|
|
import com.lf.server.entity.sys.UserEntity;
|
import com.lf.server.helper.Md5Helper;
|
import com.lf.server.helper.RsaHelper;
|
import com.lf.server.helper.StringHelper;
|
import com.lf.server.mapper.sys.UserMapper;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.List;
|
|
/**
|
* 用户表
|
* @author sws
|
* @date 2022-09-27
|
*/
|
|
@Service
|
public class UserService implements UserMapper {
|
@Autowired
|
UserMapper userMapper;
|
|
@Override
|
public Integer selectCount(String uname) {
|
uname = StringHelper.getLikeStr(uname);
|
|
return userMapper.selectCount(uname);
|
}
|
|
@Override
|
public UserEntity selectUser(int id) {
|
return userMapper.selectUser(id);
|
}
|
|
@Override
|
public UserEntity selectByUid(String uid) {
|
return userMapper.selectByUid(uid);
|
}
|
|
@Override
|
public List<UserEntity> selectUserAll() {
|
return userMapper.selectUserAll();
|
}
|
|
@Override
|
public List<UserEntity> selectByPage(String uname, Integer limit, Integer offset) {
|
uname = StringHelper.getLikeStr(uname);
|
|
return userMapper.selectByPage(uname, limit, offset);
|
}
|
|
@Override
|
public UserEntity selectByToken(String token) {
|
return userMapper.selectByToken(token);
|
}
|
|
@Override
|
public Integer insertUser(UserEntity userEntity) {
|
return userMapper.insertUser(userEntity);
|
}
|
|
@Override
|
public Integer insertUsers(List<UserEntity> userEntity) {
|
return userMapper.insertUsers(userEntity);
|
}
|
|
@Override
|
public Integer deleteUser(int id) {
|
return userMapper.deleteUser(id);
|
}
|
|
@Override
|
public Integer deleteUsers(List<Integer> ids) {
|
return userMapper.deleteUsers(ids);
|
}
|
|
@Override
|
public Integer updateUsers(UserEntity userEntity) {
|
return userMapper.updateUsers(userEntity);
|
}
|
|
@Override
|
public Integer selectCountForRole(String uname, Integer roleid, Integer depid) {
|
uname = StringHelper.getLikeStr(uname);
|
|
return userMapper.selectCountForRole(uname, roleid, depid);
|
}
|
|
@Override
|
public List<UserEntity> selectByPageForRole(String uname, Integer roleid, Integer depid, Integer limit, Integer offset) {
|
uname = StringHelper.getLikeStr(uname);
|
|
return userMapper.selectByPageForRole(uname, roleid, depid, limit, offset);
|
}
|
|
/**
|
* 验证新用户密码
|
*/
|
public String ValidateNewPwd(UserEntity entity) {
|
if (entity == null) {
|
return "没有找到用户";
|
}
|
if (StringHelper.isEmpty(entity.getPwd())) {
|
return "密码不能为空";
|
}
|
|
try {
|
String pwd = RsaHelper.decrypt(entity.getPwd());
|
if (!StringHelper.checkPwdValid(pwd)) {
|
return "密码不符合要求";
|
}
|
|
String newPwd = Md5Helper.reverse(Md5Helper.generate(pwd));
|
entity.setPwd(newPwd);
|
|
return null;
|
} catch (Exception ex) {
|
return "密码解密失败";
|
}
|
}
|
|
/**
|
* 验证老用户密码
|
*/
|
public String ValidateOldPwd(UserEntity entity) {
|
if (entity == null) {
|
return "没有找到用户";
|
}
|
if (StringHelper.isEmpty(entity.getPwd())) {
|
return "用户密码不能为空";
|
}
|
|
try {
|
String pwd = RsaHelper.decrypt(entity.getPwd());
|
String salt = RsaHelper.decrypt(entity.getSalt());
|
|
UserEntity ue = selectUser(entity.getId());
|
if (ue == null) {
|
return "没有找到用户";
|
}
|
if (!Md5Helper.validatePassword(pwd, ue.getPwd())) {
|
return "旧密码输入错误";
|
}
|
if (!StringHelper.checkPwdValid(salt)) {
|
return "密码不符合要求";
|
}
|
|
String newPwd = Md5Helper.reverse(Md5Helper.generate(salt));
|
entity.setPwd(newPwd);
|
entity.setSalt("");
|
|
return null;
|
} catch (Exception ex) {
|
return "密码解密失败";
|
}
|
}
|
}
|