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