ソースを参照

新生报到班级查询

dzx 8 ヶ月 前
コミット
22ee5e861e

+ 45 - 4
src/main/java/com/xjrsoft/module/student/controller/BaseNewStudentReportController.java

@@ -19,16 +19,19 @@ import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
 import com.xjrsoft.common.utils.VoToColumnUtil;
+import com.xjrsoft.module.banding.dto.BandingTaskClassPageDto;
 import com.xjrsoft.module.banding.entity.BandingTask;
 import com.xjrsoft.module.banding.service.IBandingTaskClassService;
 import com.xjrsoft.module.banding.service.IBandingTaskClassStudentService;
 import com.xjrsoft.module.banding.service.IBandingTaskService;
+import com.xjrsoft.module.banding.vo.BandingTaskClassPageVo;
 import com.xjrsoft.module.banding.vo.BandingTaskClassReportStatisticsVo;
 import com.xjrsoft.module.base.entity.BaseGrade;
 import com.xjrsoft.module.base.service.IBaseGradeService;
 import com.xjrsoft.module.base.service.IBaseSemesterService;
 import com.xjrsoft.module.databoard.vo.ItemCountVo;
 import com.xjrsoft.module.organization.service.IUserService;
+import com.xjrsoft.module.student.dto.StudentReportRecordPageDto;
 import com.xjrsoft.module.student.dto.StudentReportRecordStatisticsDto;
 import com.xjrsoft.module.student.dto.StudentTryReadingReportPageDto;
 import com.xjrsoft.module.student.entity.EnrollmentPlan;
@@ -78,16 +81,12 @@ import java.util.stream.Collectors;
 public class BaseNewStudentReportController {
 
     private final IStudentReportRecordService recordService;
-    private final IBandingTaskClassStudentService classStudentService;
     private final IStudentReportPlanService reportPlanService;
     private final IBandingTaskClassService bandingTaskClassService;
     private final IBaseSemesterService semesterService;
     private final IBaseGradeService gradeService;
     private final IEnrollmentPlanService enrollmentPlanService;
     private final IBandingTaskService bandingTaskService;
-    private final IUserService userService;
-    private final IBaseStudentSchoolRollService rollService;
-    private final IBaseNewStudentService newStudentService;
 
     @GetMapping(value = "/page")
     @ApiOperation(value = "新生维护信息列表(分页)")
@@ -355,5 +354,47 @@ public class BaseNewStudentReportController {
         return RT.fileStream(bot.toByteArray(), fileName);
     }
 
+    @GetMapping(value = "/class-list")
+    @ApiOperation(value="查询班级信息")
+    @SaCheckPermission("studentreportrecord:detail")
+    @XjrLog(value = "查询班级信息")
+    public RT<List<BandingTaskClassPageVo>> classList(@Valid StudentReportRecordPageDto dto){
+        BandingTaskClassPageDto classDto = new BandingTaskClassPageDto();
+        if(dto.getEnrollmentPlanId() == null){
+            if(dto.getTeacherId() != null){
+                classDto.setTeacherId(dto.getTeacherId());
+            }else{
+                classDto.setTeacherId(StpUtil.getLoginIdAsLong());
+            }
+            StudentReportPlan plan = reportPlanService.getLastNewStudentReportPlan();
+            if(plan == null){
+                return RT.ok(new ArrayList<>());
+            }
+            classDto.setBandingTaskId(plan.getBandingTaskId());
+        }else{
+            EnrollmentPlan enrollmentPlan = enrollmentPlanService.getById(dto.getEnrollmentPlanId());
+            if(enrollmentPlan != null){
+                List<BandingTask> list = bandingTaskService.list(
+                        new QueryWrapper<BandingTask>().lambda()
+                                .eq(BandingTask::getEnrollType, enrollmentPlan.getEnrollType())
+                                .eq(BandingTask::getGradeId, enrollmentPlan.getGradeId())
+                                .eq(BandingTask::getDeleteMark, DeleteMark.NODELETE.getCode())
+                                .eq(BandingTask::getEnabledMark, EnabledMark.ENABLED.getCode())
+                                .orderByDesc(BandingTask::getId)
+                );
+                if(!list.isEmpty()){
+                    classDto.setBandingTaskId(list.get(0).getId());
+                }
+            }
+            List<String> roleList = StpUtil.getRoleList();
+            if(roleList.contains("CLASSTE") && roleList.contains("TEACHER")){
+                classDto.setTeacherId(StpUtil.getLoginIdAsLong());
+            }
+        }
+
+        List<BandingTaskClassPageVo> list = bandingTaskClassService.getList(classDto);
+        return RT.ok(list);
+    }
+
 
 }