Bladeren bron

1、作业消息推送

Joburgess 5 jaren geleden
bovenliggende
commit
bc234221d2

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

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.dao;
 
+import com.ym.mec.biz.dal.dto.CourseGroupExtendDto;
 import com.ym.mec.biz.dal.entity.CoursesGroup;
 import com.ym.mec.biz.dal.enums.GroupStatusEnum;
 import com.ym.mec.common.dal.BaseDAO;
@@ -21,6 +22,10 @@ public interface CoursesGroupDao extends BaseDAO<Long, CoursesGroup> {
     List<CoursesGroup> findTeacherCourseGroups(Map<String, Object> params);
     int countTeacherGroups(Map<String,Object> params);
 
+
+    List<CourseGroupExtendDto> findTeacherCourseGroupsWithWeb(Map<String, Object> params);
+    int countTeacherGroupsWithWeb(Map<String,Object> params);
+
     /**
      * @describe 获取指定教师的课程组列表
      * @author Joburgess

+ 82 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseGroupExtendDto.java

@@ -0,0 +1,82 @@
+package com.ym.mec.biz.dal.dto;
+
+import com.ym.mec.biz.dal.entity.CoursesGroup;
+
+import java.util.Date;
+
+/**
+ * @Author Joburgess
+ * @Date 2020/4/6
+ */
+public class CourseGroupExtendDto extends CoursesGroup {
+
+    private int studentNum;
+
+    private int groupClassesTotalDuration;
+
+    private int groupClassesConsumeDuration;
+
+    private int totalClassTimes;
+
+    private int currentClassTimes;
+
+    private Date firstClassesStartTime;
+
+    private Date lastClassesEndTime;
+
+    public int getStudentNum() {
+        return studentNum;
+    }
+
+    public void setStudentNum(int studentNum) {
+        this.studentNum = studentNum;
+    }
+
+    public int getGroupClassesTotalDuration() {
+        return groupClassesTotalDuration;
+    }
+
+    public void setGroupClassesTotalDuration(int groupClassesTotalDuration) {
+        this.groupClassesTotalDuration = groupClassesTotalDuration;
+    }
+
+    public int getGroupClassesConsumeDuration() {
+        return groupClassesConsumeDuration;
+    }
+
+    public void setGroupClassesConsumeDuration(int groupClassesConsumeDuration) {
+        this.groupClassesConsumeDuration = groupClassesConsumeDuration;
+    }
+
+    public int getTotalClassTimes() {
+        return totalClassTimes;
+    }
+
+    public void setTotalClassTimes(int totalClassTimes) {
+        this.totalClassTimes = totalClassTimes;
+    }
+
+    public int getCurrentClassTimes() {
+        return currentClassTimes;
+    }
+
+    public void setCurrentClassTimes(int currentClassTimes) {
+        this.currentClassTimes = currentClassTimes;
+    }
+
+    public Date getFirstClassesStartTime() {
+        return firstClassesStartTime;
+    }
+
+    public void setFirstClassesStartTime(Date firstClassesStartTime) {
+        this.firstClassesStartTime = firstClassesStartTime;
+    }
+
+    public Date getLastClassesEndTime() {
+        return lastClassesEndTime;
+    }
+
+    public void setLastClassesEndTime(Date lastClassesEndTime) {
+        this.lastClassesEndTime = lastClassesEndTime;
+    }
+}

+ 42 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/GroupQueryInfo.java

@@ -0,0 +1,42 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.biz.dal.enums.GroupStatusEnum;
+import com.ym.mec.biz.dal.enums.GroupType;
+import com.ym.mec.common.page.QueryInfo;
+
+/**
+ * @Author Joburgess
+ * @Date 2020/4/6
+ */
+public class GroupQueryInfo extends QueryInfo {
+
+    private Integer teacherId;
+
+    private GroupType groupType;
+
+    private GroupStatusEnum groupStatus;
+
+    public Integer getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(Integer teacherId) {
+        this.teacherId = teacherId;
+    }
+
+    public GroupType getGroupType() {
+        return groupType;
+    }
+
+    public void setGroupType(GroupType groupType) {
+        this.groupType = groupType;
+    }
+
+    public GroupStatusEnum getGroupStatus() {
+        return groupStatus;
+    }
+
+    public void setGroupStatus(GroupStatusEnum groupStatus) {
+        this.groupStatus = groupStatus;
+    }
+}

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/CoursesGroupService.java

@@ -5,6 +5,7 @@ import com.ym.mec.biz.dal.dto.GroupHeadInfoDto;
 import com.ym.mec.biz.dal.entity.CoursesGroup;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
 import com.ym.mec.biz.dal.page.GroupCourseScheduleQueryInfo;
+import com.ym.mec.biz.dal.page.GroupQueryInfo;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
@@ -32,6 +33,15 @@ public interface CoursesGroupService extends BaseService<Long, CoursesGroup> {
     PageInfo findTeacherCourseGroups(Integer teacherId, GroupCourseScheduleQueryInfo queryInfo);
 
     /**
+     * @describe
+     * @author Joburgess
+     * @date 2020/4/6
+     * @param queryInfo:
+     * @return com.ym.mec.common.page.PageInfo
+     */
+    PageInfo findTeacherCourseGroupsWithWeb(GroupQueryInfo queryInfo);
+
+    /**
      * @describe 获取课程对应班级头部信息
      * @author Joburgess
      * @date 2020/3/10

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

@@ -7,6 +7,7 @@ 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.GroupCourseScheduleQueryInfo;
+import com.ym.mec.biz.dal.page.GroupQueryInfo;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.controller.BaseController;
@@ -315,6 +316,22 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
     }
 
     @Override
+    public PageInfo findTeacherCourseGroupsWithWeb(GroupQueryInfo queryInfo) {
+        PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+        Map<String, Object> params = new HashMap<>();
+        MapUtil.populateMap(params, queryInfo);
+
+        List<CoursesGroup> teacherCourseGroups=new ArrayList<>();
+        int count = coursesGroupDao.countTeacherGroups(params);
+        if (count > 0) {
+            pageInfo.setTotal(count);
+            params.put("offset", pageInfo.getOffset());
+            teacherCourseGroups = coursesGroupDao.findTeacherCourseGroups(params);
+        }
+        return pageInfo;
+    }
+
+    @Override
     public GroupHeadInfoDto getGroupHeadInfo(Long courseScheduleId) {
         if(Objects.isNull(courseScheduleId)){
             throw new BizException("请选择课程");

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

@@ -87,10 +87,10 @@ public class StudentCourseHomeworkReplyServiceImpl extends BaseServiceImpl<Long,
 		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());
+		SysUser user = teacherDao.get(courseSchedule.getActualTeacherId());
 		String notifyUrl = "3?courseScheduleID=" + courseSchedule.getId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId() + "&extra=0";
 		String courseDate = DateUtil.dateToString(courseSchedule.getClassDate(), "yyyy年MM月dd日");
-		sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_TEACHER_REPLY_PUSH,courseSchedule.getTeacherId().toString(),
+		sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_TEACHER_REPLY_PUSH,courseSchedule.getActualTeacherId().toString(),
 				new String[]{studentCourseHomework.getUserId().toString()},
 				null, courseDate,courseSchedule.getName(),bean.getContent());
 		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_TEACHER_REPLY_PUSH,

+ 29 - 0
mec-biz/src/main/resources/config/mybatis/CoursesGroupMapper.xml

@@ -28,6 +28,10 @@
 		<result column="update_time_" property="updateTime" />
 		<result column="educational_teacher_id_" property="educationalTeacherId" />
 	</resultMap>
+
+	<resultMap id="CourseGroupExtendDto" type="com.ym.mec.biz.dal.dto.CourseGroupExtendDto">
+
+	</resultMap>
 	
 	<!-- 根据主键查询一条记录 -->
 	<select id="get" resultMap="CoursesGroup" >
@@ -156,6 +160,31 @@
 		</if>
 	</select>
 
+	<sql id="teacherCourseGroupsQueryCondition">
+		<where>
+			<if test="teacherId!=null">
+				AND teacher_id_=#{teacherId}
+			</if>
+			<if test="search!=null">
+				AND (name_ LIKE CONCAT('%', #{search}, '%') OR id_ LIKE CONCAT('%', #{search}, '%'))
+			</if>
+			<if test="groupStatus!=null">
+				AND status_ = #{groupStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+			</if>
+		</where>
+	</sql>
+	<select id="findTeacherCourseGroupsWithWeb" resultMap="CourseGroupExtendDto">
+		SELECT * FROM courses_group
+		<include refid="teacherCourseGroupsQueryCondition"/>
+		ORDER BY id_ DESC
+		<include refid="global.limit"/>
+	</select>
+
+	<select id="countTeacherGroupsWithWeb" resultType="int">
+		SELECT COUNT(id_) FROM courses_group
+		<include refid="teacherCourseGroupsQueryCondition"/>
+	</select>
+
     <select id="queryTeacherCourseGroups" resultMap="CoursesGroup">
 		SELECT * FROM courses_group
 		WHERE teacher_id_=#{userId} AND status_ IN ('NOT_START', 'NORMAL', 'FINISH','CANCEL')