All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.kedauis.system.web.controller.system.UserController Maven / Gradle / Ivy

package com.kedauis.system.web.controller.system;

import com.kedauis.system.model.SysUser;
import com.kedauis.common.model.BaseMessage;
import com.kedauis.system.service.RoleService;
import com.kedauis.system.service.UserService;
import com.kedauis.system.web.controller.common.BaseController;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author linyong
 * date 2017/11/30
 * time 18:15
 * description 用户操作对外接口
 */
@Slf4j
@RestController
@RequestMapping("/user")
public class UserController extends BaseController {
    private static final Logger logger = LoggerFactory.getLogger(UserController.class);

    @Autowired
    private UserService userService;

    @Autowired
    private RoleService roleService;

    @GetMapping("/menus")
    @CrossOrigin
    public BaseMessage qryUserMenu(){
        BaseMessage msg = BaseMessage.instance();
        try {
            List> userMenus = userService.qryUserMenu(getLoginUser());
            logger.info("用户菜单查询成功!");
            msg.chainMessage(configUtil.getMessage("public","0000"));
            msg.setData(userMenus);
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }
    @GetMapping("/info")
    @CrossOrigin
    public BaseMessage qryLoginUserInfo(){
        BaseMessage msg = BaseMessage.instance();
        try {
            msg.chainMessage(configUtil.getMessage("public","0000"));
            msg.setData(getLoginUser());
            logger.info("登陆用户获取成功!");
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }
    @GetMapping("/get")
    @CrossOrigin
    public BaseMessage qryUserInfoById(@Param("id") String id){
        BaseMessage msg = BaseMessage.instance();
        try {
            msg.chainMessage(configUtil.getMessage("public","0000"));
            Map userInfos = new HashMap();
            userInfos.put("userRoles", roleService.qryRolesByUserId(id));
            userInfos.put("userInfos", userService.qryUserById(id));
            msg.setData(userInfos);
            logger.info("用户信息查询成功!");
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }

    @GetMapping("/del")
    @CrossOrigin
    public BaseMessage delUsers(@Param("ids") String ids){
        BaseMessage msg = BaseMessage.instance();
        try {
            userService.delUserByIds(ids);
            logger.info("用户:" + ids + "删除成功!");
            msg.chainMessage(configUtil.getMessage("public","0000"));
            msg.setData(getLoginUser());
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }
    @GetMapping("/resetPwd")
    @CrossOrigin
    public BaseMessage resetUserPwd(@Param("id") String id){
        BaseMessage msg = BaseMessage.instance();
        try {
            userService.setUserPwd(Integer.parseInt(id), null);
            logger.info("用户:" + id + "密码已被用户[" + getLoginUser().getUserName() + "]重置为123456!");
            msg.chainMessage(configUtil.getMessage("public","0000"));
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }

    @GetMapping("/list")
    @CrossOrigin
    public BaseMessage users(@Param("page") int page,@Param("limit") int limit){
        BaseMessage msg = BaseMessage.instance();
        try {
            List> users = userService.qryAllUsers(page,limit);
            msg.setPageData(users);
            logger.info("用户信息分页列表查询成功!");
            msg.chainMessage(configUtil.getMessage("public","0000"));
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }
    @GetMapping("/saveOrUpdate")
    @CrossOrigin
    public BaseMessage saveOrUpdate(SysUser sysUser, @Param("roles") String roles){
        BaseMessage msg = BaseMessage.instance();
        try {
            userService.saveOrUpdate(sysUser, roles);
            if(null != sysUser.getId()){
                logger.info("用户信息修改成功!");
            }else{
                logger.info("用户创建成功!");
            }
            msg.chainMessage(configUtil.getMessage("public","0000"));
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }
    @GetMapping("/isExist")
    @CrossOrigin
    public BaseMessage isExist(@Param("userId") String userId, @Param("id") String id){
        BaseMessage msg = BaseMessage.instance();
        try {
            // 根据用户的userid查询用户
            SysUser user4UserId = userService.qryUserByUserId(userId);
            // 根据用户的id查询用户
            if(user4UserId != null){
                // 数据库中userid已存在,则需要判断是否是修改用户的
                if(StringUtils.isNotBlank(id)){
                    // 存在传入的id,则是修改某个用户
                    if(Integer.parseInt(id) == user4UserId.getId().intValue()){
                        // 修改用户的id和根据userid查询出来的用户的id是同一个
                        msg.setData(false);
                        logger.info("正在修改" + userId + "本身,不需要判断用户名是否存在!");
                    }else{
                        // 修改用户的id和查询到的id不是一个
                        msg.setData(true);
                        logger.info("用户名:" + userId + "已存在!");
                    }
                }else{
                    // 不存在id,是新建直接提示已存在
                    msg.setData(true);
                    logger.info("用户名:" + userId + "已存在!");
                }
            }else{
                // userid在数据空中不存在,可以直接使用
                msg.setData(false);
                logger.info("用户名:" + userId + "可以使用!");
            }
            msg.chainMessage(configUtil.getMessage("public","0000"));
        } catch (Exception e) {
            logger.info("操作处理抛出异常!",e);
            msg.chainMessage(configUtil.getMessage("public","9999"));
        }
        return msg;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy