liujc 2 vuotta sitten
vanhempi
commit
91b50a8949

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentStandardDto.java

@@ -19,6 +19,8 @@ public class StudentStandardDto {
 
     private String subjectName;
 
+    private Integer subjectId;
+
     private Integer qualifiedFlag = 1;
 
     private String classDate;
@@ -28,6 +30,15 @@ public class StudentStandardDto {
     @ApiModelProperty(value = "学员维修标识",required = false)
     private Boolean repairFlag = false;
 
+
+    public Integer getSubjectId() {
+        return subjectId;
+    }
+
+    public void setSubjectId(Integer subjectId) {
+        this.subjectId = subjectId;
+    }
+
     public Boolean getRepairFlag() {
         return repairFlag;
     }

+ 2 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -4033,6 +4033,7 @@
         <result property="userId" column="user_id_"/>
         <result property="avatar" column="avatar_"/>
         <result property="subjectName" column="subject_name_"/>
+        <result property="subjectId" column="subjectId"/>
         <result property="username" column="username_"/>
         <result property="phone" column="phone_"/>
         <result property="courseScheduleReviewId" column="course_schedule_review_id_"/>
@@ -4041,7 +4042,7 @@
         <result property="repairFlag" column="repair_flag_"/>
     </resultMap>
     <select id="queryStudyStandard" resultMap="StudentStandardDto">
-        SELECT su.avatar_,su.username_,sa.user_id_,sb.name_ subject_name_,sa.qualified_flag_,s.repair_flag_
+        SELECT su.avatar_,su.username_,sa.user_id_,sb.name_ subject_name_,sa.qualified_flag_,s.repair_flag_,sb.id_ subjectId
         FROM student_attendance sa
         LEFT JOIN student s ON s.user_id_ = sa.user_id_
         left join student_registration sr on sr.user_id_ = sa.user_id_ and sr.music_group_id_ = sa.music_group_id_

+ 2 - 1
mec-teacher/src/main/java/com/ym/mec/teacher/controller/ClassGroupController.java

@@ -81,10 +81,11 @@ public class ClassGroupController extends BaseController {
             Map<Integer, StudentSubjectDto> subjectDtoMap = subjectService.getSubjectByStudentId(collect);
             courseStudents.forEach(studentAttendanceViewDto -> {
                 if (studentAttendanceViewDto.getSubjectId() == null) {
-                    StudentSubjectDto subjectDto = subjectDtoMap.getOrDefault(studentAttendanceViewDto.getUserId(), new StudentSubjectDto());
+                    StudentSubjectDto subjectDto = subjectDtoMap.getOrDefault(studentAttendanceViewDto.getUserId(), null);
                     if (subjectDto.getSubjectId() != null) {
                         studentAttendanceViewDto.setSubjectName(subjectDto.getSubjectName());
                         studentAttendanceViewDto.setSubjectId(subjectDto.getSubjectId());
+                        studentAttendanceViewDto.setSubjectIdList(subjectDto.getSubjectId().toString());
                     }
                 }
             });

+ 24 - 5
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherCourseScheduleController.java

@@ -10,10 +10,7 @@ import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
 import com.ym.mec.biz.dal.page.*;
-import com.ym.mec.biz.service.CourseScheduleService;
-import com.ym.mec.biz.service.StudentAttendanceService;
-import com.ym.mec.biz.service.SysConfigService;
-import com.ym.mec.biz.service.SysTenantConfigService;
+import com.ym.mec.biz.service.*;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
@@ -29,10 +26,12 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @Author Joburgess
@@ -56,6 +55,9 @@ public class TeacherCourseScheduleController extends BaseController {
     @Autowired
     private ClassGroupStudentMapperDao classGroupStudentMapperDao;
 
+    @Autowired
+    private SubjectService subjectService;
+
     @ApiOperation(value = "根据月份获取该月有课的日期")
     @GetMapping("/getCourseScheduleDateByMonth")
     public Object getCourseScheduleDateByMonth(@ApiParam(value = "月份", required = true) @RequestParam Date month,
@@ -384,7 +386,24 @@ public class TeacherCourseScheduleController extends BaseController {
     @PostMapping("/studyStandardList")
     @AuditLogAnnotation(operateName = "学员学习标准列表")
     public HttpResponseResult studyStandardList(EvaluateCourseQueryInfo queryInfo){
-        return succeed(scheduleService.studyStandardList(queryInfo));
+        PageInfo<StudentStandardDto> studentStandardDtoPageInfo = scheduleService.studyStandardList(queryInfo);
+        List<StudentStandardDto> courseStudents = studentStandardDtoPageInfo.getRows();
+        // 乐团声部为空,取student的声部
+        if (!CollectionUtils.isEmpty(courseStudents)) {
+            Set<Long> collect = courseStudents.stream().map(o -> o.getUserId()).map(o -> o.longValue()).collect(Collectors.toSet());
+
+            Map<Integer, StudentSubjectDto> subjectDtoMap = subjectService.getSubjectByStudentId(collect);
+            courseStudents.forEach(studentAttendanceViewDto -> {
+                if (studentAttendanceViewDto.getSubjectId() == null) {
+                    StudentSubjectDto subjectDto = subjectDtoMap.getOrDefault(studentAttendanceViewDto.getUserId(), new StudentSubjectDto());
+                    if (subjectDto.getSubjectId() != null) {
+                        studentAttendanceViewDto.setSubjectName(subjectDto.getSubjectName());
+                        studentAttendanceViewDto.setSubjectId(subjectDto.getSubjectId());
+                    }
+                }
+            });
+        }
+        return succeed(studentStandardDtoPageInfo);
     }