Commit 866f6ba4 authored by 廖旭伟's avatar 廖旭伟

考勤异常处理后重新汇总员工考勤数据

parent 655884b9
...@@ -4,13 +4,15 @@ import cn.hutool.core.date.DateUnit; ...@@ -4,13 +4,15 @@ import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.mortals.framework.model.PageInfo; import com.mortals.framework.model.PageInfo;
import com.mortals.framework.util.DataUtil; import com.mortals.framework.util.DataUtil;
import com.mortals.framework.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.busiz.h5.req.AttendSaveReq; import com.mortals.xhx.busiz.h5.req.AttendSaveReq;
import com.mortals.xhx.busiz.h5.web.ApiWebPerformController; import com.mortals.xhx.busiz.h5.web.ApiWebPerformController;
import com.mortals.xhx.common.code.ErrorStatusEnum; import com.mortals.xhx.common.code.ErrorStatusEnum;
import com.mortals.xhx.common.code.YesNoEnum; import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.module.attendance.model.AttendanceClassDetailEntity; import com.mortals.xhx.module.attendance.model.AttendanceClassDetailEntity;
import com.mortals.xhx.module.attendance.service.AttendanceClassDetailService; import com.mortals.xhx.module.attendance.model.vo.AttendanceSummaryQuery;
import com.mortals.xhx.module.attendance.service.AttendanceClassService; import com.mortals.xhx.module.attendance.service.*;
import com.mortals.xhx.module.perform.service.PerformAttendRecordService; import com.mortals.xhx.module.perform.service.PerformAttendRecordService;
import com.mortals.xhx.module.staff.service.StaffService; import com.mortals.xhx.module.staff.service.StaffService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -20,7 +22,6 @@ import com.mortals.framework.exception.AppException; ...@@ -20,7 +22,6 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.xhx.module.attendance.dao.AttendanceRecordErrorDao; import com.mortals.xhx.module.attendance.dao.AttendanceRecordErrorDao;
import com.mortals.xhx.module.attendance.model.AttendanceRecordErrorEntity; import com.mortals.xhx.module.attendance.model.AttendanceRecordErrorEntity;
import com.mortals.xhx.module.attendance.service.AttendanceRecordErrorService;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import java.util.List; import java.util.List;
...@@ -47,6 +48,8 @@ public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<At ...@@ -47,6 +48,8 @@ public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<At
private ApiWebPerformController apiWebPerformController; private ApiWebPerformController apiWebPerformController;
@Autowired @Autowired
private StaffService staffService; private StaffService staffService;
@Autowired
private AttendanceStatService attendanceStatService;
@Override @Override
...@@ -140,6 +143,14 @@ public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<At ...@@ -140,6 +143,14 @@ public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<At
attendSaveReq.setStaffId(entity.getStaffId()); attendSaveReq.setStaffId(entity.getStaffId());
performAttendRecordService.saveAttend(attendSaveReq, context); performAttendRecordService.saveAttend(attendSaveReq, context);
} }
//异常处理后重新汇总考勤
if(StringUtils.isNotEmpty(entity.getProcessResult())) {
AttendanceSummaryQuery query = new AttendanceSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setSummaryTime(DateUtils.getStrDate(entity.getErrorDateTime()));
attendanceStatService.doAttendanceSummary(query);
}
} }
} }
} }
\ No newline at end of file
...@@ -39,6 +39,8 @@ ...@@ -39,6 +39,8 @@
FROM FROM
mortals_xhx_staff s mortals_xhx_staff s
LEFT JOIN mortals_xhx_attendance_vacation_balance b ON s.id = b.staffId LEFT JOIN mortals_xhx_attendance_vacation_balance b ON s.id = b.staffId
WHERE 1=1
<if test="staffId != null and staffId!=''"> AND s.id = #{staffId}</if>
</select> </select>
<!-- 汇总当前日期请假情况 --> <!-- 汇总当前日期请假情况 -->
...@@ -60,6 +62,7 @@ ...@@ -60,6 +62,7 @@
AND processStatus = 2 AND processStatus = 2
AND STR_TO_DATE(date_format(startTime,'%Y-%m-%d'),'%Y-%m-%d') <![CDATA[ <= ]]> STR_TO_DATE(#{summaryTime},'%Y-%m-%d') AND STR_TO_DATE(date_format(startTime,'%Y-%m-%d'),'%Y-%m-%d') <![CDATA[ <= ]]> STR_TO_DATE(#{summaryTime},'%Y-%m-%d')
AND STR_TO_DATE(date_format(endTime,'%Y-%m-%d'),'%Y-%m-%d') <![CDATA[ >= ]]> STR_TO_DATE(#{summaryTime},'%Y-%m-%d') AND STR_TO_DATE(date_format(endTime,'%Y-%m-%d'),'%Y-%m-%d') <![CDATA[ >= ]]> STR_TO_DATE(#{summaryTime},'%Y-%m-%d')
<if test="staffId != null and staffId!=''"> AND leavePersonId = #{staffId}</if>
GROUP BY leavePersonId,leavePerson,leaveType GROUP BY leavePersonId,leavePerson,leaveType
</select> </select>
...@@ -83,6 +86,7 @@ ...@@ -83,6 +86,7 @@
and processResult != 4 and processResult != 4
and e.errorDateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{summaryTime},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') and e.errorDateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{summaryTime},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
and e.errorDateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{summaryTime},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') and e.errorDateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{summaryTime},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
<if test="staffId != null and staffId!=''"> AND e.staffId = #{staffId}</if>
group by group by
e.staffId, e.staffId,
e.staffName e.staffName
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment