dzx пре 8 месеци
родитељ
комит
ff85478167

+ 3 - 0
src/main/java/com/xjrsoft/module/banding/service/IBandingTaskClassService.java

@@ -7,6 +7,7 @@ import com.xjrsoft.module.banding.dto.UpdateBandingClassDto;
 import com.xjrsoft.module.banding.entity.BandingTask;
 import com.xjrsoft.module.banding.entity.BandingTaskClass;
 import com.xjrsoft.module.banding.vo.BandingTaskClassPageVo;
+import com.xjrsoft.module.banding.vo.BandingTaskClassReportStatisticsVo;
 import com.xjrsoft.module.banding.vo.BandingTaskClassStudentListVo;
 import com.xjrsoft.module.banding.vo.BandingTaskClassSureListVo;
 import com.xjrsoft.module.base.entity.BaseClass;
@@ -67,4 +68,6 @@ public interface IBandingTaskClassService extends MPJBaseService<BandingTaskClas
     Boolean initClassByBaseClass(BandingTask bandingTask);
 
     Boolean deleteClass(List<Long> ids);
+
+    BandingTaskClassReportStatisticsVo getTryReadingReportClassStatistics(Long classId);
 }

+ 13 - 0
src/main/java/com/xjrsoft/module/banding/service/impl/BandingTaskClassServiceImpl.java

@@ -23,6 +23,7 @@ import com.xjrsoft.module.banding.mapper.BandingTaskClassStudentMapper;
 import com.xjrsoft.module.banding.mapper.BandingTaskMapper;
 import com.xjrsoft.module.banding.service.IBandingTaskClassService;
 import com.xjrsoft.module.banding.vo.BandingTaskClassPageVo;
+import com.xjrsoft.module.banding.vo.BandingTaskClassReportStatisticsVo;
 import com.xjrsoft.module.banding.vo.BandingTaskClassStudentListVo;
 import com.xjrsoft.module.banding.vo.BandingTaskClassSureListVo;
 import com.xjrsoft.module.base.entity.BaseClass;
@@ -33,6 +34,9 @@ import com.xjrsoft.module.base.service.IBaseClassroomService;
 import com.xjrsoft.module.base.service.IBaseMajorSetService;
 import com.xjrsoft.module.organization.entity.User;
 import com.xjrsoft.module.organization.service.IUserService;
+import com.xjrsoft.module.student.dto.StudentReportRecordPageDto;
+import com.xjrsoft.module.student.mapper.StudentReportRecordMapper;
+import com.xjrsoft.module.student.vo.StudentReportRecordPlanPageVo;
 import com.xjrsoft.module.system.entity.DictionaryDetail;
 import com.xjrsoft.module.system.entity.DictionaryItem;
 import com.xjrsoft.module.system.mapper.DictionarydetailMapper;
@@ -65,6 +69,7 @@ public class BandingTaskClassServiceImpl extends MPJBaseServiceImpl<BandingTaskC
     private final IBaseMajorSetService majorSetService;
     private final DictionarydetailMapper detailMapper;
     private final BaseClassMapper classMapper;
+    private final StudentReportRecordMapper reportRecordMapper;
     @Override
     public Boolean add(BandingTaskClass bandingTaskClass) {
         bandingTaskClass.setCreateDate(new Date());
@@ -442,4 +447,12 @@ public class BandingTaskClassServiceImpl extends MPJBaseServiceImpl<BandingTaskC
         }
         return true;
     }
+
+    @Override
+    public BandingTaskClassReportStatisticsVo getTryReadingReportClassStatistics(Long classId) {
+        StudentReportRecordPageDto dto = new StudentReportRecordPageDto();
+        dto.setClassId(classId);
+        List<StudentReportRecordPlanPageVo> tryReadingList = reportRecordMapper.getTryReadingList(dto);
+        return null;
+    }
 }

+ 67 - 0
src/main/java/com/xjrsoft/module/banding/vo/BandingTaskClassReportStatisticsVo.java

@@ -0,0 +1,67 @@
+package com.xjrsoft.module.banding.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+* @title: 新生分班任务分页列表出参
+* @Author dzx
+* @Date: 2024-07-01
+* @Version 1.0
+*/
+@Data
+public class BandingTaskClassReportStatisticsVo {
+
+    @ApiModelProperty("主键编号")
+    private Long id;
+
+    @ApiModelProperty("学生人数")
+    private Integer allCount;
+
+    @ApiModelProperty("男生人数")
+    private Integer maleCount;
+
+    @ApiModelProperty("女生人数")
+    private Integer femaleCount;
+
+    @ApiModelProperty("班级名称")
+    private String name;
+
+    @ApiModelProperty("班级人数")
+    private Integer number;
+
+    @ApiModelProperty("是否订单班(0:否 1:是)")
+    private Integer isOrderClass;
+
+
+    @ApiModelProperty("班主任id")
+    private Long teacherId;
+
+    @ApiModelProperty("班主任名称")
+    private String teacherName;
+
+    @ApiModelProperty("教室id")
+    private Long classroomId;
+
+    @ApiModelProperty("教室名称")
+    private String classroomName;
+
+    @ApiModelProperty("班级类型")
+    private String classType;
+
+    @ApiModelProperty("已到人数")
+    private Long arrivedCount;
+
+    @ApiModelProperty("未到人数")
+    private Long notArrivedCount;
+
+
+    @ApiModelProperty("已到男生人数")
+    private Long arrivedMaleCount;
+
+
+    @ApiModelProperty("已到女生人数")
+    private Long arrivedFemaleCount;
+}

+ 20 - 0
src/main/java/com/xjrsoft/module/student/controller/StudentTryReadingReportController.java

@@ -179,5 +179,25 @@ public class StudentTryReadingReportController {
         return RT.ok(list);
     }
 
+    @GetMapping(value = "/class-statistics")
+    @ApiOperation(value="班级数据统计")
+    @SaCheckPermission("studentreportrecord:detail")
+    @XjrLog(value = "导出")
+    public RT<List<BandingTaskClassPageVo>> classStatistics(@Valid Long teacherId){
+        BandingTaskClassPageDto dto = new BandingTaskClassPageDto();
+        if(teacherId != null){
+            dto.setTeacherId(teacherId);
+        }else{
+            dto.setTeacherId(StpUtil.getLoginIdAsLong());
+        }
+        StudentReportPlan plan = reportPlanService.getLastTryReadingPlan();
+        if(plan == null){
+            return RT.ok(new ArrayList<>());
+        }
+        dto.setBandingTaskId(plan.getBandingTaskId());
+        List<BandingTaskClassPageVo> list = bandingTaskClassService.getList(dto);
+        return RT.ok(list);
+    }
+
 
 }