Procházet zdrojové kódy

Merge remote-tracking branch 'origin/master'

周箭河 před 5 roky
rodič
revize
8c4d92b13d
20 změnil soubory, kde provedl 385 přidání a 71 odebrání
  1. 11 0
      cms/src/main/java/com/ym/mec/cms/controller/queryinfo/NewsInformationQueryInfo.java
  2. 12 2
      cms/src/main/java/com/ym/mec/cms/dal/entity/SysNewsInformation.java
  3. 4 0
      cms/src/main/java/com/ym/mec/cms/service/impl/SysNewsInformationServiceImpl.java
  4. 15 2
      cms/src/main/resources/config/mybatis/SysNewsInformationMapper.xml
  5. 15 2
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentCourseHomeworkDao.java
  6. 50 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseHomeworkStudentDetailDto.java
  7. 80 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentHomeworkRecordDto.java
  8. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherHomeworkListDto.java
  9. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/CourseHomeworkQueryInfo.java
  10. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleService.java
  11. 12 1
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentCourseHomeworkService.java
  12. 16 17
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseHomeworkServiceImpl.java
  13. 6 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  14. 7 7
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CoursesGroupServiceImpl.java
  15. 17 20
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentCourseHomeworkReplyServiceImpl.java
  16. 53 13
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentCourseHomeworkServiceImpl.java
  17. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  18. 42 2
      mec-biz/src/main/resources/config/mybatis/StudentCourseHomeworkMapper.xml
  19. 12 0
      mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseHomeworkController.java
  20. 11 1
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherController.java

+ 11 - 0
cms/src/main/java/com/ym/mec/cms/controller/queryinfo/NewsInformationQueryInfo.java

