فهرست منبع

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge 5 سال پیش
والد
کامیت
b8ac37536f
22فایلهای تغییر یافته به همراه199 افزوده شده و 91 حذف شده
  1. 7 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupDao.java
  2. 7 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/DemoGroupDao.java
  3. 1 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectDao.java
  4. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherSchoolDao.java
  5. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentManageCourseListDto.java
  6. 23 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherMusicClassInfoDto.java
  7. 33 4
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Teacher.java
  8. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentManageAttendanceQueryInfo.java
  9. 9 9
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/TeacherAttendanceQueryInfo.java
  10. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/TeacherSchoolService.java
  11. 13 15
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
  12. 4 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  13. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherSchoolServiceImpl.java
  14. 32 4
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  15. 15 10
      mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml
  16. 4 0
      mec-biz/src/main/resources/config/mybatis/DemoGroupMapper.xml
  17. 1 1
      mec-biz/src/main/resources/config/mybatis/OrganizationMapper.xml
  18. 6 4
      mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml
  19. 2 2
      mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml
  20. 23 32
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  21. 1 1
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherVipSchoolController.java
  22. 1 1
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherVipSchoolController.java

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupDao.java

@@ -244,4 +244,11 @@ public interface ClassGroupDao extends BaseDAO<Integer, ClassGroup> {
      */
      */
     List<TeacherClassGroupDto> findTeacherMusicClassGroup(@Param("teacherId") Long teacherId);
     List<TeacherClassGroupDto> findTeacherMusicClassGroup(@Param("teacherId") Long teacherId);
 
 
+    /**
+     * 根据老师编号列表获取小课数量
+     * @param teacherIds
+     * @return
+     */
+    List<Map<Integer, Long>> countTeacherVipNum(String teacherIds);
+
 }
 }

+ 7 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/DemoGroupDao.java

@@ -101,5 +101,11 @@ public interface DemoGroupDao extends BaseDAO<Long, DemoGroup> {
      * 根据老师获取本周内的试听课安排
      * 根据老师获取本周内的试听课安排
      */
      */
     List<EducationDemoGroupListDto> findDemoGroupStartClassTimesWithWeekByTeacherId(Long teacherId);
     List<EducationDemoGroupListDto> findDemoGroupStartClassTimesWithWeekByTeacherId(Long teacherId);
-	
+
+    /**
+     * 根据教师编号列表获取试听课数量map
+     * @param teacherIds
+     * @return
+     */
+    List<Map<Integer, Long>> countTeacherDemoGroupNum(String teacherIds);
 }
 }

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SubjectDao.java

@@ -3,6 +3,7 @@ package com.ym.mec.biz.dal.dao;
 import com.ym.mec.biz.dal.dto.ConditionDto;
 import com.ym.mec.biz.dal.dto.ConditionDto;
 import com.ym.mec.biz.dal.dto.QueryConditionDto;
 import com.ym.mec.biz.dal.dto.QueryConditionDto;
 import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
 import com.ym.mec.biz.dal.dto.SubjectApplyDetailDto;
+import com.ym.mec.biz.dal.dto.UserGoodsDto;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherSchoolDao.java

@@ -14,6 +14,6 @@ public interface TeacherSchoolDao extends BaseDAO<Long, TeacherSchool> {
      * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherSchool>
      * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherSchool>
      * @describe 根据教师编号获取教学点信息
      * @describe 根据教师编号获取教学点信息
      */
      */
-    List<TeacherSchool> findByTeacherId(Long teacherId);
+    List<TeacherSchool> findByTeacherId(Integer teacherId);
 
 
 }
 }

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

