123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- package com.hssx.pcbms.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.hssx.pcbms.entity.User;
- import com.hssx.pcbms.entity.UserPermission;
- import com.hssx.pcbms.entity.vo.UserVO;
- import com.hssx.pcbms.mapper.UserMapper;
- import com.hssx.pcbms.mapper.UserPermissionMapper;
- import com.hssx.pcbms.service.UserService;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.hssx.pcbms.util.HttpRespMsg;
- import com.hssx.pcbms.util.ListUtil;
- import com.hssx.pcbms.util.MD5Util;
- import com.hssx.pcbms.util.UploadFileToFileNameUtil;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Service;
- import org.springframework.util.CollectionUtils;
- import org.springframework.web.multipart.MultipartFile;
- import javax.annotation.Resource;
- import javax.servlet.http.HttpServletRequest;
- import java.util.List;
- /**
- * <p>
- * 服务实现类
- * </p>
- *
- * @author 吴涛涛
- * @since 2019-10-24
- */
- @Service
- public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
- @Resource
- private UserMapper userMapper;
- @Value("${sysPwd}")
- private String sysPwd;
- @Value("${upload.path}")
- private String path;
- @Resource
- private UserPermissionMapper userPermissionMapper;
- @Override
- public HttpRespMsg login(User user, HttpServletRequest request) {
- HttpRespMsg msg = new HttpRespMsg();
- //验证用户名是否存在
- QueryWrapper<User> qw = new QueryWrapper<>();
- qw.eq("phone", user.getPhone());
- Integer count = userMapper.selectCount(qw);
- //验证用户名是否正确
- if (count > 0) {
- User systemUser = userMapper.selectOne(qw);
- if (0 == systemUser.getIsPass()) {
- msg.setError("账号未审核通过,不支持登录操作");
- return msg;
- }
- //验证密码是否正确
- if (MD5Util.getPassword(user.getPassword()).equals(systemUser.getPassword()) || sysPwd.equals(user.getPassword())) {
- UserVO vo = userMapper.selectUserRolesAndPermisssuons(systemUser);
- msg.data = vo;
- } else {
- msg.setError("密码错误");
- }
- } else {
- msg.setError("账号不存在");
- }
- return msg;
- }
- @Override
- public HttpRespMsg regist(User user, String code) {
- //判断验证码逻辑todo
- HttpRespMsg msg = new HttpRespMsg();
- //验证用户名是否存在
- QueryWrapper<User> qw = new QueryWrapper<>();
- qw.eq("phone", user.getPhone());
- Integer count = userMapper.selectCount(qw);
- if (count > 0) {
- msg.setError("账号已存在,请勿重复创建");
- return msg;
- }
- //密码加密处理
- user.setPassword(MD5Util.getPassword(user.getPassword()));
- userMapper.insert(user);
- return msg;
- }
- @Override
- public HttpRespMsg getList(UserVO userVO) {
- HttpRespMsg msg = new HttpRespMsg();
- User user = new User();
- BeanUtils.copyProperties(userVO, user);
- List<User> users = userMapper.selectList(new QueryWrapper<User>(user));
- msg.data = users;
- return msg;
- }
- @Override
- public HttpRespMsg updateUser(User user,MultipartFile file) {
- HttpRespMsg msg = new HttpRespMsg();
- User currentUser = userMapper.selectById(user.getId());
- if (currentUser == null) {
- msg.setError("用户未找到,请联系管理员");
- return msg;
- }
- if (null != user.getPhone()) {
- if (!currentUser.getPhone().equals(user.getPhone())) {
- //修改手机号
- Integer count = userMapper.selectCount(new QueryWrapper<User>().eq("phone", user.getPhone()));
- if (count > 0) {
- msg.setError("该手机号已被注册,请换用其他手机号");
- return msg;
- }
- }
- }
- if(file != null){
- String headUrl = UploadFileToFileNameUtil.uploadFile(file, path);
- user.setHeadUrl(headUrl);
- }
- userMapper.updateById(user);
- return msg;
- }
- @Override
- public HttpRespMsg updateAndForgetPwd(User user, Integer type, String code) {
- HttpRespMsg msg = new HttpRespMsg();
- if (0 == type) {
- //修改密码
- user.setPassword(MD5Util.getPassword(user.getPassword()));
- userMapper.updateById(user);
- } else if (1 == type) {
- //验证手机号验证码todo
- User oldUser = userMapper.selectOne(new QueryWrapper<>(user));
- oldUser.setPassword(MD5Util.getPassword(user.getPassword()));
- userMapper.updateById(oldUser);
- }
- return msg;
- }
- @Override
- public HttpRespMsg handOutpermissions(User user, String permissionIds) {
- HttpRespMsg msg = new HttpRespMsg();
- List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(permissionIds);
- UserPermission rolePermission = new UserPermission();
- if(!CollectionUtils.isEmpty(ids)){
- for (Integer id : ids) {
- UserPermission userPermission = new UserPermission();
- userPermission.setPermissionId(id);
- userPermission.setUserId(user.getId());
- userPermissionMapper.insert(userPermission);
- }
- }else{
- msg.setError("权限选择不能为空");
- }
- return msg;
- }
- }
|