@@ -21,6 +21,9 @@ public class NewsInformationQueryInfo extends QueryInfo {
 	@ApiModelProperty(value = "备注", required = false)
 	private String memo;
 	
+	@ApiModelProperty(value = "租客编号", required = false)
+	private Integer tenantId;
+	
 	private Date date;
 
 	public Integer getType() {
@@ -62,4 +65,12 @@ public class NewsInformationQueryInfo extends QueryInfo {
 	public void setMemo(String memo) {
 		this.memo = memo;
 	}
+
+	public Integer getTenantId() {
+		return tenantId;
+	}
+
+	public void setTenantId(Integer tenantId) {
+		this.tenantId = tenantId;
+	}
 }

+ 12 - 2
cms/src/main/java/com/ym/mec/cms/dal/entity/SysNewsInformation.java

@@ -7,7 +7,7 @@ import org.apache.commons.lang3.builder.ToStringBuilder;
  * 对应数据库表(sys_news_information):
  */
 public class SysNewsInformation {
-	
+
 	/**  */
 	private Long id;
 
@@ -48,9 +48,11 @@ public class SysNewsInformation {
 
 	@ApiModelProperty(value = "备注", required = false)
 	private String memo;
-	
+
 	private Boolean delFlag;
 
+	private Integer tenantId;
+
 	public String getLinkUrl() {
 		return linkUrl;
 	}
@@ -155,6 +157,14 @@ public class SysNewsInformation {
 		this.delFlag = delFlag;
 	}
 
+	public Integer getTenantId() {
+		return tenantId;
+	}
+
+	public void setTenantId(Integer tenantId) {
+		this.tenantId = tenantId;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 4 - 0
cms/src/main/java/com/ym/mec/cms/service/impl/SysNewsInformationServiceImpl.java

@@ -48,6 +48,10 @@ public class SysNewsInformationServiceImpl extends BaseServiceImpl<Long, SysNews
 		Map<String,PageInfo<SysNewsInformation>> homeList = new HashMap<>();
 		queryInfo.setStatus(NewsStatusEnum.SHOW);
 		
+		if(queryInfo.getTenantId() == null){
+			queryInfo.setTenantId(1);
+		}
+		
 		String memo = queryInfo.getMemo();
 		
 		Map<String, Object> params = new HashMap<String, Object>();

+ 15 - 2
cms/src/main/resources/config/mybatis/SysNewsInformationMapper.xml

@@ -20,6 +20,7 @@
 		<result column="href_target_" property="hrefTarget" />
 		<result column="order_" property="order" />
 		<result column="memo_" property="memo" />
+		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 	
 	<sql id="queryCondition">
@@ -28,6 +29,9 @@
 			<if test="type != null">
 				and type_ = #{type}
 			</if>
+			<if test="tenantId != null">
+				and tenant_id_ = #{tenantId}
+			</if>
 			<if test="status != null">
 				and status_ = #{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
 			</if>
@@ -52,8 +56,8 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.cms.dal.entity.SysNewsInformation" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO sys_news_information (id_,title_,content_,cover_image_,type_,status_,create_time_,update_time_,link_url_,href_target_,order_,del_flag_,memo_)
-		VALUES(#{id},#{title},#{content},#{coverImage},#{type},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now(),#{linkUrl},#{hrefTarget},#{order},0,#{memo})
+		INSERT INTO sys_news_information (id_,title_,content_,cover_image_,type_,status_,create_time_,update_time_,link_url_,href_target_,order_,del_flag_,memo_,tenant_id_)
+		VALUES(#{id},#{title},#{content},#{coverImage},#{type},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now(),#{linkUrl},#{hrefTarget},#{order},0,#{memo},#{tenantId})
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -66,6 +70,9 @@
 			<if test="title != null">
 				title_ = #{title},
 			</if>
+			<if test="tenantId != null">
+				tenant_id_ = #{tenantId},
+			</if>
 			<if test="updateTime != null">
 				update_time_ = NOW(),
 			</if>
@@ -147,6 +154,9 @@
 		<if test="search != null">
 			and title_ like '%' #{search} '%'
 		</if>
+		<if test="tenantId != null">
+			and tenant_id_ = #{tenantId}
+		</if>
 		<choose>
 			<when test="memo != null and memo != ''">
 				and memo_ = #{memo}
@@ -175,6 +185,9 @@
 		<if test="search != null">
 			and title_ like '%' #{search} '%'
 		</if>
+		<if test="tenantId != null">
+			and tenant_id_ = #{tenantId}
+		</if>
 		<choose>
 			<when test="memo != null and memo != ''">
 				and memo_ = #{memo}

+ 15 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentCourseHomeworkDao.java

@@ -1,9 +1,10 @@
 package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.biz.dal.dto.CourseHomeworkStudentDetailDto;
+import com.ym.mec.biz.dal.dto.StudentCourseHomeworkDto;
+import com.ym.mec.biz.dal.dto.StudentHomeworkRecordDto;
 import com.ym.mec.biz.dal.entity.StudentCourseHomework;
 import com.ym.mec.common.dal.BaseDAO;
-
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 
@@ -79,6 +80,15 @@ public interface StudentCourseHomeworkDao extends BaseDAO<Long, StudentCourseHom
     List<StudentCourseHomework> queryNotDoneHomeworkList();
 
     /**
+     * @describe 根据课程查询学生作业记录
+     * @author Joburgess
+     * @date 2020/3/20
+     * @param courseIds:
+     * @return java.util.List<com.ym.mec.biz.dal.entity.StudentCourseHomework>
+     */
+    List<StudentCourseHomework> findByCourses(@Param("courseIds") List<Long> courseIds);
+
+    /**
      * count课程学员作业列表
      * @param params
      * @return
@@ -90,9 +100,12 @@ public interface StudentCourseHomeworkDao extends BaseDAO<Long, StudentCourseHom
      * @param params
      * @return
      */
-    List<StudentCourseHomework> findStudentCourseHomeworks(Map<String, Object> params);
+    List<StudentCourseHomeworkDto> findStudentCourseHomeworks(Map<String, Object> params);
 
     int delByCourseScheduleId(Long courseScheduleId);
     
     int batchDelByCourseScheduleId(@Param("courseScheduleIdList") List<Long> courseScheduleIdList);
+
+    int countStudentHomeworkRecord(Map<String, Object> params);
+    List<StudentHomeworkRecordDto> findStudentHomeworkRecord(Map<String, Object> params);
 }

+ 50 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseHomeworkStudentDetailDto.java

@@ -20,6 +20,8 @@ public class CourseHomeworkStudentDetailDto {
     @ApiModelProperty(value = "作业ID",required = false)
     private Long courseHomeworkId;
 
+    private Long courseScheduleId;
+
     @ApiModelProperty(value = "学生作业编号",required = false)
     private Long studentCourseHomeworkId;
 
@@ -47,6 +49,54 @@ public class CourseHomeworkStudentDetailDto {
     @ApiModelProperty(value = "是否已经回复",required = false)
     private YesOrNoEnum isReplied;
 
+    private Integer studentId;
+
+    private String studentName;
+
+    private Integer teacherId;
+
+    private String teacherName;
+
+    public Long getCourseScheduleId() {
+        return courseScheduleId;
+    }
+
+    public void setCourseScheduleId(Long courseScheduleId) {
+        this.courseScheduleId = courseScheduleId;
+    }
+
+    public Integer getStudentId() {
+        return studentId;
+    }
+
+    public void setStudentId(Integer studentId) {
+        this.studentId = studentId;
+    }
+
+    public String getStudentName() {
+        return studentName;
+    }
+
+    public void setStudentName(String studentName) {
+        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 Long getStudentCourseHomeworkId() {
         return studentCourseHomeworkId;
     }

+ 80 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/StudentHomeworkRecordDto.java

@@ -0,0 +1,80 @@
+package com.ym.mec.biz.dal.dto;
+
+import java.util.Date;
+
+/**
+ * @Author Joburgess
+ * @Date 2020/3/20
+ */
+public class StudentHomeworkRecordDto {
+
+    private Integer studentCourseHomeworkId;
+
+    private Long courseScheduleId;
+
+    private String courseName;
+
+    private Date startClassTime;
+
+    private Integer teacherId;
+
+    private String teacherName;
+
+    private int status;
+
+    public Integer getStudentCourseHomeworkId() {
+        return studentCourseHomeworkId;
+    }
+
+    public void setStudentCourseHomeworkId(Integer studentCourseHomeworkId) {
+        this.studentCourseHomeworkId = studentCourseHomeworkId;
+    }
+
+    public Long getCourseScheduleId() {
+        return courseScheduleId;
+    }
+
+    public void setCourseScheduleId(Long courseScheduleId) {
+        this.courseScheduleId = courseScheduleId;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public Date getStartClassTime() {
+        return startClassTime;
+    }
+
+    public void setStartClassTime(Date startClassTime) {
+        this.startClassTime = startClassTime;
+    }
+
+    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 int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+}

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherHomeworkListDto.java

@@ -44,6 +44,16 @@ public class TeacherHomeworkListDto {
     @ApiModelProperty(value = "乐团名称")
     private String musicGroupName;
 
+    private int isReplied;
+
+    public int getIsReplied() {
+        return isReplied;
+    }
+
+    public void setIsReplied(int isReplied) {
+        this.isReplied = isReplied;
+    }
+
     public String getDay() {
         return day;
     }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/CourseHomeworkQueryInfo.java

@@ -27,6 +27,16 @@ public class CourseHomeworkQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "用户ID",required = false)
     private Long userId;
 
+    private Date classDate;
+
+    public Date getClassDate() {
+        return classDate;
+    }
+
+    public void setClassDate(Date classDate) {
+        this.classDate = classDate;
+    }
+
     public GroupType getGroupType() {
         return groupType;
     }

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

@@ -411,7 +411,7 @@ public interface CourseScheduleService extends BaseService<Long, CourseSchedule>
 	 * @param courseGenerateDto: 排课信息
 	 * @return java.util.List<com.ym.mec.biz.dal.entity.CourseSchedule>
 	 */
-	List<CourseSchedule> createCourses(CourseGenerateDto courseGenerateDto);
+	List<CourseSchedule> createCourses(CourseGenerateDto courseGenerateDto, boolean excludePastCourse);
 
 	/**
 	 * @describe 终极课表获取接口

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

@@ -1,7 +1,9 @@
 package com.ym.mec.biz.service;
 
 import com.ym.mec.biz.dal.dto.CourseHomeworkStudentDetailDto;
+import com.ym.mec.biz.dal.dto.StudentCourseHomeworkDto;
 import com.ym.mec.biz.dal.entity.StudentCourseHomework;
+import com.ym.mec.biz.dal.page.CourseHomeworkQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.BaseService;
@@ -58,5 +60,14 @@ public interface StudentCourseHomeworkService extends BaseService<Long, StudentC
      * @param queryInfo
      * @return
      */
-    PageInfo<StudentCourseHomework> findStudentCourseHomeworks(QueryInfo queryInfo);
+    PageInfo<StudentCourseHomeworkDto> findStudentCourseHomeworks(QueryInfo queryInfo);
+
+    /**
+     * @describe 获取学生的作业记录
+     * @author Joburgess
+     * @date 2020/3/20
+     * @param queryInfo:
+     * @return com.ym.mec.common.page.PageInfo
+     */
+    PageInfo findStudentHomeworkRecord(CourseHomeworkQueryInfo queryInfo);
 }

+ 16 - 17
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseHomeworkServiceImpl.java

@@ -5,7 +5,9 @@ import com.ym.mec.biz.dal.dao.StudentCourseHomeworkDao;
 import com.ym.mec.biz.dal.dto.Mapper;
 import com.ym.mec.biz.dal.dto.TeacherHomeworkListDto;
 import com.ym.mec.biz.dal.entity.CourseHomework;
+import com.ym.mec.biz.dal.entity.StudentCourseHomework;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
+import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.CourseHomeworkQueryInfo;
 import com.ym.mec.biz.service.CourseHomeworkService;
 import com.ym.mec.biz.service.SysMessageService;
@@ -13,11 +15,11 @@ import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.ym.mec.util.collection.MapUtil;
-
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -51,22 +53,19 @@ public class CourseHomeworkServiceImpl extends BaseServiceImpl<Long, CourseHomew
 		int count = courseHomeworkDao.countByClassGroupAndTeacher(params);
 		if (count > 0) {
 			dataList = courseHomeworkDao.findByClassGroupAndTeacher(params);
-			// List<Integer> courseScheduleIds=dataList.stream()
-			// .map(TeacherHomeworkListDto::getCourseScheduleId)
-			// .distinct()
-			// .collect(Collectors.toList());
-			// List<Map<Integer, Integer>> courseTimeByClassGroup = teacherAttendanceDao.findCourseTimeByCourseSchedules(courseScheduleIds);
-			// Map<Integer, Integer> map = MapUtil.convertIntegerMap(courseTimeByClassGroup);
-			// dataList.forEach(teacherHomeworkListDto -> {
-			// teacherHomeworkListDto.setCurrentClassTimes(map.get(teacherHomeworkListDto.getCourseScheduleId().longValue()));
-			// });
-			// List<Integer> courseScheduleIds = dataList.stream().map(TeacherHomeworkListDto::getCourseScheduleId).collect(Collectors.toList());
-			// if (!CollectionUtils.isEmpty(courseScheduleIds)) {
-			// Map<Integer, Integer> courseScheduleCurrentTimes = courseScheduleService.findCourseScheduleCurrentTimes(courseScheduleIds);
-			// dataList.forEach(teacherHomeworkListDto -> {
-			// teacherHomeworkListDto.setCurrentClassTimes(courseScheduleCurrentTimes.get(teacherHomeworkListDto.getCourseScheduleId()));
-			// });
-			// }
+			List<Long> courseIds = dataList.stream().mapToLong(TeacherHomeworkListDto::getCourseScheduleId).boxed().collect(Collectors.toList());
+			List<StudentCourseHomework> allStudentCourseHomeworks = studentCourseHomeworkDao.findByCourses(courseIds);
+			Map<Long, List<StudentCourseHomework>> homeworkStudentMap = allStudentCourseHomeworks.stream().collect(Collectors.groupingBy(StudentCourseHomework::getCourseScheduleId));
+			for (TeacherHomeworkListDto teacherHomeworkListDto : dataList) {
+				List<StudentCourseHomework> studentCourseHomeworks = homeworkStudentMap.get(teacherHomeworkListDto.getCourseScheduleId().longValue());
+				if(CollectionUtils.isEmpty(studentCourseHomeworks)){
+					continue;
+				}
+				Map<YesOrNoEnum, List<StudentCourseHomework>> replyStudentsMap = studentCourseHomeworks.stream().collect(Collectors.groupingBy(StudentCourseHomework::getIsReplied));
+				if(CollectionUtils.isEmpty(replyStudentsMap.get(YesOrNoEnum.NO))){
+					teacherHomeworkListDto.setIsReplied(YesOrNoEnum.YES.getCode());
+				}
+			}
 		}
 		if (count != 0) {
 			Map<String, List<TeacherHomeworkListDto>> collect = dataList.stream().collect(Collectors.groupingBy(TeacherHomeworkListDto::getDay));

+ 6 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -3124,7 +3124,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
         CourseScheduleDto courseSchedules = courseScheduleDao.getCourseSchedules(courseScheduleComplaints.getCourseScheduleId());
         Date now = new Date();
-        if (!courseSchedules.getStatus().equals(CourseStatusEnum.OVER)) {
+        if (courseSchedules.getEndClassTime().after(now)) {
             throw new BizException("该课程还未结束");
         }
         int i = DateUtil.daysBetween(courseSchedules.getEndClassTime(), now);
@@ -3495,7 +3495,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
     }
 
     @Override
-    public List<CourseSchedule> createCourses(CourseGenerateDto courseGenerateInfo) {
+    public List<CourseSchedule> createCourses(CourseGenerateDto courseGenerateInfo, boolean excludePastCourse) {
         Calendar calendar = Calendar.getInstance();
         calendar.setTime(courseGenerateInfo.getCourseCreateStartTime());
 
@@ -3513,6 +3513,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         }
 
         List<CourseSchedule> courseSchedules = new ArrayList<>();
+        Date now=new Date();
 
         while (true) {
             if (courseGenerateInfo.isSkipHoliday() && !holiday.containsKey(calendar.get(Calendar.YEAR))) {
@@ -3540,6 +3541,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                     String dateYmdStr = DateUtil.dateToString(calendar.getTime(), DateUtil.ISO_EXPANDED_DATE_FORMAT);
                     dateYmdStr = dateYmdStr + " " + courseTime.getStartClassTime();
                     Date courseStartTime = DateUtil.stringToDate(dateYmdStr, "yyyy-MM-dd HH:mm");
+                    if(excludePastCourse&&courseStartTime.before(now)){
+                    	continue;
+					}
                     Date courseEndTime = DateUtil.addMinutes(courseStartTime, courseGenerateInfo.getSingleClassMinutes());
                     CourseSchedule courseSchedule = new CourseSchedule();
                     courseSchedule.setClassDate(courseStartTime);

+ 7 - 7
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CoursesGroupServiceImpl.java

@@ -129,7 +129,7 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
         courseGroup.setSingleClassMinutes(courseCycleInfo.getSingleClassMinutes());
         courseGroup.setStatus(GroupStatusEnum.NORMAL);
         courseGroup.setOrganId(teacher.getOrganId());
-        List<CourseSchedule> newCourses = courseScheduleService.createCourses(courseGroupCreateInfo.getCourseCycleInfo());
+        List<CourseSchedule> newCourses = courseScheduleService.createCourses(courseGroupCreateInfo.getCourseCycleInfo(),true);
         for (CourseSchedule newCourse : newCourses) {
             newCourse.setTeachMode(TeachModeEnum.ONLINE);
             newCourse.setGroupType(GroupType.COMM);
@@ -356,18 +356,18 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
             throw new BizException("此课程组不存在");
         }
         if(coursesGroup.getStatus().equals(GroupStatusEnum.CANCEL)){
-            throw new BizException("此课程组已关闭");
+            throw new BizException("无法加入,此课程组已关闭");
         }
         List<ClassGroupStudentMapper> groupStudents = classGroupStudentMapperDao.findGroupStudents(courseGroupId.toString(), GroupType.COMM, userId, null);
         if(!CollectionUtils.isEmpty(groupStudents)){
-            throw new BizException("您已购买过此课程组");
+            throw new BizException("无法重复加入,您已在此课程组");
         }
 
         Date now=new Date();
 
         ClassGroup classGroup = classGroupDao.findByMusicGroupAndType(courseGroupId.toString(), GroupType.COMM.getCode());
         if(classGroup.getStudentNum()>=classGroup.getExpectStudentNum()){
-            throw new BizException("此课程组人数已达上限");
+            throw new BizException("无法加入,此课程组人数已达上限");
         }
 
         BigDecimal amount = coursesGroup.getTotalCoursesPrice();
@@ -440,7 +440,7 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
                         orderNo,
                         baseApiUrl+"/api-student/studentOrder/notify",
                         baseApiUrl+"/api-student/studentOrder/paymentResult?orderNo=" + orderNo,
-                        "网管课购买",
+                        "对外课程组购买",
                         coursesGroup.getName(),
                         userId,
                         classFee,
@@ -579,7 +579,7 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
         List<CourseScheduleStudentPayment> courseScheduleStudentPayments = new ArrayList<>();
         List<CourseSchedule> groupNotStartCourses = courseScheduleDao.findGroupNotStartCourses(order.getMusicGroupId(), GroupType.COMM);
         if(CollectionUtils.isEmpty(groupNotStartCourses)){
-            throw new BizException("没有剩余课时");
+            throw new BizException("无法加入,此课程组已关闭");
         }
         BigDecimal singleCoursePrice = order.getExpectAmount().divide(new BigDecimal(groupNotStartCourses.size()), CommonConstants.DECIMAL_PLACE, BigDecimal.ROUND_DOWN);
         for (CourseSchedule courseSchedule : groupNotStartCourses) {
@@ -598,7 +598,7 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
         try {
 //            contractService.transferPracticeCoursesContract(order.getUserId(),classGroup.getTotalClassTimes(),practiceGroup.getCoursesStartDate(),practiceGroup.getCoursesExpireDate(),order.getExpectAmount());
         } catch (Exception e) {
-            LOGGER.error("网管课[{}]购买协议错误:{}",order.getMusicGroupId(),e.getMessage(),e.getMessage());
+            LOGGER.error("对外课程组[{}]购买协议错误:{}",order.getMusicGroupId(),e.getMessage(),e.getMessage());
         }
 
         List<ImGroupMember> imGroupMemberList = new ArrayList<>();

+ 17 - 20
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentCourseHomeworkReplyServiceImpl.java

@@ -1,14 +1,11 @@
 package com.ym.mec.biz.service.impl;
 
-import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.CourseScheduleDao;
 import com.ym.mec.biz.dal.dao.StudentCourseHomeworkReplyDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.dto.StudentCourseHomeworkCommentDto;
-import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.StudentCourseHomework;
 import com.ym.mec.biz.dal.entity.StudentCourseHomeworkReply;
-import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.page.StudentCourseHomeworkReplyQueryInfo;
 import com.ym.mec.biz.service.StudentCourseHomeworkReplyService;
 import com.ym.mec.biz.service.StudentCourseHomeworkService;
@@ -18,13 +15,13 @@ import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
-import com.ym.mec.util.date.DateUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
 
 @Service
 public class StudentCourseHomeworkReplyServiceImpl extends BaseServiceImpl<Long, StudentCourseHomeworkReply> implements StudentCourseHomeworkReplyService {
@@ -52,13 +49,13 @@ public class StudentCourseHomeworkReplyServiceImpl extends BaseServiceImpl<Long,
 		if(Objects.isNull(studentCourseHomework)){
 			throw new BizException("请指定需要回复的作业");
 		}
-		CourseSchedule courseSchedule = courseScheduleDao.get(studentCourseHomework.getCourseScheduleId());
-		Map<Integer, String> userMap = new HashMap<>();
-		userMap.put(courseSchedule.getActualTeacherId(), courseSchedule.getActualTeacherId().toString());
-		SysUser user = teacherDao.getUser(studentCourseHomework.getUserId());
-		String notifyUrl = "9?courseScheduleID=" + studentCourseHomework.getId() + "&userId=" + studentCourseHomework.getUserId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId();
-		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_STUDENT_REPLY_PUSH,
-				userMap, null, 0, notifyUrl, "TEACHER", courseSchedule.getName(), DateUtil.dateToString(courseSchedule.getClassDate(),"yyyy年MM月dd日"), user.getUsername());
+//		CourseSchedule courseSchedule = courseScheduleDao.get(studentCourseHomework.getCourseScheduleId());
+//		Map<Integer, String> userMap = new HashMap<>();
+//		userMap.put(courseSchedule.getActualTeacherId(), courseSchedule.getActualTeacherId().toString());
+//		SysUser user = teacherDao.getUser(studentCourseHomework.getUserId());
+//		String notifyUrl = "9?courseScheduleID=" + studentCourseHomework.getId() + "&userId=" + studentCourseHomework.getUserId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId();
+//		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_STUDENT_REPLY_PUSH,
+//				userMap, null, 0, notifyUrl, "TEACHER", courseSchedule.getName(), DateUtil.dateToString(courseSchedule.getClassDate(),"yyyy年MM月dd日"), user.getUsername());
 		return super.insert(bean);
 	}
 
@@ -73,13 +70,13 @@ public class StudentCourseHomeworkReplyServiceImpl extends BaseServiceImpl<Long,
 				studentCourseHomework.getCourseHomeworkId(),
 				studentCourseHomework.getUserId());
 
-		CourseSchedule courseSchedule = courseScheduleDao.get(studentCourseHomework.getCourseScheduleId());
-		Map<Integer, String> userMap = new HashMap<>();
-		userMap.put(studentCourseHomework.getUserId(),studentCourseHomework.getUserId().toString());
-		SysUser user = teacherDao.get(courseSchedule.getTeacherId());
-		String notifyUrl = "3?courseScheduleID=" + courseSchedule.getId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId();
-		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_TEACHER_REPLY_PUSH,
-				userMap, null, 0, notifyUrl, "STUDENT", user.getRealName(), courseSchedule.getName());
+//		CourseSchedule courseSchedule = courseScheduleDao.get(studentCourseHomework.getCourseScheduleId());
+//		Map<Integer, String> userMap = new HashMap<>();
+//		userMap.put(studentCourseHomework.getUserId(),studentCourseHomework.getUserId().toString());
+//		SysUser user = teacherDao.get(courseSchedule.getTeacherId());
+//		String notifyUrl = "3?courseScheduleID=" + courseSchedule.getId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId();
+//		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_TEACHER_REPLY_PUSH,
+//				userMap, null, 0, notifyUrl, "STUDENT", user.getRealName(), courseSchedule.getName());
 		super.insert(bean);
 	}
 

+ 53 - 13
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentCourseHomeworkServiceImpl.java

@@ -4,6 +4,9 @@ import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.CourseHomeworkStudentDetailDto;
+import com.ym.mec.biz.dal.dto.SimpleUserDto;
+import com.ym.mec.biz.dal.dto.StudentCourseHomeworkDto;
+import com.ym.mec.biz.dal.dto.StudentHomeworkRecordDto;
 import com.ym.mec.biz.dal.entity.CourseHomework;
 import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.CourseScheduleReview;
@@ -19,15 +22,14 @@ import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.ym.mec.util.collection.MapUtil;
-import com.ym.mec.util.date.DateUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.*;
+import java.util.stream.Collectors;
 
 @Service
 public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, StudentCourseHomework> implements StudentCourseHomeworkService {
@@ -94,16 +96,16 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
             CourseScheduleReview review = courseScheduleReviewDao.findByCourseScheduleAndStudent(bean.getCourseScheduleId(), bean.getUserId());
             if (Objects.nonNull(review)) {
                 review.setHandHomework(YesOrNoEnum.YES.getCode());
+                courseScheduleReviewDao.update(review);
             }
-            courseScheduleReviewDao.update(review);
         }
 
-        Map<Integer, String> userMap = new HashMap<>();
-        userMap.put(courseSchedule.getActualTeacherId(), courseSchedule.getActualTeacherId().toString());
-        SysUser user = teacherDao.getUser(bean.getUserId());
-        String notifyUrl = "9?courseScheduleID=" + bean.getId() + "&userId=" + bean.getUserId() + "&studentCourseHomeworkId=" + bean.getId();
-        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_SUBMIT_PUSH,
-                userMap, null, 0, notifyUrl, "TEACHER", courseSchedule.getName(), DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy年MM月dd日"), user.getUsername());
+//        Map<Integer, String> userMap = new HashMap<>();
+//        userMap.put(courseSchedule.getActualTeacherId(), courseSchedule.getActualTeacherId().toString());
+//        SysUser user = teacherDao.getUser(bean.getUserId());
+//        String notifyUrl = "9?courseScheduleID=" + bean.getId() + "&userId=" + bean.getUserId() + "&studentCourseHomeworkId=" + bean.getId();
+//        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_SUBMIT_PUSH,
+//                userMap, null, 0, notifyUrl, "TEACHER", courseSchedule.getName(), DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy年MM月dd日"), user.getUsername());
         courseHomeworkService.update(courseHomework);
     }
 
@@ -112,7 +114,19 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
         if (Objects.isNull(courseScheduleID)) {
             throw new BizException("作业不存在");
         }
-        return studentCourseHomeworkDao.findCourseHomeworkStudentDetail(courseScheduleID, userId);
+        CourseHomeworkStudentDetailDto courseHomeworkStudentDetail = studentCourseHomeworkDao.findCourseHomeworkStudentDetail(courseScheduleID, userId);
+        if(Objects.nonNull(courseHomeworkStudentDetail)){
+            SysUser student = teacherDao.getUser(userId.intValue());
+            courseHomeworkStudentDetail.setStudentId(userId.intValue());
+            courseHomeworkStudentDetail.setStudentName(student.getUsername());
+            CourseSchedule courseSchedule = courseScheduleDao.get(courseHomeworkStudentDetail.getCourseScheduleId());
+            if(Objects.nonNull(courseSchedule)){
+                SysUser teacher = teacherDao.getUser(courseSchedule.getActualTeacherId());
+                courseHomeworkStudentDetail.setTeacherId(courseSchedule.getActualTeacherId());
+                courseHomeworkStudentDetail.setTeacherName(teacher.getRealName());
+            }
+        }
+        return courseHomeworkStudentDetail;
     }
 
     @Override
@@ -162,12 +176,12 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
     }
 
     @Override
-    public PageInfo<StudentCourseHomework> findStudentCourseHomeworks(QueryInfo queryInfo) {
-        PageInfo<StudentCourseHomework> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+    public PageInfo<StudentCourseHomeworkDto> findStudentCourseHomeworks(QueryInfo queryInfo) {
+        PageInfo<StudentCourseHomeworkDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
         Map<String, Object> params = new HashMap<>();
         MapUtil.populateMap(params, queryInfo);
 
-        List<StudentCourseHomework> dataList = null;
+        List<StudentCourseHomeworkDto> dataList = null;
         int count = studentCourseHomeworkDao.countStudentCourseHomeworks(params);
         if (count > 0) {
             pageInfo.setTotal(count);
@@ -180,4 +194,30 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
         pageInfo.setRows(dataList);
         return pageInfo;
     }
+
+    @Override
+    public PageInfo findStudentHomeworkRecord(CourseHomeworkQueryInfo queryInfo) {
+        PageInfo<StudentHomeworkRecordDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+        Map<String, Object> params = new HashMap<>();
+        MapUtil.populateMap(params, queryInfo);
+
+        List<StudentHomeworkRecordDto> dataList = null;
+        int count = studentCourseHomeworkDao.countStudentHomeworkRecord(params);
+        if (count > 0) {
+            pageInfo.setTotal(count);
+            params.put("offset", pageInfo.getOffset());
+            dataList = studentCourseHomeworkDao.findStudentHomeworkRecord(params);
+            List<Integer> teacherIds = dataList.stream().map(StudentHomeworkRecordDto::getTeacherId).collect(Collectors.toList());
+            List<SimpleUserDto> teachers = teacherDao.findSimpleTeachers(teacherIds);
+            Map<Integer, String> idNameMap = teachers.stream().collect(Collectors.toMap(SimpleUserDto::getUserId, u -> u.getUserName()));
+            for (StudentHomeworkRecordDto studentHomeworkRecordDto : dataList) {
+                studentHomeworkRecordDto.setTeacherName(idNameMap.get(studentHomeworkRecordDto.getTeacherId()));
+            }
+        }
+        if (count == 0) {
+            dataList = new ArrayList<>();
+        }
+        pageInfo.setRows(dataList);
+        return pageInfo;
+    }
 }

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

@@ -1681,7 +1681,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			Map<String, Object> courseInfo1 = JSON.parseObject(studentPauseInfo1.getCoursesJson(), Map.class);
 			Integer[] teachModeSequence1=JSON.parseArray(courseInfo1.get("teaChModeSequence").toString(), Integer.class).stream().toArray(Integer[]::new);
 			studentRecoverInfo.setCourseCount(teachModeSequence1.length);
-			List<CourseSchedule> newCourseSchedules = courseScheduleService.createCourses(studentRecoverInfo);
+			List<CourseSchedule> newCourseSchedules = courseScheduleService.createCourses(studentRecoverInfo,false);
 			for(int i=0;i<newCourseSchedules.size();i++){
 				if(newCourseSchedules.get(i).getStartClassTime().before(now)){
 					throw new BizException("排课起始时间不得小于当前时间");

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

@@ -28,6 +28,7 @@
         <result column="musicGroupName" property="musicGroupName"/>
         <result column="classGroupName" property="classGroupName"/>
         <result column="courseHomeworkId" property="courseHomeworkId"/>
+        <result column="course_schedule_id_" property="courseScheduleId"/>
         <result column="studentCourseHomeworkId" property="studentCourseHomeworkId"/>
         <result column="content_" property="content"/>
         <result column="expiry_date_" property="expiryDate"/>
@@ -213,7 +214,8 @@
 			sch.attachments_,
 			sch.score_,
 			sch.status_,
-			sch.is_replied_
+			sch.is_replied_,
+			sch.course_schedule_id_
 		FROM
 			course_homework ch
 		LEFT JOIN student_course_homework sch ON ch.id_=sch.course_homework_id_
@@ -299,7 +301,45 @@
         ORDER BY sch.id_ DESC
         <include refid="global.limit"/>
     </select>
-    
+
+    <resultMap id="StudentHomeworkRecordDto" type="com.ym.mec.biz.dal.dto.StudentHomeworkRecordDto">
+        <result property="studentCourseHomeworkId" column="student_course_homework_id_"/>
+        <result property="courseScheduleId" column="course_schedule_id_"/>
+        <result property="courseName" column="course_name_"/>
+        <result property="startClassTime" column="start_class_time_"/>
+        <result property="teacherId" column="actual_teacher_id_"/>
+        <result property="status" column="status_"/>
+    </resultMap>
+    <select id="findStudentHomeworkRecord" resultMap="StudentHomeworkRecordDto">
+        SELECT
+            sch.id_ student_course_homework_id_,
+            sch.course_schedule_id_,
+            cs.name_ course_name_,
+            CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
+            cs.actual_teacher_id_,
+            sch.status_
+        FROM
+            student_course_homework sch
+            LEFT JOIN course_schedule cs ON cs.id_ = sch.course_schedule_id_
+        WHERE sch.user_id_=#{userId}
+        AND DATE_FORMAT(class_date_, '%Y-%m')=DATE_FORMAT(#{classDate}, '%Y-%m')
+    </select>
+    <select id="countStudentHomeworkRecord" resultType="int">
+        SELECT
+            COUNT(sch.id_)
+        FROM
+            student_course_homework sch
+            LEFT JOIN course_schedule cs ON cs.id_ = sch.course_schedule_id_
+        WHERE sch.user_id_=#{userId}
+        AND DATE_FORMAT(class_date_, '%Y-%m')=DATE_FORMAT(#{classDate}, '%Y-%m')
+    </select>
+    <select id="findByCourses" resultMap="StudentCourseHomework">
+        SELECT * FROM student_course_homework WHERE course_schedule_id_ IN
+        <foreach collection="courseIds" item="courseId" open="(" close=")" separator=",">
+            #{courseId}
+        </foreach>
+    </select>
+
     <delete id="delByCourseScheduleId">
 		DELETE FROM student_course_homework WHERE course_schedule_id_ = #{courseScheduleId} 
 	</delete>

+ 12 - 0
mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseHomeworkController.java

@@ -7,6 +7,7 @@ import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.CourseHomeworkQueryInfo;
 import com.ym.mec.biz.service.StudentCourseHomeworkService;
 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.springframework.beans.factory.annotation.Autowired;
@@ -58,6 +59,17 @@ public class StudentCourseHomeworkController extends BaseController {
         return succeed(studentCourseHomeworkService.findCourseHomeworkStudentDetail(courseScheduleID,user.getId().longValue()));
     }
 
+    @ApiOperation(value = "获取学生作业记录")
+    @GetMapping(value = "/findStudentHomeworkRecord")
+    public HttpResponseResult findStudentHomeworkRecord(CourseHomeworkQueryInfo queryInfo){
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if(Objects.isNull(user)){
+            return failed(HttpStatus.FORBIDDEN,"请登录");
+        }
+        queryInfo.setUserId(user.getId().longValue());
+        return succeed(studentCourseHomeworkService.findStudentHomeworkRecord(queryInfo));
+    }
+
     @ApiOperation(value = "分页查询作业列表")
     @PostMapping(value = "/queryPage")
     public Object queryPage(@RequestBody(required = false) CourseHomeworkQueryInfo queryInfo){

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

@@ -2,6 +2,7 @@ package com.ym.mec.teacher.controller;
 
 import com.ym.mec.biz.service.ImGroupNoticeService;
 import com.ym.mec.common.page.QueryInfo;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -10,6 +11,7 @@ import io.swagger.annotations.ApiParam;
 
 import java.util.Date;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -20,6 +22,7 @@ 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.SubjectDao;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherMusicClassQueryInfo;
@@ -45,6 +48,8 @@ public class TeacherController extends BaseController {
     private ClassGroupService classGroupService;
     @Autowired
     private SysUserFeignService sysUserFeignService;
+	@Autowired
+	private SubjectDao subjectDao;
 
     @ApiOperation(value = "修改教师个人中心信息")
     @PostMapping("/update")
@@ -66,7 +71,12 @@ public class TeacherController extends BaseController {
 		if (user == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
-        return succeed(teacherService.get(user.getId()));
+		Teacher teacher = teacherService.get(user.getId());
+		//专业技能
+		if(StringUtils.isNotEmpty(teacher.getSubjectId())){
+			teacher.setSubjectName(subjectDao.findBySubIds(teacher.getSubjectId()));
+		}
+        return succeed(teacher);
     }
 
     @ApiOperation(value = "根据教师编号查询教师基本信息")