Ver código fonte

学生导入优化

dzx 7 meses atrás
pai
commit
3f055895a1

+ 7 - 0
src/main/java/com/xjrsoft/module/student/service/impl/StudentManagerServiceImpl.java

@@ -18,6 +18,7 @@ import com.xjrsoft.common.enums.*;
 import com.xjrsoft.common.exception.MyException;
 import com.xjrsoft.common.utils.RedisUtil;
 import com.xjrsoft.common.utils.TreeUtil;
+import com.xjrsoft.common.utils.VoToColumnUtil;
 import com.xjrsoft.config.CommonPropertiesConfig;
 import com.xjrsoft.module.base.entity.BaseClass;
 import com.xjrsoft.module.base.entity.BaseGrade;
@@ -507,6 +508,8 @@ public class StudentManagerServiceImpl extends MPJBaseServiceImpl<BaseStudentUse
         //查询所有学生的用户信息,组装起来备用
         List<BaseStudentUser> studentUsers = this.selectJoinList(BaseStudentUser.class,
                 new MPJLambdaWrapper<BaseStudentUser>()
+                        .select(BaseStudentUser::getId)
+                        .select(BaseStudentUser.class, x -> VoToColumnUtil.fieldsToColumns(BaseStudentUser.class).contains(x.getProperty()))
                         .leftJoin(BaseStudent.class, BaseStudent::getUserId, BaseStudentUser::getId)
                         .in(BaseStudentUser::getCredentialNumber, idNumbers)
         );
@@ -519,6 +522,8 @@ public class StudentManagerServiceImpl extends MPJBaseServiceImpl<BaseStudentUse
         //查询所有的学生信息,组装起来备用
         List<BaseStudent> baseStudents = baseStudentService.selectJoinList(BaseStudent.class,
                 new MPJLambdaWrapper<BaseStudent>()
+                        .select(BaseStudent::getId)
+                        .select(BaseStudent.class, x -> VoToColumnUtil.fieldsToColumns(BaseStudent.class).contains(x.getProperty()))
                         .leftJoin(BaseStudentUser.class, BaseStudentUser::getId, BaseStudent::getUserId)
                         .in(BaseStudentUser::getCredentialNumber, idNumbers)
         );
@@ -537,6 +542,8 @@ public class StudentManagerServiceImpl extends MPJBaseServiceImpl<BaseStudentUse
 
         List<BaseStudentSchoolRoll> baseStudentSchoolRolls = schoolRollService.selectJoinList(BaseStudentSchoolRoll.class,
                 new MPJLambdaWrapper<BaseStudentSchoolRoll>()
+                        .select(BaseStudentSchoolRoll::getId)
+                        .select(BaseStudentSchoolRoll.class, x -> VoToColumnUtil.fieldsToColumns(BaseStudentSchoolRoll.class).contains(x.getProperty()))
                         .leftJoin(BaseStudent.class, BaseStudent::getUserId, BaseStudentSchoolRoll::getUserId)
                         .in(!userIds.isEmpty(), BaseStudentSchoolRoll::getUserId, userIds)
         );