mirror of
https://github.com/chatopera/cosin.git
synced 2025-08-01 16:38:02 +08:00
Closed #123 检测组织列表
This commit is contained in:
parent
77643c7ef8
commit
a2ef70e7cb
@ -39,7 +39,7 @@ public class ApplicationController extends Handler{
|
|||||||
view.addObject("istenantshare",super.isEnabletneant());
|
view.addObject("istenantshare",super.isEnabletneant());
|
||||||
if(super.isEnabletneant()) {
|
if(super.isEnabletneant()) {
|
||||||
//多租户启用 非超级管理员 一定要选择租户才能进入界面
|
//多租户启用 非超级管理员 一定要选择租户才能进入界面
|
||||||
if(!user.isSuperuser() && !StringUtils.isBlank(user.getOrgid()) && super.isTenantconsole() && MainContext.SYSTEM_ORGI.equals(user.getOrgi())) {
|
if(!user.isSuperuser() && StringUtils.isNotBlank(user.getOrgid()) && super.isTenantconsole() && MainContext.SYSTEM_ORGI.equals(user.getOrgi())) {
|
||||||
view = request(super.createRequestPageTempletResponse("redirect:/apps/tenant/index"));
|
view = request(super.createRequestPageTempletResponse("redirect:/apps/tenant/index"));
|
||||||
}
|
}
|
||||||
if(StringUtils.isBlank(user.getOrgid())) {
|
if(StringUtils.isBlank(user.getOrgid())) {
|
||||||
|
@ -16,23 +16,16 @@
|
|||||||
*/
|
*/
|
||||||
package com.chatopera.cc.app.handler;
|
package com.chatopera.cc.app.handler;
|
||||||
|
|
||||||
import static org.elasticsearch.index.query.QueryBuilders.termQuery;
|
|
||||||
import static org.elasticsearch.index.query.QueryBuilders.termsQuery;
|
|
||||||
|
|
||||||
import java.text.ParseException;
|
|
||||||
|
|
||||||
import javax.servlet.http.Cookie;
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
|
|
||||||
import com.chatopera.cc.app.basic.MainContext;
|
import com.chatopera.cc.app.basic.MainContext;
|
||||||
import com.chatopera.cc.app.basic.MainUtils;
|
import com.chatopera.cc.app.basic.MainUtils;
|
||||||
import com.chatopera.cc.app.basic.Viewport;
|
import com.chatopera.cc.app.basic.Viewport;
|
||||||
import com.chatopera.cc.exception.CSKefuException;
|
|
||||||
import com.chatopera.cc.app.cache.CacheHelper;
|
import com.chatopera.cc.app.cache.CacheHelper;
|
||||||
import com.chatopera.cc.app.persistence.repository.TenantRepository;
|
|
||||||
import com.chatopera.cc.app.handler.api.rest.QueryParams;
|
import com.chatopera.cc.app.handler.api.rest.QueryParams;
|
||||||
|
import com.chatopera.cc.app.model.SystemConfig;
|
||||||
import com.chatopera.cc.app.model.Tenant;
|
import com.chatopera.cc.app.model.Tenant;
|
||||||
import com.chatopera.cc.app.model.User;
|
import com.chatopera.cc.app.model.User;
|
||||||
|
import com.chatopera.cc.app.persistence.repository.TenantRepository;
|
||||||
|
import com.chatopera.cc.exception.CSKefuException;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.BoolQueryBuilder;
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
import org.elasticsearch.index.query.QueryBuilders;
|
||||||
@ -47,7 +40,12 @@ import org.springframework.ui.ModelMap;
|
|||||||
import org.springframework.web.bind.annotation.SessionAttributes;
|
import org.springframework.web.bind.annotation.SessionAttributes;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import com.chatopera.cc.app.model.SystemConfig;
|
import javax.servlet.http.Cookie;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import java.text.ParseException;
|
||||||
|
|
||||||
|
import static org.elasticsearch.index.query.QueryBuilders.termQuery;
|
||||||
|
import static org.elasticsearch.index.query.QueryBuilders.termsQuery;
|
||||||
|
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
@ -58,42 +56,44 @@ public class Handler {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private TenantRepository tenantRes;
|
private TenantRepository tenantRes;
|
||||||
|
|
||||||
public final static int PAGE_SIZE_BG = 1 ;
|
public final static int PAGE_SIZE_BG = 1;
|
||||||
public final static int PAGE_SIZE_TW = 20 ;
|
public final static int PAGE_SIZE_TW = 20;
|
||||||
public final static int PAGE_SIZE_FV = 50 ;
|
public final static int PAGE_SIZE_FV = 50;
|
||||||
public final static int PAGE_SIZE_HA = 100 ;
|
public final static int PAGE_SIZE_HA = 100;
|
||||||
|
|
||||||
private long starttime = System.currentTimeMillis();
|
private long starttime = System.currentTimeMillis();
|
||||||
|
|
||||||
public User getUser(HttpServletRequest request){
|
public User getUser(HttpServletRequest request) {
|
||||||
User user = (User) request.getSession(true).getAttribute(MainContext.USER_SESSION_NAME) ;
|
User user = (User) request.getSession(true).getAttribute(MainContext.USER_SESSION_NAME);
|
||||||
if(user==null){
|
if (user == null) {
|
||||||
String authorization = request.getHeader("authorization") ;
|
String authorization = request.getHeader("authorization");
|
||||||
if(StringUtils.isBlank(authorization) && request.getCookies()!=null){
|
if (StringUtils.isBlank(authorization) && request.getCookies() != null) {
|
||||||
for(Cookie cookie : request.getCookies()){
|
for (Cookie cookie : request.getCookies()) {
|
||||||
if(cookie.getName().equals("authorization")){
|
if (cookie.getName().equals("authorization")) {
|
||||||
authorization = cookie.getValue() ; break ;
|
authorization = cookie.getValue();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(authorization)){
|
if (StringUtils.isNotBlank(authorization)) {
|
||||||
user = (User) CacheHelper.getApiUserCacheBean().getCacheObject(authorization, MainContext.SYSTEM_ORGI) ;
|
user = (User) CacheHelper.getApiUserCacheBean().getCacheObject(authorization, MainContext.SYSTEM_ORGI);
|
||||||
}
|
}
|
||||||
if(user==null){
|
if (user == null) {
|
||||||
user = new User();
|
user = new User();
|
||||||
user.setId(MainUtils.getContextID(request.getSession().getId())) ;
|
user.setId(MainUtils.getContextID(request.getSession().getId()));
|
||||||
user.setUsername(MainContext.GUEST_USER+"_"+ MainUtils.genIDByKey(user.getId())) ;
|
user.setUsername(MainContext.GUEST_USER + "_" + MainUtils.genIDByKey(user.getId()));
|
||||||
user.setOrgi(MainContext.SYSTEM_ORGI);
|
user.setOrgi(MainContext.SYSTEM_ORGI);
|
||||||
user.setSessionid(user.getId()) ;
|
user.setSessionid(user.getId());
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
user.setSessionid(user.getId()) ;
|
user.setSessionid(user.getId());
|
||||||
}
|
}
|
||||||
return user ;
|
return user;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 构建ElasticSearch基于部门查询的Filter
|
* 构建ElasticSearch基于部门查询的Filter
|
||||||
|
*
|
||||||
* @param request
|
* @param request
|
||||||
* @param boolQueryBuilder
|
* @param boolQueryBuilder
|
||||||
* @return
|
* @return
|
||||||
@ -102,12 +102,12 @@ public class Handler {
|
|||||||
public boolean esOrganFilter(final HttpServletRequest request, final BoolQueryBuilder boolQueryBuilder) throws CSKefuException {
|
public boolean esOrganFilter(final HttpServletRequest request, final BoolQueryBuilder boolQueryBuilder) throws CSKefuException {
|
||||||
// 组合部门条件
|
// 组合部门条件
|
||||||
User u = getUser(request);
|
User u = getUser(request);
|
||||||
if( u == null){
|
if (u == null) {
|
||||||
throw new CSKefuException("[esOrganFilter] 未能获取到登录用户。");
|
throw new CSKefuException("[esOrganFilter] 未能获取到登录用户。");
|
||||||
} else if(u.isSuperuser()){
|
} else if (u.isSuperuser()) {
|
||||||
// 超级管理员, 查看任何数据
|
// 超级管理员, 查看任何数据
|
||||||
return true;
|
return true;
|
||||||
} else if(u.getMyorgans().size() == 0){
|
} else if (u.getMyorgans().size() == 0) {
|
||||||
// 用户没有被分配到部门,返回空数据
|
// 用户没有被分配到部门,返回空数据
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
@ -119,80 +119,79 @@ public class Handler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @param queryBuilder
|
* @param queryBuilder
|
||||||
* @param request
|
* @param request
|
||||||
*/
|
*/
|
||||||
public BoolQueryBuilder search(BoolQueryBuilder queryBuilder , ModelMap map, HttpServletRequest request){
|
public BoolQueryBuilder search(BoolQueryBuilder queryBuilder, ModelMap map, HttpServletRequest request) {
|
||||||
queryBuilder.must(termQuery("orgi", this.getOrgi(request))) ;
|
queryBuilder.must(termQuery("orgi", this.getOrgi(request)));
|
||||||
|
|
||||||
//搜索框
|
//搜索框
|
||||||
if(!StringUtils.isBlank(request.getParameter("q"))) {
|
if (StringUtils.isNotBlank(request.getParameter("q"))) {
|
||||||
String q = request.getParameter("q") ;
|
String q = request.getParameter("q");
|
||||||
q = q.replaceAll("(OR|AND|NOT|:|\\(|\\))", "") ;
|
q = q.replaceAll("(OR|AND|NOT|:|\\(|\\))", "");
|
||||||
if(!StringUtils.isBlank(q)){
|
if (StringUtils.isNotBlank(q)) {
|
||||||
queryBuilder.must(QueryBuilders.boolQuery().must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND))) ;
|
queryBuilder.must(QueryBuilders.boolQuery().must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)));
|
||||||
map.put("q", q) ;
|
map.put("q", q);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//筛选表单
|
//筛选表单
|
||||||
if(!StringUtils.isBlank(request.getParameter("filterid"))) {
|
if (StringUtils.isNotBlank(request.getParameter("filterid"))) {
|
||||||
queryBuilder.must(termQuery("filterid", request.getParameter("filterid"))) ;
|
queryBuilder.must(termQuery("filterid", request.getParameter("filterid")));
|
||||||
map.put("filterid", request.getParameter("filterid")) ;
|
map.put("filterid", request.getParameter("filterid"));
|
||||||
}
|
}
|
||||||
|
|
||||||
//批次
|
//批次
|
||||||
if(!StringUtils.isBlank(request.getParameter("batid"))) {
|
if (StringUtils.isNotBlank(request.getParameter("batid"))) {
|
||||||
queryBuilder.must(termQuery("batid", request.getParameter("batid"))) ;
|
queryBuilder.must(termQuery("batid", request.getParameter("batid")));
|
||||||
map.put("batid", request.getParameter("batid")) ;
|
map.put("batid", request.getParameter("batid"));
|
||||||
}
|
}
|
||||||
|
|
||||||
//活动
|
//活动
|
||||||
if(!StringUtils.isBlank(request.getParameter("actid"))) {
|
if (StringUtils.isNotBlank(request.getParameter("actid"))) {
|
||||||
queryBuilder.must(termQuery("actid", request.getParameter("actid"))) ;
|
queryBuilder.must(termQuery("actid", request.getParameter("actid")));
|
||||||
map.put("actid", request.getParameter("actid")) ;
|
map.put("actid", request.getParameter("actid"));
|
||||||
}
|
}
|
||||||
|
|
||||||
//业务状态
|
//业务状态
|
||||||
if(!StringUtils.isBlank(request.getParameter("workstatus"))) {
|
if (StringUtils.isNotBlank(request.getParameter("workstatus"))) {
|
||||||
queryBuilder.must(termQuery("workstatus", request.getParameter("workstatus"))) ;
|
queryBuilder.must(termQuery("workstatus", request.getParameter("workstatus")));
|
||||||
map.put("workstatus", request.getParameter("workstatus")) ;
|
map.put("workstatus", request.getParameter("workstatus"));
|
||||||
}
|
}
|
||||||
|
|
||||||
//拨打状态
|
//拨打状态
|
||||||
if(!StringUtils.isBlank(request.getParameter("callstatus"))) {
|
if (StringUtils.isNotBlank(request.getParameter("callstatus"))) {
|
||||||
queryBuilder.must(termQuery("callstatus", request.getParameter("callstatus"))) ;
|
queryBuilder.must(termQuery("callstatus", request.getParameter("callstatus")));
|
||||||
map.put("callstatus", request.getParameter("callstatus")) ;
|
map.put("callstatus", request.getParameter("callstatus"));
|
||||||
}
|
}
|
||||||
|
|
||||||
//预约状态
|
//预约状态
|
||||||
if(!StringUtils.isBlank(request.getParameter("apstatus"))) {
|
if (StringUtils.isNotBlank(request.getParameter("apstatus"))) {
|
||||||
queryBuilder.must(termQuery("apstatus", request.getParameter("apstatus"))) ;
|
queryBuilder.must(termQuery("apstatus", request.getParameter("apstatus")));
|
||||||
map.put("apstatus", request.getParameter("apstatus")) ;
|
map.put("apstatus", request.getParameter("apstatus"));
|
||||||
}
|
}
|
||||||
|
|
||||||
RangeQueryBuilder rangeQuery = null ;
|
RangeQueryBuilder rangeQuery = null;
|
||||||
//拨打时间区间查询
|
//拨打时间区间查询
|
||||||
if(!StringUtils.isBlank(request.getParameter("callbegin")) || !StringUtils.isBlank(request.getParameter("callend"))){
|
if (StringUtils.isNotBlank(request.getParameter("callbegin")) || StringUtils.isNotBlank(request.getParameter("callend"))) {
|
||||||
|
|
||||||
if(!StringUtils.isBlank(request.getParameter("callbegin"))) {
|
if (StringUtils.isNotBlank(request.getParameter("callbegin"))) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
rangeQuery = QueryBuilders.rangeQuery("calltime").from(MainUtils.dateFormate.parse(request.getParameter("callbegin")).getTime()) ;
|
rangeQuery = QueryBuilders.rangeQuery("calltime").from(MainUtils.dateFormate.parse(request.getParameter("callbegin")).getTime());
|
||||||
} catch (ParseException e) {
|
} catch (ParseException e) {
|
||||||
|
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(request.getParameter("callend")) ) {
|
if (StringUtils.isNotBlank(request.getParameter("callend"))) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
if(rangeQuery == null) {
|
if (rangeQuery == null) {
|
||||||
rangeQuery = QueryBuilders.rangeQuery("calltime").to(MainUtils.dateFormate.parse(request.getParameter("callend")).getTime()) ;
|
rangeQuery = QueryBuilders.rangeQuery("calltime").to(MainUtils.dateFormate.parse(request.getParameter("callend")).getTime());
|
||||||
}else {
|
} else {
|
||||||
rangeQuery.to(MainUtils.dateFormate.parse(request.getParameter("callend")).getTime()) ;
|
rangeQuery.to(MainUtils.dateFormate.parse(request.getParameter("callend")).getTime());
|
||||||
}
|
}
|
||||||
} catch (ParseException e) {
|
} catch (ParseException e) {
|
||||||
|
|
||||||
@ -200,29 +199,29 @@ public class Handler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
map.put("callbegin", request.getParameter("callbegin")) ;
|
map.put("callbegin", request.getParameter("callbegin"));
|
||||||
map.put("callend", request.getParameter("callend")) ;
|
map.put("callend", request.getParameter("callend"));
|
||||||
}
|
}
|
||||||
//预约时间区间查询
|
//预约时间区间查询
|
||||||
if(!StringUtils.isBlank(request.getParameter("apbegin")) || !StringUtils.isBlank(request.getParameter("apend"))){
|
if (StringUtils.isNotBlank(request.getParameter("apbegin")) || StringUtils.isNotBlank(request.getParameter("apend"))) {
|
||||||
|
|
||||||
if(!StringUtils.isBlank(request.getParameter("apbegin"))) {
|
if (StringUtils.isNotBlank(request.getParameter("apbegin"))) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
rangeQuery = QueryBuilders.rangeQuery("aptime").from(MainUtils.dateFormate.parse(request.getParameter("apbegin")).getTime()) ;
|
rangeQuery = QueryBuilders.rangeQuery("aptime").from(MainUtils.dateFormate.parse(request.getParameter("apbegin")).getTime());
|
||||||
} catch (ParseException e) {
|
} catch (ParseException e) {
|
||||||
|
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(request.getParameter("apend")) ) {
|
if (StringUtils.isNotBlank(request.getParameter("apend"))) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
if(rangeQuery == null) {
|
if (rangeQuery == null) {
|
||||||
rangeQuery = QueryBuilders.rangeQuery("aptime").to(MainUtils.dateFormate.parse(request.getParameter("apend")).getTime()) ;
|
rangeQuery = QueryBuilders.rangeQuery("aptime").to(MainUtils.dateFormate.parse(request.getParameter("apend")).getTime());
|
||||||
}else {
|
} else {
|
||||||
rangeQuery.to(MainUtils.dateFormate.parse(request.getParameter("apend")).getTime()) ;
|
rangeQuery.to(MainUtils.dateFormate.parse(request.getParameter("apend")).getTime());
|
||||||
}
|
}
|
||||||
} catch (ParseException e) {
|
} catch (ParseException e) {
|
||||||
|
|
||||||
@ -230,91 +229,94 @@ public class Handler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
map.put("apbegin", request.getParameter("apbegin")) ;
|
map.put("apbegin", request.getParameter("apbegin"));
|
||||||
map.put("apend", request.getParameter("apend")) ;
|
map.put("apend", request.getParameter("apend"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(rangeQuery!=null) {
|
if (rangeQuery != null) {
|
||||||
queryBuilder.must(rangeQuery) ;
|
queryBuilder.must(rangeQuery);
|
||||||
}
|
}
|
||||||
|
|
||||||
//外呼任务id
|
//外呼任务id
|
||||||
if(!StringUtils.isBlank(request.getParameter("taskid"))) {
|
if (StringUtils.isNotBlank(request.getParameter("taskid"))) {
|
||||||
queryBuilder.must(termQuery("taskid", request.getParameter("taskid"))) ;
|
queryBuilder.must(termQuery("taskid", request.getParameter("taskid")));
|
||||||
map.put("taskid", request.getParameter("taskid")) ;
|
map.put("taskid", request.getParameter("taskid"));
|
||||||
}
|
}
|
||||||
//坐席
|
//坐席
|
||||||
if(!StringUtils.isBlank(request.getParameter("owneruser"))) {
|
if (StringUtils.isNotBlank(request.getParameter("owneruser"))) {
|
||||||
queryBuilder.must(termQuery("owneruser", request.getParameter("owneruser"))) ;
|
queryBuilder.must(termQuery("owneruser", request.getParameter("owneruser")));
|
||||||
map.put("owneruser", request.getParameter("owneruser")) ;
|
map.put("owneruser", request.getParameter("owneruser"));
|
||||||
}
|
}
|
||||||
//部门
|
//部门
|
||||||
if(!StringUtils.isBlank(request.getParameter("ownerdept"))) {
|
if (StringUtils.isNotBlank(request.getParameter("ownerdept"))) {
|
||||||
queryBuilder.must(termQuery("ownerdept", request.getParameter("ownerdept"))) ;
|
queryBuilder.must(termQuery("ownerdept", request.getParameter("ownerdept")));
|
||||||
map.put("ownerdept", request.getParameter("ownerdept")) ;
|
map.put("ownerdept", request.getParameter("ownerdept"));
|
||||||
}
|
}
|
||||||
//分配状态
|
//分配状态
|
||||||
if(!StringUtils.isBlank(request.getParameter("status"))) {
|
if (StringUtils.isNotBlank(request.getParameter("status"))) {
|
||||||
queryBuilder.must(termQuery("status", request.getParameter("status"))) ;
|
queryBuilder.must(termQuery("status", request.getParameter("status")));
|
||||||
map.put("status", request.getParameter("status")) ;
|
map.put("status", request.getParameter("status"));
|
||||||
}
|
}
|
||||||
|
|
||||||
return queryBuilder ;
|
return queryBuilder;
|
||||||
}
|
}
|
||||||
|
|
||||||
public User getIMUser(HttpServletRequest request , String userid , String nickname){
|
public User getIMUser(HttpServletRequest request, String userid, String nickname) {
|
||||||
User user = (User) request.getSession(true).getAttribute(MainContext.IM_USER_SESSION_NAME) ;
|
User user = (User) request.getSession(true).getAttribute(MainContext.IM_USER_SESSION_NAME);
|
||||||
if(user==null){
|
if (user == null) {
|
||||||
user = new User();
|
user = new User();
|
||||||
if(!StringUtils.isBlank(userid)){
|
if (StringUtils.isNotBlank(userid)) {
|
||||||
user.setId(userid) ;
|
user.setId(userid);
|
||||||
}else{
|
} else {
|
||||||
user.setId(MainUtils.getContextID(request.getSession().getId())) ;
|
user.setId(MainUtils.getContextID(request.getSession().getId()));
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(nickname)){
|
if (StringUtils.isNotBlank(nickname)) {
|
||||||
user.setUsername(nickname);
|
user.setUsername(nickname);
|
||||||
}else{
|
} else {
|
||||||
user.setUsername(MainContext.GUEST_USER+"_"+ MainUtils.genIDByKey(user.getId())) ;
|
user.setUsername(MainContext.GUEST_USER + "_" + MainUtils.genIDByKey(user.getId()));
|
||||||
}
|
}
|
||||||
user.setSessionid(user.getId()) ;
|
user.setSessionid(user.getId());
|
||||||
}else{
|
} else {
|
||||||
user.setSessionid(MainUtils.getContextID(request.getSession().getId())) ;
|
user.setSessionid(MainUtils.getContextID(request.getSession().getId()));
|
||||||
}
|
}
|
||||||
return user ;
|
return user;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setUser(HttpServletRequest request , User user){
|
public void setUser(HttpServletRequest request, User user) {
|
||||||
request.getSession(true).removeAttribute(MainContext.USER_SESSION_NAME) ;
|
request.getSession(true).removeAttribute(MainContext.USER_SESSION_NAME);
|
||||||
request.getSession(true).setAttribute(MainContext.USER_SESSION_NAME , user) ;
|
request.getSession(true).setAttribute(MainContext.USER_SESSION_NAME, user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建系统监控的 模板页面
|
* 创建系统监控的 模板页面
|
||||||
|
*
|
||||||
* @param page
|
* @param page
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Viewport createAdminTempletResponse(String page) {
|
public Viewport createAdminTempletResponse(String page) {
|
||||||
return new Viewport("/admin/include/tpl" , page);
|
return new Viewport("/admin/include/tpl", page);
|
||||||
}
|
|
||||||
/**
|
|
||||||
* 创建系统监控的 模板页面
|
|
||||||
* @param page
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public Viewport createAppsTempletResponse(String page) {
|
|
||||||
return new Viewport("/apps/include/tpl" , page);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建系统监控的 模板页面
|
* 创建系统监控的 模板页面
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Viewport createAppsTempletResponse(String page) {
|
||||||
|
return new Viewport("/apps/include/tpl", page);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建系统监控的 模板页面
|
||||||
|
*
|
||||||
* @param page
|
* @param page
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Viewport createEntIMTempletResponse(String page) {
|
public Viewport createEntIMTempletResponse(String page) {
|
||||||
return new Viewport("/apps/entim/include/tpl" , page);
|
return new Viewport("/apps/entim/include/tpl", page);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Viewport createRequestPageTempletResponse(String page) {
|
public Viewport createRequestPageTempletResponse(String page) {
|
||||||
@ -322,21 +324,20 @@ public class Handler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @param data
|
* @param data
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public ModelAndView request(Viewport data) {
|
public ModelAndView request(Viewport data) {
|
||||||
return new ModelAndView(data.getTemplet()!=null ? data.getTemplet(): data.getPage() , "data", data) ;
|
return new ModelAndView(data.getTemplet() != null ? data.getTemplet() : data.getPage(), "data", data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getP(HttpServletRequest request) {
|
public int getP(HttpServletRequest request) {
|
||||||
int page = 0;
|
int page = 0;
|
||||||
String p = request.getParameter("p") ;
|
String p = request.getParameter("p");
|
||||||
if(!StringUtils.isBlank(p) && p.matches("[\\d]*")){
|
if (StringUtils.isNotBlank(p) && p.matches("[\\d]*")) {
|
||||||
page = Integer.parseInt(p) ;
|
page = Integer.parseInt(p);
|
||||||
if(page > 0){
|
if (page > 0) {
|
||||||
page = page - 1 ;
|
page = page - 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return page;
|
return page;
|
||||||
@ -344,19 +345,19 @@ public class Handler {
|
|||||||
|
|
||||||
public int getPs(HttpServletRequest request) {
|
public int getPs(HttpServletRequest request) {
|
||||||
int pagesize = PAGE_SIZE_TW;
|
int pagesize = PAGE_SIZE_TW;
|
||||||
String ps = request.getParameter("ps") ;
|
String ps = request.getParameter("ps");
|
||||||
if(!StringUtils.isBlank(ps) && ps.matches("[\\d]*")){
|
if (StringUtils.isNotBlank(ps) && ps.matches("[\\d]*")) {
|
||||||
pagesize = Integer.parseInt(ps) ;
|
pagesize = Integer.parseInt(ps);
|
||||||
}
|
}
|
||||||
return pagesize;
|
return pagesize;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getP(QueryParams params) {
|
public int getP(QueryParams params) {
|
||||||
int page = 0;
|
int page = 0;
|
||||||
if(params!=null && !StringUtils.isBlank(params.getP()) && params.getP().matches("[\\d]*")){
|
if (params != null && StringUtils.isNotBlank(params.getP()) && params.getP().matches("[\\d]*")) {
|
||||||
page = Integer.parseInt(params.getP()) ;
|
page = Integer.parseInt(params.getP());
|
||||||
if(page > 0){
|
if (page > 0) {
|
||||||
page = page - 1 ;
|
page = page - 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return page;
|
return page;
|
||||||
@ -364,8 +365,8 @@ public class Handler {
|
|||||||
|
|
||||||
public int getPs(QueryParams params) {
|
public int getPs(QueryParams params) {
|
||||||
int pagesize = PAGE_SIZE_TW;
|
int pagesize = PAGE_SIZE_TW;
|
||||||
if(params != null && !StringUtils.isBlank(params.getPs()) && params.getPs().matches("[\\d]*")){
|
if (params != null && StringUtils.isNotBlank(params.getPs()) && params.getPs().matches("[\\d]*")) {
|
||||||
pagesize = Integer.parseInt(params.getPs()) ;
|
pagesize = Integer.parseInt(params.getPs());
|
||||||
}
|
}
|
||||||
return pagesize;
|
return pagesize;
|
||||||
}
|
}
|
||||||
@ -373,38 +374,42 @@ public class Handler {
|
|||||||
|
|
||||||
public int get50Ps(HttpServletRequest request) {
|
public int get50Ps(HttpServletRequest request) {
|
||||||
int pagesize = PAGE_SIZE_FV;
|
int pagesize = PAGE_SIZE_FV;
|
||||||
String ps = request.getParameter("ps") ;
|
String ps = request.getParameter("ps");
|
||||||
if(!StringUtils.isBlank(ps) && ps.matches("[\\d]*")){
|
if (StringUtils.isNotBlank(ps) && ps.matches("[\\d]*")) {
|
||||||
pagesize = Integer.parseInt(ps) ;
|
pagesize = Integer.parseInt(ps);
|
||||||
}
|
}
|
||||||
return pagesize;
|
return pagesize;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getOrgi(HttpServletRequest request){
|
public String getOrgi(HttpServletRequest request) {
|
||||||
return getUser(request).getOrgi();
|
return getUser(request).getOrgi();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 机构id
|
* 机构id
|
||||||
|
*
|
||||||
* @param request
|
* @param request
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getOrgid(HttpServletRequest request){
|
public String getOrgid(HttpServletRequest request) {
|
||||||
User u = getUser(request);
|
User u = getUser(request);
|
||||||
return u.getOrgid();
|
return u.getOrgid();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Tenant getTenant(HttpServletRequest request){
|
public Tenant getTenant(HttpServletRequest request) {
|
||||||
return tenantRes.findById(getOrgi(request));
|
return tenantRes.findById(getOrgi(request));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据是否租户共享获取orgi
|
* 根据是否租户共享获取orgi
|
||||||
|
*
|
||||||
* @param request
|
* @param request
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getOrgiByTenantshare(HttpServletRequest request){
|
public String getOrgiByTenantshare(HttpServletRequest request) {
|
||||||
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnabletneant()&&systemConfig.isTenantshare()) {
|
if (systemConfig != null && systemConfig.isEnabletneant() && systemConfig.isTenantshare()) {
|
||||||
User user = this.getUser(request) ;
|
User user = this.getUser(request);
|
||||||
return user.getOrgid();
|
return user.getOrgid();
|
||||||
}
|
}
|
||||||
return getOrgi(request);
|
return getOrgi(request);
|
||||||
@ -412,11 +417,12 @@ public class Handler {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 判断是否租户共享
|
* 判断是否租户共享
|
||||||
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public boolean isTenantshare(){
|
public boolean isTenantshare() {
|
||||||
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnabletneant()&&systemConfig.isTenantshare()) {
|
if (systemConfig != null && systemConfig.isEnabletneant() && systemConfig.isTenantshare()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@ -424,22 +430,25 @@ public class Handler {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 判断是否多租户
|
* 判断是否多租户
|
||||||
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public boolean isEnabletneant(){
|
public boolean isEnabletneant() {
|
||||||
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnabletneant()) {
|
if (systemConfig != null && systemConfig.isEnabletneant()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 判断是否多租户
|
* 判断是否多租户
|
||||||
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public boolean isTenantconsole(){
|
public boolean isTenantconsole() {
|
||||||
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
SystemConfig systemConfig = MainUtils.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnabletneant()&&systemConfig.isTenantconsole()) {
|
if (systemConfig != null && systemConfig.isEnabletneant() && systemConfig.isTenantconsole()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -18,13 +18,13 @@ package com.chatopera.cc.app.handler;
|
|||||||
|
|
||||||
import com.chatopera.cc.app.basic.MainContext;
|
import com.chatopera.cc.app.basic.MainContext;
|
||||||
import com.chatopera.cc.app.basic.MainUtils;
|
import com.chatopera.cc.app.basic.MainUtils;
|
||||||
import com.chatopera.cc.util.Menu;
|
|
||||||
import com.chatopera.cc.app.model.*;
|
|
||||||
import com.chatopera.cc.app.cache.CacheHelper;
|
import com.chatopera.cc.app.cache.CacheHelper;
|
||||||
|
import com.chatopera.cc.app.model.*;
|
||||||
import com.chatopera.cc.app.persistence.repository.OrganRepository;
|
import com.chatopera.cc.app.persistence.repository.OrganRepository;
|
||||||
import com.chatopera.cc.app.persistence.repository.RoleAuthRepository;
|
import com.chatopera.cc.app.persistence.repository.RoleAuthRepository;
|
||||||
import com.chatopera.cc.app.persistence.repository.UserRepository;
|
import com.chatopera.cc.app.persistence.repository.UserRepository;
|
||||||
import com.chatopera.cc.app.persistence.repository.UserRoleRepository;
|
import com.chatopera.cc.app.persistence.repository.UserRoleRepository;
|
||||||
|
import com.chatopera.cc.util.Menu;
|
||||||
import com.chatopera.cc.util.OnlineUserUtils;
|
import com.chatopera.cc.util.OnlineUserUtils;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
@ -78,10 +78,18 @@ public class LoginController extends Handler {
|
|||||||
private void organs(final User user, final String organ) {
|
private void organs(final User user, final String organ) {
|
||||||
if (organ == null)
|
if (organ == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (user.inMyorgans(organ))
|
||||||
|
return;
|
||||||
|
|
||||||
user.getMyorgans().add(organ);
|
user.getMyorgans().add(organ);
|
||||||
List<Organ> y = organRepository.findByOrgiAndParent(user.getOrgi(), organ);
|
List<Organ> y = organRepository.findByOrgiAndParent(user.getOrgi(), organ);
|
||||||
for (Organ x : y) {
|
for (Organ x : y) {
|
||||||
|
try {
|
||||||
organs(user, x.getId());
|
organs(user, x.getId());
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error("organs", e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -515,6 +515,10 @@ public class User implements java.io.Serializable{
|
|||||||
this.ordertype = ordertype;
|
this.ordertype = ordertype;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean inMyorgans(final String organ){
|
||||||
|
return myorgans.contains(organ);
|
||||||
|
}
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
public HashSet<String> getMyorgans() {
|
public HashSet<String> getMyorgans() {
|
||||||
return myorgans;
|
return myorgans;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user