浏览代码

学生去掉指导老师,添加其他4种老师

zouxuan 2 年之前
父节点
当前提交
ec0ee23b7c
共有 49 个文件被更改,包括 308 次插入1717 次删除
  1. 0 9
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ActivityUserMapperDao.java
  2. 0 5
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CloudTeacherDao.java
  3. 0 27
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentDao.java
  4. 6 14
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentExtracurricularExercisesSituationDao.java
  5. 6 30
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java
  6. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentTeacherMapperDao.java
  7. 0 10
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java
  8. 0 22
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/EduOrganStudentListDto.java
  9. 0 22
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/EduOrganStudentListExportDto.java
  10. 0 130
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentServeDto.java
  11. 0 8
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/ActivityUserMapper.java
  12. 59 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentTeacherMapper.java
  13. 0 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/ExportEnum.java
  14. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/ActivityUserMapperService.java
  15. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/ExtracurricularExercisesReplyService.java
  16. 5 25
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentExtracurricularExercisesSituationService.java
  17. 1 2
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderService.java
  18. 2 21
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentServeService.java
  19. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentTeacherMapperService.java
  20. 0 8
      mec-biz/src/main/java/com/ym/mec/biz/service/TeacherService.java
  21. 2 13
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ActivityUserMapperServiceImpl.java
  22. 0 14
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java
  23. 8 94
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesReplyServiceImpl.java
  24. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MemberRankSettingServiceImpl.java
  25. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderDetailServiceImpl.java
  26. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java
  27. 1 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java
  28. 17 99
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentExtracurricularExercisesSituationServiceImpl.java
  29. 0 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  30. 1 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderServiceImpl.java
  31. 17 313
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServeServiceImpl.java
  32. 22 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentTeacherMapperServiceImpl.java
  33. 20 117
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  34. 4 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupActivityServiceImpl.java
  35. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  36. 35 28
      mec-biz/src/main/resources/config/mybatis/ActivityUserMapperMapper.xml
  37. 0 20
      mec-biz/src/main/resources/config/mybatis/CloudTeacherMapper.xml
  38. 0 8
      mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml
  39. 0 136
      mec-biz/src/main/resources/config/mybatis/StudentMapper.xml
  40. 39 0
      mec-biz/src/main/resources/config/mybatis/StudentTeacherMapperMapper.xml
  41. 0 27
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  42. 16 4
      mec-biz/src/main/resources/config/mybatis/VipGroupActivityMapper.xml
  43. 24 380
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java
  44. 0 14
      mec-web/src/main/java/com/ym/mec/web/controller/ExtracurricularExercisesReplyController.java
  45. 0 30
      mec-web/src/main/java/com/ym/mec/web/controller/StudentExtracurricularExercisesSituationController.java
  46. 0 7
      mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java
  47. 0 7
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java
  48. 2 43
      mec-web/src/main/java/com/ym/mec/web/controller/education/EduStudentExtracurricularExercisesSituationController.java
  49. 2 6
      mec-web/src/main/resources/exportColumnMapper.ini

+ 0 - 9
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ActivityUserMapperDao.java

@@ -70,15 +70,6 @@ public interface ActivityUserMapperDao extends BaseDAO<Integer, ActivityUserMapp
                                          @Param("groupType") String groupType,
                                          @Param("studentId") Integer studentId);
 
-    /**
-     * @description: 修改指导老师
-     * @param userId
-     * @param teacherId
-     * @return void
-     * @author zx
-     * @date 2021/11/1 16:21
-     */
-    void updateTeacherId(@Param("userId") Integer userId, @Param("teacherId") Integer teacherId);
 
     /**
     * @description: 获取学员活动排课资格列表

+ 0 - 5
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CloudTeacherDao.java

@@ -22,9 +22,4 @@ public interface CloudTeacherDao extends BaseDAO<Long, CloudTeacher> {
     int getOrganVipStudentNum(@Param("organId") Integer organId);
     int getOrgansTotalVipStudentNum(@Param("organIds") List<Integer> organIds);
     List<Map<Integer, Integer>> getOrgansVipStudentNum(@Param("organIds") List<Integer> organId);
-
-
-    List<Map<Integer, Integer>> getTeachersMemberStudentNum(@Param("teacherIds") List<Integer> teacherIds,
-                                                            @Param("organId") Integer organId);
-
 }

+ 0 - 27
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentDao.java

@@ -89,8 +89,6 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
      * @date 2020.04.29
      */
 
-    List<Student> getServiceStudents(Integer tenantId);
-
     /**
      * @return java.util.List<java.lang.Integer>
      * @describe 获取被服务学员id列表
@@ -106,14 +104,6 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
                                                            @Param("studentIds") List<Integer> studentIds, @Param("tenantId") Integer tenantId);
 
 
-    List<StudentServeDto> getBeServiceStudentsInfoWithStudents(@Param("monday") String monday,
-                                                               @Param("courseExpireDate") Date courseExpireDate,
-                                                               @Param("studentIds") List<Integer> studentIds);
-
-    List<StudentServeDto> getBeServiceStudentsInfoWithStudentsForHistory(@Param("monday") String monday,
-                                                                         @Param("courseExpireDate") Date courseExpireDate,
-                                                                         @Param("studentIds") List<Integer> studentIds);
-
     /**
      * @param studentId:    学生编号
      * @param serviceTag:   服务指标
@@ -147,12 +137,6 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
      */
     void batchUpdateAdviser(@Param("teacherId") Integer teacherId, @Param("studentIds") String studentIds);
 
-    /**
-     * 获取学生的老师
-     * @param studentIds
-     * @return
-     */
-    List<Student> getStudentTeacher(@Param("studentIds") List<Integer> studentIds);
 
     /**
      * 当前服务指标已开启,但在系统中没有剩余课时,且在乐团中不是在读状态,这种用户需要关闭服务指标
@@ -258,11 +242,6 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
     
     List<Map<Integer, Integer>> getOrgansStudentNum(@Param("organIds") List<Integer> organIds);
 
-    List<Map<Integer, Integer>> getOrganTeacherStudentNum(@Param("teacherIds") List<Integer> teacherIds,
-                                                          @Param("organId") Integer organId);
-
-    int getOrganNoTeacherStudentNum(@Param("organId") Integer organId);
-
     /**
      * @describe 统计云教练试用人数
      * @author Joburgess
@@ -274,9 +253,6 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
     int getOrgansTotalCloudStudyStudentNum(@Param("organIds") List<Integer> organIds);
     List<Map<Integer, Integer>> getOrganCloudStudyStudentNum(@Param("organIds") List<Integer> organIds);
 
-    List<Map<Integer, Integer>> getOrganTeacherCloudStudyStudentNum(@Param("teacherIds") List<Integer> teacherIds,
-                                                                    @Param("organId") Integer organId);
-
     /**
      * @describe 统计云教练今日使用人数
      * @author Joburgess
@@ -347,9 +323,6 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
     int getOrganEVipStudentNum(@Param("organId") Integer organId);
     int getOrgansTotalEVipStudentNum(@Param("organIds") List<Integer> organIds);
 
-    List<Map<Integer, Integer>> getTeacherExperienceMemberStudentNum(@Param("teacherIds") List<Integer> teacherIds,
-                                                                     @Param("organId") Integer organId);
-
     List<Map<Integer, String>> getStudentSubjectMapList(@Param("studentIds") List<Integer> studentIds);
 
     List<IndexBaseMonthData> groupOrganId(@Param("organIds") List<Integer> organIds, @Param("userIds") List<Integer> userIds);

+ 6 - 14
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentExtracurricularExercisesSituationDao.java

@@ -1,19 +1,14 @@
 package com.ym.mec.biz.dal.dao;
 
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.ibatis.annotations.Param;
-
-import com.ym.mec.biz.dal.dto.MusicGroupExtracurricularSummaryDto;
-import com.ym.mec.biz.dal.dto.StudentExercisesSituationDto;
-import com.ym.mec.biz.dal.dto.StudentServeExportDto;
-import com.ym.mec.biz.dal.dto.TeacherExercisesServiceDto;
-import com.ym.mec.biz.dal.dto.TeacherServeDto;
+import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.IndexBaseMonthData;
 import com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
 
 public interface StudentExtracurricularExercisesSituationDao extends BaseDAO<Long, StudentExtracurricularExercisesSituation> {
 
@@ -147,9 +142,6 @@ public interface StudentExtracurricularExercisesSituationDao extends BaseDAO<Lon
                                                                                @Param("teacherId") Integer teacherId,
                                                                                @Param("studentIds") List<Integer> studentIds);
 
-    List<StudentExtracurricularExercisesSituation> findServiceWithCourse(@Param("monday") String monday,
-                                                                         @Param("courseId") Long courseId);
-
     List<TeacherServeDto> queryTeacherServeInfo(Map<String, Object> params);
 
     int countTeacherServeInfo(Map<String, Object> params);

+ 6 - 30
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java

@@ -1,39 +1,15 @@
 package com.ym.mec.biz.dal.dao;
 
-import java.math.BigDecimal;
-import java.util.Collection;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.ibatis.annotations.Param;
-
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dto.Mapper;
-import com.ym.mec.biz.dal.dto.MusicGroupRegAndMoneyDto;
-import com.ym.mec.biz.dal.dto.NoClassMusicStudentDto;
-import com.ym.mec.biz.dal.dto.OrderStatisDto;
-import com.ym.mec.biz.dal.dto.RegisterDto;
-import com.ym.mec.biz.dal.dto.StudentApplyDetailDto;
-import com.ym.mec.biz.dal.dto.StudentClassInfoDto;
-import com.ym.mec.biz.dal.dto.StudentFeeDetailDto;
-import com.ym.mec.biz.dal.dto.StudentInfo;
-import com.ym.mec.biz.dal.dto.StudentMusicDetailDto;
-import com.ym.mec.biz.dal.dto.StudentMusicGroupDto;
-import com.ym.mec.biz.dal.dto.StudentOrganDto;
-import com.ym.mec.biz.dal.dto.StudentRegisterInstrumentsDetailDto;
-import com.ym.mec.biz.dal.dto.StudentRegisterPerDto;
-import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
-import com.ym.mec.biz.dal.dto.UserGroupDto;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.MusicGroupSubjectPlan;
-import com.ym.mec.biz.dal.entity.StudentInstrument;
-import com.ym.mec.biz.dal.entity.StudentRegistration;
-import com.ym.mec.biz.dal.entity.Subject;
+import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
 import com.ym.mec.biz.dal.enums.StudentMusicGroupStatusEnum;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
+import java.math.BigDecimal;
+import java.util.*;
 
 public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistration> {
 

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentTeacherMapperDao.java

@@ -0,0 +1,9 @@
+package com.ym.mec.biz.dal.dao;
+
+import com.ym.mec.biz.dal.entity.StudentTeacherMapper;
+import com.ym.mec.common.dal.BaseDAO;
+
+public interface StudentTeacherMapperDao extends BaseDAO<Integer, StudentTeacherMapper> {
+
+	
+}

+ 0 - 10
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java

@@ -8,11 +8,9 @@ import com.ym.mec.biz.dal.entity.CourseHomework;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.ImUserModel;
-
 import org.apache.ibatis.annotations.Param;
 
 import java.math.BigDecimal;
-import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -514,14 +512,6 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
     List<String> queryTeacherMusicIds(Map<String, Object> params);
     int countTeacherMusics(Map<String, Object> params);
 
-    /**
-     * 查询分部下教师关联的会员数据
-     * @param params
-     * @return
-     */
-    List<TeacherStudentDataDto> queryMemberStudentData(Map<String, Object> params);
-    int countMemberStudentData(Map<String, Object> params);
-
     int countTeacherBasicInfo(Map<String, Object> params);
 
     List<SysUserDto> queryTeacherBasicInfo(Map<String, Object> params);

+ 0 - 22
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/EduOrganStudentListDto.java

