业务是根据登录人的角色做数据筛选,然后总是筛选不成功,发现问题如下:

在数据筛选代码块最后有上面这个判断,判断了params 是否是Null,是否属于继承了BaseEntity
然后我就打印了这两个值看了一下
一个 true,一个false 那最终肯定进不了if里
原因:
我需要在调用加上了@DataScope的ServiceImpl 之前就把实体对象传进来,而不是在这个业务实现类里实例化一个实体类的对象

应该像上面那样

然后就正常筛选了
2021年12月1日
补充一下,实体类对象参数的位置也很重要,需要放在第一个,或者至少得是map前面,不然也会失败

博客内容涉及一个业务数据筛选的bug排查过程。作者发现代码中对params对象的判断导致筛选失败,原因是对象未在正确的位置被初始化。解决方案是确保实体类对象在调用@ServiceImpl之前传入,并且作为参数时位置要正确,通常是第一个或在map之前。调整后,数据筛选功能恢复正常。
2464

被折叠的 条评论
为什么被折叠?



