|
|
@@ -3,13 +3,17 @@ package com.goafanti.common.controller;
|
|
|
import java.text.DateFormat;
|
|
|
import java.text.MessageFormat;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
|
+import com.goafanti.common.utils.RedisUtil;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.shiro.SecurityUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.beans.propertyeditors.CustomDateEditor;
|
|
|
import org.springframework.core.io.support.ResourcePropertySource;
|
|
|
@@ -53,6 +57,8 @@ public class BaseController {
|
|
|
|
|
|
@Value(value = "${avatar.upload.host}")
|
|
|
private String avatarUploadHost = null;
|
|
|
+ @Autowired
|
|
|
+ private RedisUtil redisUtil;
|
|
|
|
|
|
protected Error buildError(String key) {
|
|
|
return buildError(key, null);
|
|
|
@@ -71,7 +77,7 @@ public class BaseController {
|
|
|
|
|
|
/**
|
|
|
* 带参数的error message
|
|
|
- *
|
|
|
+ *
|
|
|
* @param key
|
|
|
* @param message
|
|
|
* @param object
|
|
|
@@ -130,8 +136,35 @@ public class BaseController {
|
|
|
model.addAttribute("userName", TokenManager.getAdminToken().getName());
|
|
|
model.addAttribute("departmentId", TokenManager.getAdminToken().getDepartmentId());
|
|
|
model.addAttribute("isAdmin", true);
|
|
|
+ model.addAttribute("shiroList", getshiroList());
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private String getshiroList() {
|
|
|
+ String shiroList = redisUtil.getString("shiroList");
|
|
|
+ if (StringUtils.isBlank(shiroList)){
|
|
|
+ shiroList=shiroAddRedis();
|
|
|
+ }
|
|
|
+ return shiroList;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String shiroAddRedis() {
|
|
|
+ redisUtil.deleteString("shiroList");
|
|
|
+ StringBuffer str=new StringBuffer();
|
|
|
+ if (TokenManager.hasRole(AFTConstants.SALESMAN))str=str.append(1).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.SALESMAN_MANAGER))str=str.append(2).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.SALESMAN_ADMIN))str=str.append(3).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.SALESMAN_DIRECTOR))str=str.append(4).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.FINANCE))str=str.append(5).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.FINANCE_MANAGER))str=str.append(6).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.FINANCE_ADMIN))str=str.append(7).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.TECH))str=str.append(8).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.TECH_MANAGER))str=str.append(9).append(",");
|
|
|
+ if (TokenManager.hasRole(AFTConstants.TECH_ADMIN))str=str.append(10).append(",");
|
|
|
+ String shiroList=str.substring(0,str.length()-1);
|
|
|
+ redisUtil.setString("shiroList",shiroList);
|
|
|
+ return shiroList;
|
|
|
+ }
|
|
|
|
|
|
}
|