首页>代码>ssm开发生产管理ERP系统>/src/main/java/com/megagao/production/ssm/controller/AuthorityJudgeController.java
package com.megagao.production.ssm.controller;

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

import javax.servlet.http.HttpServletRequest;

import com.megagao.production.ssm.domain.customize.ActiveUser;
import com.megagao.production.ssm.util.CollectionsFactory;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.subject.Subject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import static com.megagao.production.ssm.common.Constants.NO_PERMISSION;

/**
 *
 * 权限判断controller
 *
 */
@RestController
public class AuthorityJudgeController {

	private static final Logger logger = LoggerFactory.getLogger(AuthorityJudgeController.class);

	@RequestMapping("*/*_judge")
	public Map<String,Object> authorityJudge(HttpServletRequest request) throws Exception{
		Subject subject = SecurityUtils.getSubject();
		ActiveUser activeUser = (ActiveUser) subject.getPrincipal();
		
		//根据uri,使用shiro判断相应权限
		String uri = request.getRequestURI();
		String[] names = uri.split("/");
		String featureName = names[2];
		String operateName = names[3].split("_")[0];
		Map<String,Object> map = CollectionsFactory.newHashMap();
		if(!activeUser.getUserStatus().equals("1")){
			if (logger.isDebugEnabled()) {
				logger.debug(NO_PERMISSION, "账户已被锁定!");
			}
			map.put("msg", "您的账户已被锁定,请切换账户登录!");
		}else if(!activeUser.getRoleStatus().equals("1")){
			if (logger.isDebugEnabled()) {
				logger.debug(NO_PERMISSION, "角色已被锁定!");
			}
			map.put("msg", "当前角色已被锁定,请切换账户登录!");
		}else{
			if (logger.isDebugEnabled()) {
				logger.debug(NO_PERMISSION, "没有权限!");
			}
			if(!subject.isPermitted(featureName+":"+operateName)){
				map.put("msg", "您没有权限,请切换用户登录!");
			}
		}
		return map;
	}
}
最近下载更多
爱情的本质  LV16 2024年8月8日
泓鼎168  LV20 2024年6月18日
educationAAA  LV11 2024年4月30日
weilaizhisheng  LV21 2024年3月27日
pureshyness  LV6 2024年2月14日
403401  LV2 2023年12月17日
guanrenan  LV10 2023年11月28日
daguocai001  LV3 2023年11月4日
ytiian_hm  LV6 2023年9月12日
baozhenghua  LV2 2023年8月29日
最近浏览更多
哪里的完整版  LV8 3月1日
xianyu091012  LV5 2024年12月26日
蛋蛋蛋蛋的糕糕 2024年12月17日
暂无贡献等级
别让自己无聊  LV13 2024年12月10日
微信网友_7269098639953920  LV2 2024年11月25日
shunlun8855  LV1 2024年10月29日
lz88888  LV12 2024年10月17日
用户名已经存在了啊  LV2 2024年10月12日
微信网友_7151914139078656  LV2 2024年9月4日
937298860  LV1 2024年8月13日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友