Bladeren bron

考勤规则bug修复

dzx 1 jaar geleden
bovenliggende
commit
33741e9cc6

+ 18 - 11
src/main/java/com/xjrsoft/module/attendance/service/impl/AttendanceRuleCategoryServiceImpl.java

@@ -284,18 +284,25 @@ public class AttendanceRuleCategoryServiceImpl extends MPJBaseServiceImpl<Attend
                         userIds.add(relation.getUserId());
                     }
                 }
+                List<XjrUser> userList = new ArrayList<>();
+                if(!deptIds.isEmpty()){
+                    List<XjrUser> deptUserList = xjrUserService.list(
+                            new MPJLambdaWrapper<XjrUser>()
+                                    .select(XjrUser::getId)
+                                    .select(XjrUser.class, x -> VoToColumnUtil.fieldsToColumns(XjrUser.class).contains(x.getProperty()))
+                                    .leftJoin(BaseTeacher.class, BaseTeacher::getUserId, XjrUser::getId)
+                                    .leftJoin(UserDeptRelation.class, UserDeptRelation::getUserId, XjrUser::getId)
+                                    .eq(BaseTeacher::getDeleteMark, DeleteMark.NODELETE.getCode())
+                                    .eq(XjrUser::getDeleteMark, DeleteMark.NODELETE.getCode())
+                                    .in(UserDeptRelation::getDeptId, deptIds)
+                    );
+                    userList.addAll(deptUserList);
+                }
+                if(!userIds.isEmpty()){
+                    userList.addAll(xjrUserService.listByIds(userIds));
+                }
+
 
-                List<XjrUser> userList = xjrUserService.list(
-                    new MPJLambdaWrapper<XjrUser>()
-                    .select(XjrUser::getId)
-                    .select(XjrUser.class, x -> VoToColumnUtil.fieldsToColumns(XjrUser.class).contains(x.getProperty()))
-                    .leftJoin(BaseTeacher.class, BaseTeacher::getUserId, XjrUser::getId)
-                    .leftJoin(UserDeptRelation.class, UserDeptRelation::getUserId, XjrUser::getId)
-                    .eq(BaseTeacher::getDeleteMark, DeleteMark.NODELETE.getCode())
-                    .eq(XjrUser::getDeleteMark, DeleteMark.NODELETE.getCode())
-                    .in(!deptIds.isEmpty(), UserDeptRelation::getDeptId, deptIds)
-                    .in(!userIds.isEmpty(), XjrUser::getId, userIds)
-                );
                 //查询这部分人中是否已经有人有规则了
                 List<Long> relationUserIds = userList.stream().map(XjrUser::getId).collect(Collectors.toList());
                 if(!relationUserIds.isEmpty()){