@@ -35,6 +35,17 @@ public class StudentManageCourseListDto {
     @ApiModelProperty(value = "状态(正常、旷课、请假、休学)",required = false)
     @ApiModelProperty(value = "状态(正常、旷课、请假、休学)",required = false)
     private StudentAttendanceStatusEnum attendanceStatus;
     private StudentAttendanceStatusEnum attendanceStatus;
 
 
+    @ApiModelProperty(value = "当前课时",required = false)
+    private Integer currentCLassTimes;
+
+    public Integer getCurrentCLassTimes() {
+        return currentCLassTimes;
+    }
+
+    public void setCurrentCLassTimes(Integer currentCLassTimes) {
+        this.currentCLassTimes = currentCLassTimes;
+    }
+
     public StudentAttendanceStatusEnum getAttendanceStatus() {
     public StudentAttendanceStatusEnum getAttendanceStatus() {
         return attendanceStatus;
         return attendanceStatus;
     }
     }

+ 23 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherMusicClassInfoDto.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.dto;
 package com.ym.mec.biz.dal.dto;
 
 
+import com.ym.mec.biz.dal.enums.JobTypeEnum;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 
 
 import java.util.List;
 import java.util.List;
@@ -29,9 +30,31 @@ public class TeacherMusicClassInfoDto {
     @ApiModelProperty(value = "执教班级名称", required = false)
     @ApiModelProperty(value = "执教班级名称", required = false)
     private List<String> classGroupNames;
     private List<String> classGroupNames;
 
 
+    @ApiModelProperty(value = "教师乐团职务类型", required = false)
+    private JobTypeEnum jobType;
+
     @ApiModelProperty(value = "乐团状态",required = false)
     @ApiModelProperty(value = "乐团状态",required = false)
     private MusicGroupStatusEnum status;
     private MusicGroupStatusEnum status;
 
 
+    @ApiModelProperty(value = "出勤次数",required = false)
+    private Integer attendanceNum;
+
+    public Integer getAttendanceNum() {
+        return attendanceNum;
+    }
+
+    public void setAttendanceNum(Integer attendanceNum) {
+        this.attendanceNum = attendanceNum;
+    }
+
+    public JobTypeEnum getJobType() {
+        return jobType;
+    }
+
+    public void setJobType(JobTypeEnum jobType) {
+        this.jobType = jobType;
+    }
+
     public String getMusicGroupId() {
     public String getMusicGroupId() {
         return musicGroupId;
         return musicGroupId;
     }
     }

+ 33 - 4
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Teacher.java

@@ -73,16 +73,45 @@ public class Teacher extends SysUser {
 	@ApiModelProperty(value = "流动范围(多个用逗号分开)", required = false)
 	@ApiModelProperty(value = "流动范围(多个用逗号分开)", required = false)
 	private String flowOrganRange;
 	private String flowOrganRange;
 
 
-	/** 流动范围(多个用|分开) */
-	@ApiModelProperty(value = "流动范围(多个用逗号分开)", required = false)
-	private List<String> flowOrganRangeName;
-
 	@ApiModelProperty(value = "老师介绍", required = false)
 	@ApiModelProperty(value = "老师介绍", required = false)
 	private String introduction;
 	private String introduction;
+
+	@ApiModelProperty(value = "VIP课数量", required = false)
+	private Integer vipNum;
+
+	@ApiModelProperty(value = "试听课数量", required = false)
+	private Integer demoNum;
 	
 	
 	@ApiModelProperty(value = "离职时间", required = false)
 	@ApiModelProperty(value = "离职时间", required = false)
 	private Date demissionDate;
 	private Date demissionDate;
 
 
+	@ApiModelProperty(value = "老师教学点列表", required = false)
+	private List<TeacherSchool> teacherSchools;
+
+	public List<TeacherSchool> getTeacherSchools() {
+		return teacherSchools;
+	}
+
+	public void setTeacherSchools(List<TeacherSchool> teacherSchools) {
+		this.teacherSchools = teacherSchools;
+	}
+
+	public Integer getDemoNum() {
+		return demoNum;
+	}
+
+	public void setDemoNum(Integer demoNum) {
+		this.demoNum = demoNum;
+	}
+
+	public Integer getVipNum() {
+		return vipNum;
+	}
+
+	public void setVipNum(Integer vipNum) {
+		this.vipNum = vipNum;
+	}
+
 	public List<String> getSubjectName() {
 	public List<String> getSubjectName() {
 		return subjectName;
 		return subjectName;
 	}
 	}

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentManageAttendanceQueryInfo.java

@@ -13,7 +13,7 @@ import com.ym.mec.common.page.QueryInfo;
 public class StudentManageAttendanceQueryInfo extends QueryInfo {
 public class StudentManageAttendanceQueryInfo extends QueryInfo {
 
 
     @ApiModelProperty(value = "学生ID",required = false)
     @ApiModelProperty(value = "学生ID",required = false)
-    private Long studentId;
+    private Integer studentId;
 
 
     @ApiModelProperty(value = "班级类型(普通班级、合奏班级、提高课班级、VIP班级)",required = true)
     @ApiModelProperty(value = "班级类型(普通班级、合奏班级、提高课班级、VIP班级)",required = true)
     private ClassGroupTypeEnum classGroupType;
     private ClassGroupTypeEnum classGroupType;
@@ -27,11 +27,11 @@ public class StudentManageAttendanceQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "状态(正常、旷课、请假、休学)",required = false)
     @ApiModelProperty(value = "状态(正常、旷课、请假、休学)",required = false)
     private StudentAttendanceStatusEnum attendanceStatus;
     private StudentAttendanceStatusEnum attendanceStatus;
 
 
-    public Long getStudentId() {
+    public Integer getStudentId() {
         return studentId;
         return studentId;
     }
     }
 
 
-    public void setStudentId(Long studentId) {
+    public void setStudentId(Integer studentId) {
         this.studentId = studentId;
         this.studentId = studentId;
     }
     }
 
 

+ 9 - 9
mec-biz/src/main/java/com/ym/mec/biz/dal/page/TeacherAttendanceQueryInfo.java

@@ -9,13 +9,13 @@ import com.ym.mec.common.page.QueryInfo;
 public class TeacherAttendanceQueryInfo extends QueryInfo {
 public class TeacherAttendanceQueryInfo extends QueryInfo {
 
 
     @ApiModelProperty(value = "教师ID")
     @ApiModelProperty(value = "教师ID")
-    private Long teacherId;
+    private Integer teacherId;
 
 
     @ApiModelProperty(value = "乐团ID")
     @ApiModelProperty(value = "乐团ID")
-    private Long musicGroupId;
+    private String musicGroupId;
 
 
     @ApiModelProperty(value = "班级ID")
     @ApiModelProperty(value = "班级ID")
-    private Long classGroupId;
+    private Integer classGroupId;
 
 
     @ApiModelProperty(value = "签到状态")
     @ApiModelProperty(value = "签到状态")
     private YesOrNoEnum attendanceStatus;
     private YesOrNoEnum attendanceStatus;
@@ -42,27 +42,27 @@ public class TeacherAttendanceQueryInfo extends QueryInfo {
         this.classGroupName = classGroupName;
         this.classGroupName = classGroupName;
     }
     }
 
 
-    public Long getTeacherId() {
+    public Integer getTeacherId() {
         return teacherId;
         return teacherId;
     }
     }
 
 
-    public void setTeacherId(Long teacherId) {
+    public void setTeacherId(Integer teacherId) {
         this.teacherId = teacherId;
         this.teacherId = teacherId;
     }
     }
 
 
-    public Long getMusicGroupId() {
+    public String getMusicGroupId() {
         return musicGroupId;
         return musicGroupId;
     }
     }
 
 
-    public void setMusicGroupId(Long musicGroupId) {
+    public void setMusicGroupId(String musicGroupId) {
         this.musicGroupId = musicGroupId;
         this.musicGroupId = musicGroupId;
     }
     }
 
 
-    public Long getClassGroupId() {
+    public Integer getClassGroupId() {
         return classGroupId;
         return classGroupId;
     }
     }
 
 
-    public void setClassGroupId(Long classGroupId) {
+    public void setClassGroupId(Integer classGroupId) {
         this.classGroupId = classGroupId;
         this.classGroupId = classGroupId;
     }
     }
 
 

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

@@ -14,7 +14,7 @@ public interface TeacherSchoolService extends BaseService<Long, TeacherSchool> {
      * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherSchool>
      * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherSchool>
      * @describe 根据教师编号获取教学点
      * @describe 根据教师编号获取教学点
      */
      */
-    List<TeacherSchool> findByTeacherId(Long teacherId);
+    List<TeacherSchool> findByTeacherId(Integer teacherId);
 
 
 
 
 
 

+ 13 - 15
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -36,17 +36,16 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     @Autowired
     @Autowired
     private ClassGroupDao classGroupDao;
     private ClassGroupDao classGroupDao;
     @Autowired
     @Autowired
-    private TeacherDao teacherDao;
+    private TeacherAttendanceDao teacherAttendanceDao;
     @Autowired
     @Autowired
     private MusicGroupDao musicGroupDao;
     private MusicGroupDao musicGroupDao;
     @Autowired
     @Autowired
     private ClassGroupRelationService classGroupRelationService;
     private ClassGroupRelationService classGroupRelationService;
+    @Autowired
     private ClassGroupStudentMapperDao classGroupStudentMapperDao;
     private ClassGroupStudentMapperDao classGroupStudentMapperDao;
     @Autowired
     @Autowired
     private ClassGroupRelationDao classGroupRelationDao;
     private ClassGroupRelationDao classGroupRelationDao;
     @Autowired
     @Autowired
-    private ClassGroupStudentMapperService classGroupStudentMapperService;
-    @Autowired
     private ClassGroupTeacherMapperService classGroupTeacherMapperService;
     private ClassGroupTeacherMapperService classGroupTeacherMapperService;
     @Autowired
     @Autowired
     private TeacherDefaultMusicGroupSalaryService teacherDefaultMusicGroupSalaryService;
     private TeacherDefaultMusicGroupSalaryService teacherDefaultMusicGroupSalaryService;
@@ -55,10 +54,6 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     @Autowired
     @Autowired
     private StudentRegistrationDao studentRegistrationDao;
     private StudentRegistrationDao studentRegistrationDao;
     @Autowired
     @Autowired
-    private StudentRegistrationService studentRegistrationService;
-    @Autowired
-    private ClassGroupTeacherSalaryService classGroupTeacherSalaryService;
-    @Autowired
     private MusicGroupStudentFeeDao musicGroupStudentFeeDao;
     private MusicGroupStudentFeeDao musicGroupStudentFeeDao;
     @Autowired
     @Autowired
     private SysUserFeignService sysUserFeignService;
     private SysUserFeignService sysUserFeignService;
@@ -237,15 +232,18 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
 
 
     @Override
     @Override
     public List<TeacherMusicClassInfoDto> getTeacherMusicClass(Integer teacherId) {
     public List<TeacherMusicClassInfoDto> getTeacherMusicClass(Integer teacherId) {
-        List<TeacherMusicClassInfoDto> teacherMusicClassInfoDtos = classGroupDao.queryGroupCourses(teacherId);
-        Teacher teacher = teacherDao.get(teacherId);
-        if (teacher == null) {
-            return null;
+        List<TeacherMusicClassInfoDto> teacherMusics = classGroupDao.queryGroupCourses(teacherId);
+        //获取老师在当前乐团出勤次数
+        if(teacherMusics != null && teacherMusics.size() > 0){
+            HashMap<String,Object> param = new HashMap<>();
+            param.put("teacherId",teacherId);
+            param.put("attendanceStatus",YesOrNoEnum.YES);
+            teacherMusics.forEach(e->{
+                param.put("musicGroupId",e.getMusicGroupId());
+                e.setAttendanceNum(teacherAttendanceDao.getTeacherPersonalAttendancesCount(param));
+            });
         }
         }
-        teacherMusicClassInfoDtos.forEach(e -> {
-            e.setJobNature(teacher.getJobNature());
-        });
-        return teacherMusicClassInfoDtos;
+        return teacherMusics;
     }
     }
 
 
     @Override
     @Override

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

@@ -181,7 +181,10 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 		List<MusicCardDto> musicCardDtos = musicGroupDao.queryUserMusicGroups(userId);
 		List<MusicCardDto> musicCardDtos = musicGroupDao.queryUserMusicGroups(userId);
 		// 获取学员在该乐团续费状态
 		// 获取学员在该乐团续费状态
 		musicCardDtos.forEach(e -> {
 		musicCardDtos.forEach(e -> {
-			e.setPaymentStatus(musicGroupStudentFeeDao.findByUser(userId, e.getMusicGroupId()).getPaymentStatus());
+			MusicGroupStudentFee groupStudentFee = musicGroupStudentFeeDao.findByUser(userId, e.getMusicGroupId());
+			if(groupStudentFee != null){
+				e.setPaymentStatus(musicGroupStudentFeeDao.findByUser(userId, e.getMusicGroupId()).getPaymentStatus());
+			}
 		});
 		});
 		return musicCardDtos;
 		return musicCardDtos;
 	}
 	}

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

@@ -25,7 +25,7 @@ public class TeacherSchoolServiceImpl extends BaseServiceImpl<Long, TeacherSchoo
 	}
 	}
 
 
 	@Override
 	@Override
-	public List<TeacherSchool> findByTeacherId(Long teacherId) {
+	public List<TeacherSchool> findByTeacherId(Integer teacherId) {
 		if(Objects.isNull(teacherId)){
 		if(Objects.isNull(teacherId)){
 			throw new BizException("请指定教师");
 			throw new BizException("请指定教师");
 		}
 		}

+ 32 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -8,8 +8,10 @@ import com.ym.mec.auth.api.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.BasicUserDto;
 import com.ym.mec.biz.dal.dto.BasicUserDto;
 import com.ym.mec.biz.dal.dto.NamesDto;
 import com.ym.mec.biz.dal.dto.NamesDto;
+import com.ym.mec.biz.dal.dto.UserGoodsDto;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.dal.entity.TeacherSchool;
 import com.ym.mec.biz.dal.page.TeacherQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherQueryInfo;
 import com.ym.mec.biz.service.TeacherService;
 import com.ym.mec.biz.service.TeacherService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
@@ -43,8 +45,12 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	@Autowired
 	@Autowired
 	private ClassGroupDao classGroupDao;
 	private ClassGroupDao classGroupDao;
 	@Autowired
 	@Autowired
+	private DemoGroupDao demoGroupDao;
+	@Autowired
 	private OrganizationDao organizationDao;
 	private OrganizationDao organizationDao;
 	@Autowired
 	@Autowired
+	private TeacherSchoolDao teacherSchoolDao;
+	@Autowired
 	private SysUserFeignService sysUserFeignService;
 	private SysUserFeignService sysUserFeignService;
 	@Autowired
 	@Autowired
 	private ImFeignService imFeignService;
 	private ImFeignService imFeignService;
@@ -136,8 +142,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 			Map<Integer, Integer> numsMap = MapUtil.convertMybatisMap(nums);
 			Map<Integer, Integer> numsMap = MapUtil.convertMybatisMap(nums);
 			imGroupModels1.forEach(e -> {
 			imGroupModels1.forEach(e -> {
 				//获取当前班级老师总数
 				//获取当前班级老师总数
-//				Set<Integer> teachers = classGroupDao.queryTeacherIds(e.getId());
-//				teachers.removeAll(Collections.singleton(null));
 				Integer num = numsMap.get(e.getId());
 				Integer num = numsMap.get(e.getId());
 				e.setCount(num == null?0:num + e.getCount());
 				e.setCount(num == null?0:num + e.getCount());
 				e.setId("cg" + e.getId());
 				e.setId("cg" + e.getId());
@@ -160,19 +164,43 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 
 
     @Override
     @Override
 	public PageInfo<Teacher> queryPageDetail(TeacherQueryInfo queryInfo) {
 	public PageInfo<Teacher> queryPageDetail(TeacherQueryInfo queryInfo) {
-		return queryPage(queryInfo);
+		PageInfo<Teacher> pageInfo = queryPage(queryInfo);
+		List<Teacher> rows = pageInfo.getRows();
+		if(rows != null && rows.size() > 0){
+			Set<Integer> teachers = rows.stream().map(e -> e.getId()).collect(Collectors.toSet());
+			String teacherIds = StringUtils.join(teachers, ",");
+			//获取小课数量
+			List<Map<Integer,Long>> numList =  classGroupDao.countTeacherVipNum(teacherIds);
+			Map<Integer,Long> vipNumMap = MapUtil.convertMybatisMap(numList);
+			//获取试听课数量
+			List<Map<Integer,Long>> demoNumList =  demoGroupDao.countTeacherDemoGroupNum(teacherIds);
+			Map<Integer,Long> demoNumMap = MapUtil.convertMybatisMap(demoNumList);
+			rows.forEach(e->{
+				e.setSubjectName(subjectDao.findBySubIds(e.getSubjectId()));
+				Long num = vipNumMap.get(e.getId());
+				e.setVipNum(num == null?0:num.intValue());
+				Long demoNum = demoNumMap.get(e.getId());
+				e.setDemoNum(demoNum == null?0:demoNum.intValue());
+			});
+		}
+		return pageInfo;
 	}
 	}
 
 
 	@Override
 	@Override
 	public Teacher getDetail(Integer id) {
 	public Teacher getDetail(Integer id) {
 		Teacher teacher = teacherDao.get(id);
 		Teacher teacher = teacherDao.get(id);
 		if(teacher != null){
 		if(teacher != null){
+			//获取老师教学点列表
+			List<TeacherSchool> teacherSchools = teacherSchoolDao.findByTeacherId(id);
+			teacher.setTeacherSchools(teacherSchools);
+			//获取流动范围
 			if(StringUtils.isNotEmpty(teacher.getFlowOrganRange())){
 			if(StringUtils.isNotEmpty(teacher.getFlowOrganRange())){
 				List<String> organNames = organizationDao.findByOrganIds(teacher.getFlowOrganRange());
 				List<String> organNames = organizationDao.findByOrganIds(teacher.getFlowOrganRange());
 				teacher.setFlowOrganRange(StringUtils.join(organNames,","));
 				teacher.setFlowOrganRange(StringUtils.join(organNames,","));
 			}
 			}
+			//专业技能
 			if(StringUtils.isNotEmpty(teacher.getSubjectId())){
 			if(StringUtils.isNotEmpty(teacher.getSubjectId())){
-				teacher.setSubjectId(StringUtils.join(subjectDao.findBySubIds(teacher.getSubjectId()),","));
+				teacher.setSubjectName(subjectDao.findBySubIds(teacher.getSubjectId()));
 			}
 			}
 		}
 		}
 		return teacher;
 		return teacher;

+ 15 - 10
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -153,12 +153,9 @@
         WHERE cg.type_="MIX" AND cg.music_group_id_=#{musicGroupId} AND del_flag_='0'
         WHERE cg.type_="MIX" AND cg.music_group_id_=#{musicGroupId} AND del_flag_='0'
     </select>
     </select>
     <select id="findMixClassChildClassGroup" resultMap="ClassGroup">
     <select id="findMixClassChildClassGroup" resultMap="ClassGroup">
-        SELECT
-        cg.*
-        FROM
-        class_group_relation cgr
-        LEFT JOIN class_group cg ON cgr.class_group_id_=cg.id_
-        WHERE cgr.sub_class_group_id_=#{mixClassGroupId} AND del_flag_='0'
+        SELECT * FROM class_group WHERE id_ IN
+        (SELECT sub_class_group_id_ FROM class_group_relation
+        WHERE class_group_id_ = #{mixClassGroupId}) AND del_flag_ = 0
     </select>
     </select>
 
 
     <!-- 根据乐团id获取单技班信息 -->
     <!-- 根据乐团id获取单技班信息 -->
@@ -189,19 +186,23 @@
     <resultMap type="com.ym.mec.biz.dal.dto.TeacherMusicClassInfoDto" id="getTeaCourseInfosMap">
     <resultMap type="com.ym.mec.biz.dal.dto.TeacherMusicClassInfoDto" id="getTeaCourseInfosMap">
         <result column="music_group_id_" property="musicGroupId"/>
         <result column="music_group_id_" property="musicGroupId"/>
         <result column="music_group_name_" property="musicGroupName"/>
         <result column="music_group_name_" property="musicGroupName"/>
-        <!--<result column="job_nature_" property="jobNature" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>-->
         <result column="educational_teacher_id_" property="educationalTeacherId"/>
         <result column="educational_teacher_id_" property="educationalTeacherId"/>
         <result column="team_teacher_id_" property="teamTeacherId"/>
         <result column="team_teacher_id_" property="teamTeacherId"/>
         <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
-        <collection property="classGroupNames" javaType="java.lang.String" column="class_group_name_"/>
+        <result column="job_type_" property="jobType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="job_nature_" property="jobNature" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <collection property="classGroupNames" ofType="string">
+            <result column="class_group_name_"/>
+        </collection>
     </resultMap>
     </resultMap>
     <select id="queryGroupCourses" resultMap="getTeaCourseInfosMap">
     <select id="queryGroupCourses" resultMap="getTeaCourseInfosMap">
         SELECT mg.id_ music_group_id_,mg.name_ music_group_name_,
         SELECT mg.id_ music_group_id_,mg.name_ music_group_name_,
-        mg.team_teacher_id_,mg.educational_teacher_id_,cg.name_ class_group_name_,mg.status_
+        mg.team_teacher_id_,mg.educational_teacher_id_,cg.name_ class_group_name_,mg.status_,t.job_type_,t.job_nature_
         FROM class_group_teacher_mapper cgtm
         FROM class_group_teacher_mapper cgtm
         LEFT JOIN music_group mg ON cgtm.music_group_id_ = mg.id_
         LEFT JOIN music_group mg ON cgtm.music_group_id_ = mg.id_
         LEFT JOIN class_group cg ON cg.id_ = cgtm.class_group_id_
         LEFT JOIN class_group cg ON cg.id_ = cgtm.class_group_id_
-        WHERE cgtm.user_id_ = #{userId} AND cg.del_flag_ = 0
+		LEFT JOIN teacher t ON t.id_ = cgtm.user_id_
+        WHERE cgtm.user_id_ = #{userId} AND cg.del_flag_ = 0 AND (cg.type_ = 'NORMAL' OR cg.type_ = 'MIX')
     </select>
     </select>
 
 
 
 
@@ -448,6 +449,10 @@
             class_group cg
             class_group cg
             WHERE cg.id_=#{classGroupId} FOR UPDATE
             WHERE cg.id_=#{classGroupId} FOR UPDATE
     </select>
     </select>
+    <select id="countTeacherVipNum" resultType="java.util.Map">
+        SELECT vg.user_id_ `key`,COUNT(vg.id_) `value` FROM vip_group vg
+        WHERE FIND_IN_SET(vg.user_id_,#{teacherIds}) GROUP BY user_id_
+    </select>
 
 
     <resultMap id="TeacherClassGroupDto" type="com.ym.mec.biz.dal.dto.TeacherClassGroupDto">
     <resultMap id="TeacherClassGroupDto" type="com.ym.mec.biz.dal.dto.TeacherClassGroupDto">
         <result property="classGroupId" column="class_group_id_"/>
         <result property="classGroupId" column="class_group_id_"/>

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/DemoGroupMapper.xml

@@ -254,5 +254,9 @@ create_time_ = #{createTime},
 			YEARWEEK(class_date_) = YEARWEEK( now( ) )
 			YEARWEEK(class_date_) = YEARWEEK( now( ) )
 		GROUP BY class_date_
 		GROUP BY class_date_
 	</select>
 	</select>
+	<select id="countTeacherDemoGroupNum" resultType="java.util.Map">
+		SELECT dg.user_id_ `key`,COUNT(dg.id_) `value` FROM demo_group dg
+        WHERE FIND_IN_SET(dg.user_id_,#{teacherIds}) GROUP BY user_id_
+	</select>
 
 
 </mapper>
 </mapper>

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

@@ -102,6 +102,6 @@
     </select>
     </select>
 
 
     <select id="findByOrganIds" resultType="java.lang.String">
     <select id="findByOrganIds" resultType="java.lang.String">
-        SELECT name_ FROM organization WHERE del_flag_ = 0 AND id_ IN (#{organIds})
+        SELECT name_ FROM organization WHERE del_flag_ = 0 AND FIND_IN_SET(id_,#{organIds})
     </select>
     </select>
 </mapper>
 </mapper>

+ 6 - 4
mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml

@@ -21,6 +21,7 @@
         <result property="courseDate" column="course_date_" />
         <result property="courseDate" column="course_date_" />
         <result property="courseStatus" column="course_status_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result property="courseStatus" column="course_status_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result property="teacherName" column="teacher_name_" />
         <result property="teacherName" column="teacher_name_" />
+        <result property="currentCLassTimes" column="current_class_times_" />
         <result property="attendanceStatus" column="status_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result property="attendanceStatus" column="status_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
     </resultMap>
     </resultMap>
 
 
@@ -187,13 +188,13 @@
                 and cg.type_=#{classGroupType}
                 and cg.type_=#{classGroupType}
             </if>
             </if>
             <if test="attendanceStatus!=null">
             <if test="attendanceStatus!=null">
-                and cs.status_=#{attendanceStatus}
+                and sa.status_=#{attendanceStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
             </if>
             </if>
             <if test="classGroupName!=null">
             <if test="classGroupName!=null">
                 and cg.name_ like CONCAT("%",#{classGroupName},"%")
                 and cg.name_ like CONCAT("%",#{classGroupName},"%")
             </if>
             </if>
             <if test="teacherName!=null">
             <if test="teacherName!=null">
-                and sa.status_ like CONCAT("%",#{teacherName},"%")
+                and su.real_name_ like CONCAT("%",#{teacherName},"%")
             </if>
             </if>
         </where>
         </where>
     </sql>
     </sql>
@@ -204,8 +205,9 @@
             cg.name_ class_group_name_,
             cg.name_ class_group_name_,
             cg.type_ class_group_type_,
             cg.type_ class_group_type_,
             CONCAT(cs.class_date_," ",cs.start_class_time_) course_date_,
             CONCAT(cs.class_date_," ",cs.start_class_time_) course_date_,
-            su.username_ teacher_name_,
-            sa.status_
+            su.real_name_ teacher_name_,
+            sa.status_,
+            sa.current_class_times_
         FROM
         FROM
             student_attendance sa
             student_attendance sa
             LEFT JOIN class_group cg ON sa.class_group_id_=cg.id_
             LEFT JOIN class_group cg ON sa.class_group_id_=cg.id_

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

@@ -115,7 +115,7 @@
                 and ta.class_group_id_ = #{classGroupId}
                 and ta.class_group_id_ = #{classGroupId}
             </if>
             </if>
             <if test="attendanceStatus != null">
             <if test="attendanceStatus != null">
-                and ta.status_ = #{attendanceStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+                and ta.sign_in_status_ = #{attendanceStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
             </if>
             </if>
             <if test="classGroupType != null">
             <if test="classGroupType != null">
                 and cg.type_ = #{classGroupType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
                 and cg.type_ = #{classGroupType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
@@ -145,7 +145,7 @@
 
 
     <select id="getTeacherPersonalAttendancesCount" resultType="int">
     <select id="getTeacherPersonalAttendancesCount" resultType="int">
         SELECT
         SELECT
-            count(*)
+            count(ta.id_)
         FROM
         FROM
           teacher_attendance ta
           teacher_attendance ta
         LEFT JOIN course_schedule cs ON ta.course_schedule_id_=cs.id_
         LEFT JOIN course_schedule cs ON ta.course_schedule_id_=cs.id_

+ 23 - 32
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -51,11 +51,10 @@
     <select id="get" resultMap="Teacher">
     <select id="get" resultMap="Teacher">
         SELECT t.*,su.username_,su.password_,su.salt_,su.phone_,su.avatar_,
         SELECT t.*,su.username_,su.password_,su.salt_,su.phone_,su.avatar_,
         su.lock_flag_,su.del_flag_,su.wx_openid_,su.qq_openid_,su.user_type_,
         su.lock_flag_,su.del_flag_,su.wx_openid_,su.qq_openid_,su.user_type_,
-        su.gender_,su.nation_,su.birthdate_,su.email_,su.im_token_,t.subject_id_,t.organ_id_,o.name_ organ_name_
+        su.gender_,su.nation_,su.birthdate_,su.email_,su.im_token_
         FROM teacher t
         FROM teacher t
         LEFT JOIN sys_user su ON t.id_ = su.id_
         LEFT JOIN sys_user su ON t.id_ = su.id_
-        LEFT JOIN organization o ON t.organ_id_ = o.id_
-        WHERE t.id_ = #{userId} AND o.del_flag_ = 0
+        WHERE t.id_ = #{userId} AND su.del_flag_ = 0
     </select>
     </select>
 
 
     <!-- 全查询 -->
     <!-- 全查询 -->
@@ -199,44 +198,36 @@
 
 
     <!-- 分页查询 -->
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="Teacher" parameterType="map">
     <select id="queryPage" resultMap="Teacher" parameterType="map">
-        SELECT t.*,su.username_,su.password_,su.salt_,su.phone_,su.avatar_,
-        su.lock_flag_,su.del_flag_,su.wx_openid_,su.qq_openid_,su.user_type_,
-        su.gender_,su.nation_,su.birthdate_,su.email_,su.im_token_,t.subject_id_,t.organ_id_,o.name_ organ_name_,s.name_
-        subject_name_
-        FROM teacher t
-        LEFT JOIN sys_user su ON t.id_ = su.id_
-        LEFT JOIN organization o ON t.organ_id_ = o.id_
-        LEFT JOIN `subject` s ON FIND_IN_SET(s.id_,t.subject_id_)
+        SELECT t.id_,su.real_name_,su.lock_flag_,t.subject_id_,su.phone_,su.organ_id_,t.job_nature_,t.is_probation_period_
+        FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_
+        WHERE su.user_type_ LIKE '%TEACHER%' AND su.del_flag_ = 0
         <include refid="queryPageMap"/>
         <include refid="queryPageMap"/>
         <include refid="global.limit"/>
         <include refid="global.limit"/>
     </select>
     </select>
 
 
     <sql id="queryPageMap">
     <sql id="queryPageMap">
-        <where>
-            <if test="lockFlag != null">
-                AND su.lock_flag_ = #{lockFlag}
-            </if>
-            <if test="subjectId != null">
-                AND t.subject_id_ LIKE CONCAT('%',#{subjectId},'%')
-            </if>
-            <if test="organId != null">
-                AND o.organ_id_ = #{organId}
-            </if>
-            <if test="jobNature != null">
-                AND t.job_nature_ = #{jobNature}
-            </if>
-            <if test="isProbationPeriod != null">
-                AND t.is_probation_period_ = #{isProbationPeriod}
-            </if>
-        </where>
+        <if test="lockFlag != null">
+            AND su.lock_flag_ = #{lockFlag}
+        </if>
+        <if test="subjectId != null">
+            AND t.subject_id_ LIKE CONCAT('%',#{subjectId},'%')
+        </if>
+        <if test="organId != null">
+            AND su.organ_id_ = #{organId}
+        </if>
+        <if test="jobNature != null">
+            AND t.job_nature_ = #{jobNature}
+        </if>
+        <if test="isProbationPeriod != null">
+            AND t.is_probation_period_ = #{isProbationPeriod}
+        </if>
     </sql>
     </sql>
 
 
     <!-- 查询当前表的总记录数 -->
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
     <select id="queryCount" resultType="int">
-        SELECT COUNT(t.id_) FROM teacher t
-        LEFT JOIN sys_user su ON t.id_ = su.id_
-        LEFT JOIN `subject` s ON t.subject_id_ = s.id_
-        LEFT JOIN organization o ON t.organ_id_ = o.id_
+        SELECT COUNT(t.id_)
+        FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_
+        WHERE su.user_type_ LIKE '%TEACHER%' AND su.del_flag_ = 0
         <include refid="queryPageMap"/>
         <include refid="queryPageMap"/>
     </select>
     </select>
 
 

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

@@ -33,7 +33,7 @@ public class TeacherVipSchoolController extends BaseController {
 
 
     @ApiOperation("根据教师编号获取教学点")
     @ApiOperation("根据教师编号获取教学点")
     @GetMapping(value = "/queryAll")
     @GetMapping(value = "/queryAll")
-    public Object queryAll(Long teacherId) {
+    public Object queryAll(Integer teacherId) {
         return succeed(teacherSchoolService.findByTeacherId(teacherId));
         return succeed(teacherSchoolService.findByTeacherId(teacherId));
     }
     }
 
 

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/TeacherVipSchoolController.java

@@ -33,7 +33,7 @@ public class TeacherVipSchoolController extends BaseController {
 
 
     @ApiOperation("根据教师编号获取教学点")
     @ApiOperation("根据教师编号获取教学点")
     @GetMapping(value = "/queryAll")
     @GetMapping(value = "/queryAll")
-    public Object queryAll(Long teacherId) {
+    public Object queryAll(Integer teacherId) {
         return succeed(teacherSchoolService.findByTeacherId(teacherId));
         return succeed(teacherSchoolService.findByTeacherId(teacherId));
     }
     }