这个if是数据权限的问题,有三个角色校长、年级主任、班主任
当当前登录人为校长时:查全部数据,
当当前登录人为年级主任时:查年级数据,
当当前登录人为班主任时:查班级数据
请问一下这三个怎么用if嵌套在一起呢
${if(fineusername == 'admin',全校权限 != 0, "", "")}${if(fineusername != 'admin',全校权限 == 0,年级权限 != 0, " and 年级权限 in ('"+具体年级+"') ", "")}${if(fineusername != 'admin',全校权限 == 0,年级权限 == 0,班级权限 !=0 , " and 班级权限 in ('"+具体班级+"') ", "")}
直接使用
fine_role可以获取角色
然后只要
where 1=1
${SWITCH(fine_role,"校长","","年级主任"," and 年级权限 in ('"+具体年级+"') ","班主任"," and 班级权限 in ('"+具体班级+"') ")}
没必要 嵌套的,分开写逻辑还清楚点,或者 你的权限表 直接细化到人和班级, 然后直接对应的人可以看哪些班级,简单多了
不要这么做
1、不好维护
2、啰嗦冗余
3、被同行见了会骂