| @@ -272,30 +272,33 @@ open class MailReminderService( | |||
| if (!allHolidaysList.contains(today) && dayOfWeek != DayOfWeek.SATURDAY && dayOfWeek != DayOfWeek.SUNDAY) { | |||
| // get working day | |||
| var daysChecking: Int = 0 | |||
| var fourDaysBefore: LocalDate = today | |||
| var daysChecking: Int = 2 // check the date from the day before | |||
| var tenDaysBefore: LocalDate = today | |||
| var sevenDaysBefore: LocalDate = today | |||
| var daysBefore: LocalDate = today.minusDays(1) | |||
| val workingDaysList = mutableListOf<LocalDate>() | |||
| while (true) { | |||
| while (daysChecking <= 10) { | |||
| // println("daysChecking: $daysChecking --- daysBefore: $daysBefore") | |||
| if (!allHolidaysList.contains(daysBefore) && daysBefore.dayOfWeek != DayOfWeek.SATURDAY && daysBefore.dayOfWeek != DayOfWeek.SUNDAY) { | |||
| daysChecking++ | |||
| if (daysChecking in 4..7) { | |||
| if (daysChecking in 7 .. 10) { | |||
| workingDaysList.add(daysBefore) | |||
| } | |||
| if (daysChecking == 4) { | |||
| fourDaysBefore = daysBefore | |||
| } else if (daysChecking == 7) { | |||
| // 7 days before | |||
| if (daysChecking == 7) { | |||
| sevenDaysBefore = daysBefore | |||
| } | |||
| else if (daysChecking == 10) { // 10 days before | |||
| tenDaysBefore = daysBefore | |||
| break | |||
| } | |||
| } | |||
| daysChecking ++ | |||
| daysBefore = daysBefore.minusDays(1) | |||
| } | |||
| val args = mutableMapOf( | |||
| "from" to sevenDaysBefore, | |||
| "to" to fourDaysBefore, | |||
| "from" to tenDaysBefore, | |||
| "to" to sevenDaysBefore, | |||
| ) | |||
| val ts = timesheetsService.workHourRecordsWithinRange(args) | |||
| @@ -306,7 +309,7 @@ open class MailReminderService( | |||
| hours = it["hours"].toString().toDouble() | |||
| ) | |||
| } | |||
| // val timesheet = timesheetRepository.findByDeletedFalseAndRecordDateBetweenOrderByRecordDate(sevenDaysBefore, fourDaysBefore) | |||
| // val timesheet = timesheetRepository.findByDeletedFalseAndRecordDateBetweenOrderByRecordDate(tenDaysBefore, sevenDaysBefore) | |||
| val staffs = staffRepository.findAllByEmployTypeAndDeletedFalseAndDepartDateIsNull(FULLTIME).filter { it.staffId != "A003" && it.staffId != "A004" && it.staffId != "B011" }.filter{ it.team?.code != "HO"} | |||
| val staffIds: List<Long> = staffs.map { it.id as Long } | |||
| val timesheetByIdAndRecord = timesheet.groupBy { | |||
| @@ -357,8 +360,8 @@ open class MailReminderService( | |||
| if (!allHolidaysList.contains(today) && dayOfWeek != DayOfWeek.SATURDAY && dayOfWeek != DayOfWeek.SUNDAY) { | |||
| // get working day | |||
| var daysChecking: Int = 0 | |||
| var fourDaysBefore: LocalDate = today | |||
| var sevenDaysBefore: LocalDate = today | |||
| var tenDaysBefore: LocalDate = today | |||
| var daysBefore: LocalDate = today.minusDays(1) | |||
| val workingDaysList = mutableListOf<LocalDate>() | |||
| @@ -370,16 +373,16 @@ open class MailReminderService( | |||
| workingDaysList.add(daysBefore) | |||
| } | |||
| if (daysChecking == 4) { | |||
| fourDaysBefore = daysBefore | |||
| } else if (daysChecking == 7) { | |||
| sevenDaysBefore = daysBefore | |||
| } else if (daysChecking == 7) { | |||
| tenDaysBefore = daysBefore | |||
| break | |||
| } | |||
| } | |||
| daysBefore = daysBefore.minusDays(1) | |||
| } | |||
| val timesheet = timesheetRepository.findByDeletedFalseAndRecordDateBetweenOrderByRecordDate(sevenDaysBefore,fourDaysBefore) | |||
| val timesheet = timesheetRepository.findByDeletedFalseAndRecordDateBetweenOrderByRecordDate(tenDaysBefore,sevenDaysBefore) | |||
| // just getting my own staff record | |||
| // change it back later | |||
| val staffs = staffRepository.findAllByEmployTypeAndDeletedFalseAndDepartDateIsNull(FULLTIME) | |||