为便于员工之间的良性竞争,避免恶意挖客户,对于不同的登录用户,在客户列表中只显示当用用户自己所拥有的客户列表.
---具体的,通过在列表显示界面的列表查询语句中增加根据用户id查询其对应的客户资源的条件.
-----但是,对于管理员登录时,该条件无效.
--------具体实现:
1.在登录后,将user的相关的角色存放到session中,再User的工具类中提供一个判断当前用户的角色是否包含管理员或是市场经理的角色,如果是该方法返回true,否则false.
2.需要在query查询对象中增加一个权限判断属性,该属性默认可设置为false,但是在该query对象的构造方法中需要根据User的工具类中判断当前用户的角色是否包含管理员或是市场经理的角色的方法的返回值设置query查询对象中的权限判断属性的boolean值.最后,在后台sql查询语句接收到该query参数对象时,会利用<if test="">标签根据该权限判断属性的boolean值决定加上id过滤条件.从而完成对于非管理员的用户只显示其所拥有的客户列表的功能.