|
|
@@ -88,6 +88,8 @@ public class ScheduleController {
|
|
|
@Transactional(rollbackFor = {Exception.class})
|
|
|
public void autoDispatch() throws Exception {
|
|
|
|
|
|
+ Date dateNow = new Date();
|
|
|
+ String getDate = TimeExchange.getDate();
|
|
|
try {
|
|
|
if (scheduleConfig.getIsOpen().equals("1")) {
|
|
|
|
|
|
@@ -106,7 +108,7 @@ public class ScheduleController {
|
|
|
// classes.add(classData);
|
|
|
|
|
|
//当天已存在的考勤数据 判断是否重复使用
|
|
|
- List<SmartAttendance> attendanceList = smartAttendanceService.queryAttendancesNoleave(TimeExchange.getStartOfDayStr(new Date()), TimeExchange.getEndOfDayStr(new Date()));
|
|
|
+ List<SmartAttendance> attendanceList = smartAttendanceService.queryAttendancesNoleave(TimeExchange.getStartOfDayStr(dateNow), TimeExchange.getEndOfDayStr(dateNow));
|
|
|
|
|
|
for (SmartClass data : classes) {
|
|
|
Optional<SmartGrade> oGrade = grades.stream().filter(e -> e.getId().equals(data.getGradeId())).findFirst();
|
|
|
@@ -122,7 +124,7 @@ public class ScheduleController {
|
|
|
AttendanceRuleListEventByClazzParam.Query query = AttendanceRuleListEventByClazzParam.Query.builder()
|
|
|
.appId(seewoConfig.getAppId())
|
|
|
.schoolUid(seewoConfig.getSchoolId())
|
|
|
- .date(TimeExchange.getDate())
|
|
|
+ .date(getDate)
|
|
|
.classUid(data.getClassUid())
|
|
|
.page(1)
|
|
|
.pageSize(20)
|
|
|
@@ -151,8 +153,8 @@ public class ScheduleController {
|
|
|
for (AttendanceRuleListEventByClazzResult.DataItem eventId : eventItems) {
|
|
|
|
|
|
//判断考勤是否开始 用考勤事件的开始时间和当前时间判断 考勤规则开始生效了才拉取
|
|
|
- Date eventStartTime = TimeExchange.StringToDate((TimeExchange.getDate() + " " + eventId.getAttendStartTime() + ":00"), "yyyy-MM-dd HH:mm:ss");
|
|
|
- Date nowDate = new Date();
|
|
|
+ Date eventStartTime = TimeExchange.StringToDate((getDate + " " + eventId.getAttendStartTime() + ":00"), "yyyy-MM-dd HH:mm:ss");
|
|
|
+ Date nowDate = dateNow;
|
|
|
if (nowDate.compareTo(eventStartTime) < 0) {
|
|
|
continue;
|
|
|
}
|
|
|
@@ -170,7 +172,7 @@ public class ScheduleController {
|
|
|
//query
|
|
|
AttendanceServiceListAttendClassRecordsParam.Query kQuery = AttendanceServiceListAttendClassRecordsParam.Query.builder()
|
|
|
.eventId(eventId.getRuleId())//考勤事件ID 固定写死
|
|
|
- .attendDate(TimeExchange.getDate())//考勤日期
|
|
|
+ .attendDate(getDate)//考勤日期
|
|
|
.appId(seewoConfig.getAppId())//appid
|
|
|
.grade(oGrade != null && oGrade.isPresent() ? oGrade.get().getGradeNo() : 1)//年级序号
|
|
|
.classUid(data.getClassUid())//班级uid 班级uid与年级序号、班级序号二选一确定具体的班级,如果都填以classUid为准
|
|
|
@@ -207,7 +209,7 @@ public class ScheduleController {
|
|
|
oldData = oldAttends.get(i);
|
|
|
if (newAttend.getStatus().intValue() != 6) {
|
|
|
boolean isUpdate = false;
|
|
|
- Date AttendTime = StringUtils.hasText(newAttend.getAttendTime()) ? TimeExchange.StringToDate((TimeExchange.getDate() + " " + newAttend.getAttendTime()), "yyyy-MM-dd HH:mm:ss") : TimeExchange.StringToDate((TimeExchange.getDate() + " " + eventId.getAttendEndTime() + ":00"), "yyyy-MM-dd HH:mm:ss");
|
|
|
+ Date AttendTime = StringUtils.hasText(newAttend.getAttendTime()) ? TimeExchange.StringToDate((getDate + " " + newAttend.getAttendTime()), "yyyy-MM-dd HH:mm:ss") : TimeExchange.StringToDate((getDate + " " + eventId.getAttendEndTime() + ":00"), "yyyy-MM-dd HH:mm:ss");
|
|
|
if (oldData.getAttendTime().compareTo(AttendTime) != 0) {
|
|
|
oldData.setAttendTime(AttendTime);
|
|
|
isUpdate = true;
|
|
|
@@ -235,7 +237,7 @@ public class ScheduleController {
|
|
|
attendance.setClassUid(kResult.getResponseBody().getData().getClassUid());
|
|
|
attendance.setXwUserName(newAttend.getUserName());
|
|
|
attendance.setXwStudentCode(newAttend.getStudentCode());
|
|
|
- attendance.setAttendTime(StringUtils.hasText(newAttend.getAttendTime()) ? TimeExchange.StringToDate((TimeExchange.getDate() + " " + newAttend.getAttendTime()), "yyyy-MM-dd HH:mm:ss") : TimeExchange.StringToDate((TimeExchange.getDate() + " " + eventId.getAttendEndTime() + ":00"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
+ attendance.setAttendTime(StringUtils.hasText(newAttend.getAttendTime()) ? TimeExchange.StringToDate((getDate+ " " + newAttend.getAttendTime()), "yyyy-MM-dd HH:mm:ss") : TimeExchange.StringToDate((getDate + " " + eventId.getAttendEndTime() + ":00"), "yyyy-MM-dd HH:mm:ss"));
|
|
|
attendance.setStatus(newAttend.getStatus());
|
|
|
attendance.setRuleId(eventId.getRuleId());
|
|
|
attendances.add(attendance);
|