@@ -16,12 +16,6 @@ public class EduOrganStudentListDto {
     @ApiModelProperty("姓名")
     private String studentName;
 
-    @ApiModelProperty("指导老师编号")
-    private Integer teacherId;
-
-    @ApiModelProperty("指导老师名称")
-    private String teacherName;
-
     @ApiModelProperty("声部编号")
     private Integer subjectId;
 
@@ -98,22 +92,6 @@ public class EduOrganStudentListDto {
         this.studentName = studentName;
     }
 
-    public Integer getTeacherId() {
-        return teacherId;
-    }
-
-    public void setTeacherId(Integer teacherId) {
-        this.teacherId = teacherId;
-    }
-
-    public String getTeacherName() {
-        return teacherName;
-    }
-
-    public void setTeacherName(String teacherName) {
-        this.teacherName = teacherName;
-    }
-
     public Integer getSubjectId() {
         return subjectId;
     }

+ 0 - 22
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/EduOrganStudentListExportDto.java

@@ -19,12 +19,6 @@ public class EduOrganStudentListExportDto {
     @ApiModelProperty("手机号")
     private String phone;
 
-    @ApiModelProperty("指导老师编号")
-    private Integer teacherId;
-
-    @ApiModelProperty("指导老师名称")
-    private String teacherName;
-
     @ApiModelProperty("声部编号")
     private Integer subjectId;
 
@@ -148,22 +142,6 @@ public class EduOrganStudentListExportDto {
         this.studentName = studentName;
     }
 
-    public Integer getTeacherId() {
-        return teacherId;
-    }
-
-    public void setTeacherId(Integer teacherId) {
-        this.teacherId = teacherId;
-    }
-
-    public String getTeacherName() {
-        return teacherName;
-    }
-
-    public void setTeacherName(String teacherName) {
-        this.teacherName = teacherName;
-    }
-
     public Integer getSubjectId() {
         return subjectId;
     }

+ 0 - 130
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentServeDto.java

@@ -1,130 +0,0 @@
-package com.ym.mec.biz.dal.dto;
-
-import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.enums.GroupType;
-import com.ym.mec.biz.dal.enums.TeachModeEnum;
-
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.util.Date;
-
-/**
- * @Author Joburgess
- * @Date 2020.05.27
- */
-public class StudentServeDto extends Student {
-
-    private GroupType groupType;
-
-    private TeachModeEnum teachMode;
-
-    private Date courseStartTime;
-
-    private String musicGroupName;
-
-    private String servePeriod;
-
-    private String serveNum;
-
-    private Integer actualExercisesNum;
-
-    private Integer exercisesReplyNum;
-
-    private Integer exercisesMessageNum;
-
-    private BigDecimal signRate;
-
-    private BigDecimal passRate;
-
-    public GroupType getGroupType() {
-        return groupType;
-    }
-
-    public void setGroupType(GroupType groupType) {
-        this.groupType = groupType;
-    }
-
-    public TeachModeEnum getTeachMode() {
-        return teachMode;
-    }
-
-    public void setTeachMode(TeachModeEnum teachMode) {
-        this.teachMode = teachMode;
-    }
-
-    public Date getCourseStartTime() {
-        return courseStartTime;
-    }
-
-    public void setCourseStartTime(Date courseStartTime) {
-        this.courseStartTime = courseStartTime;
-    }
-
-    public String getMusicGroupName() {
-        return musicGroupName;
-    }
-
-    public void setMusicGroupName(String musicGroupName) {
-        this.musicGroupName = musicGroupName;
-    }
-
-    public String getServePeriod() {
-        return servePeriod;
-    }
-
-    public void setServePeriod(String servePeriod) {
-        this.servePeriod = servePeriod;
-    }
-
-    public String getServeNum() {
-        return serveNum;
-    }
-
-    public void setServeNum(String serveNum) {
-        this.serveNum = serveNum;
-    }
-
-    public Integer getActualExercisesNum() {
-        return actualExercisesNum;
-    }
-
-    public void setActualExercisesNum(Integer actualExercisesNum) {
-        this.actualExercisesNum = actualExercisesNum;
-    }
-
-    public Integer getExercisesReplyNum() {
-        return exercisesReplyNum;
-    }
-
-    public void setExercisesReplyNum(Integer exercisesReplyNum) {
-        this.exercisesReplyNum = exercisesReplyNum;
-    }
-
-    public Integer getExercisesMessageNum() {
-        return exercisesMessageNum;
-    }
-
-    public void setExercisesMessageNum(Integer exercisesMessageNum) {
-        this.exercisesMessageNum = exercisesMessageNum;
-    }
-
-    public BigDecimal getSignRate() {
-        return signRate;
-    }
-
-    public void setSignRate(BigDecimal signRate) {
-        if (null != signRate) {
-            this.signRate = signRate.setScale(2, RoundingMode.HALF_UP);
-        }
-    }
-
-    public BigDecimal getPassRate() {
-        return passRate;
-    }
-
-    public void setPassRate(BigDecimal passRate) {
-        if (null != passRate) {
-            this.passRate = passRate.setScale(2, RoundingMode.HALF_UP);
-        }
-    }
-}

+ 0 - 8
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/ActivityUserMapper.java

@@ -289,14 +289,6 @@ public class ActivityUserMapper extends BaseEntity {
 		this.actualPrice = actualPrice;
 	}
 
-	public Integer getTeacherId() {
-		return teacherId;
-	}
-
-	public void setTeacherId(Integer teacherId) {
-		this.teacherId = teacherId;
-	}
-
 	public Long getMemberOrderId() {
 		return memberOrderId;
 	}

+ 59 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentTeacherMapper.java

@@ -0,0 +1,59 @@
+package com.ym.mec.biz.dal.entity;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+/**
+ * 对应数据库表(student_teacher_mapper):
+ */
+public class StudentTeacherMapper {
+
+	/**  */
+	private Integer studentId;
+	
+	/**  */
+	private Integer teacherId;
+	
+	/** 老师姓名 */
+	private String teacherName;
+	
+	/** 老师类型SINGLE|MIX|VIP|PRACTICE */
+	private String teacherType;
+	
+	public void setStudentId(Integer studentId){
+		this.studentId = studentId;
+	}
+	
+	public Integer getStudentId(){
+		return this.studentId;
+	}
+			
+	public void setTeacherId(Integer teacherId){
+		this.teacherId = teacherId;
+	}
+	
+	public Integer getTeacherId(){
+		return this.teacherId;
+	}
+			
+	public void setTeacherName(String teacherName){
+		this.teacherName = teacherName;
+	}
+	
+	public String getTeacherName(){
+		return this.teacherName;
+	}
+			
+	public void setTeacherType(String teacherType){
+		this.teacherType = teacherType;
+	}
+	
+	public String getTeacherType(){
+		return this.teacherType;
+	}
+			
+	@Override
+	public String toString() {
+		return ToStringBuilder.reflectionToString(this);
+	}
+
+}

+ 0 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/ExportEnum.java

@@ -63,7 +63,6 @@ public enum ExportEnum implements BaseEnum<String, ExportEnum> {
     EXPORT_INDEX_HISTORY_ERR_DATA("EXPORT_INDEX_HISTORY_ERR_DATA", "首页历史异常统计导出"),
     TEACHER_LIST("TEACHER_LIST", "老师列表导出"),
     EMPLOYEE_INFO("EMPLOYEE_INFO", "人力资源导出"),
-    ORGAN_TEACHER_MEMBER_STUDENT_DATA("ORGAN_TEACHER_MEMBER_STUDENT_DATA", "分部下教师关联的会员数据导出"),
     ORGAN_STUDENT_OVER_VIEW("ORGAN_STUDENT_OVER_VIEW", "分部云教练学员数据预览导出"),
     CLOUD_STUDY_STUDENT_OVER_VIEW("CLOUD_STUDY_STUDENT_OVER_VIEW", "分部云教练学员数据详情导出"),
     CLOUD_STUDY_STUDENT_TRAIN_DATA("CLOUD_STUDY_STUDENT_TRAIN_DATA", "分部云教练学员训练数据导出"),

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/ActivityUserMapperService.java

@@ -211,5 +211,5 @@ public interface ActivityUserMapperService extends BaseService<Integer, Activity
 
     PageInfo<ActivityUserMapperSumDto> querySumPage(ActivityUserMapperDetailQueryInfo queryInfo);
 
-    void saveToOrder(StudentPaymentOrder studentPaymentOrder,Integer teacherId);
+    void saveToOrder(StudentPaymentOrder studentPaymentOrder);
 }

+ 0 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/ExtracurricularExercisesReplyService.java

@@ -62,7 +62,5 @@ public interface ExtracurricularExercisesReplyService extends BaseService<Long,
      */
     PageInfo<ExtraExerciseStudentsDto> findExtraExercises(ExtraExercilseReplyQueryInfo queryInfo);
 
-    void exercisesSituationStatistics2(String monday);
-
     PageInfo<EduHomeworkCardDto> getEduHomeworkList(StudentCourseHomeWorkQueryInfo queryInfo);
 }

+ 5 - 25
mec-biz/src/main/java/com/ym/mec/biz/service/StudentExtracurricularExercisesSituationService.java

@@ -1,25 +1,14 @@
 package com.ym.mec.biz.service;
 
-import java.util.List;
-import java.util.Map;
-
-import com.ym.mec.biz.dal.dto.MusicGroupExtracurricularSummaryDto;
-import com.ym.mec.biz.dal.dto.StudentExercisesSituationDto;
-import com.ym.mec.biz.dal.dto.TeacherExercisesServiceDto;
-import com.ym.mec.biz.dal.dto.TeacherServeDto;
-import com.ym.mec.biz.dal.dto.TeacherServeExtraDto;
-import com.ym.mec.biz.dal.dto.TeacherServeHomeworkDto;
-import com.ym.mec.biz.dal.dto.TeacherServeHomeworkPojo;
+import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation;
-import com.ym.mec.biz.dal.page.ExtraExercilseQueryInfo;
-import com.ym.mec.biz.dal.page.StudentExerciseMusicGroupQueryInfo;
-import com.ym.mec.biz.dal.page.StudentExercisesSituationQueryInfo;
-import com.ym.mec.biz.dal.page.StudentServiceDetailQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherServeHomeworkQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherServeQueryInfo;
+import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
 
+import java.util.List;
+import java.util.Map;
+
 public interface StudentExtracurricularExercisesSituationService extends BaseService<Long, StudentExtracurricularExercisesSituation> {
 	
 	PageInfo<MusicGroupExtracurricularSummaryDto> queryStudentExerciseMusicGroupList(StudentExerciseMusicGroupQueryInfo queryInfo);
@@ -27,15 +16,6 @@ public interface StudentExtracurricularExercisesSituationService extends BaseSer
     PageInfo<StudentExercisesSituationDto> findStudentExtracurricularExercisesSituations(StudentExercisesSituationQueryInfo queryInfo);
 
     /**
-     * @describe 获取学员服务信息列表
-     * @author Joburgess
-     * @date 2020.04.29
-     * @param queryInfo:
-     * @return com.ym.mec.common.page.PageInfo<com.ym.mec.biz.dal.dto.StudentExercisesSituationDto>
-     */
-    PageInfo<StudentExercisesSituationDto> findServiceStudentSituations(StudentExercisesSituationQueryInfo queryInfo);
-
-    /**
      * @describe 获取学生服务详情
      * @author Joburgess
      * @date 2020.04.29

+ 1 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderService.java

@@ -200,8 +200,7 @@ public interface StudentPaymentOrderService extends BaseService<Long, StudentPay
     Integer activityGive(Integer vipGroupActivityId,
                          StudentPaymentOrder studentPaymentOrder,
                          String vipGroupId,
-                         String practiceGroupId,
-                         Integer teacherId);
+                         String practiceGroupId);
 
     /**
      * @param order

+ 2 - 21
mec-biz/src/main/java/com/ym/mec/biz/service/StudentServeService.java

@@ -1,27 +1,18 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dto.IndexBaseDto;
+
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
-import com.ym.mec.biz.dal.dto.IndexBaseDto;
-
 /**
  * @Author Joburgess
  * @Date 2020.05.27
  */
 public interface StudentServeService {
 
-    /**
-     * @describe 学生服务信息统计
-     * @author Joburgess
-     * @date 2020/4/10
-     * @param :
-     * @return void
-     */
-    void exercisesSituationStatistics(String monday, Integer tenantId);
-
     void exercisesSituationStatistics2(String monday, Integer tenantId);
 
     /**
@@ -56,16 +47,6 @@ public interface StudentServeService {
     void updateExercisesSituation(String musicGroupId, Date date, List<Integer> studentIds, Integer teacherId);
 
     /**
-     * @describe 获取与课程相关的应被服务的学员
-     * @author Joburgess
-     * @date 2020/12/29 0029
-     * @param date:
-     * @param courseId:
-     * @return java.util.Set<java.lang.Integer>
-     */
-    Set<Integer> getStudentWithCourse(Long courseId);
-
-    /**
      * 更新学生服务指标
      */
     void closeStudentServiceTag();

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentTeacherMapperService.java

@@ -0,0 +1,8 @@
+package com.ym.mec.biz.service;
+
+import com.ym.mec.biz.dal.entity.StudentTeacherMapper;
+import com.ym.mec.common.service.BaseService;
+
+public interface StudentTeacherMapperService extends BaseService<Integer, StudentTeacherMapper>{
+
+}

+ 0 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/TeacherService.java

@@ -232,14 +232,6 @@ public interface TeacherService extends BaseService<Integer, Teacher> {
      */
     PageInfo<TeacherMusicStudentOverViewDto> queryTeacherMusicStudentOverView(TeacherServeQueryInfo queryInfo);
 
-    /**
-     * 查询分部下教师关联的会员数据
-     *
-     * @param queryInfo
-     * @return
-     */
-    PageInfo<TeacherStudentDataDto> queryMemberStudentData(TeacherServeQueryInfo queryInfo);
-
     PageInfo<SysUserDto> queryTeacherBasicInfo(UserBasicQueryInfo queryInfo);
 
     /**

+ 2 - 13
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ActivityUserMapperServiceImpl.java

@@ -208,11 +208,6 @@ public class ActivityUserMapperServiceImpl extends BaseServiceImpl<Integer, Acti
 			if(activityUserMapperNum <= 0){
 				throw new BizException("操作失败:加课次数不可为空");
 			}
-			List<Student> students = collect.get(adjustDto.getUserId());
-			Integer teacherId = null;
-			if(students != null && students.size() > 0){
-				teacherId = students.get(0).getTeacherId();
-			}
 			for (int i = 0; i < activityUserMapperNum; i++) {
 				ActivityUserMapper activityUserMapper = new ActivityUserMapper();
 				activityUserMapper.setActivityId(activityId);
@@ -220,7 +215,6 @@ public class ActivityUserMapperServiceImpl extends BaseServiceImpl<Integer, Acti
 				activityUserMapper.setActualPrice(BigDecimal.ZERO);
 				activityUserMapper.setSubNoCoursePrice(BigDecimal.ZERO);
 				activityUserMapper.setReturnFee(false);
-				activityUserMapper.setTeacherId(teacherId);
 				activityUserMapper.setAddMemo(memo);
 				activityUserMapper.setOrganId(sysUser.getOrganId());
 				boolean buyFlag = adjustDto.getCourseNum() > i;
@@ -346,9 +340,7 @@ public class ActivityUserMapperServiceImpl extends BaseServiceImpl<Integer, Acti
 			//这里的studentInstrumentId存的是活动编号
 			activityUserMapper.setActivityId(orderDetail.getStudentInstrumentId().intValue());
 			VipGroupActivity vipGroupActivity = collect.get(activityUserMapper.getActivityId());
-			Student student = studentDao.get(studentPaymentOrder.getUserId());
 			activityUserMapper.setUserId(studentPaymentOrder.getUserId());
-			activityUserMapper.setTeacherId(student.getTeacherId());
 			activityUserMapper.setPaymentOrderId(studentPaymentOrder.getId());
 			activityUserMapper.setCalenderId(calenderId);
 			activityUserMapper.setOrganId(studentPaymentOrder.getOrganId());
@@ -1109,9 +1101,7 @@ public class ActivityUserMapperServiceImpl extends BaseServiceImpl<Integer, Acti
 		BigDecimal reduce = studentPayments.stream().map(e -> e.getActualPrice()).reduce(ZERO, BigDecimal::add);
 		activityUserMapper.setActualPrice(reduce);
 		activityUserMapper.setSubNoCoursePrice(reduce);
-		Student student = studentDao.get(studentId);
-		activityUserMapper.setTenantId(student.getTenantId());
-		activityUserMapper.setTeacherId(student.getTeacherId());
+		activityUserMapper.setTenantId(vipGroup.getTenantId());
 		activityUserMapper.setUserId(studentId);
 		activityUserMapper.setOrganId(vipGroup.getOrganId());
 		activityUserMapperDao.insert(activityUserMapper);
@@ -1210,7 +1200,7 @@ public class ActivityUserMapperServiceImpl extends BaseServiceImpl<Integer, Acti
 
     @Override
 	@Transactional(rollbackFor = Exception.class)
-    public void saveToOrder(StudentPaymentOrder studentPaymentOrder,Integer teacherId) {
+    public void saveToOrder(StudentPaymentOrder studentPaymentOrder) {
 		String activityIds = studentPaymentOrder.getActivityId();
 		List<VipGroupActivity> activities = vipGroupActivityDao.queryByIds(activityIds);
 		BigDecimal reduce = activities.stream().map(e -> e.getMarketPrice()).reduce(ZERO, BigDecimal::add);
@@ -1222,7 +1212,6 @@ public class ActivityUserMapperServiceImpl extends BaseServiceImpl<Integer, Acti
 			activityUserMapper.setPaymentOrderId(studentPaymentOrder.getId());
 			activityUserMapper.setUserId(studentPaymentOrder.getUserId());
 			activityUserMapper.setActivityId(activity.getId());
-			activityUserMapper.setTeacherId(teacherId);
 			activityUserMapper.setAddMemo(activity.getName());
 			activityUserMapper.setOrganId(studentPaymentOrder.getOrganId());
 			if (i == activities.size() - 1) {

+ 0 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -132,8 +132,6 @@ public class ExportServiceImpl implements ExportService {
     @Autowired
     private StudentPaymentOrderDao studentPaymentOrderDao;
     @Autowired
-    private StudentDao studentDao;
-    @Autowired
     private MusicGroupPaymentCalenderDetailService musicGroupPaymentCalenderDetailService;
     @Autowired
     private TeacherService teacherService;
@@ -337,7 +335,6 @@ public class ExportServiceImpl implements ExportService {
         exportFuncMap.put(ExportEnum.EXPORT_INDEX_HISTORY_ERR_DATA, info -> indexErrDataRecordService.queryRecord(getQueryInfo(info, IndexErrRecordQueryInfo.class, true)).getRows());
         exportFuncMap.put(ExportEnum.TEACHER_LIST, info -> teacherService.queryPageDetail(getQueryInfo(info, TeacherQueryInfo.class, true)).getRows());
         exportFuncMap.put(ExportEnum.EMPLOYEE_INFO, info -> employeeInfoService.queryPage(getQueryInfo(info, EmployeeInfoQueryInfo.class, true)).getRows());
-        exportFuncMap.put(ExportEnum.ORGAN_TEACHER_MEMBER_STUDENT_DATA, info -> teacherService.queryMemberStudentData(getQueryInfo(info, TeacherServeQueryInfo.class, true)).getRows());
         exportFuncMap.put(ExportEnum.ORGAN_STUDENT_OVER_VIEW, info -> organStudentOverView(info));
         exportFuncMap.put(ExportEnum.CLOUD_STUDY_STUDENT_OVER_VIEW, info -> cloudStudyStudentOverView(info));
         exportFuncMap.put(ExportEnum.CLOUD_STUDY_STUDENT_TRAIN_DATA, info -> cloudStudyStudentTrainData(info));
@@ -1006,11 +1003,9 @@ public class ExportServiceImpl implements ExportService {
         }
         List<Long> vipGroupIds = orders.stream().filter(e -> e.getGroupType().equals(GroupType.VIP)).map(OrderByTypeExportDto::getMusicGroupId).collect(Collectors.toList());
         List<Long> practiceGroupIds = orders.stream().filter(e -> e.getGroupType().equals(GroupType.PRACTICE)).map(OrderByTypeExportDto::getMusicGroupId).collect(Collectors.toList());
-        List<Integer> studentIds = orders.stream().filter(e -> e.getGroupType().equals(GroupType.SPORADIC)).map(OrderByTypeExportDto::getStudentId).collect(Collectors.toList());
 
         List<VipBuyResultDto> vipGroupTeachers = new ArrayList<>();
         List<PracticeCourseDto> practiceGroupsTeacher = new ArrayList<>();
-        List<Student> studentTeachers = new ArrayList<>();
         if (vipGroupIds.size() > 0) {
             vipGroupTeachers = vipGroupDao.getGroupTeachers(vipGroupIds, TenantContextHolder.getTenantId());
         }
@@ -1018,9 +1013,6 @@ public class ExportServiceImpl implements ExportService {
         if (practiceGroupIds.size() > 0) {
             practiceGroupsTeacher = practiceGroupDao.getPracticeGroupByIds(practiceGroupIds);
         }
-        if (studentIds.size() > 0) {
-            studentTeachers = studentDao.getStudentTeacher(studentIds);
-        }
 
         for (OrderByTypeExportDto order : orders) {
             for (VipBuyResultDto vipGroupTeacher : vipGroupTeachers) {
@@ -1037,12 +1029,6 @@ public class ExportServiceImpl implements ExportService {
                     break;
                 }
             }
-            for (Student studentTeacher : studentTeachers) {
-                if (order.getGroupType().equals(GroupType.SPORADIC) && studentTeacher.getUserId().equals(order.getStudentId())) {
-                    order.setTeacherName(studentTeacher.getTeacherName());
-                    break;
-                }
-            }
         }
         return orders;
     }

+ 8 - 94
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesReplyServiceImpl.java

@@ -2,19 +2,24 @@ package com.ym.mec.biz.service.impl;
 
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
-import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.dto.CourseHomeworkStudentDetailDto;
+import com.ym.mec.biz.dal.dto.EduHomeworkCardDto;
+import com.ym.mec.biz.dal.dto.ExtraExerciseStudentsDto;
+import com.ym.mec.biz.dal.dto.SimpleUserDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.ExtraExercilseQueryInfo;
 import com.ym.mec.biz.dal.page.ExtraExercilseReplyQueryInfo;
 import com.ym.mec.biz.dal.page.StudentCourseHomeWorkQueryInfo;
-import com.ym.mec.biz.service.*;
+import com.ym.mec.biz.service.ExtracurricularExercisesReplyService;
+import com.ym.mec.biz.service.StudentServeService;
+import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
@@ -22,13 +27,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
 
-import java.math.BigDecimal;
-import java.time.DayOfWeek;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.time.ZoneId;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -40,10 +39,6 @@ public class ExtracurricularExercisesReplyServiceImpl extends BaseServiceImpl<Lo
 	@Autowired
 	private ExtracurricularExercisesDao extracurricularExercisesDao;
 	@Autowired
-	private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
-	@Autowired
-	private StudentExtracurricularExercisesSituationService studentExtracurricularExercisesSituationService;
-	@Autowired
 	private SysMessageService sysMessageService;
 	@Autowired
 	private TeacherDao teacherDao;
@@ -249,87 +244,6 @@ public class ExtracurricularExercisesReplyServiceImpl extends BaseServiceImpl<Lo
 	}
 
 	@Override
-	@Transactional(rollbackFor = Exception.class)
-	public void exercisesSituationStatistics2(String monday) {
-		Integer tenantId = TenantContextHolder.getTenantId();
-		
-		LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
-
-		if(nowDate.getDayOfWeek()==DayOfWeek.MONDAY){
-			int lastWeekTodayUpdateNum = studentExtracurricularExercisesSituationDao.findLastWeekTodayUpdateNum(nowDate.plusDays(-1).toString(),tenantId);
-			if(lastWeekTodayUpdateNum<=0){
-				nowDate = nowDate.plusDays(-1);
-			}
-		}
-
-		if(StringUtils.isNotBlank(monday)){
-			nowDate=LocalDate.parse(monday, DateUtil.dateFormatter);
-		}
-		LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-		LocalDate sunDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.SUNDAY.getValue());
-
-		List<Student> serviceStudents = studentDao.getServiceStudents(tenantId);
-		if(CollectionUtils.isEmpty(serviceStudents)){
-			return;
-		}
-
-		List<StudentServiceHomeworkDto> studentHomeworksInWeek = extracurricularExercisesReplyDao.findStudentHomewarksInWeek(monDayDate.toString(), sunDayDate.toString(), TenantContextHolder.getTenantId());
-		Map<Integer, List<StudentServiceHomeworkDto>> studentExercisesMap = studentHomeworksInWeek.stream().collect(Collectors.groupingBy(StudentServiceHomeworkDto::getUserId));
-
-		List<StudentExtracurricularExercisesSituation> results=new ArrayList<>();
-		for (Student serviceStudent : serviceStudents) {
-			StudentExtracurricularExercisesSituation studentExtracurricularExercisesSituation=new StudentExtracurricularExercisesSituation();
-			studentExtracurricularExercisesSituation.setStudentId(serviceStudent.getUserId());
-			studentExtracurricularExercisesSituation.setTeacherId(serviceStudent.getTeacherId());
-			studentExtracurricularExercisesSituation.setExpectExercisesNum(1);
-			studentExtracurricularExercisesSituation.setWeekOfYear(nowDate.get(DateUtil.weekFields.weekOfYear()));
-			studentExtracurricularExercisesSituation.setMonday(DateUtil.stringToDate(monDayDate.toString(), "yyyy-MM-dd"));
-			studentExtracurricularExercisesSituation.setSunday(DateUtil.stringToDate(sunDayDate.toString(), "yyyy-MM-dd"));
-			List<StudentServiceHomeworkDto> studentHomeworks = studentExercisesMap.get(serviceStudent.getUserId());
-			if(CollectionUtils.isEmpty(studentHomeworks)){
-				studentExtracurricularExercisesSituation.setActualExercisesNum(0);
-				studentExtracurricularExercisesSituation.setExercisesReplyNum(0);
-				studentExtracurricularExercisesSituation.setExercisesMessageNum(0);
-				studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(0);
-				results.add(studentExtracurricularExercisesSituation);
-				continue;
-			}
-			studentExtracurricularExercisesSituation.setActualExercisesNum(1);
-			long replyNum = studentHomeworks.stream().filter(e -> e.getStatus()==1).count();
-			studentExtracurricularExercisesSituation.setExercisesReplyNum(replyNum>0?1:0);
-			int exercisesMessageNum=0;
-			int exercisesMessageTimelyNum=0;
-			for (StudentServiceHomeworkDto studentHomework : studentHomeworks) {
-				if(!new Integer(1).equals(studentHomework.getStatus())){
-					continue;
-				}
-				if(!new Integer(1).equals(studentHomework.getIsReplied())){
-					continue;
-				}
-				exercisesMessageNum+=1;
-				if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
-					exercisesMessageTimelyNum+=1;
-				}
-			}
-			studentExtracurricularExercisesSituation.setExercisesMessageNum(exercisesMessageNum>0?1:0);
-			studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
-			results.add(studentExtracurricularExercisesSituation);
-		}
-
-		studentExtracurricularExercisesSituationService.deleteByMonday(monDayDate.toString(),null);
-
-		BigDecimal currentPage=BigDecimal.ONE,
-                pageSize=new BigDecimal(10000),
-                total=new BigDecimal(results.size()),
-                totalPage=total.divide(pageSize, BigDecimal.ROUND_UP);
-        while (currentPage.compareTo(totalPage)<=0){
-            List<StudentExtracurricularExercisesSituation> rows=results.stream().skip(pageSize.multiply(currentPage.subtract(BigDecimal.ONE)).longValue()).limit(pageSize.longValue()).collect(Collectors.toList());
-			studentExtracurricularExercisesSituationService.batchInsert(rows);
-            currentPage=currentPage.add(BigDecimal.ONE);
-        }
-	}
-
-	@Override
 	public PageInfo<EduHomeworkCardDto> getEduHomeworkList(StudentCourseHomeWorkQueryInfo queryInfo) {
 		PageInfo<EduHomeworkCardDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<String, Object>();

+ 0 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MemberRankSettingServiceImpl.java

@@ -684,7 +684,6 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
 
         // 支付成功
         if (studentPaymentOrder.getStatus() == DealStatusEnum.SUCCESS) {
-            Student student = studentService.get(userId);
             VipGroupActivity activity = vipGroupActivityDao.get(Integer.parseInt(studentPaymentOrder.getActivityId()));
             //保存团练宝数据
             CloudTeacherOrder cloudTeacherOrder = new CloudTeacherOrder();
@@ -700,7 +699,6 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
             cloudTeacherOrderService.save(cloudTeacherOrder,tenantConfigService.autoActivationFlag(cloudTeacherOrder.getTenantId()));
             //赠送陪练课
             ActivityUserMapper activityUserMapper = new ActivityUserMapper();
-            activityUserMapper.setTeacherId(student.getTeacherId());
             activityUserMapper.setPaymentOrderId(studentPaymentOrder.getId());
             activityUserMapper.setUserId(studentPaymentOrder.getUserId());
             activityUserMapper.setActivityId(activity.getId());

+ 0 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderDetailServiceImpl.java

@@ -276,9 +276,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
                         activityUserMapper.setActualPrice(BigDecimal.ZERO);
                         activityUserMapper.setSubNoCoursePrice(BigDecimal.ZERO);
                         activityUserMapper.setActivityId(calenderActivity.getActivityId());
-                        Student student = studentDao.get(studentId);
                         activityUserMapper.setUserId(studentId);
-                        activityUserMapper.setTeacherId(student.getTeacherId());
                         activityUserMapper.setOrganId(musicGroup.getOrganId());
                         if(musicGroupPaymentCalender.getPayUserType() == SCHOOL){
                             activityUserMapper.setAddMemo("学校缴费新增学员");

+ 0 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -761,9 +761,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
                             activityUserMapper.setActualPrice(BigDecimal.ZERO);
                             activityUserMapper.setSubNoCoursePrice(BigDecimal.ZERO);
                             activityUserMapper.setActivityId(calenderActivity.getActivityId());
-                            Student student = studentDao.get(Integer.parseInt(studentId));
                             activityUserMapper.setUserId(Integer.parseInt(studentId));
-                            activityUserMapper.setTeacherId(student.getTeacherId());
                             activityUserMapper.setOrganId(musicGroup.getOrganId());
                             if ("网管课".equals(calenderActivity.getCategoryName())) {
                                 activityUserMapper.setPracticeFlag(1);

+ 1 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -3145,7 +3145,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         if (order.getStatus().equals(DealStatusEnum.SUCCESS)) {
             Integer activityUserMapperId = studentPaymentOrderService.activityGive(practiceGroup.getVipGroupActivityId(), order,
                     null,
-                    practiceGroup.getId().toString(), practiceGroup.getUserId());
+                    practiceGroup.getId().toString());
             practiceGroup.setActivityUserMapperId(activityUserMapperId);
             if (classGroup.getDelFlag() == 1) {
                 this.updatePracticeGroupStudentNumAndStatus(practiceGroup, classGroup, order);
@@ -4327,14 +4327,12 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             throw new BizException("订单更新失败");
         }
         if (studentPaymentOrder.getStatus().equals(DealStatusEnum.SUCCESS)) {
-            Student student = studentDao.get(order.getUserId());
             Integer activityId = Integer.parseInt(order.getActivityId());
             VipGroupActivity activity = vipGroupActivityDao.get(activityId);
             ActivityUserMapper activityUserMapper = new ActivityUserMapper();
             activityUserMapper.setActivityId(activityId);
             activityUserMapper.setUserId(order.getUserId());
             activityUserMapper.setPaymentOrderId(order.getId());
-            activityUserMapper.setTeacherId(student.getTeacherId());
             activityUserMapper.setVipFlag(1);
             activityUserMapper.setActualPrice(order.getExpectAmount());
             activityUserMapper.setSubNoCoursePrice(order.getExpectAmount());

+ 17 - 99
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentExtracurricularExercisesSituationServiceImpl.java

@@ -1,69 +1,14 @@
 package com.ym.mec.biz.service.impl;
 
-import java.math.BigDecimal;
-import java.time.DayOfWeek;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dao.ClassGroupDao;
-import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
-import com.ym.mec.biz.dal.dao.CourseHomeworkDao;
-import com.ym.mec.biz.dal.dao.CourseScheduleDao;
-import com.ym.mec.biz.dal.dao.CourseScheduleStatisticsDao;
-import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
-import com.ym.mec.biz.dal.dao.ExtracurricularExercisesReplyDao;
-import com.ym.mec.biz.dal.dao.StudentAttendanceDao;
-import com.ym.mec.biz.dal.dao.StudentDao;
-import com.ym.mec.biz.dal.dao.StudentExtracurricularExercisesSituationDao;
-import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
-import com.ym.mec.biz.dal.dao.SubjectDao;
-import com.ym.mec.biz.dal.dao.TeacherDao;
-import com.ym.mec.biz.dal.dao.TeacherRemindDao;
-import com.ym.mec.biz.dal.dto.MusicGroupExtracurricularSummaryDto;
-import com.ym.mec.biz.dal.dto.SimpleUserDto;
-import com.ym.mec.biz.dal.dto.StudentExercisesSituationDto;
-import com.ym.mec.biz.dal.dto.StudentServiceDetailDto;
-import com.ym.mec.biz.dal.dto.TeacherExercisesServiceDto;
-import com.ym.mec.biz.dal.dto.TeacherServeDto;
-import com.ym.mec.biz.dal.dto.TeacherServeExtraDto;
-import com.ym.mec.biz.dal.dto.TeacherServeHomeworkDto;
-import com.ym.mec.biz.dal.dto.TeacherServeHomeworkPojo;
-import com.ym.mec.biz.dal.entity.ClassGroup;
-import com.ym.mec.biz.dal.entity.CourseHomework;
-import com.ym.mec.biz.dal.entity.CourseSchedule;
-import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation;
-import com.ym.mec.biz.dal.entity.Subject;
-import com.ym.mec.biz.dal.entity.TeacherRemind;
+import com.ym.mec.biz.dal.dao.*;
+import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.TeacherRemindTypeEnum;
-import com.ym.mec.biz.dal.page.ExtraExercilseQueryInfo;
-import com.ym.mec.biz.dal.page.StudentExerciseMusicGroupQueryInfo;
-import com.ym.mec.biz.dal.page.StudentExercisesSituationQueryInfo;
-import com.ym.mec.biz.dal.page.StudentServiceDetailQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherServeHomeworkQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherServeQueryInfo;
+import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
 import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.common.constant.CommonConstants;
@@ -74,6 +19,19 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.math.BigDecimal;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @Service
 public class StudentExtracurricularExercisesSituationServiceImpl extends BaseServiceImpl<Long, StudentExtracurricularExercisesSituation> implements StudentExtracurricularExercisesSituationService {
@@ -87,10 +45,6 @@ public class StudentExtracurricularExercisesSituationServiceImpl extends BaseSer
 	@Autowired
 	private TeacherDao teacherDao;
 	@Autowired
-	private ClassGroupStudentMapperDao classGroupStudentMapperDao;
-	@Autowired
-	private StudentRegistrationDao studentRegistrationDao;
-	@Autowired
 	private TeacherRemindDao teacherRemindDao;
 	@Autowired
 	private SysMessageService sysMessageService;
@@ -210,42 +164,6 @@ public class StudentExtracurricularExercisesSituationServiceImpl extends BaseSer
 	}
 
 	@Override
-	public PageInfo<StudentExercisesSituationDto> findServiceStudentSituations(StudentExercisesSituationQueryInfo queryInfo) {
-		PageInfo<StudentExercisesSituationDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
-		Map<String, Object> params = new HashMap<>();
-		MapUtil.populateMap(params, queryInfo);
-
-		List<StudentExercisesSituationDto> dataList = null;
-		int count = studentExtracurricularExercisesSituationDao.countExercisesSituations(params);
-		if (count > 0) {
-			pageInfo.setTotal(count);
-			params.put("offset", pageInfo.getOffset());
-			dataList = studentExtracurricularExercisesSituationDao.findExercisesSituations(params);
-			Map<Integer, Long> studentVipCourseMap=new HashMap<>();
-			if(Objects.isNull(queryInfo.getExistVipCourse())){
-				List<Integer> studentIds = dataList.stream().map(StudentExtracurricularExercisesSituation::getStudentId).collect(Collectors.toList());
-				List<Map<Integer, Long>> studentVipCoursesMaps = courseScheduleDao.countStudentVipCoursesWithDate(studentIds, queryInfo.getMonday(), queryInfo.getSunday(),GroupType.VIP);
-				studentVipCourseMap = MapUtil.convertIntegerMap(studentVipCoursesMaps);
-			}
-			for (StudentExercisesSituationDto exercisesSituationDto : dataList) {
-				if(Objects.isNull(queryInfo.getExistVipCourse())){
-					Long vipCourses=studentVipCourseMap.get(exercisesSituationDto.getStudentId());
-					if(Objects.isNull(vipCourses)||vipCourses<=0){
-						exercisesSituationDto.setExistVipCourse(0);
-					}else{
-						exercisesSituationDto.setExistVipCourse(1);
-					}
-				}
-			}
-		}
-		if (count == 0) {
-			dataList = new ArrayList<>();
-		}
-		pageInfo.setRows(dataList);
-		return pageInfo;
-	}
-
-	@Override
 	public PageInfo<TeacherServeDto> queryTeacherServeInfo(TeacherServeQueryInfo queryInfo) {
 		PageInfo<TeacherServeDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<>();

+ 0 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -99,8 +99,6 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Autowired
     private OrganizationDegreeCourseFeeDao organizationDegreeCourseFeeDao;
     @Autowired
-    private ActivityUserMapperDao activityUserMapperDao;
-    @Autowired
     private SysTenantConfigService sysTenantConfigService;
     @Autowired
     private SysEmployeePositionService employeePositionService;
@@ -740,7 +738,6 @@ public class StudentManageServiceImpl implements StudentManageService {
         // 同步更新机构手机号 如果它存在
         SysUser user = teacherDao.getUser(student.getId());
         tenantInfoService.updatePhone(student.getPhone(), user.getPhone());
-        activityUserMapperDao.updateTeacherId(student.getUserId(), student.getTeacherId());
         if (Objects.nonNull(student.getCarePackage()) || Objects.nonNull(student.getComeOnPackage())) {
             Student oldStudent = studentDao.get(userId);
             if (Objects.nonNull(oldStudent.getCarePackage()) && oldStudent.getCarePackage().equals(2)) {

+ 1 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderServiceImpl.java

@@ -821,7 +821,7 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Integer activityGive(Integer vipGroupActivityId, StudentPaymentOrder studentPaymentOrder, String vipGroupId, String practiceGroupId, Integer teacherId) {
+    public Integer activityGive(Integer vipGroupActivityId, StudentPaymentOrder studentPaymentOrder, String vipGroupId, String practiceGroupId) {
         Integer activityUserMapperId = null;
         if (vipGroupActivityId != null) {
             VipGroupActivity activity = vipGroupActivityService.get(vipGroupActivityId);
@@ -831,7 +831,6 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
             activityUserMapper.setPaymentOrderId(studentPaymentOrder.getId());
             activityUserMapper.setUserId(studentPaymentOrder.getUserId());
             activityUserMapper.setActivityId(vipGroupActivityId);
-            activityUserMapper.setTeacherId(teacherId);
             activityUserMapper.setActualPrice(studentPaymentOrder.getExpectAmount());
             activityUserMapper.setAddMemo(activity.getName());
             activityUserMapper.setOrganId(studentPaymentOrder.getOrganId());

+ 17 - 313
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServeServiceImpl.java

@@ -1,61 +1,11 @@
 package com.ym.mec.biz.service.impl;
 
-import java.math.BigDecimal;
-import java.time.DayOfWeek;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
 import com.alibaba.fastjson.JSON;
-import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
-import com.ym.mec.biz.dal.dao.CourseScheduleDao;
-import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
-import com.ym.mec.biz.dal.dao.ExtracurricularExercisesReplyDao;
-import com.ym.mec.biz.dal.dao.MusicGroupDao;
-import com.ym.mec.biz.dal.dao.StudentCourseHomeworkDao;
-import com.ym.mec.biz.dal.dao.StudentDao;
-import com.ym.mec.biz.dal.dao.StudentExtracurricularExercisesSituationDao;
-import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
-import com.ym.mec.biz.dal.dto.BasicUserDto;
-import com.ym.mec.biz.dal.dto.ClassGroupStudentMapperDto;
-import com.ym.mec.biz.dal.dto.IndexBaseDto;
-import com.ym.mec.biz.dal.dto.StudentServeCourseDto;
-import com.ym.mec.biz.dal.dto.StudentServeCourseHomeworkDto;
-import com.ym.mec.biz.dal.dto.StudentServeDto;
-import com.ym.mec.biz.dal.entity.CourseSchedule;
+import com.ym.mec.biz.dal.dao.*;
+import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.CourseSchedule.CourseScheduleType;
-import com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment;
-import com.ym.mec.biz.dal.entity.ExtracurricularExercisesReply;
-import com.ym.mec.biz.dal.entity.IndexBaseMonthData;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.StudentCourseHomework;
-import com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation;
-import com.ym.mec.biz.dal.entity.StudentRegistration;
-import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
-import com.ym.mec.biz.dal.enums.CourseStatusEnum;
-import com.ym.mec.biz.dal.enums.GroupType;
-import com.ym.mec.biz.dal.enums.IndexDataType;
-import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
-import com.ym.mec.biz.dal.enums.TeachTypeEnum;
-import com.ym.mec.biz.dal.enums.YesOrNoEnum;
+import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
 import com.ym.mec.biz.service.StudentServeService;
 import com.ym.mec.biz.service.SysConfigService;
@@ -63,6 +13,19 @@ import com.ym.mec.biz.service.SysTenantConfigService;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.util.date.DateUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.math.BigDecimal;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.*;
+import java.util.Map.Entry;
+import java.util.stream.Collectors;
 
 /**
  * @Author Joburgess
@@ -98,247 +61,6 @@ public class StudentServeServiceImpl implements StudentServeService {
     
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void exercisesSituationStatistics(String monday, Integer tenantId) {
-        LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
-
-        int lastWeekTodayUpdateNum = studentExtracurricularExercisesSituationDao.findLastWeekTodayUpdateNum(nowDate.plusDays(-nowDate.getDayOfWeek().getValue()).toString(), tenantId);
-        if(lastWeekTodayUpdateNum<=0){
-            nowDate = nowDate.plusDays(-nowDate.getDayOfWeek().getValue());
-        }
-
-        if(StringUtils.isNotBlank(monday)){
-            nowDate=LocalDate.parse(monday, DateUtil.dateFormatter);
-        }
-
-        LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-        LocalDate sunDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.SUNDAY.getValue());
-        Date nextMonday = Date.from(sunDayDate.plusDays(1).atStartOfDay(DateUtil.zoneId).toInstant());
-
-        List<Integer> beServeStudentIds=studentDao.getServeStudentIds(tenantId);
-        List<Integer> serveStudentIds=new ArrayList<>();
-        List<StudentServeCourseDto> serveStudentCourseStartTimes = studentDao.getServeStudentCourseStartTimes(monDayDate.toString(),tenantId);
-        Map<Integer, List<StudentServeCourseDto>> studentTimesMap = new HashMap<>();
-        if(!CollectionUtils.isEmpty(serveStudentCourseStartTimes)){
-            studentTimesMap = serveStudentCourseStartTimes.stream().collect(Collectors.groupingBy(StudentServeCourseDto::getStudentId));
-        }
-        for (Integer beServeStudentId : beServeStudentIds) {
-            List<StudentServeCourseDto> studentServeCourseDtos = studentTimesMap.get(beServeStudentId);
-            if(CollectionUtils.isEmpty(studentServeCourseDtos)
-                    ||Objects.isNull(studentServeCourseDtos.get(0).getServiceTagUpdateTime())){
-                serveStudentIds.add(beServeStudentId);
-                continue;
-            }
-            long thisWeekCourses = studentServeCourseDtos.stream().filter(e -> !e.getCourseStartTime().before(e.getServiceTagUpdateTime()) && e.getCourseStartTime().compareTo(nextMonday) <= 0).count();
-            if(thisWeekCourses>0){
-                serveStudentIds.add(beServeStudentId);
-            }
-        }
-
-        BigDecimal currentPage=BigDecimal.ONE,
-                pageSize=new BigDecimal(1000),
-                total=new BigDecimal(serveStudentIds.size()),
-                totalPage=total.divide(pageSize, BigDecimal.ROUND_UP);
-
-        List<StudentExtracurricularExercisesSituation> results=new ArrayList<>();
-
-        while (currentPage.compareTo(totalPage)<=0){
-            List<Integer> studentIds=serveStudentIds.stream().skip(pageSize.multiply(currentPage.subtract(BigDecimal.ONE)).longValue()).limit(pageSize.longValue()).collect(Collectors.toList());
-
-            List<StudentServeDto> serviceStudents;
-            if(sunDayDate.isBefore(LocalDate.now())){
-                serviceStudents = studentDao.getBeServiceStudentsInfoWithStudentsForHistory(monDayDate.toString(), nextMonday,studentIds);
-            }else{
-                serviceStudents = studentDao.getBeServiceStudentsInfoWithStudents(monDayDate.toString(), new Date(),studentIds);
-            }
-            if(CollectionUtils.isEmpty(serviceStudents)){
-                return;
-            }
-
-            Map<Integer, List<StudentServeDto>> studentCoursesMap = serviceStudents.stream().collect(Collectors.groupingBy(StudentServeDto::getUserId));
-
-            //本周不服务学员列表
-            Set<Integer> dontServeInCurrentWeekStudentIds=new HashSet<>();
-            //本周有课学员编号集合
-            Set<Integer> haveClassStudentIds=new HashSet<>();
-            //本周无课学员编号集合
-            Set<Integer> noClassStudentIds=new HashSet<>();
-            for (Map.Entry<Integer, List<StudentServeDto>> studentCoursesEntry : studentCoursesMap.entrySet()) {
-
-                List<StudentServeDto> haveCourseStudents = studentCoursesEntry.getValue().stream().filter(e -> Objects.nonNull(e.getCourseStartTime())).collect(Collectors.toList());
-                if(CollectionUtils.isEmpty(haveCourseStudents)){
-                    noClassStudentIds.add(studentCoursesEntry.getKey());
-                    continue;
-                }
-                StudentServeDto studentServeDto = haveCourseStudents.stream().min(Comparator.comparing(StudentServeDto::getCourseStartTime)).get();
-                if(Objects.isNull(studentServeDto.getCourseStartTime())){
-                    noClassStudentIds.add(studentCoursesEntry.getKey());
-                    continue;
-                }
-                if(!studentServeDto.getCourseStartTime().before(nextMonday)){
-                    dontServeInCurrentWeekStudentIds.add(studentCoursesEntry.getKey());
-                    continue;
-                }
-                long count = haveCourseStudents.stream().filter(e -> (GroupType.PRACTICE.equals(e.getGroupType()) ||
-                        GroupType.VIP.equals(e.getGroupType()))
-                        &&nextMonday.after(e.getCourseStartTime())).count();
-                if(count>0){
-                    haveClassStudentIds.add(studentCoursesEntry.getKey());
-                }else{
-                    noClassStudentIds.add(studentCoursesEntry.getKey());
-                }
-            }
-
-            Set<Integer> allServeStudentIds=new HashSet<>();
-            allServeStudentIds.addAll(haveClassStudentIds);
-            allServeStudentIds.addAll(noClassStudentIds);
-
-            Map<Integer, List<StudentServeCourseHomeworkDto>> studentHomeworkMap=new HashMap<>();
-            Map<Integer, List<ExtracurricularExercisesReply>> studentExercisesMap=new HashMap<>();
-
-            if (!CollectionUtils.isEmpty(allServeStudentIds)){
-                List<StudentServeCourseHomeworkDto> studentHomeworks = studentCourseHomeworkDao.findStudentHomeworkWithCourseDateRange(monDayDate.toString(), sunDayDate.toString(), new ArrayList<>(allServeStudentIds));
-                List<StudentServeCourseHomeworkDto> studentHomeworksTmp =new ArrayList<>();
-                for (StudentServeCourseHomeworkDto studentHomework : studentHomeworks) {
-                    LocalDate courseStartLocalDate = LocalDateTime.ofInstant(studentHomework.getCourseStartTime().toInstant(), DateUtil.zoneId).toLocalDate();
-                    switch (courseStartLocalDate.getDayOfWeek()){
-                        case SATURDAY:
-                            if(DateUtil.daysBetween(studentHomework.getCourseStartTime(), studentHomework.getHomeworkCreateTime())<4){
-                                studentHomeworksTmp.add(studentHomework);
-                            }
-                            break;
-                        case SUNDAY:
-                            if(DateUtil.daysBetween(studentHomework.getCourseStartTime(), studentHomework.getHomeworkCreateTime())<3){
-                                studentHomeworksTmp.add(studentHomework);
-                            }
-                            break;
-                        default:
-                            LocalDate homeworkCreateTime = LocalDateTime.ofInstant(studentHomework.getHomeworkCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
-                            if(courseStartLocalDate.get(DateUtil.weekFields.weekOfYear())==homeworkCreateTime.get(DateUtil.weekFields.weekOfYear())){
-                                studentHomeworksTmp.add(studentHomework);
-                            }
-                            break;
-                    }
-                }
-                studentHomeworkMap = studentHomeworksTmp.stream()
-                        .collect(Collectors.groupingBy(StudentServeCourseHomeworkDto::getUserId));
-            }
-
-            if(!CollectionUtils.isEmpty(allServeStudentIds)){
-                List<ExtracurricularExercisesReply> studentExercises = extracurricularExercisesReplyDao.getStudentExercisesWithTimeZone(monDayDate.toString(), sunDayDate.toString(), new ArrayList<>(allServeStudentIds), TenantContextHolder.getTenantId());
-                studentExercisesMap = studentExercises.stream().collect(Collectors.groupingBy(ExtracurricularExercisesReply::getUserId));
-            }
-
-            for (Map.Entry<Integer, List<StudentServeDto>> studentCoursesEntry : studentCoursesMap.entrySet()) {
-
-                if(dontServeInCurrentWeekStudentIds.contains(studentCoursesEntry.getKey())){
-                    continue;
-                }
-
-                StudentExtracurricularExercisesSituation studentExtracurricularExercisesSituation=new StudentExtracurricularExercisesSituation();
-                studentExtracurricularExercisesSituation.setStudentId(studentCoursesEntry.getKey());
-                studentExtracurricularExercisesSituation.setTeacherId(studentCoursesEntry.getValue().get(0).getTeacherId());
-                studentExtracurricularExercisesSituation.setExpectExercisesNum(1);
-                studentExtracurricularExercisesSituation.setActualExercisesNum(0);
-                studentExtracurricularExercisesSituation.setExercisesReplyNum(0);
-                studentExtracurricularExercisesSituation.setExercisesMessageNum(0);
-                studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(0);
-                studentExtracurricularExercisesSituation.setWeekOfYear(nowDate.get(DateUtil.weekFields.weekOfYear()));
-                studentExtracurricularExercisesSituation.setMonday(DateUtil.stringToDate(monDayDate.toString(), "yyyy-MM-dd"));
-                studentExtracurricularExercisesSituation.setSunday(DateUtil.stringToDate(sunDayDate.toString(), "yyyy-MM-dd"));
-
-                if(haveClassStudentIds.contains(studentCoursesEntry.getKey())){
-                    studentExtracurricularExercisesSituation.setServeType("HOMEWORK");
-                }
-
-                if(noClassStudentIds.contains(studentCoursesEntry.getKey())){
-                    studentExtracurricularExercisesSituation.setServeType("EXERCISE");
-                }
-
-                List<StudentServeCourseHomeworkDto> studentHomeworks = studentHomeworkMap.get(studentCoursesEntry.getKey());
-                if(!CollectionUtils.isEmpty(studentHomeworks)){
-                    studentExtracurricularExercisesSituation.setActualExercisesNum(1);
-                    long replyNum = studentHomeworks.stream().filter(e -> YesOrNoEnum.YES.equals(e.getStatus())).count();
-                    studentExtracurricularExercisesSituation.setExercisesReplyNum(replyNum>0?1:0);
-                    long haveSubmitTimes = studentHomeworks.stream().filter(e -> Objects.nonNull(e.getSubmitTime())).count();
-                    if(replyNum>0&&haveSubmitTimes>0){
-                        Date lastSubmitTime = studentHomeworks.stream().filter(e->Objects.nonNull(e.getSubmitTime())).max(Comparator.comparing(StudentServeCourseHomeworkDto::getSubmitTime)).get().getSubmitTime();
-                        studentExtracurricularExercisesSituation.setLastSubmitTime(lastSubmitTime);
-                    }
-                    int exercisesMessageNum=0;
-                    int exercisesMessageTimelyNum=0;
-                    for (StudentServeCourseHomeworkDto studentHomework : studentHomeworks) {
-                        if(!YesOrNoEnum.YES.equals(studentHomework.getStatus())){
-                            continue;
-                        }
-                        if(!YesOrNoEnum.YES.equals(studentHomework.getIsReplied())){
-                            continue;
-                        }
-                        exercisesMessageNum+=1;
-                        if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
-                            exercisesMessageTimelyNum+=1;
-                        }
-                    }
-                    studentExtracurricularExercisesSituation.setExercisesMessageNum(exercisesMessageNum>0?1:0);
-                    studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
-                }
-
-                List<ExtracurricularExercisesReply> studentExercises = studentExercisesMap.get(studentCoursesEntry.getKey());
-                if(!CollectionUtils.isEmpty(studentExercises)){
-                    studentExtracurricularExercisesSituation.setActualExercisesNum(1);
-                    long replyNum = studentExercises.stream().filter(e -> e.getStatus()==1).count();
-                    if(studentExtracurricularExercisesSituation.getExercisesReplyNum()<=0){
-                        studentExtracurricularExercisesSituation.setExercisesReplyNum(replyNum>0?1:0);
-                    }
-                    long haveSubmitTimes = studentExercises.stream().filter(e->Objects.nonNull(e.getSubmitTime())).count();
-                    if(replyNum>0&&haveSubmitTimes>0){
-                        Date lastSubmitTime = studentExercises.stream().filter(e->Objects.nonNull(e.getSubmitTime())).max(Comparator.comparing(ExtracurricularExercisesReply::getSubmitTime)).get().getSubmitTime();
-                        if(Objects.isNull(studentExtracurricularExercisesSituation.getLastSubmitTime())||lastSubmitTime.after(studentExtracurricularExercisesSituation.getLastSubmitTime())){
-                            studentExtracurricularExercisesSituation.setLastSubmitTime(lastSubmitTime);
-                        }
-                    }
-                    int exercisesMessageNum=0;
-                    int exercisesMessageTimelyNum=0;
-                    for (ExtracurricularExercisesReply studentHomework : studentExercises) {
-                        if(!new Integer(1).equals(studentHomework.getStatus())){
-                            continue;
-                        }
-                        if(!new Integer(1).equals(studentHomework.getIsReplied())){
-                            continue;
-                        }
-                        exercisesMessageNum+=1;
-                        if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
-                            exercisesMessageTimelyNum+=1;
-                        }
-                    }
-                    if(studentExtracurricularExercisesSituation.getExercisesMessageNum()<=0){
-                        studentExtracurricularExercisesSituation.setExercisesMessageNum(exercisesMessageNum>0?1:0);
-                    }
-                    if(studentExtracurricularExercisesSituation.getExercisesMessageTimelyNum()<=0){
-                        studentExtracurricularExercisesSituation.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
-                    }
-                }
-                results.add(studentExtracurricularExercisesSituation);
-            }
-
-            currentPage=currentPage.add(BigDecimal.ONE);
-        }
-
-        studentExtracurricularExercisesSituationService.deleteByMonday(monDayDate.toString(), null);
-
-        BigDecimal currentPage1=BigDecimal.ONE,
-                pageSize1=new BigDecimal(10000),
-                total1=new BigDecimal(results.size()),
-                totalPage1=total1.divide(pageSize1, BigDecimal.ROUND_UP);
-
-        while (currentPage1.compareTo(totalPage1)<=0){
-            List<StudentExtracurricularExercisesSituation> rows=results.stream().skip(pageSize1.multiply(currentPage1.subtract(BigDecimal.ONE)).longValue()).limit(pageSize1.longValue()).collect(Collectors.toList());
-            studentExtracurricularExercisesSituationService.batchInsert(rows);
-            currentPage1=currentPage1.add(BigDecimal.ONE);
-        }
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
     public void exercisesSituationStatistics2(String monday, Integer tenantId) {
         LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
         
@@ -940,24 +662,6 @@ public class StudentServeServiceImpl implements StudentServeService {
     }
 
     @Override
-    public Set<Integer> getStudentWithCourse(Long courseId) {
-        CourseSchedule courseSchedule = courseScheduleDao.get(courseId);
-        if(Objects.isNull(courseSchedule)){
-            return new HashSet<>();
-        }
-        LocalDate nowDate = LocalDateTime.ofInstant(courseSchedule.getClassDate().toInstant(), DateUtil.zoneId).toLocalDate();
-
-        LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-        List<StudentExtracurricularExercisesSituation> serviceWithCourse = studentExtracurricularExercisesSituationDao.findServiceWithCourse(monDayDate.toString(), courseId);
-        if(CollectionUtils.isEmpty(serviceWithCourse)){
-            return new HashSet<>();
-        }
-        return serviceWithCourse.stream().map(StudentExtracurricularExercisesSituation::getStudentId).collect(Collectors.toSet());
-    }
-
-
-
-    @Override
     @Transactional(rollbackFor = Exception.class)
     public void closeStudentServiceTag() {
         /**

+ 22 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentTeacherMapperServiceImpl.java

@@ -0,0 +1,22 @@
+package com.ym.mec.biz.service.impl;
+
+import com.ym.mec.biz.dal.dao.StudentTeacherMapperDao;
+import com.ym.mec.biz.dal.entity.StudentStatistics;
+import com.ym.mec.biz.dal.entity.StudentTeacherMapper;
+import com.ym.mec.biz.service.StudentTeacherMapperService;
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.service.impl.BaseServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class StudentTeacherMapperServiceImpl extends BaseServiceImpl<Integer,StudentTeacherMapper> implements StudentTeacherMapperService{
+
+    @Autowired
+    private StudentTeacherMapperDao studentTeacherMapperDao;
+
+    @Override
+    public BaseDAO<Integer, StudentTeacherMapper> getDAO() {
+        return studentTeacherMapperDao;
+    }
+}

+ 20 - 117
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -1,63 +1,14 @@
 package com.ym.mec.biz.service.impl;
 
-import java.math.BigDecimal;
-import java.time.DayOfWeek;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ym.mec.biz.dal.dto.*;
-import com.ym.mec.biz.dal.page.*;
-import com.ym.mec.common.page.PageUtil;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.enums.YesOrNoEnum;
-import com.ym.mec.biz.dal.dao.ClassGroupDao;
-import com.ym.mec.biz.dal.dao.CloudTeacherDao;
-import com.ym.mec.biz.dal.dao.DemoGroupDao;
-import com.ym.mec.biz.dal.dao.ImGroupDao;
-import com.ym.mec.biz.dal.dao.ImUserFriendDao;
-import com.ym.mec.biz.dal.dao.MusicGroupDao;
-import com.ym.mec.biz.dal.dao.OrganizationDao;
-import com.ym.mec.biz.dal.dao.SchoolDao;
-import com.ym.mec.biz.dal.dao.StudentDao;
-import com.ym.mec.biz.dal.dao.StudentExtracurricularExercisesSituationDao;
-import com.ym.mec.biz.dal.dao.StudentPaymentOrderDao;
-import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
-import com.ym.mec.biz.dal.dao.SubjectDao;
-import com.ym.mec.biz.dal.dao.SysUserCashAccountDao;
-import com.ym.mec.biz.dal.dao.TeacherDao;
-import com.ym.mec.biz.dal.entity.CourseHomework;
-import com.ym.mec.biz.dal.entity.ImUserFriend;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.Organization;
-import com.ym.mec.biz.dal.entity.School;
-import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
-import com.ym.mec.biz.dal.entity.SysUserCashAccount;
-import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.dal.dao.*;
+import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.GroupType;
+import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.ClassGroupService;
 import com.ym.mec.biz.service.OaUserService;
 import com.ym.mec.biz.service.TeacherService;
@@ -69,6 +20,7 @@ import com.ym.mec.common.entity.ImResult;
 import com.ym.mec.common.entity.ImUserModel;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.common.page.PageUtil;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.tenant.TenantContextHolder;
@@ -78,6 +30,20 @@ import com.ym.mec.thirdparty.user.realname.provider.LinkfaceRealnameAuthenticati
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.idcard.IdcardValidator;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.math.BigDecimal;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @Service
 public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher> implements TeacherService {
@@ -797,69 +763,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher> implem
     }
 
     @Override
-    public PageInfo<TeacherStudentDataDto> queryMemberStudentData(TeacherServeQueryInfo queryInfo) {
-        PageInfo<TeacherStudentDataDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
-        Map<String, Object> params = new HashMap<String, Object>();
-        MapUtil.populateMap(params, queryInfo);
-
-        List<TeacherStudentDataDto> dataList = new ArrayList<>();
-        int count = teacherDao.countMemberStudentData(params);
-        if (count > 0) {
-            pageInfo.setTotal(count);
-            params.put("offset", pageInfo.getOffset());
-            dataList = teacherDao.queryMemberStudentData(params);
-            List<Integer> teacherIds = dataList.stream().map(TeacherStudentDataDto::getTeacherId).collect(Collectors.toList());
-
-            List<Map<Integer, Integer>> teachersStudentNumMapList = studentDao.getOrganTeacherStudentNum(teacherIds, Integer.valueOf(queryInfo.getOrganId()));
-            Map<Integer, Long> teachersStudentNumMap = new HashMap<>();
-            if (!CollectionUtils.isEmpty(teachersStudentNumMapList)) {
-                teachersStudentNumMap = MapUtil.convertIntegerMap(teachersStudentNumMapList);
-            }
-
-            List<Map<Integer, Integer>> teachersMemberStudentNumMapList = cloudTeacherDao.getTeachersMemberStudentNum(teacherIds, Integer.valueOf(queryInfo.getOrganId()));
-            Map<Integer, Long> teachersMemberStudentNumMap = new HashMap<>();
-            if (!CollectionUtils.isEmpty(teachersMemberStudentNumMapList)) {
-                teachersMemberStudentNumMap = MapUtil.convertIntegerMap(teachersMemberStudentNumMapList);
-            }
-            List<Map<Integer, Integer>> teacherExperienceMemberStudentNumMapList = studentDao.getTeacherExperienceMemberStudentNum(teacherIds, Integer.valueOf(queryInfo.getOrganId()));
-            Map<Integer, Long> teacherExperienceMemberStudentNumMap = new HashMap<>();
-            if (!CollectionUtils.isEmpty(teacherExperienceMemberStudentNumMapList)) {
-                teacherExperienceMemberStudentNumMap = MapUtil.convertIntegerMap(teacherExperienceMemberStudentNumMapList);
-            }
-            List<Map<Integer, Integer>> organTeacherCloudStudyStudentNumMapList = studentDao.getOrganTeacherCloudStudyStudentNum(teacherIds, Integer.valueOf(queryInfo.getOrganId()));
-            Map<String, Long> organTeacherCloudStudyStudentNumMap = new HashMap<>();
-            if (!CollectionUtils.isEmpty(organTeacherCloudStudyStudentNumMapList)) {
-                organTeacherCloudStudyStudentNumMap = MapUtil.convertIntegerMap(organTeacherCloudStudyStudentNumMapList);
-            }
-            for (TeacherStudentDataDto teacherStudentDataDto : dataList) {
-                if (teachersStudentNumMap.containsKey(teacherStudentDataDto.getTeacherId())) {
-                    teacherStudentDataDto.setTotalStudentNum(teachersStudentNumMap.get(teacherStudentDataDto.getTeacherId()).intValue());
-                }
-                if (teachersMemberStudentNumMap.containsKey(teacherStudentDataDto.getTeacherId())) {
-                    teacherStudentDataDto.setVipStudentNum(teachersMemberStudentNumMap.get(teacherStudentDataDto.getTeacherId()).intValue());
-                }
-                if (teacherExperienceMemberStudentNumMap.containsKey(teacherStudentDataDto.getTeacherId())) {
-                    teacherStudentDataDto.seteVipStudentNum(teacherExperienceMemberStudentNumMap.get(teacherStudentDataDto.getTeacherId()).intValue());
-                }
-                if (teacherStudentDataDto.getVipStudentNum() > 0 && teacherStudentDataDto.getTotalStudentNum() > 0) {
-                    teacherStudentDataDto.setVipStudentDuty(new BigDecimal(teacherStudentDataDto.getVipStudentNum()).divide(new BigDecimal(teacherStudentDataDto.getTotalStudentNum()), 4, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).floatValue());
-                }
-                if (organTeacherCloudStudyStudentNumMap.containsKey(teacherStudentDataDto.getTeacherId())) {
-                    teacherStudentDataDto.setCloudStudyUseStudentNum(organTeacherCloudStudyStudentNumMap.get(teacherStudentDataDto.getTeacherId()).intValue());
-                }
-                if (teacherStudentDataDto.getCloudStudyUseStudentNum() > 0 && teacherStudentDataDto.getTotalStudentNum() > 0) {
-                    teacherStudentDataDto.setCloudStudyUseStudentDuty(new BigDecimal(teacherStudentDataDto.getCloudStudyUseStudentNum()).divide(new BigDecimal(teacherStudentDataDto.getTotalStudentNum()), 4, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).floatValue());
-                }
-            }
-        }
-        pageInfo.setStatInfo(new HashMap<String, Object>() {{
-            put("noTeacherStudentNum", studentDao.getOrganNoTeacherStudentNum(Integer.valueOf(queryInfo.getOrganId())));
-        }});
-        pageInfo.setRows(dataList);
-        return pageInfo;
-    }
-
-    @Override
     public PageInfo<SysUserDto> queryTeacherBasicInfo(UserBasicQueryInfo queryInfo) {
         PageInfo<SysUserDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
         Map<String, Object> params = new HashMap<>();

+ 4 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupActivityServiceImpl.java

@@ -650,12 +650,11 @@ public class VipGroupActivityServiceImpl extends BaseServiceImpl<Integer, VipGro
 			throw new BizException("订单更新失败");
 		}
 		if (studentPaymentOrder.getStatus() == DealStatusEnum.SUCCESS) {
-			Student student = studentDao.get(studentPaymentOrder.getUserId());
 			//处理双十一活动特殊赠送
-			boolean elevenFlag = this.doubleElevenGive(studentPaymentOrder, student.getTeacherId());
+			boolean elevenFlag = this.doubleElevenGive(studentPaymentOrder);
 			if(!elevenFlag){
 				studentPaymentOrderService.activityGive(Integer.parseInt(studentPaymentOrder.getActivityId()), studentPaymentOrder,
-						null, null, student.getTeacherId());
+						null, null);
 			}
 			//保存账户信息
 			sysUserCashAccountDetailService.saveSysUserCashAccountDetail(studentPaymentOrder,studentPaymentOrder.getMemo());
@@ -676,7 +675,7 @@ public class VipGroupActivityServiceImpl extends BaseServiceImpl<Integer, VipGro
 	}
 
 	//处理双十一活动特殊赠送
-	private boolean doubleElevenGive(StudentPaymentOrder studentPaymentOrder,Integer teacherId){
+	private boolean doubleElevenGive(StudentPaymentOrder studentPaymentOrder){
 		String[] split = studentPaymentOrder.getActivityId().split(",");
 		String activeConfig = sysConfigDao.findConfigValue("2022_double_eleven_give_config");
 		String giveStartTime = sysConfigDao.findConfigValue("2021_double_eleven_give_member_start_time");
@@ -716,7 +715,7 @@ public class VipGroupActivityServiceImpl extends BaseServiceImpl<Integer, VipGro
 		}
 		if (doubleElevenFlag){
 			//处理活动特殊排课资格
-			activityUserMapperService.saveToOrder(studentPaymentOrder,teacherId);
+			activityUserMapperService.saveToOrder(studentPaymentOrder);
 		}
 		return doubleElevenFlag;
 	}

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -2336,7 +2336,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
             } else {
                 //活动赠送
                 Integer activityUserMapperId = studentPaymentOrderService.activityGive(vipGroup.getVipGroupActivityId(), order,
-                        vipGroup.getId().toString(), null, vipGroup.getUserId());
+                        vipGroup.getId().toString(), null);
 
                 //生成班级学员关联
                 ClassGroupStudentMapper classGroupStudentMapper = new ClassGroupStudentMapper();

+ 35 - 28
mec-biz/src/main/resources/config/mybatis/ActivityUserMapperMapper.xml

@@ -5,7 +5,7 @@
 不要修改此文件。所有改动将在下次重新自动生成时丢失。
 -->
 <mapper namespace="com.ym.mec.biz.dal.dao.ActivityUserMapperDao">
-	
+
 	<resultMap type="com.ym.mec.biz.dal.entity.ActivityUserMapper" id="ActivityUserMapper">
 		<result column="id_" property="id" />
 		<result column="category_id_" property="categoryId" />
@@ -14,7 +14,6 @@
 		<result column="give_single_course_time_" property="giveSingleCourseTime" />
 		<result column="activity_id_" property="activityId" />
 		<result column="user_id_" property="userId" />
-		<result column="teacher_id_" property="teacherId" />
 		<result column="vip_flag_" property="vipFlag" />
 		<result column="give_vip_flag_" property="giveVipFlag" />
 		<result column="practice_flag_" property="practiceFlag" />
@@ -44,29 +43,29 @@
 		<result column="update_time_" property="updateTime" />
 		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
-	
+
 	<!-- 根据主键查询一条记录 -->
 	<select id="get" resultMap="ActivityUserMapper" >
-		SELECT * FROM activity_user_mapper WHERE id_ = #{id} 
+		SELECT * FROM activity_user_mapper WHERE id_ = #{id}
 	</select>
-	
+
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="ActivityUserMapper">
 		SELECT * FROM activity_user_mapper where tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
-	
+
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.ActivityUserMapper" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
 		INSERT INTO activity_user_mapper (activity_id_,user_id_,vip_flag_,give_vip_flag_,
 		                                  practice_flag_,give_practice_flag_,member_flag_,give_member_flag_,create_time_,update_time_,payment_order_id_,
 										  vip_group_id_,give_vip_group_id_,practice_group_id_,give_practice_group_id_,return_fee_,
-		                                  member_order_id_,give_member_order_id_,teacher_id_,actual_price_,add_memo_,cut_memo_,tenant_id_,give_coupon_id_,
+		                                  member_order_id_,give_member_order_id_,actual_price_,add_memo_,cut_memo_,tenant_id_,give_coupon_id_,
 										  total_course_num_,total_give_course_num_,sub_course_num_,sub_give_course_num_,sub_no_course_price_,single_course_time_,
 		                                  give_single_course_time_,category_id_,give_category_id_,calender_id_,organ_id_)
 		                                  VALUES(#{activityId},#{userId},#{vipFlag},#{giveVipFlag},#{practiceFlag},
 		                                         #{givePracticeFlag},#{memberFlag},#{giveMemberFlag},NOW(),NOW(),#{paymentOrderId},#{vipGroupId},
 		                                         #{giveVipGroupId},#{practiceGroupId},#{givePracticeGroupId},#{returnFee},
-		                                         #{memberOrderId},#{giveMemberOrderId},#{teacherId},#{actualPrice},#{addMemo},#{cutMemo},#{tenantId},#{giveCouponId},
+		                                         #{memberOrderId},#{giveMemberOrderId},#{actualPrice},#{addMemo},#{cutMemo},#{tenantId},#{giveCouponId},
 		                                         #{totalCourseNum},#{totalGiveCourseNum},#{subCourseNum},#{subGiveCourseNum},#{subNoCoursePrice},
 		                                         #{singleCourseTime},#{giveSingleCourseTime},#{categoryId},#{giveCategoryId},#{calenderId},#{organId})
 	</insert>
@@ -74,7 +73,7 @@
 		INSERT INTO activity_user_mapper (activity_id_,user_id_,vip_flag_,give_vip_flag_,
 		practice_flag_,give_practice_flag_,member_flag_,give_member_flag_,create_time_,update_time_,payment_order_id_,
 		vip_group_id_,give_vip_group_id_,practice_group_id_,give_practice_group_id_,return_fee_,member_order_id_,
-		                                  give_member_order_id_,teacher_id_,actual_price_,add_memo_,cut_memo_,tenant_id_,give_coupon_id_,
+		                                  give_member_order_id_,actual_price_,add_memo_,cut_memo_,tenant_id_,give_coupon_id_,
 		total_course_num_,total_give_course_num_,sub_course_num_,sub_give_course_num_,sub_no_course_price_,single_course_time_,
 		                                  give_single_course_time_,category_id_,give_category_id_,calender_id_,organ_id_)
 		VALUES
@@ -82,7 +81,7 @@
 			(#{item.activityId},#{item.userId},#{item.vipFlag},#{item.giveVipFlag},#{item.practiceFlag},
 			#{item.givePracticeFlag},#{item.memberFlag},#{item.giveMemberFlag},NOW(),NOW(),#{item.paymentOrderId},#{item.vipGroupId},
 			#{item.giveVipGroupId},#{item.practiceGroupId},#{item.givePracticeGroupId},#{item.returnFee},
-			 #{item.memberOrderId},#{item.giveMemberOrderId},#{item.teacherId},#{item.actualPrice},#{item.addMemo},#{item.cutMemo},
+			 #{item.memberOrderId},#{item.giveMemberOrderId},#{item.actualPrice},#{item.addMemo},#{item.cutMemo},
 			 #{item.tenantId},#{item.giveCouponId},#{item.totalCourseNum},#{item.totalGiveCourseNum},#{item.subCourseNum},
 			 #{item.subGiveCourseNum},#{item.subNoCoursePrice},#{item.singleCourseTime},#{item.giveSingleCourseTime},
 			 #{item.categoryId},#{item.giveCategoryId},#{item.calenderId},#{item.organId})
@@ -128,9 +127,6 @@
 			<if test="actualPrice != null">
 				actual_price_ = #{actualPrice},
 			</if>
-			<if test="teacherId != null">
-				teacher_id_ = #{teacherId},
-			</if>
 			<if test="memberOrderId != null">
 				member_order_id_ = #{memberOrderId},
 			</if>
@@ -202,9 +198,6 @@
 		</if>
 		AND FIND_IN_SET(id_,#{activityUserMapperIds}) AND FIND_IN_SET(user_id_,#{studentIds}) AND return_fee_ = 0
 	</update>
-    <update id="updateTeacherId">
-		UPDATE activity_user_mapper SET teacher_id_ = #{teacherId} WHERE user_id_ = #{userId}
-	</update>
 	<update id="batchUpdate">
 		<foreach collection="useActivityUserMappers" item="entity" separator=";">
 			UPDATE activity_user_mapper
@@ -272,9 +265,9 @@
 
 	<!-- 根据主键删除一条记录 -->
 	<delete id="delete" >
-		DELETE FROM activity_user_mapper WHERE id_ = #{id} 
+		DELETE FROM activity_user_mapper WHERE id_ = #{id}
 	</delete>
-	
+
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="ActivityUserMapper" parameterType="map">
 		SELECT * FROM activity_user_mapper where tenant_id_ = #{tenantId}
@@ -287,7 +280,7 @@
 		ORDER BY id_ DESC
 		<include refid="global.limit"/>
 	</select>
-	
+
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM activity_user_mapper where tenant_id_ = #{tenantId}
@@ -385,7 +378,7 @@
 		WHERE aum.return_fee_ = 0 AND aum.user_id_ = #{userId} AND aum.activity_id_ = #{activityId}
 		GROUP BY aum.user_id_
 	</select>
-	
+
 	<select id="exportStudentSubCourse" resultType="com.ym.mec.biz.dal.dto.ExportStudentSubCourse">
 		select
 			t.user_id_ as userId,
@@ -416,17 +409,22 @@
 		SELECT CASE WHEN vgc.id_ IS NULL THEN '网管课' ELSE vgc.name_ END name_,
 		CASE WHEN vgc.id_ IS NULL THEN 0 ELSE vgc.id_ END id_,COUNT(DISTINCT aum.user_id_) num_,
 		CASE WHEN vgc.id_ IS NULL THEN 1 ELSE vgc.student_num_ END student_num_
-		FROM (select category_id_,user_id_,teacher_id_ from activity_user_mapper aum WHERE aum.sub_course_num_ > 0 AND aum.return_fee_ = 0
+		FROM (select category_id_,user_id_,case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END type_
+		from activity_user_mapper aum WHERE aum.sub_course_num_ > 0 AND aum.return_fee_ = 0
 		UNION ALL
-		select give_category_id_ category_id_,user_id_,teacher_id_ from activity_user_mapper aum
+		select give_category_id_ category_id_,user_id_,case when give_category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END type_
+		from activity_user_mapper aum
 		WHERE aum.sub_give_course_num_ > 0 AND aum.return_fee_ = 0) aum
 		LEFT JOIN vip_group_category vgc ON aum.category_id_ = vgc.id_
+		<if test="userId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		<if test="organIds != null and organIds != ''">
 			LEFT JOIN sys_user su ON su.id_ = aum.user_id_
 		</if>
 		<where>
 			<if test="userId != null">
-				AND aum.teacher_id_ = #{userId}
+				AND stm.teacher_id_ = #{userId} AND aum.type_ = stm.teacher_type_
 			</if>
 			<if test="organIds != null and organIds != ''">
 				AND FIND_IN_SET(su.organ_id_,#{organIds})
@@ -445,7 +443,7 @@
 	<select id="queryActivityStudentList" resultMap="ActivityUserDto">
 		SELECT aum.user_id_,su.avatar_,sj.id_ subject_id_,su.username_,su.phone_,sj.name_ subject_name_,SUM(aum.sub_course_num_) sub_course_num_
 		FROM (SELECT aum.id_,aum.user_id_,aum.sub_course_num_,
-		             aum.single_course_time_,aum.teacher_id_ from activity_user_mapper aum
+		             aum.single_course_time_,case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END type_ from activity_user_mapper aum
 		WHERE aum.sub_course_num_ > 0 AND aum.return_fee_ = 0
 		<if test="queryInfo.categoryId != null">
 			AND aum.category_id_ = #{queryInfo.categoryId}
@@ -455,7 +453,7 @@
 		</if>
 		UNION ALL
 		SELECT aum.id_,aum.user_id_,aum.sub_give_course_num_ sub_course_num_,
-		       aum.give_single_course_time_ single_course_time_,aum.teacher_id_ from activity_user_mapper aum
+		       aum.give_single_course_time_ single_course_time_,case when give_category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END type_ from activity_user_mapper aum
 		WHERE aum.sub_give_course_num_ > 0 AND aum.return_fee_ = 0
 		<if test="queryInfo.categoryId != null">
 			AND aum.give_category_id_ = #{queryInfo.categoryId}
@@ -464,6 +462,9 @@
 			AND aum.give_category_id_ IS NULL
 		</if>
 		) aum
+		<if test="queryInfo.teacherId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		LEFT JOIN sys_user su ON su.id_ = aum.user_id_
 		LEFT JOIN student s ON s.user_id_ = aum.user_id_
 		LEFT JOIN subject sj ON sj.id_ = s.subject_id_list_
@@ -483,7 +484,7 @@
 				AND FIND_IN_SET(sj.id_,#{queryInfo.subjectIds})
 			</if>
 			<if test="queryInfo.teacherId != null">
-				AND aum.teacher_id_ = #{queryInfo.teacherId}
+				AND stm.teacher_id_ = #{queryInfo.teacherId} AND aum.type_ = stm.teacher_type_
 			</if>
 			<if test="queryInfo.studentIds != null and queryInfo.studentIds.size > 0">
 				AND aum.user_id_ IN
@@ -498,6 +499,9 @@
 	<select id="queryActivityCourseTimeList" resultType="java.lang.Integer">
 		select distinct aum.single_course_time_ from activity_user_mapper aum
 		left join sys_user su on su.id_ = aum.user_id_
+		<if test="queryInfo.teacherId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		where aum.return_fee_ = 0 and aum.total_course_num_ > 0
 		<if test="queryInfo.categoryId != null">
 			AND aum.category_id_ = #{queryInfo.categoryId}
@@ -506,7 +510,7 @@
 			AND aum.category_id_ IS NULL
 		</if>
 		<if test="queryInfo.teacherId != null">
-			AND aum.teacher_id_ = #{queryInfo.teacherId}
+			AND stm.teacher_id_ = #{queryInfo.teacherId} AND stm.teacher_type_ = case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END
 		</if>
 		<if test="queryInfo.organIds != null and queryInfo.organIds != ''">
 			AND FIND_IN_SET(su.organ_id_,#{queryInfo.organIds})
@@ -514,6 +518,9 @@
 		union
 		select distinct aum.give_single_course_time_ from activity_user_mapper aum
 		left join sys_user su on su.id_ = aum.user_id_
+		<if test="queryInfo.teacherId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		where aum.return_fee_ = 0 and aum.sub_give_course_num_ > 0
 		<if test="queryInfo.categoryId != null">
 			AND aum.give_category_id_ = #{queryInfo.categoryId}
@@ -522,7 +529,7 @@
 			AND aum.give_category_id_ IS NULL
 		</if>
 		<if test="queryInfo.teacherId != null">
-			AND aum.teacher_id_ = #{queryInfo.teacherId}
+			AND stm.teacher_id_ = #{queryInfo.teacherId} AND stm.teacher_type_ = case when give_category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END
 		</if>
 		<if test="queryInfo.organIds != null and queryInfo.organIds != ''">
 			AND FIND_IN_SET(su.organ_id_,#{queryInfo.organIds})

+ 0 - 20
mec-biz/src/main/resources/config/mybatis/CloudTeacherMapper.xml

@@ -119,24 +119,4 @@
         </if>
         GROUP BY su.organ_id_
     </select>
-
-    <select id="getTeachersMemberStudentNum" resultType="map">
-        SELECT
-        stu.teacher_id_ 'key',
-        COUNT(DISTINCT cto.student_id_) 'value'
-        FROM cloud_teacher_order cto
-        LEFT JOIN student stu ON cto.student_id_=stu.user_id_
-        LEFT JOIN sys_user su ON cto.student_id_=su.id_
-        WHERE su.del_flag_=0 AND cto.status_ IN (1,2)
-        <if test="organId!=null">
-            AND su.organ_id_=#{organId}
-        </if>
-        <if test="teacherIds!=null and teacherIds.size()>0">
-            AND stu.teacher_id_ IN
-            <foreach collection="teacherIds" item="teacherId" open="(" close=")" separator=",">
-                #{teacherId}
-            </foreach>
-        </if>
-        GROUP BY stu.teacher_id_
-    </select>
 </mapper>

+ 0 - 8
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -610,14 +610,6 @@
         </if>
     </select>
 
-    <select id="findServiceWithCourse"
-            resultMap="StudentExtracurricularExercisesSituation">
-        SELECT *
-        FROM student_extracurricular_exercises_situation_
-        WHERE monday_ = #{monday}
-          AND FIND_IN_SET(#{courseId}, course_ids_)
-    </select>
-
     <resultMap id="TeacherServeDto" type="com.ym.mec.biz.dal.dto.TeacherServeDto">
         <result column="organ_name_" property="organName"/>
         <result column="monday_" property="monday"/>

+ 0 - 136
mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

@@ -518,57 +518,7 @@
           AND pg.buy_months_ >= 1
         GROUP BY s.teacher_id_
     </select>
-    <select id="getServiceStudents" resultMap="Student">
-        SELECT su.id_ user_id_,s.teacher_id_ FROM sys_user su
-        LEFT JOIN student s ON s.user_id_=su.id_
-        WHERE s.service_tag_=1 AND FIND_IN_SET('STUDENT', su.user_type_) and s.tenant_id_ = #{tenantId}
-    </select>
 
-    <resultMap id="StudentServeDto" type="com.ym.mec.biz.dal.dto.StudentServeDto" extends="Student">
-        <result column="group_type_" property="groupType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
-        <result column="teach_mode_" property="teachMode" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
-        <result property="courseStartTime" column="course_start_time_"/>
-    </resultMap>
-    <select id="getBeServiceStudentsInfoWithStudents" resultMap="StudentServeDto">
-        SELECT
-            s.user_id_,
-            s.teacher_id_,
-            cs.group_type_,
-            cs.teach_mode_,
-            IF(CONCAT( cs.class_date_, ' ', cs.end_class_time_ )&lt;#{courseExpireDate} AND (sa.status_ != 'NORMAL' OR sa.status_ IS NULL), NULL, cs.class_date_) course_start_time_
-        FROM
-          student s
-        LEFT JOIN course_schedule_student_payment cssp ON cssp.user_id_ = s.user_id_
-        LEFT JOIN student_attendance sa ON cssp.course_schedule_id_=sa.course_schedule_id_ AND sa.user_id_=cssp.user_id_
-        LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
-        AND cs.group_type_ IN ('VIP', 'PRACTICE')
-        AND CONCAT( cs.class_date_, ' ', cs.start_class_time_ ) > #{monday}
-        WHERE
-        s.service_tag_ = 1 AND s.user_id_ IN
-        <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
-            #{studentId}
-        </foreach>
-    </select>
-    <select id="getBeServiceStudentsInfoWithStudentsForHistory" resultMap="StudentServeDto">
-        SELECT
-            s.student_id_ user_id_,
-            s.teacher_id_,
-            cs.group_type_,
-            cs.teach_mode_,
-            IF(CONCAT( cs.class_date_, ' ', cs.end_class_time_ )&lt;#{courseExpireDate} AND (sa.status_ != 'NORMAL' OR sa.status_ IS NULL), NULL, cs.class_date_) course_start_time_
-        FROM
-          student_extracurricular_exercises_situation_ s
-        LEFT JOIN course_schedule_student_payment cssp ON cssp.user_id_ = s.student_id_
-        LEFT JOIN student_attendance sa ON cssp.course_schedule_id_=sa.course_schedule_id_ AND sa.user_id_=cssp.user_id_
-        LEFT JOIN course_schedule cs ON cs.id_ = cssp.course_schedule_id_
-        AND cs.group_type_ IN ('VIP', 'PRACTICE')
-        AND CONCAT( cs.class_date_, ' ', cs.start_class_time_ ) > #{monday}
-        WHERE
-        s.monday_ = #{monday} AND s.student_id_ IN
-        <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
-            #{studentId}
-        </foreach>
-    </select>
     <select id="getServeStudentIds" resultType="int">
         SELECT user_id_
         FROM student stu
@@ -677,15 +627,6 @@
             </if>
     </select>
 
-    <select id="getStudentTeacher" resultMap="Student">
-        SELECT s.user_id_,t.real_name_ teacher_name_ FROM student s
-        LEFT JOIN sys_user t ON t.id_ = s.teacher_id_
-        WHERE s.user_id_ IN
-        <foreach collection="studentIds" item="id" open="(" close=")" separator=",">
-            #{id}
-        </foreach>
-    </select>
-
     <select id="findByStudentIds" resultMap="Student">
         SELECT * FROM student WHERE user_id_ IN
         <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
@@ -845,43 +786,6 @@
         GROUP BY su.organ_id_
     </select>
 
-    <select id="getOrganTeacherStudentNum" resultType="map">
-        SELECT stu.teacher_id_ 'key',COUNT(DISTINCT t.user_id_) 'value'
-        FROM ((SELECT sr.user_id_
-        FROM student_registration sr
-        LEFT JOIN music_group mg ON sr.music_group_id_=mg.id_
-        WHERE mg.status_='PROGRESS' AND sr.music_group_status_='NORMAL')
-        UNION ALL
-        (SELECT
-        cssp.user_id_
-        FROM
-        course_schedule_student_payment cssp
-        LEFT JOIN course_schedule cs ON cssp.course_schedule_id_=cs.id_
-        WHERE
-            cssp.group_type_ IN ('VIP', 'PRACTICE')
-            AND cs.status_='NOT_START')) t
-        LEFT JOIN student stu ON t.user_id_=stu.user_id_
-        LEFT JOIN sys_user su ON t.user_id_ = su.id_
-        LEFT JOIN teacher tea ON stu.teacher_id_=tea.id_
-        WHERE su.del_flag_=0
-        <if test="organId!=null">
-            AND tea.organ_id_=#{organId}
-        </if>
-            AND stu.teacher_id_ IN
-            <foreach collection="teacherIds" item="teacherId" open="(" close=")" separator=",">
-                #{teacherId}
-            </foreach>
-        GROUP BY stu.teacher_id_
-    </select>
-
-    <select id="getOrganNoTeacherStudentNum" resultType="int">
-        SELECT COUNT(DISTINCT stu.user_id_)
-        FROM student stu
-        LEFT JOIN sys_user su ON stu.user_id_ = su.id_
-        WHERE su.del_flag_=0 AND stu.teacher_id_ IS NULL
-            AND su.organ_id_=#{organId}
-    </select>
-
     <select id="getCloudStudyStudentNum" resultType="int">
         SELECT
             COUNT(DISTINCT smcr.user_id_)
@@ -933,25 +837,6 @@
         GROUP BY su.organ_id_
     </select>
 
-    <select id="getOrganTeacherCloudStudyStudentNum" resultType="map">
-        SELECT
-        stu.teacher_id_ 'key',
-        COUNT(DISTINCT smcr.user_id_) 'value'
-        FROM sys_music_compare_record smcr
-        LEFT JOIN sys_user su ON smcr.user_id_=su.id_
-        LEFT JOIN student stu ON smcr.user_id_=stu.user_id_
-        LEFT JOIN teacher tea ON stu.teacher_id_=tea.id_
-        WHERE su.del_flag_=0 AND stu.user_id_ IS NOT NULL
-        <if test="organId!=null">
-            AND tea.organ_id_=#{organId}
-        </if>
-            AND stu.teacher_id_ IN
-            <foreach collection="teacherIds" item="teacherId" open="(" close=")" separator=",">
-                #{teacherId}
-            </foreach>
-        GROUP BY stu.teacher_id_
-    </select>
-
     <select id="getCloudStudyLivelyStudentNum" resultType="int">
         SELECT COUNT(user_id_)
         FROM (SELECT
@@ -1051,8 +936,6 @@
         SELECT
             stu.user_id_ studentId,
             su.username_ studentName,
-            stu.teacher_id_ teacherId,
-            tea.real_name_ teacherName,
             sub.name_	subjectName,
             stu.cloud_study_sequence_days_ cloudStudyRunningDays,
             COUNT(DISTINCT smcr.behavior_id_) cloudStudyUseNum,
@@ -1082,7 +965,6 @@
                 )) t1) t
             LEFT JOIN student stu ON t.user_id_=stu.user_id_
             LEFT JOIN sys_user su ON stu.user_id_=su.id_
-            LEFT JOIN sys_user tea ON stu.teacher_id_=tea.id_
             LEFT JOIN `subject` sub ON stu.subject_id_list_ = sub.id_
             LEFT JOIN sys_music_compare_record smcr ON stu.user_id_ = smcr.user_id_
         <include refid="queryCloudStudyStudentDataCondition" />
@@ -1150,24 +1032,6 @@
             </foreach>
     </select>
 
-    <select id="getTeacherExperienceMemberStudentNum" resultType="map">
-        SELECT
-        stu.teacher_id_ 'key',
-        COUNT(DISTINCT stu.user_id_) 'value'
-        FROM student stu
-        LEFT JOIN cloud_teacher_order cto ON stu.user_id_=cto.student_id_
-        LEFT JOIN sys_user su ON su.id_=stu.user_id_
-        WHERE su.del_flag_=0 AND stu.experience_member_rank_setting_id_ IS NOT NULL AND (cto.id_ IS NULL OR cto.status_ NOT IN (1, 2))
-        <if test="organId!=null">
-            AND su.organ_id_=#{organId}
-        </if>
-            AND stu.teacher_id_ IN
-            <foreach collection="teacherIds" item="teacherId" open="(" close=")" separator=",">
-                #{teacherId}
-            </foreach>
-        GROUP BY stu.teacher_id_
-    </select>
-
     <select id="getStudentSubjectMapList" resultType="java.util.Map">
         SELECT stu.user_id_ 'key',sub.name_ 'value'
         FROM student stu

+ 39 - 0
mec-biz/src/main/resources/config/mybatis/StudentTeacherMapperMapper.xml

@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<!--
+这个文件是自动生成的。
+不要修改此文件。所有改动将在下次重新自动生成时丢失。
+-->
+<mapper namespace="com.ym.mec.biz.dal.dao.StudentTeacherMapperDao">
+	
+	<resultMap type="com.ym.mec.biz.dal.entity.StudentTeacherMapper" id="StudentTeacherMapper">
+		<result column="student_id_" property="studentId" />
+		<result column="teacher_id_" property="teacherId" />
+		<result column="teacher_name_" property="teacherName" />
+		<result column="teacher_type_" property="teacherType" />
+	</resultMap>
+	
+	
+	<!-- 全查询 -->
+	<select id="findAll" resultMap="StudentTeacherMapper">
+		SELECT * FROM student_teacher_mapper
+	</select>
+	
+	<!-- 向数据库增加一条记录 -->
+	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.StudentTeacherMapper" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
+		INSERT INTO student_teacher_mapper (student_id_,teacher_id_,teacher_name_,teacher_type_)
+		VALUES(#{studentId},#{teacherId},#{teacherName},#{teacherType})
+	</insert>
+	
+	
+	
+	<!-- 分页查询 -->
+	<select id="queryPage" resultMap="StudentTeacherMapper" parameterType="map">
+		SELECT * FROM student_teacher_mapper <include refid="global.limit"/>
+	</select>
+	
+	<!-- 查询当前表的总记录数 -->
+	<select id="queryCount" resultType="int">
+		SELECT COUNT(*) FROM student_teacher_mapper
+	</select>
+</mapper>

+ 0 - 27
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -1453,33 +1453,6 @@
         <include refid="queryTeacherMusicIdsCondition"></include>
     </select>
 
-    <sql id="queryMemberStudentDataCondition">
-        <where>
-            su.del_flag_=0 AND su.lock_flag_=0 and tea.tenant_id_ = #{tenantId}
-            <if test="organId!=null and organId!=''">
-                AND tea.organ_id_ = #{organId}
-            </if>
-        </where>
-    </sql>
-
-    <select id="queryMemberStudentData" resultType="com.ym.mec.biz.dal.dto.TeacherStudentDataDto">
-        select tea.id_ teacherId,
-               su.real_name_ teacherName
-        from teacher tea
-        LEFT JOIN sys_user su ON su.id_=tea.id_
-        <include refid="queryMemberStudentDataCondition"></include>
-        group by tea.id_
-        ORDER BY tea.id_
-        <include refid="global.limit"></include>
-    </select>
-
-    <select id="countMemberStudentData" resultType="int">
-        select count(tea.id_)
-        from teacher tea
-        LEFT JOIN sys_user su ON su.id_=tea.id_
-        <include refid="queryMemberStudentDataCondition"></include>
-        <include refid="global.limit"/>
-    </select>
     <select id="getSimpleUser" resultType="com.ym.mec.biz.dal.dto.SimpleUserDto">
         SELECT
             su.id_ userId,

+ 16 - 4
mec-biz/src/main/resources/config/mybatis/VipGroupActivityMapper.xml

@@ -301,9 +301,12 @@
 	<select id="queryWaitCourseActivity" resultMap="WaitCourseActivityDto">
 		SELECT aum.id_,aum.activity_id_,vga.name_ activity_name_,COUNT(DISTINCT aum.user_id_) student_num_ FROM activity_user_mapper aum
 		LEFT JOIN vip_group_activity vga ON aum.activity_id_ = vga.id_
+		<if test="teacherId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		WHERE aum.return_fee_ = 0 and aum.tenant_id_ = #{tenantId}
 		<if test="teacherId != null">
-			AND aum.teacher_id_ = #{teacherId}
+			AND stm.teacher_id_ = #{teacherId} AND stm.teacher_type_ = case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END
 		</if>
 		<if test="organId != null and organId != ''">
 			AND INTE_ARRAY(#{organId},vga.organ_id_)
@@ -332,9 +335,12 @@
 		COUNT(CASE WHEN give_vip_flag_ = 1 THEN 1 ELSE NULL END) give_vip_num_,
 		COUNT(CASE WHEN give_practice_flag_ = 1 THEN 1 ELSE NULL END) give_practice_num_
 		FROM activity_user_mapper aum
+		<if test="userId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		WHERE aum.return_fee_ = 0 AND aum.activity_id_ = #{activityId}
 		<if test="userId != null">
-			AND aum.teacher_id_ = #{userId}
+			AND stm.teacher_id_ = #{userId} AND stm.teacher_type_ = case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END
 		</if>
 		GROUP BY aum.user_id_)c
 	</select>
@@ -347,9 +353,12 @@
 				su.username_,su.avatar_,aum.user_id_,su.phone_
 		FROM activity_user_mapper aum
 		LEFT JOIN sys_user su ON su.id_ = aum.user_id_
+		<if test="userId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		WHERE aum.return_fee_ = 0 AND aum.activity_id_ = #{activityId}
 		<if test="userId != null">
-			AND aum.teacher_id_ = #{userId}
+			AND stm.teacher_id_ = #{userId} AND stm.teacher_type_ = case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END
 		</if>
 		<if test="search != null and search != ''">
 			AND (aum.user_id_ = #{search} OR su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
@@ -373,9 +382,12 @@
 		COUNT(CASE WHEN aum.give_practice_flag_ = 1 THEN 1 ELSE NULL END) give_practice_num_,aum.user_id_
 		FROM activity_user_mapper aum
 		LEFT JOIN sys_user su ON su.id_ = aum.user_id_
+		<if test="userId != null">
+			left join student_teacher_mapper stm ON stm.student_id_ = aum.user_id_
+		</if>
 		WHERE aum.return_fee_ = 0 AND aum.activity_id_ = #{activityId}
 		<if test="userId != null">
-			AND aum.teacher_id_ = #{userId}
+			AND stm.teacher_id_ = #{userId} AND stm.teacher_type_ = case when category_id_ IS NULL THEN 'PRACTICE' ELSE 'VIP' END
 		</if>
 		<if test="search != null and search != ''">
 			AND (aum.user_id_ = #{search} OR su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))

+ 24 - 380
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -1,219 +1,14 @@
 package com.ym.mec.web.controller;
 
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.lang3.StringUtils;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.util.CollectionUtils;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dao.CourseScheduleDao;
-import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
-import com.ym.mec.biz.dal.dao.MusicGroupDao;
-import com.ym.mec.biz.dal.dao.PracticeGroupDao;
-import com.ym.mec.biz.dal.dao.StudentDao;
-import com.ym.mec.biz.dal.dao.StudentPaymentOrderDao;
-import com.ym.mec.biz.dal.dao.SysUserCashAccountDetailDao;
-import com.ym.mec.biz.dal.dao.SysUserCoursesAccountDetailDao;
-import com.ym.mec.biz.dal.dao.TempBuyFreeLiveTheoryCourseDao;
-import com.ym.mec.biz.dal.dao.VipGroupDao;
-import com.ym.mec.biz.dal.dto.ChildrenStatisticsDetailDto;
-import com.ym.mec.biz.dal.dto.ClassGroupTeachersDto;
-import com.ym.mec.biz.dal.dto.CloudTeacherActiveTargetDetailDto;
-import com.ym.mec.biz.dal.dto.CloudTeacherActiveTargetDto;
-import com.ym.mec.biz.dal.dto.CourseGroupExportDto;
-import com.ym.mec.biz.dal.dto.CourseReviewDto;
-import com.ym.mec.biz.dal.dto.DoubleEleven2021Dto;
-import com.ym.mec.biz.dal.dto.DoubleEleven2021OrderDetailDto;
-import com.ym.mec.biz.dal.dto.EduOrganStudentDataDto;
-import com.ym.mec.biz.dal.dto.EduOrganStudentListExportDto;
-import com.ym.mec.biz.dal.dto.ExportDto;
-import com.ym.mec.biz.dal.dto.ExportStudentAttendanceDto;
-import com.ym.mec.biz.dal.dto.ExportTeacherSalaryDto;
-import com.ym.mec.biz.dal.dto.ExportVipGroupActivityDto;
-import com.ym.mec.biz.dal.dto.ExtraExerciseStudentsDto;
-import com.ym.mec.biz.dal.dto.IndexErrorDataExportDto;
-import com.ym.mec.biz.dal.dto.MusicArrearageStudentDto;
-import com.ym.mec.biz.dal.dto.MusicGroupCourseScheduleDto;
-import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAuditDto;
-import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderDetailDto;
-import com.ym.mec.biz.dal.dto.MusicGroupStudentsDto;
-import com.ym.mec.biz.dal.dto.MusicalListDetailDto;
-import com.ym.mec.biz.dal.dto.NoClassMusicStudentDto;
-import com.ym.mec.biz.dal.dto.OrderByTypeExportDto;
-import com.ym.mec.biz.dal.dto.OrganDoubleEleven2021StatisDto;
-import com.ym.mec.biz.dal.dto.PageInfoDegree;
-import com.ym.mec.biz.dal.dto.PracticeCourseDto;
-import com.ym.mec.biz.dal.dto.PracticeGroupDto;
-import com.ym.mec.biz.dal.dto.Student4operating;
-import com.ym.mec.biz.dal.dto.StudentApplyDetailDto;
-import com.ym.mec.biz.dal.dto.StudentBuyPracticeDto;
-import com.ym.mec.biz.dal.dto.StudentErrorLeaveDto;
-import com.ym.mec.biz.dal.dto.StudentExercisesSituationDto;
-import com.ym.mec.biz.dal.dto.StudentManageListDto;
-import com.ym.mec.biz.dal.dto.StudentVisitDto;
-import com.ym.mec.biz.dal.dto.TeacherCourseSalaryDetail4WebDto;
-import com.ym.mec.biz.dal.dto.TeacherDefaultSalaryDto;
-import com.ym.mec.biz.dal.dto.TeacherSalaryDto;
-import com.ym.mec.biz.dal.dto.TeacherServeDto;
-import com.ym.mec.biz.dal.dto.TeacherStudentDataDto;
-import com.ym.mec.biz.dal.dto.VipBuyResultDto;
-import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
-import com.ym.mec.biz.dal.entity.CooperationOrgan;
-import com.ym.mec.biz.dal.entity.DegreeRegistration;
-import com.ym.mec.biz.dal.entity.EmployeeInfo;
-import com.ym.mec.biz.dal.entity.Goods;
-import com.ym.mec.biz.dal.entity.ManagerDownload;
-import com.ym.mec.biz.dal.entity.MusicEnlightenmentQuestionnaire;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.MusicGroupQuit;
-import com.ym.mec.biz.dal.entity.SellOrder;
-import com.ym.mec.biz.dal.entity.SporadicChargeInfo;
-import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.entity.StudentAttendance;
-import com.ym.mec.biz.dal.entity.SysMusicScore;
-import com.ym.mec.biz.dal.entity.SysUserCashAccountDetail;
-import com.ym.mec.biz.dal.entity.SysUserCoursesAccountDetail;
-import com.ym.mec.biz.dal.entity.Teacher;
-import com.ym.mec.biz.dal.entity.TeacherCourseReward;
-import com.ym.mec.biz.dal.entity.TeacherCourseStatistics;
-import com.ym.mec.biz.dal.entity.TeacherSalaryComplaints;
-import com.ym.mec.biz.dal.entity.TempBuyFreeLiveTheoryCourse;
-import com.ym.mec.biz.dal.entity.TenantPaymentOrder;
-import com.ym.mec.biz.dal.entity.VipGroup;
-import com.ym.mec.biz.dal.enums.AccountType;
-import com.ym.mec.biz.dal.enums.CourseStatusEnum;
-import com.ym.mec.biz.dal.enums.ExamSongTypeEnum;
-import com.ym.mec.biz.dal.enums.ExportEnum;
-import com.ym.mec.biz.dal.enums.ExportTypeEnum;
-import com.ym.mec.biz.dal.enums.GroupType;
-import com.ym.mec.biz.dal.enums.IndexErrorType;
-import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
-import com.ym.mec.biz.dal.enums.LevelEnum;
-import com.ym.mec.biz.dal.enums.OrderTypeEnum;
-import com.ym.mec.biz.dal.enums.PaymentChannelEnum;
-import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
-import com.ym.mec.biz.dal.enums.TeachTypeEnum;
-import com.ym.mec.biz.dal.enums.YesOrNoEnum;
-import com.ym.mec.biz.dal.page.ArrearageStudentsQueryInfo;
-import com.ym.mec.biz.dal.page.ChildrenReserveQueryInfo;
-import com.ym.mec.biz.dal.page.ClassGroupQueryInfo;
-import com.ym.mec.biz.dal.page.CloudTeacherActiveQueryInfo;
-import com.ym.mec.biz.dal.page.CooperationOrganQueryInfo;
-import com.ym.mec.biz.dal.page.CourseReviewQueryInfo;
-import com.ym.mec.biz.dal.page.CourseSalaryQueryInfo4Web;
-import com.ym.mec.biz.dal.page.CourseScheduleTeacherSalaryQueryInfo;
-import com.ym.mec.biz.dal.page.DegreeQueryInfo;
-import com.ym.mec.biz.dal.page.DoubleEleven2021QueryInfo;
-import com.ym.mec.biz.dal.page.EmployeeInfoQueryInfo;
-import com.ym.mec.biz.dal.page.EndCourseScheduleQueryInfo;
-import com.ym.mec.biz.dal.page.ExportStudentAttendanceQueryInfo;
-import com.ym.mec.biz.dal.page.ExportTeacherSalaryQueryInfo;
-import com.ym.mec.biz.dal.page.ExportUserAccountQueryInfo;
-import com.ym.mec.biz.dal.page.ExtraExercilseReplyQueryInfo;
-import com.ym.mec.biz.dal.page.GoodsQueryInfo;
-import com.ym.mec.biz.dal.page.IndexErrRecordQueryInfo;
-import com.ym.mec.biz.dal.page.LiveBroadcastRoomMemberQueryInfo;
-import com.ym.mec.biz.dal.page.MusicCalenderDetailQueryInfo;
-import com.ym.mec.biz.dal.page.MusicEnlightenmentQuestionnaireQueryInfo;
-import com.ym.mec.biz.dal.page.MusicGroupPaymentCalenderQueryInfo;
-import com.ym.mec.biz.dal.page.MusicGroupQueryInfo;
-import com.ym.mec.biz.dal.page.MusicGroupQuitQueryInfo;
-import com.ym.mec.biz.dal.page.MusicGroupStudentQueryInfo;
-import com.ym.mec.biz.dal.page.NoClassMusicStudentQueryInfo;
-import com.ym.mec.biz.dal.page.OrganCloudStudyStudentDataQueryInfo;
-import com.ym.mec.biz.dal.page.PracticeGroupQueryInfo;
-import com.ym.mec.biz.dal.page.SellOrderQueryInfo;
-import com.ym.mec.biz.dal.page.SporadicChargeInfoQueryInfo;
-import com.ym.mec.biz.dal.page.StudentAttendanceQueryInfo;
-import com.ym.mec.biz.dal.page.StudentBuyPracticeQueryInfo;
-import com.ym.mec.biz.dal.page.StudentErrorLeaveQueryInfo;
-import com.ym.mec.biz.dal.page.StudentExercisesSituationQueryInfo;
-import com.ym.mec.biz.dal.page.StudentManageQueryInfo;
-import com.ym.mec.biz.dal.page.StudentOperatingQueryInfo;
-import com.ym.mec.biz.dal.page.StudentQueryInfo;
-import com.ym.mec.biz.dal.page.StudentRegistrationQueryInfo;
-import com.ym.mec.biz.dal.page.StudentVisitQueryInfo;
-import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherCourseRewardQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherCourseStatisticsQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherSalaryModifyQueryInfo;
-import com.ym.mec.biz.dal.page.TeacherServeQueryInfo;
-import com.ym.mec.biz.dal.page.TenantPaymentOrderQueryInfo;
-import com.ym.mec.biz.dal.page.VipGroupActivityQueryInfo;
-import com.ym.mec.biz.dal.page.VipGroupQueryInfo;
-import com.ym.mec.biz.dal.page.queryMusicGroupCourseScheduleQueryInfo;
+import com.ym.mec.biz.dal.dao.*;
+import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.*;
+import com.ym.mec.biz.dal.enums.*;
+import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.dal.vo.ImLiveBroadcastRoomMemberVo;
-import com.ym.mec.biz.service.ChildrenDayReserveService;
-import com.ym.mec.biz.service.ClassGroupService;
-import com.ym.mec.biz.service.CooperationOrganService;
-import com.ym.mec.biz.service.CourseReviewService;
-import com.ym.mec.biz.service.CourseScheduleService;
-import com.ym.mec.biz.service.CourseScheduleTeacherSalaryService;
-import com.ym.mec.biz.service.DegreeRegistrationService;
-import com.ym.mec.biz.service.EmployeeInfoService;
-import com.ym.mec.biz.service.ExportService;
-import com.ym.mec.biz.service.ExtracurricularExercisesReplyService;
-import com.ym.mec.biz.service.GoodsService;
-import com.ym.mec.biz.service.ImLiveBroadcastRoomMemberService;
-import com.ym.mec.biz.service.IndexBaseMonthDataService;
-import com.ym.mec.biz.service.IndexErrDataRecordService;
-import com.ym.mec.biz.service.MusicEnlightenmentQuestionnaireService;
-import com.ym.mec.biz.service.MusicGroupPaymentCalenderDetailService;
-import com.ym.mec.biz.service.MusicGroupPaymentCalenderService;
-import com.ym.mec.biz.service.MusicGroupQuitService;
-import com.ym.mec.biz.service.MusicGroupService;
-import com.ym.mec.biz.service.OrganizationService;
-import com.ym.mec.biz.service.PracticeGroupService;
-import com.ym.mec.biz.service.SellOrderService;
-import com.ym.mec.biz.service.SporadicChargeInfoService;
-import com.ym.mec.biz.service.StudentAttendanceService;
-import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
-import com.ym.mec.biz.service.StudentManageService;
-import com.ym.mec.biz.service.StudentPaymentOrderDetailService;
-import com.ym.mec.biz.service.StudentRegistrationService;
-import com.ym.mec.biz.service.StudentService;
-import com.ym.mec.biz.service.StudentVisitService;
-import com.ym.mec.biz.service.SysConfigService;
-import com.ym.mec.biz.service.SysMusicScoreService;
-import com.ym.mec.biz.service.SysTenantConfigService;
-import com.ym.mec.biz.service.TeacherAttendanceService;
-import com.ym.mec.biz.service.TeacherCourseRewardService;
-import com.ym.mec.biz.service.TeacherCourseStatisticsService;
-import com.ym.mec.biz.service.TeacherSalaryComplaintsService;
-import com.ym.mec.biz.service.TeacherService;
-import com.ym.mec.biz.service.TenantPaymentOrderService;
-import com.ym.mec.biz.service.VipGroupActivityService;
-import com.ym.mec.biz.service.VipGroupService;
+import com.ym.mec.biz.service.*;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
@@ -223,6 +18,24 @@ import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.excel.POIUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.math.BigDecimal;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @RequestMapping
 @Api(tags = "数据导出服务")
@@ -2188,92 +2001,6 @@ public class ExportController extends BaseController {
         }
     }
 
-    @ApiOperation(value = "回款统计")
-    @RequestMapping("export/studentOrder")
-    @PreAuthorize("@pcs.hasPermissions('export/studentOrder')")
-    public void studentOrder(String organIds, Date date, HttpServletResponse response) throws IOException {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        organIds = organizationService.getEmployeeOrgan(sysUser.getId(), organIds, sysUser.getIsSuperAdmin());
-        Date startTime = DateUtil.getFirstDayOfMonth(date);
-        Date EndTime = DateUtil.getLastSecondWithDay(DateUtil.getLastDayOfMonth(date));
-
-        List<OrderTypeEnum> orderTypeList = new ArrayList<>();
-        orderTypeList.add(OrderTypeEnum.SPORADIC);
-        orderTypeList.add(OrderTypeEnum.PRACTICE_GROUP_BUY);
-        orderTypeList.add(OrderTypeEnum.PRACTICE_GROUP_RENEW);
-        orderTypeList.add(OrderTypeEnum.SMALL_CLASS_TO_BUY);
-        List<OrderByTypeExportDto> orders = studentPaymentOrderDao.getOrderByMonthAndType(organIds, orderTypeList, startTime, EndTime);
-
-        if (orders.size() <= 0) {
-            throw new BizException("没有可导出的记录");
-        }
-        List<Long> vipGroupIds = orders.stream().filter(e -> e.getGroupType().equals(GroupType.VIP)).map(OrderByTypeExportDto::getMusicGroupId).collect(Collectors.toList());
-        List<Long> practiceGroupIds = orders.stream().filter(e -> e.getGroupType().equals(GroupType.PRACTICE)).map(OrderByTypeExportDto::getMusicGroupId).collect(Collectors.toList());
-        List<Integer> studentIds = orders.stream().filter(e -> e.getGroupType().equals(GroupType.SPORADIC)).map(OrderByTypeExportDto::getStudentId).collect(Collectors.toList());
-
-        List<VipBuyResultDto> vipGroupTeachers = new ArrayList<>();
-        List<PracticeCourseDto> practiceGroupsTeacher = new ArrayList<>();
-        List<Student> studentTeachers = new ArrayList<>();
-        if (vipGroupIds.size() > 0) {
-            vipGroupTeachers = vipGroupDao.getGroupTeachers(vipGroupIds, TenantContextHolder.getTenantId());
-        }
-
-        if (practiceGroupIds.size() > 0) {
-            practiceGroupsTeacher = practiceGroupDao.getPracticeGroupByIds(practiceGroupIds);
-        }
-        if (studentIds.size() > 0) {
-            studentTeachers = studentDao.getStudentTeacher(studentIds);
-        }
-
-        for (OrderByTypeExportDto order : orders) {
-            for (VipBuyResultDto vipGroupTeacher : vipGroupTeachers) {
-                if (order.getGroupType().equals(GroupType.VIP) && order.getMusicGroupId().equals(vipGroupTeacher.getVipGroupId().longValue())) {
-                    order.setTeacherName(vipGroupTeacher.getTeacherName());
-                    order.setEduTeacherName(vipGroupTeacher.getEduTeacherName());
-                    break;
-                }
-            }
-            for (PracticeCourseDto practiceCourseDto : practiceGroupsTeacher) {
-                if (order.getGroupType().equals(GroupType.PRACTICE) && order.getMusicGroupId().equals(practiceCourseDto.getId())) {
-                    order.setTeacherName(practiceCourseDto.getTeacherName());
-                    order.setEduTeacherName(practiceCourseDto.getEduTeacherName());
-                    break;
-                }
-            }
-            for (Student studentTeacher : studentTeachers) {
-                if (order.getGroupType().equals(GroupType.SPORADIC) && studentTeacher.getUserId().equals(order.getStudentId())) {
-                    order.setTeacherName(studentTeacher.getTeacherName());
-                    break;
-                }
-            }
-
-        }
-
-        OutputStream outputStream = response.getOutputStream();
-        try {
-            String[] header = {"学员编号", "学员姓名", "指导老师", "教务老师", "订单日期", "交易类型", "实际金额"};
-            String[] body = {"studentId", "studentName", "teacherName", "eduTeacherName", "createTime", "orderType.msg", "actualAmount"};
-
-            HSSFWorkbook workbook = POIUtil.exportExcel(header, body, orders);
-            response.setContentType("application/octet-stream");
-            response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
-
-            outputStream = response.getOutputStream();
-            workbook.write(outputStream);
-            outputStream.flush();
-        } catch (Exception e) {
-            e.printStackTrace();
-        } finally {
-            if (outputStream != null) {
-                try {
-                    outputStream.close();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                }
-            }
-        }
-    }
-
     @ApiOperation(value = "销售列表导出")
     @RequestMapping("export/exportSellOrders")
     @PreAuthorize("@pcs.hasPermissions('export/exportSellOrders')")
@@ -2684,40 +2411,6 @@ public class ExportController extends BaseController {
         }
     }
 
-    @ApiOperation(value = "分部下教师关联的会员数据导出")
-    @RequestMapping("export/organTeacherMemberStudentData")
-    @PreAuthorize("@pcs.hasPermissions('export/organTeacherMemberStudentData')")
-    public void exportEmployeeInfo(TeacherServeQueryInfo queryInfo, HttpServletResponse response) throws IOException {
-        queryInfo.setPage(1);
-        queryInfo.setRows(49999);
-        List<TeacherStudentDataDto> rows = teacherService.queryMemberStudentData(queryInfo).getRows();
-        if (CollectionUtils.isEmpty(rows)) {
-            throw new BizException("没有可导出的记录");
-        }
-        OutputStream outputStream = response.getOutputStream();
-        try {
-            String[] header = {"老师编号", "老师姓名", "学员总数", "使用人数", "使用人数比", "付费学员数量", "会员占比"};
-            String[] body = {"teacherId", "teacherName", "totalStudentNum", "cloudStudyUseStudentNum", "cloudStudyUseStudentDuty+\"%\"",
-                    "vipStudentNum", "vipStudentDuty+\"%\""};
-            HSSFWorkbook workbook = POIUtil.exportExcel(header, body, rows);
-            response.setContentType("application/octet-stream");
-            response.setHeader("Content-Disposition", "attachment;filename=employeeInfo-" + DateUtil.getDate(new Date()) + ".xls");
-
-            outputStream = response.getOutputStream();
-            workbook.write(outputStream);
-            outputStream.flush();
-        } catch (Exception e) {
-            e.printStackTrace();
-        } finally {
-            if (outputStream != null) {
-                try {
-                    outputStream.close();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                }
-            }
-        }
-    }
 
     @ApiOperation(value = "分部云教练学员数据预览导出")
     @RequestMapping("export/organStudentOverView")
@@ -2815,55 +2508,6 @@ public class ExportController extends BaseController {
         }
     }
 
-    @ApiOperation(value = "分部云教练学员训练数据导出")
-    @RequestMapping("export/cloudStudyStudentTrainData")
-    @PreAuthorize("@pcs.hasPermissions('export/cloudStudyStudentTrainData')")
-    public void cloudStudyStudentTrainData(StudentQueryInfo queryInfo, HttpServletResponse response) throws IOException {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            throw new BizException("用户信息获取失败");
-        }
-        queryInfo.setPage(1);
-        queryInfo.setRows(49999);
-
-        List<EduOrganStudentListExportDto> rows = ((PageInfo<EduOrganStudentListExportDto>) studentService.exportOrganStudentData(queryInfo).getDetail()).getRows();
-        if (CollectionUtils.isEmpty(rows)) {
-            throw new BizException("没有可导出的记录");
-        }
-        for (EduOrganStudentListExportDto row : rows) {
-            row.setCloudStudyUseTime(Math.round(row.getCloudStudyUseTime()));
-            row.setCloudStudyUseAvgTime(Math.round(row.getCloudStudyUseAvgTime()));
-        }
-        OutputStream outputStream = response.getOutputStream();
-        try {
-            String[] header = {"学员编号", "学员", "年级", "班级", "手机号", "是否新用户", "是否激活", "训练总时长", "连续训练天数", "乐团", "乐团主管", "所属学校", "指导老师", "声部", "是否有小课",
-                    "训练次数", "训练天数", "训练平均时长", "会员有效期", "是否服务", "是否运营", "是否云教练活动目标学员", "活动消费金额", "关心包", "加油包", "未上课数", "vip课剩余课时", "网管课剩余课时"};
-            String[] body = {"studentId", "studentName", "currentGradeNum", "currentClass", "phone", "newUser?\"是\":\"否\"", "enable?\"是\":\"否\"",
-                    "cloudStudyUseTime+\"分钟\"", "cloudStudyRunningDays+\"天\"", "musicGroupNames", "educationName", "schoolNames",
-                    "teacherName", "subjectName", "hasVipGroup>0?\"是\":\"否\"", "cloudStudyUseNum+\"次\"", "cloudStudyUseDays+\"天\"",
-                    "cloudStudyUseAvgTime+\"分钟\"", "membershipEndTime", "serviceTag>0?\"是\":\"否\"", "operatingTag>0?\"是\":\"否\"", "countFlag == null?'否':countFlag == 1?'是':'否'", "activeAmount",
-                    "carePackage>0?carePackage>1?\"已使用\":\"可用\":\"不可用\"", "comeOnPackage>0?comeOnPackage>1?\"已使用\":\"可用\":\"不可用\"",
-                    "notStartCourseNum", "notStartVipCourseNum", "notStartPracticeCourseNum"};
-            HSSFWorkbook workbook = POIUtil.exportExcel(header, body, rows);
-            response.setContentType("application/octet-stream");
-            response.setHeader("Content-Disposition", "attachment;filename=employeeInfo-" + DateUtil.getDate(new Date()) + ".xls");
-
-            outputStream = response.getOutputStream();
-            workbook.write(outputStream);
-            outputStream.flush();
-        } catch (Exception e) {
-            e.printStackTrace();
-        } finally {
-            if (outputStream != null) {
-                try {
-                    outputStream.close();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                }
-            }
-        }
-    }
-
     @ApiOperation(value = "分部云教练活动统计数据导出")
     @RequestMapping("export/countCloudTeacherActive")
     @PreAuthorize("@pcs.hasPermissions('export/countCloudTeacherActive')")

+ 0 - 14
mec-web/src/main/java/com/ym/mec/web/controller/ExtracurricularExercisesReplyController.java

@@ -7,7 +7,6 @@ import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -29,17 +28,4 @@ public class ExtracurricularExercisesReplyController extends BaseController {
         queryInfo.setOrganIdList(organizationService.getEmployeeOrgan(queryInfo.getOrganIdList()));
         return succeed(extracurricularExercisesReplyService.findExtraExercises(queryInfo));
     }
-
-    @GetMapping("/exercisesSituationStatistics")
-    public HttpResponseResult exercisesSituationStatistics(String monday){
-        if(StringUtils.isNotBlank(monday)){
-            extracurricularExercisesReplyService.exercisesSituationStatistics2(monday);
-        }else{
-            String[] mondays=new String[]{"2020-05-13","2020-05-20","2020-05-27"};
-            for (String mondayStr : mondays) {
-                extracurricularExercisesReplyService.exercisesSituationStatistics2(mondayStr);
-            }
-        }
-        return succeed();
-    }
 }

+ 0 - 30
mec-web/src/main/java/com/ym/mec/web/controller/StudentExtracurricularExercisesSituationController.java

@@ -2,27 +2,17 @@ package com.ym.mec.web.controller;
 
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.dto.TeacherServeDto;
-import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.page.*;
 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.tenant.TenantContextHolder;
-import com.ym.mec.util.date.DateUtil;
-
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
-import java.time.DayOfWeek;
-import java.time.LocalDate;
-import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -85,26 +75,6 @@ public class StudentExtracurricularExercisesSituationController extends BaseCont
         }
     }
 
-    @GetMapping("/exercisesSituationStatistics")
-    public HttpResponseResult exercisesSituationStatistics(String startDay, String monday){
-    	Integer tenantId = TenantContextHolder.getTenantId();
-        if(StringUtils.isNotBlank(monday)){
-            studentServeService.exercisesSituationStatistics(monday, tenantId);
-        }
-        if(StringUtils.isNotBlank(startDay)){
-            LocalDate date=LocalDate.now();
-            if(StringUtils.isNotBlank(startDay)){
-                date= LocalDate.parse(startDay, DateUtil.dateFormatter);
-            }
-            while (date.isBefore(LocalDate.now())){
-                date = date.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-                studentServeService.exercisesSituationStatistics(date.format(DateUtil.dateFormatter), tenantId);
-                date = date.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.SUNDAY.getValue()).plusDays(1);
-            }
-        }
-        return succeed();
-    }
-
     @ApiOperation(value = "教师作业布置提醒")
     @PostMapping("/teacherServeRemindPush")
     @PreAuthorize("@pcs.hasPermissions('exercisesSituation/teacherServeRemindPush')")

+ 0 - 7
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -469,13 +469,6 @@ public class StudentManageController extends BaseController {
         return succeed(studentService.queryOrganStudentOverView(ids, queryInfo));
     }
 
-    @ApiOperation(value = "云教练学员数据")
-    @GetMapping("/organStudentData")
-    @PreAuthorize("@pcs.hasPermissions('studentManage/organStudentData')")
-    public HttpResponseResult<StatDto> organStudentData(StudentQueryInfo queryInfo){
-        return succeed(studentService.organStudentData(queryInfo));
-    }
-
     @ApiOperation(value = "云教练活动统计")
     @GetMapping("/countCloudTeacherActive")
     @PreAuthorize("@pcs.hasPermissions('studentManage/countCloudTeacherActive')")

+ 0 - 7
mec-web/src/main/java/com/ym/mec/web/controller/TeacherController.java

@@ -181,11 +181,4 @@ public class TeacherController extends BaseController {
     public Object queryStudent(QueryInfo queryInfo){
         return succeed(teacherService.queryStudent(queryInfo));
     }
-
-    @ApiOperation(value = "查询分部下教师关联的会员数据")
-    @GetMapping("/queryMemberStudentData")
-    @PreAuthorize("@pcs.hasPermissions('teacher/queryMemberStudentData')")
-    public HttpResponseResult<PageInfo<TeacherStudentDataDto>> queryMemberStudentData(TeacherServeQueryInfo queryInfo){
-        return succeed(teacherService.queryMemberStudentData(queryInfo));
-    }
 }

+ 2 - 43
mec-web/src/main/java/com/ym/mec/web/controller/education/EduStudentExtracurricularExercisesSituationController.java

@@ -1,22 +1,16 @@
 package com.ym.mec.web.controller.education;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dto.TeacherServeDto;
 import com.ym.mec.biz.dal.page.*;
 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.tenant.TenantContextHolder;
-import com.ym.mec.util.date.DateUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.time.DayOfWeek;
-import java.time.LocalDate;
 import java.util.List;
 
 /**
@@ -31,7 +25,7 @@ public class EduStudentExtracurricularExercisesSituationController extends BaseC
     @Autowired
     private StudentExtracurricularExercisesSituationService studentExtracurricularExercisesSituationService;
     @Autowired
-    private SysUserFeignService sysUserFeignService;
+    private SysUserService sysUserService;
     @Autowired
     private ExtracurricularExercisesMessageService extracurricularExercisesMessageService;
     @Autowired
@@ -71,33 +65,10 @@ public class EduStudentExtracurricularExercisesSituationController extends BaseC
         }
     }
 
-    @GetMapping("/exercisesSituationStatistics")
-    public HttpResponseResult exercisesSituationStatistics(String startDay, String monday){
-    	Integer tenantId = TenantContextHolder.getTenantId();
-        if(StringUtils.isNotBlank(monday)){
-            studentServeService.exercisesSituationStatistics(monday, tenantId);
-        }
-        if(StringUtils.isNotBlank(startDay)){
-            LocalDate date=LocalDate.now();
-            if(StringUtils.isNotBlank(startDay)){
-                date= LocalDate.parse(startDay, DateUtil.dateFormatter);
-            }
-            while (date.isBefore(LocalDate.now())){
-                date = date.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-                studentServeService.exercisesSituationStatistics(date.format(DateUtil.dateFormatter), tenantId);
-                date = date.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.SUNDAY.getValue()).plusDays(1);
-            }
-        }
-        return succeed();
-    }
-
     @ApiOperation(value = "教师作业布置提醒")
     @PostMapping("/teacherServeRemindPush")
     public HttpResponseResult teacherServeRemindPush(@RequestBody List<TeacherServeDto> teacherServes) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            return failed("用户信息获取失败");
-        }
+        SysUser sysUser = sysUserService.getUser();
         studentExtracurricularExercisesSituationService.teacherServeRemindPush(teacherServes, sysUser.getId(), sysUser.getRealName());
         return succeed();
     }
@@ -105,30 +76,18 @@ public class EduStudentExtracurricularExercisesSituationController extends BaseC
     @ApiOperation(value = "教师服务课后作业")
     @GetMapping("/queryTeacherServeHomeworkDetail")
     public HttpResponseResult queryTeacherServeHomeworkDetail(TeacherServeHomeworkQueryInfo queryInfo) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            return failed("用户信息获取失败");
-        }
         return succeed(studentExtracurricularExercisesSituationService.queryTeacherServeHomeworkDetail(queryInfo));
     }
 
     @ApiOperation(value = "教师服务课外作业")
     @GetMapping("/queryTeacherServeExtraDetail")
     public HttpResponseResult queryTeacherServeExtraDetail(TeacherServeHomeworkQueryInfo queryInfo) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            return failed("用户信息获取失败");
-        }
         return succeed(studentExtracurricularExercisesSituationService.queryTeacherServeExtraDetail(queryInfo));
     }
 
     @ApiOperation(value = "乐团作业情况")
     @GetMapping("/musicGroupHomeworkStat")
     public HttpResponseResult musicGroupHomeworkStat(String musicGroupId, String startDay, String endDay) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            return failed("用户信息获取失败");
-        }
         return succeed(studentServeService.musicGroupHomeworkStat(musicGroupId, null, startDay, endDay));
     }
 

+ 2 - 6
mec-web/src/main/resources/exportColumnMapper.ini

@@ -238,10 +238,6 @@ fieldColumns = ["id", "realName", "organName", "lockFlag == 0?'正常':lockFlag
 headColumns = ["编号", "姓名", "手机号", "微信","声部", "所在城市", "工作意向", "信息来源","下次沟通时间","入职时间","职位", "分部", "人员状态", "证件号码","年龄","性别","银行卡", "开户行", "紧急联系人", "紧急联系人关系","紧急联系人电话","最后一次操作时间","HRBP", "离职时间"]
 fieldColumns = ["id", "realName", "mobileNo", "wechatNo", "subjectName", "liveCity", "intentionCity", "sourceFrom", "nextVisitDateStr", "entryDateStr", "position.msg","organName","status.desc", "idCard", "age", "gender?'男':'女'", "bankCardNo","bankAddress","emergencyContactName", "emergencyContactRelation", "emergencyContactPhone", "updateTime", "hrbpName","resignationDateStr"]
 
-[分部下教师关联的会员数据导出]
-headColumns = ["老师编号", "老师姓名", "学员总数", "使用人数", "使用人数比", "付费学员数量", "会员占比"]
-fieldColumns = ["teacherId", "teacherName", "totalStudentNum", "cloudStudyUseStudentNum", "cloudStudyUseStudentDuty+'%'", "vipStudentNum", "vipStudentDuty+'%'"]
-
 [分部云教练学员数据预览导出]
 headColumns = ["排名", "分部", "学员总数", "目标人数", "活跃人数", "使用人数", "新增使用人数", "使用比例", "付费会员数", "付费会员占比"]
 fieldColumns = ["index","organName", "totalStudentNum", "targetNum", "cloudStudyLivelyStudentNum", "cloudStudyUseStudentNum", "newCloudStudyStudentNum", "cloudStudyUseStudentDuty+'%'", "vipStudentNum", "vipStudentDuty+'%'"]
@@ -251,8 +247,8 @@ headColumns = ["排名", "分部", "学员总数", "活跃人数", "活跃人数
 fieldColumns = ["index", "organName", "totalStudentNum", "cloudStudyLivelyStudentNum", "cloudStudyLivelyStudentDuty+'%'", "cloudStudyUseStudentNum", "newCloudStudyStudentNum", "cloudStudyUseStudentDuty+'%'", "vipStudentNum", "vipStudentDuty+'%'", "newMemberStudentNum"]
 
 [分部云教练学员训练数据导出]
-headColumns = ["学员编号", "学员","年级","班级", "手机号", "是否新用户", "是否激活", "训练总时长", "连续训练天数", "乐团", "乐团主管", "所属学校", "指导老师", "声部", "是否有小课","训练次数", "训练天数", "训练平均时长", "会员有效期", "是否服务", "是否运营", "是否云教练活动目标学员", "活动消费金额", "关心包", "加油包", "未上课数", "vip课剩余课时", "网管课剩余课时"]
-fieldColumns = ["studentId", "studentName","currentGradeNum","currentClass", "phone", "newUser?'是':'否'", "enable?'是':'否'", "cloudStudyUseTime+'分钟'", "cloudStudyRunningDays+'天'", "musicGroupNames", "educationName", "schoolNames",         "teacherName", "subjectName", "hasVipGroup>0?'是':'否'", "cloudStudyUseNum+'次'", "cloudStudyUseDays+'天'",         "cloudStudyUseAvgTime+'分钟'", "membershipEndTime", "serviceTag>0?'是':'否'", "operatingTag>0?'是':'否'","countFlag == null?'否':countFlag == 1?'是':'否'","activeAmount",         "carePackage>0?carePackage>1?'已使用':'可用':'不可用'", "comeOnPackage>0?comeOnPackage>1?'已使用':'可用':'不可用'",         "notStartCourseNum", "notStartVipCourseNum", "notStartPracticeCourseNum"]
+headColumns = ["学员编号", "学员","年级","班级", "手机号", "是否新用户", "是否激活", "训练总时长", "连续训练天数", "乐团", "乐团主管", "所属学校", "声部", "是否有小课","训练次数", "训练天数", "训练平均时长", "会员有效期", "是否服务", "是否运营", "是否云教练活动目标学员", "活动消费金额", "关心包", "加油包", "未上课数", "vip课剩余课时", "网管课剩余课时"]
+fieldColumns = ["studentId", "studentName","currentGradeNum","currentClass", "phone", "newUser?'是':'否'", "enable?'是':'否'", "cloudStudyUseTime+'分钟'", "cloudStudyRunningDays+'天'", "musicGroupNames", "educationName", "schoolNames","subjectName", "hasVipGroup>0?'是':'否'", "cloudStudyUseNum+'次'", "cloudStudyUseDays+'天'",         "cloudStudyUseAvgTime+'分钟'", "membershipEndTime", "serviceTag>0?'是':'否'", "operatingTag>0?'是':'否'","countFlag == null?'否':countFlag == 1?'是':'否'","activeAmount",         "carePackage>0?carePackage>1?'已使用':'可用':'不可用'", "comeOnPackage>0?comeOnPackage>1?'已使用':'可用':'不可用'",         "notStartCourseNum", "notStartVipCourseNum", "notStartPracticeCourseNum"]
 
 [分部云教练活动统计数据导出]
 headColumns = ["分部", "购买人数", "购买金额", "目标金额", "人均购买金额", "目标人数", "目标达成率"]