zouxuan 4 роки тому
батько
коміт
0f5974f145

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherAttendanceComplaintsDto.java

@@ -3,6 +3,7 @@ package com.ym.mec.biz.dal.dto;
 import com.ym.mec.biz.dal.enums.ComplaintsStatusEnum;
 import com.ym.mec.biz.dal.enums.SignInStatusEnum;
 import com.ym.mec.biz.dal.enums.SignOutStatusEnum;
+import com.ym.mec.biz.dal.enums.UpdateAttendanceEnum;
 
 public class TeacherAttendanceComplaintsDto{
     private String organName;
@@ -27,6 +28,8 @@ public class TeacherAttendanceComplaintsDto{
 
     private ComplaintsStatusEnum complaintsStatusEnum;
 
+    private UpdateAttendanceEnum updateAttendanceEnum;
+
     private String operatorName;
 
     private String signInTime;
@@ -37,6 +40,14 @@ public class TeacherAttendanceComplaintsDto{
 
     private String disposeContent;
 
+    public UpdateAttendanceEnum getUpdateAttendanceEnum() {
+        return updateAttendanceEnum;
+    }
+
+    public void setUpdateAttendanceEnum(UpdateAttendanceEnum updateAttendanceEnum) {
+        this.updateAttendanceEnum = updateAttendanceEnum;
+    }
+
     public Long getTeacherAttendanceId() {
         return teacherAttendanceId;
     }

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

@@ -2,6 +2,7 @@ package com.ym.mec.biz.dal.entity;
 
 import com.ym.mec.biz.dal.enums.ComplaintsStatusEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
+import com.ym.mec.biz.dal.enums.UpdateAttendanceEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
@@ -80,6 +81,9 @@ public class TeacherAttendance {
 	//申述状态0拒绝1通过2待处理3已撤销
 	private ComplaintsStatusEnum complaintsStatus;
 
+	//申述状态0拒绝1通过2待处理3已撤销
+	private UpdateAttendanceEnum updateAttendanceEnum;
+
 	//申述内容
 	private String complaintsContent;
 
@@ -95,6 +99,14 @@ public class TeacherAttendance {
 	@ApiModelProperty(value = "签退备注")
 	private String signOutRemark;
 
+	public UpdateAttendanceEnum getUpdateAttendanceEnum() {
+		return updateAttendanceEnum;
+	}
+
+	public void setUpdateAttendanceEnum(UpdateAttendanceEnum updateAttendanceEnum) {
+		this.updateAttendanceEnum = updateAttendanceEnum;
+	}
+
 	public Long getCurrentScheduleId() {
 		return currentScheduleId;
 	}

+ 38 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/UpdateAttendanceEnum.java

@@ -0,0 +1,38 @@
+package com.ym.mec.biz.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+/**
+ * 修复考勤方式  SIGN_IN签到,SIGN_OUT签退,ALL所有
+ */
+public enum UpdateAttendanceEnum implements BaseEnum<String, UpdateAttendanceEnum> {
+	SIGN_IN("SIGN_IN", "签到"),
+	SIGN_OUT("SIGN_OUT", "签退"),
+	ALL("ALL", "所有");
+
+	private String code;
+
+	private String msg;
+
+	UpdateAttendanceEnum(String code, String msg) {
+		this.code = code;
+		this.msg = msg;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getMsg() {
+		return msg;
+	}
+
+	public void setMsg(String msg) {
+		this.msg = msg;
+	}
+
+	@Override
+	public String getCode() {
+		return this.code;
+	}
+}

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

@@ -6,6 +6,7 @@ import com.ym.mec.biz.dal.dto.TeacherAttendanceDetailDto;
 import com.ym.mec.biz.dal.dto.TeacherSignOutDto;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
 import com.ym.mec.biz.dal.enums.SignStatusEnum;
+import com.ym.mec.biz.dal.enums.UpdateAttendanceEnum;
 import com.ym.mec.biz.dal.page.TeacherAttendanceComplaintsQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.common.page.PageInfo;

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

@@ -746,6 +746,13 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 			throw new BizException("考勤信息不存在");
 		}
 		if(teacherAttendance.getComplaintsStatus() == ComplaintsStatusEnum.WAIT){
+			if(signInStatus != null && signOutStatus != null){
+				teacherAttendance.setUpdateAttendanceEnum(UpdateAttendanceEnum.ALL);
+			}else if (signInStatus != null){
+				teacherAttendance.setUpdateAttendanceEnum(UpdateAttendanceEnum.SIGN_IN);
+			}else if (signOutStatus != null){
+				teacherAttendance.setUpdateAttendanceEnum(UpdateAttendanceEnum.SIGN_OUT);
+			}
 			StringBuffer remark = new StringBuffer("同意异常考勤申述");
 			CourseSchedule courseSchedule = courseScheduleDao.get(teacherAttendance.getCourseScheduleId());
 			String classDate = DateUtil.format(courseSchedule.getClassDate(), DateUtil.DEFAULT_PATTERN);

+ 12 - 5
mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml

@@ -17,6 +17,7 @@
         <result column="sign_in_status_" property="signInStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="sign_out_time_" property="signOutTime"/>
         <result column="sign_out_status_" property="signOutStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="update_attendance_type_" property="updateAttendanceEnum" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="remark_" property="remark"/>
         <result column="create_time_" property="createTime"/>
         <result column="current_class_times_" property="currentClassTimes"/>
@@ -56,11 +57,12 @@
         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_remark_)
+        sign_out_remark_,update_attendance_type_)
         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},#{signOutRemark})
+        #{currentClassTimes},#{signInLongitudeLatitude},#{signOutLongitudeLatitude},#{currentScheduleId},#{signOutAttachments},#{signOutRemark},
+        #{updateAttendanceEnum,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
     </insert>
 
     <insert id="batchInsert" parameterType="com.ym.mec.biz.dal.entity.TeacherAttendance" useGeneratedKeys="true"
@@ -68,7 +70,7 @@
         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_,
-        sign_out_remark_)
+        sign_out_remark_,update_attendance_type_)
         VALUE
         <foreach collection="teacherAttendances" item="teacherAttendance" separator=",">
             (#{teacherAttendance.groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
@@ -78,7 +80,8 @@
             #{teacherAttendance.remark},now(),#{teacherAttendance.signOutTime},
             #{teacherAttendance.signOutStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
             #{teacherAttendance.signInLongitudeLatitude},#{teacherAttendance.signOutLongitudeLatitude},#{teacherAttendance.currentScheduleId},
-            #{teacherAttendance.signOutAttachments},#{teacherAttendance.signOutRemark})
+            #{teacherAttendance.signOutAttachments},#{teacherAttendance.signOutRemark},
+            #{teacherAttendance.updateAttendanceEnum,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
         </foreach>
     </insert>
 
@@ -86,6 +89,9 @@
     <update id="update" parameterType="com.ym.mec.biz.dal.entity.TeacherAttendance">
         UPDATE teacher_attendance
         <set>
+            <if test="updateAttendanceEnum != null">
+                update_attendance_type_ = #{updateAttendanceEnum,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            </if>
             <if test="signInStatus != null">
                 sign_in_status_ = #{signInStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
             </if>
@@ -500,13 +506,14 @@
         <result property="complaintsContent" column="complaints_content_"/>
         <result property="disposeContent" column="dispose_content_"/>
         <result property="teacherAttendanceId" column="teacher_attendance_id_"/>
+        <result property="updateAttendanceEnum" column="update_attendance_type_" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
     </resultMap>
     <select id="queryTeacherAttendanceComplaints" resultMap="TeacherAttendanceComplaintsDtoMap">
         SELECT o.name_ organ_name_,ta.course_schedule_id_,cs.name_ course_schedule_name_,cs.class_date_ course_schedule_time_,
         IF(ta.sign_in_status_ IS NULL,3,ta.sign_in_status_) sign_in_status_,
         IF(ta.sign_out_status_ IS NULL,3,ta.sign_out_status_) sign_out_status_,
         suo.real_name_ operator_name_,su.real_name_ teacher_name_,ta.complaints_status_,ta.sign_in_time_,ta.sign_out_time_
-        ,ta.complaints_content_,ta.dispose_content_,cs.end_class_time_,cs.start_class_time_,ta.id_ teacher_attendance_id_
+        ,ta.complaints_content_,ta.dispose_content_,cs.end_class_time_,cs.start_class_time_,ta.id_ teacher_attendance_id_,ta.update_attendance_type_
         FROM teacher_attendance ta
         LEFT JOIN sys_user su ON ta.teacher_id_ = su.id_
         LEFT JOIN teacher t ON t.id_ = su.id_

+ 2 - 1
mec-web/src/main/java/com/ym/mec/web/controller/TeacherAttendanceController.java

@@ -5,6 +5,7 @@ import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
+import com.ym.mec.biz.dal.enums.UpdateAttendanceEnum;
 import com.ym.mec.biz.dal.page.TeacherAttendanceComplaintsQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
 import com.ym.mec.biz.service.TeacherAttendanceService;
@@ -114,7 +115,7 @@ public class TeacherAttendanceController extends BaseController {
     @ApiOperation(value = "同意教师异常考勤申述")
     @PostMapping("/agreeTeacherAttendanceComplaints")
     @PreAuthorize("@pcs.hasPermissions('teacherAttendance/agreeTeacherAttendanceComplaints')")
-    public Object agreeTeacherAttendanceComplaints(Integer signInStatus,Integer signOutStatus,long teacherAttendanceId,String content){
+    public Object agreeTeacherAttendanceComplaints(Integer signInStatus, Integer signOutStatus, long teacherAttendanceId, String content){
         teacherAttendanceService.agreeTeacherAttendanceComplaints(signInStatus,signOutStatus,teacherAttendanceId,content);
         return succeed();
     }