users 表:username,password,role...
org 表:lineId,lineleaderId,linesupId...
emp 表:empId,lineId...
ot 表:empId,otnum...实现思路:
1.根据username,得到对应的role;
2.根据role,判断属于lineleaderId,还是linesupId;
3.根据lineleaderId或是linesupId,得到对应的lineId (是个集合);
4.根据lineId 得到empId,进而得到ot 表中对应的empId 的信息。求该思路的实现方法或简单示例?越细致越好,需明确到底是通过什么来实现的,是Interceptor? Filter?或是...
org 表:lineId,lineleaderId,linesupId...
emp 表:empId,lineId...
ot 表:empId,otnum...实现思路:
1.根据username,得到对应的role;
2.根据role,判断属于lineleaderId,还是linesupId;
3.根据lineleaderId或是linesupId,得到对应的lineId (是个集合);
4.根据lineId 得到empId,进而得到ot 表中对应的empId 的信息。求该思路的实现方法或简单示例?越细致越好,需明确到底是通过什么来实现的,是Interceptor? Filter?或是...
emp 表:empId,lineId...
ot 表:empId,otnum...
这三个表是有关联的,那这个问题就可以简化为两步,一步是取到users表的role,第二步就是通过role,经过一系列的关联,得到想要的答案.
第一步可以用filter或是自己写控制代码,而第二步嘛,可以用SQL做关联查询.
不难解决
在Interceptor 中作何操作,是如下:...
@SuppressWarnings("serial")
public class IsOkInterceptor extends AbstractInterceptor{
@SuppressWarnings("unchecked")
public String intercept(ActionInvocation invocation) throws Exception {
if(invocation.getInvocationContext().getSession().get("role")!=null){
//???
}else{
return invocation.invoke();
}
}
}
我设想的是如果role==null 则为管理员权限,可查询所有,如果role!=null 则根据role 的值去org 表中查询相应的lineId(为集合)。
我想清楚的知道,在该拦截器中作什么判断?
根据role 去org 中查询在哪一步完成?本人初涉SSH ,望各位达人悉心讲解下,如果可以追加分,一定重酬!!!