Browse Source

feat:线下课考勤调整

Joburgess 4 years ago
parent
commit
7d254f4c30

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

@@ -92,6 +92,9 @@ public class TeacherAttendance {
 	@ApiModelProperty(value = "签退附件")
 	private String signOutAttachments;
 
+	@ApiModelProperty(value = "签退备注")
+	private String signOutRemark;
+
 	public Long getCurrentScheduleId() {
 		return currentScheduleId;
 	}
@@ -100,6 +103,14 @@ public class TeacherAttendance {
 		this.currentScheduleId = currentScheduleId;
 	}
 
+	public String getSignOutRemark() {
+		return signOutRemark;
+	}
+
+	public void setSignOutRemark(String signOutRemark) {
+		this.signOutRemark = signOutRemark;
+	}
+
 	public Date getComplaintsTime() {
 		return complaintsTime;
 	}

+ 8 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -228,13 +228,18 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 			teacherAttendance.setCurrentClassTimes(classGroup.getCurrentClassTimes() + 1);
 			if(!isInScore){
 				teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
-				result.put("signInStatus",1);
+				result.put("signOutStatus",1);
 			}else if(date.compareTo(classEndDateTime) >= 0 && date.compareTo(classEndDateAdd60Minutes) <= 0){
 				teacherAttendance.setSignOutStatus(YesOrNoEnum.YES);
-				result.put("signInStatus",0);
+				result.put("signOutStatus",0);
 			}else if(date.compareTo(classEndDateAdd60Minutes) > 0){
+				if(StringUtils.isEmpty(teacherAttendance.getSignOutRemark())&&!teacherSignOutDto.isNotRturnErrorInfo()){
+					//当前为异常签退,请填写原因!
+					result.put("status",2);
+					return result;
+				}
 				teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
-				result.put("signInStatus",1);
+				result.put("signOutStatus",1);
 			}else {
 				throw new BizException("签退时间异常");
 			}

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

@@ -31,6 +31,7 @@
         <result column="complaints_time_" property="complaintsTime"/>
         <result column="current_schedule_id_" property="currentScheduleId"/>
         <result column="sign_out_attachments_" property="signOutAttachments"/>
+        <result column="sign_out_remark_" property="signOutRemark"/>
     </resultMap>
     
     <resultMap type="com.ym.mec.biz.dal.dto.Mapper" id="Mapper">
@@ -54,18 +55,20 @@
             keyColumn="id" keyProperty="id">
         INSERT INTO teacher_attendance
         (group_type_,teacher_id_,music_group_id_,class_group_id_,course_schedule_id_,sign_in_time_,sign_in_status_,remark_,create_time_,sign_out_time_,
-        sign_out_status_,current_class_times_,sign_in_longitude_latitude_,sign_out_longitude_latitude_,current_schedule_id_,sign_out_attachments_)
+        sign_out_status_,current_class_times_,sign_in_longitude_latitude_,sign_out_longitude_latitude_,current_schedule_id_,sign_out_attachments_,
+        sign_out_remark_)
         VALUES(#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{teacherId},
         #{musicGroupId},#{classGroupId},#{courseScheduleId},#{signInTime},#{signInStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{remark},
         now(),#{signOutTime},#{signOutStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-        #{currentClassTimes},#{signInLongitudeLatitude},#{signOutLongitudeLatitude},#{currentScheduleId},#{signOutAttachments})
+        #{currentClassTimes},#{signInLongitudeLatitude},#{signOutLongitudeLatitude},#{currentScheduleId},#{signOutAttachments},#{signOutRemark})
     </insert>
 
     <insert id="batchInsert" parameterType="com.ym.mec.biz.dal.entity.TeacherAttendance" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
         INSERT INTO teacher_attendance
         (group_type_,teacher_id_,music_group_id_,class_group_id_,course_schedule_id_,sign_in_time_,sign_in_status_,
-        remark_,create_time_,sign_out_time_,sign_out_status_,sign_in_longitude_latitude_,sign_out_longitude_latitude_,current_schedule_id_,sign_out_attachments_)
+        remark_,create_time_,sign_out_time_,sign_out_status_,sign_in_longitude_latitude_,sign_out_longitude_latitude_,current_schedule_id_,sign_out_attachments_,
+        sign_out_remark_)
         VALUE
         <foreach collection="teacherAttendances" item="teacherAttendance" separator=",">
             (#{teacherAttendance.groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
@@ -74,7 +77,8 @@
             #{teacherAttendance.signInStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
             #{teacherAttendance.remark},now(),#{teacherAttendance.signOutTime},
             #{teacherAttendance.signOutStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-            #{teacherAttendance.signInLongitudeLatitude},#{teacherAttendance.signOutLongitudeLatitude},#{teacherAttendance.currentScheduleId},#{teacherAttendance.signOutAttachments})
+            #{teacherAttendance.signInLongitudeLatitude},#{teacherAttendance.signOutLongitudeLatitude},#{teacherAttendance.currentScheduleId},
+            #{teacherAttendance.signOutAttachments},#{teacherAttendance.signOutRemark})
         </foreach>
     </insert>
 
@@ -145,6 +149,9 @@
             <if test="signOutAttachments != null">
                 sign_out_attachments_ = #{signOutAttachments},
             </if>
+            <if test="signOutRemark != null">
+                sign_out_remark_ = #{signOutRemark},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>