Explorar el Código

首页统计老师课程云教授使用时长

zouxuan hace 2 años
padre
commit
0171dd907a

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TeacherCloudCourseReport.java

@@ -25,11 +25,22 @@ public class TeacherCloudCourseReport extends BaseEntity {
 	@ApiModelProperty(value = "训练时长")
 	private Integer playTime;
 
+	@ApiModelProperty(value = "训练总时长")
+	private Integer totalPlayTime;
+
 	@ApiModelProperty(value = "上课时间")
 	private String classDate;
 
 	private Integer tenantId;
 
+	public Integer getTotalPlayTime() {
+		return totalPlayTime;
+	}
+
+	public void setTotalPlayTime(Integer totalPlayTime) {
+		this.totalPlayTime = totalPlayTime;
+	}
+
 	@Override
 	public Integer getTenantId() {
 		return tenantId;

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

@@ -12,18 +12,24 @@
 		<result column="teacher_id_" property="teacherId" />
 		<result column="course_time_" property="courseTime" />
 		<result column="play_time_" property="playTime" />
+		<result column="total_play_time_" property="totalPlayTime" />
 		<result column="class_date_" property="classDate" />
 		<result column="tenant_id_" property="tenantId" />
 	</resultMap>
 	<insert id="batchSaveBySelect">
-		insert into teacher_cloud_course_report (teacher_id_, organ_id_, course_time_, play_time_, class_date_, tenant_id_)
-		select cs.actual_teacher_id_,cs.organ_id_,cs.courseTime,CASE WHEN SUM(mcr.play_time_) IS NULL THEN 0 ELSE SUM(mcr.play_time_)/60 END playTime,cs.class_date_,cs.tenant_id_ from (
+		insert into teacher_cloud_course_report (teacher_id_, organ_id_, course_time_, play_time_,total_play_time_, class_date_, tenant_id_)
+		select cs.actual_teacher_id_,cs.organ_id_,cs.courseTime,CASE WHEN SUM(mcr.play_time_) IS NULL THEN 0 ELSE SUM(mcr.play_time_)/60 END playTime,
+		       CASE WHEN mcr1.totalPlayTime IS NULL THEN 0 ELSE mcr1.totalPlayTime END totalPlayTime,
+			   cs.class_date_,cs.tenant_id_ from (
 		select cs.actual_teacher_id_,cs.organ_id_,SUM(TIMESTAMPDIFF(MINUTE,cs.startTime,cs.endTime)) courseTime,cs.class_date_,cs.tenant_id_,cs.startTime,cs.endTime
 		FROM (select cs.actual_teacher_id_,concat(cs.class_date_,' ',cs.start_class_time_) startTime,
 		concat(cs.class_date_,' ',cs.end_class_time_) endTime,cs.organ_id_,cs.class_date_,cs.tenant_id_,cs.id_ FROM course_schedule cs
 		where cs.class_date_ = #{classDate} AND cs.teach_mode_ = 'OFFLINE' AND cs.group_type_ = 'MUSIC') cs
 		group by cs.actual_teacher_id_,cs.class_date_) cs
 		left join sys_music_compare_record mcr ON mcr.client_id_ = 'teacher' AND mcr.create_time_ BETWEEN cs.startTime AND cs.endTime AND cs.actual_teacher_id_ = mcr.user_id_
+		left join (select user_id_,SUM(play_time_)/60 totalPlayTime from sys_music_compare_record where client_id_ = 'teacher'
+		AND DATE_FORMAT(create_time_,'%Y-%m-%d') = #{classDate}
+		group by user_id_) mcr1 ON cs.actual_teacher_id_ = mcr1.user_id_
 		group by cs.actual_teacher_id_
 	</insert>
 	<delete id="deleteByClassDate">

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

@@ -339,5 +339,5 @@ headColumns = ["合作单位", "总金额"]
 fieldColumns = ["name", "amount"]
 
 [老师云教练使用数据]
-headColumns = ["分部", "老师姓名", "声部", "课程时长(分)", "云教练使用时长(分)"]
-fieldColumns = ["organName", "teacherName", "subjectName", "courseTime", "playTime"]
+headColumns = ["分部", "老师姓名", "声部", "课程时长(分)", "课程云教练使用时长(分), "云教练使用总时长(分)"]
+fieldColumns = ["organName", "teacherName", "subjectName", "courseTime", "playTime", "totalPlayTime"]