Commit 0046f601 authored by 赵啸非's avatar 赵啸非

整理代码

parent c5722674
...@@ -5,6 +5,10 @@ import com.mortals.framework.exception.AppException; ...@@ -5,6 +5,10 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.xhx.common.code.*; import com.mortals.xhx.common.code.*;
import com.mortals.xhx.module.attendance.model.*; import com.mortals.xhx.module.attendance.model.*;
import com.mortals.xhx.module.holiday.model.HolidayEntity;
import com.mortals.xhx.module.holiday.model.HolidayQuery;
import com.mortals.xhx.module.holiday.service.HolidayService;
import com.mortals.xhx.utils.SpringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
...@@ -26,6 +30,8 @@ public abstract class AttendanceWorkAbstract { ...@@ -26,6 +30,8 @@ public abstract class AttendanceWorkAbstract {
abstract void initData(); abstract void initData();
private HolidayService holidayService;
public abstract void doHandleWork(CommonData commonData); public abstract void doHandleWork(CommonData commonData);
...@@ -136,8 +142,41 @@ public abstract class AttendanceWorkAbstract { ...@@ -136,8 +142,41 @@ public abstract class AttendanceWorkAbstract {
} }
protected Boolean checkWorkByHoliday(String date) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(date);
holidayQuery.setStartTimeEnd(date);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.YES.getValue()) {
bool = true;
}
}
return bool;
}
protected Boolean checkHolidayByWorkDay(String date) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(date);
holidayQuery.setStartTimeEnd(date);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.NO.getValue()) {
bool = true;
}
}
return bool;
}
public AttendanceWorkAbstract(int type) { public AttendanceWorkAbstract(int type) {
this.holidayService = SpringUtils.getBean(HolidayService.class);
this.type = type; this.type = type;
} }
......
...@@ -32,38 +32,17 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -32,38 +32,17 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
private AttendanceGroupFixedworkService attendanceGroupFixedworkService; private AttendanceGroupFixedworkService attendanceGroupFixedworkService;
private AttendanceClassService attendanceClassService;
private AttendanceClassDetailService attendanceClassDetailService;
private AttendanceGroupFixedworkSpecialService specialService;
private AttendanceRecordService attendanceRecordService;
private AttendanceRecordHikService recordHikService;
private AttendanceRecordErrorService errorService; private AttendanceRecordErrorService errorService;
private HolidayService holidayService;
private AttendanceLeaveRecordService attendanceLeaveRecordService; private AttendanceLeaveRecordService attendanceLeaveRecordService;
private AttendanceRecordDetailService attendanceRecordDetailService;
private Map<Long, AttendanceClassDetailEntity> classDetailEntityMap; private Map<Long, AttendanceClassDetailEntity> classDetailEntityMap;
public FixWorkOtherAttendance(int type) { public FixWorkOtherAttendance(int type) {
super(type); super(type);
this.attendanceGroupFixedworkService = SpringUtils.getBean(AttendanceGroupFixedworkService.class); this.attendanceGroupFixedworkService = SpringUtils.getBean(AttendanceGroupFixedworkService.class);
this.attendanceClassService = SpringUtils.getBean(AttendanceClassService.class);
this.specialService = SpringUtils.getBean(AttendanceGroupFixedworkSpecialService.class);
this.attendanceRecordService = SpringUtils.getBean(AttendanceRecordService.class);
this.recordHikService = SpringUtils.getBean(AttendanceRecordHikService.class);
this.attendanceClassDetailService = SpringUtils.getBean(AttendanceClassDetailService.class);
this.errorService = SpringUtils.getBean(AttendanceRecordErrorService.class); this.errorService = SpringUtils.getBean(AttendanceRecordErrorService.class);
this.holidayService = SpringUtils.getBean(HolidayService.class);
this.attendanceLeaveRecordService = SpringUtils.getBean(AttendanceLeaveRecordService.class); this.attendanceLeaveRecordService = SpringUtils.getBean(AttendanceLeaveRecordService.class);
this.attendanceRecordDetailService = SpringUtils.getBean(AttendanceRecordDetailService.class);
} }
@Override @Override
...@@ -90,11 +69,9 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -90,11 +69,9 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
String week = super.getWeek(DateUtil.parseDate(commonData.getDateStr())); String week = super.getWeek(DateUtil.parseDate(commonData.getDateStr()));
//获取当前日期的详细班次 //获取当前日期的详细班次
Long weekClassId = this.getWeekClassId(attendanceGroupFixedworkEntity, week); Long weekClassId = this.getWeekClassId(attendanceGroupFixedworkEntity, week);
//log.info("weekClassId:{}", weekClassId);
//weekClassId为-1 则不在考勤 //weekClassId为-1 则不在考勤
Boolean checkWorkByHoliday = checkWorkByHoliday(commonData.getDateStr()); Boolean checkWorkByHoliday = checkWorkByHoliday(commonData.getDateStr());
Boolean checkHolidayByWorkDay = checkHolidayByWorkDay(commonData.getDateStr()); Boolean checkHolidayByWorkDay = checkHolidayByWorkDay(commonData.getDateStr());
if (weekClassId == -1L) { if (weekClassId == -1L) {
//跳过本次循环 //跳过本次循环
if (!checkWorkByHoliday) { if (!checkWorkByHoliday) {
...@@ -165,7 +142,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -165,7 +142,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
return; return;
} }
} }
if (AddWayEnum.时间段.getValue() == specialEntity.getAddWay()) { if (AddWayEnum.时间段.getValue() == specialEntity.getAddWay()) {
Date specialStartTime = specialEntity.getSpecialStartTime(); Date specialStartTime = specialEntity.getSpecialStartTime();
Date specialEndTime = specialEntity.getSpecialEndTime(); Date specialEndTime = specialEntity.getSpecialEndTime();
...@@ -336,7 +312,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -336,7 +312,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
if (ObjectUtils.isEmpty(goWorkDate)) { if (ObjectUtils.isEmpty(goWorkDate)) {
//goWorkDate为空 缺卡状态 //goWorkDate为空 缺卡状态
Date goWorkDate1 = attendanceClassDetailEntity.getGoWorkDate(); Date goWorkDate1 = attendanceClassDetailEntity.getGoWorkDate();
if (attendanceClassDetailEntity.getGoWorkDateAfter() > 0) { if (attendanceClassDetailEntity.getGoWorkDateAfter() > 0) {
goWorkDate1 = DateUtil.offsetMinute(goWorkDate1, attendanceClassDetailEntity.getGoWorkDateAfter()); goWorkDate1 = DateUtil.offsetMinute(goWorkDate1, attendanceClassDetailEntity.getGoWorkDateAfter());
} }
...@@ -346,7 +321,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -346,7 +321,6 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
if (in) { if (in) {
detail.setGoWorkResult(GoWorkResultEnum.请假.getValue()); detail.setGoWorkResult(GoWorkResultEnum.请假.getValue());
} }
} else { } else {
boolean in = DateUtil.isIn(goWorkDate, startLeaveTime, endLeaveTime); boolean in = DateUtil.isIn(goWorkDate, startLeaveTime, endLeaveTime);
if (in) { if (in) {
...@@ -486,36 +460,7 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract { ...@@ -486,36 +460,7 @@ public class FixWorkOtherAttendance extends AttendanceWorkAbstract {
} }
} }
private Boolean checkWorkByHoliday(String date) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(date);
holidayQuery.setStartTimeEnd(date);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.YES.getValue()) {
bool = true;
}
}
return bool;
}
private Boolean checkHolidayByWorkDay(String date) {
Boolean bool = false;
HolidayQuery holidayQuery = new HolidayQuery();
holidayQuery.setStartTimeStart(date);
holidayQuery.setStartTimeEnd(date);
HolidayEntity holidayEntity = holidayService.selectOne(holidayQuery);
if (!ObjectUtils.isEmpty(holidayEntity)) {
Integer workorholiday = holidayEntity.getWorkorholiday();
if (workorholiday == YesNoEnum.NO.getValue()) {
bool = true;
}
}
return bool;
}
public static void main(String[] args) { public static void main(String[] args) {
......
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