zouxuan 4 years ago
parent
commit
d8e79473a4

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentAttendance.java

@@ -3,6 +3,7 @@ package com.ym.mec.biz.dal.entity;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
 
+import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import io.swagger.annotations.ApiModelProperty;
 
 import org.apache.commons.lang3.StringUtils;
@@ -64,6 +65,9 @@ public class StudentAttendance {
 	@ApiModelProperty(value = "状态(正常、旷课、请假、休学)",required = false)
 	private StudentAttendanceStatusEnum status;
 
+	@ApiModelProperty(value = "是否回访)",required = false)
+	private YesOrNoEnum visitFlag;
+
 	private Date signInTime;
 
 	private Date signOutTime;
@@ -82,6 +86,14 @@ public class StudentAttendance {
 	@ApiModelProperty(value = "缴费状态")
 	private String paymentStatus = "PAID_COMPLETED";
 
+	public YesOrNoEnum getVisitFlag() {
+		return visitFlag;
+	}
+
+	public void setVisitFlag(YesOrNoEnum visitFlag) {
+		this.visitFlag = visitFlag;
+	}
+
 	public String getPaymentStatus() {
 		return paymentStatus;
 	}

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

@@ -1289,6 +1289,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             if(idTeacherAttendanceMap.containsKey(t.getTeacherId())){
                 TeacherAttendance teacherAttendance = idTeacherAttendanceMap.get(t.getTeacherId());
                 t.setTeacherAttendance(teacherAttendance);
+                t.setTeacherAttendanceId(teacherAttendance.getId());
                 t.setSignInTime(teacherAttendance.getSignInTime());
                 t.setSignInStatus(Objects.nonNull(teacherAttendance.getSignInStatus())?(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())?SignInStatusEnum.UNUSUAL:SignInStatusEnum.NORMAL):SignInStatusEnum.NO);
                 t.setSignOutTime(teacherAttendance.getSignOutTime());

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

@@ -21,6 +21,7 @@
         <result column="sign_in_time_" property="signInTime"/>
         <result column="sign_out_time_" property="signOutTime"/>
         <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="visitFlag" property="visitFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
         <result column="remark_" property="remark"/>
@@ -488,7 +489,8 @@
         SELECT cssp.id_,cssp.course_schedule_id_,cssp.user_id_,cssp.group_type_,cssp.music_group_id_,sa.sign_in_time_,sa.sign_out_time_,
                CASE WHEN sa.status_ IS NULL THEN 'TRUANT' ELSE sa.status_ END status_,
         su.username_,su.phone_,su.avatar_,cs.teach_mode_,cs.type_ course_type_,o.name_ organ_name_,tu.real_name_ teacher_name_,cs.name_ course_schedule_name_,cs.status_ course_status_,
-        cs.actual_teacher_id_ teacher_id_,cs.class_date_ ,cs.start_class_time_,cs.end_class_time_ ,cs.new_course_id_
+        cs.actual_teacher_id_ teacher_id_,cs.class_date_ ,cs.start_class_time_,cs.end_class_time_ ,cs.new_course_id_,
+        CASE WHEN MAX(sv.id_) IS NULL THEN 0 ELSE 1 END visitFlag
         FROM course_schedule_student_payment cssp left join course_schedule cs on cs.id_ = cssp.course_schedule_id_
         left join student_attendance sa on cssp.course_schedule_id_ = sa.course_schedule_id_ and cssp.user_id_ = sa.user_id_
         LEFT JOIN sys_user su ON cssp.user_id_ = su.id_
@@ -558,7 +560,7 @@
     </sql>
     
     <select id="countStudentAttendance" resultType="java.lang.Integer">
-        SELECT count(cssp.id_) 
+        SELECT count(DISTINCT cssp.id_)
         FROM course_schedule_student_payment cssp
         left join course_schedule cs on cs.id_ = cssp.course_schedule_id_
         left join student_attendance sa on cssp.course_schedule_id_ = sa.course_schedule_id_ and cssp.user_id_ = sa.user_id_