Parcourir la source

Remove time entry merging

tags/Baseline_30082024_BACKEND_UAT
Wayne il y a 1 an
Parent
révision
f3fbc38118
2 fichiers modifiés avec 2 ajouts et 23 suppressions
  1. +1
    -9
      src/main/java/com/ffii/tsms/modules/timesheet/service/LeaveService.kt
  2. +1
    -14
      src/main/java/com/ffii/tsms/modules/timesheet/service/TimesheetsService.kt

+ 1
- 9
src/main/java/com/ffii/tsms/modules/timesheet/service/LeaveService.kt Voir le fichier

@@ -39,7 +39,7 @@ open class LeaveService(
// Replace db leave entries by deleting and then adding back
leaveRepository.deleteAllByStaffAndRecordDate(currentStaff, entryDate)

mergeLeaveEntriesByType(leaveEntries).map { leaveEntry ->
leaveEntries.map { leaveEntry ->
Leave().apply {
this.staff = currentStaff
this.recordDate = entryDate
@@ -130,12 +130,4 @@ open class LeaveService(
)
} }
}

private fun mergeLeaveEntriesByType(entries: List<LeaveEntry>): List<LeaveEntry> {
return entries
.groupBy { leaveEntry -> leaveEntry.leaveTypeId }
.values.map { leaveEntires ->
leaveEntires.reduce { acc, leaveEntry -> acc.copy(inputHours = acc.inputHours + leaveEntry.inputHours) }
}
}
}

+ 1
- 14
src/main/java/com/ffii/tsms/modules/timesheet/service/TimesheetsService.kt Voir le fichier

@@ -42,7 +42,7 @@ open class TimesheetsService(
// Replace db timesheet entries by deleting and then adding back
timesheetRepository.deleteAllByStaffAndRecordDate(currentStaff, entryDate)

mergeTimeEntriesByProjectAndTask(timeEntries).map { timeEntry ->
timeEntries.map { timeEntry ->
val task = timeEntry.taskId?.let { taskRepository.findById(it).getOrNull() }
val project = timeEntry.projectId?.let { projectRepository.findById(it).getOrNull() }
val projectTask =
@@ -162,19 +162,6 @@ open class TimesheetsService(
}
}

private fun mergeTimeEntriesByProjectAndTask(entries: List<TimeEntry>): List<TimeEntry> {
return entries
.groupBy { timeEntry -> Pair(timeEntry.projectId, timeEntry.taskId) }
.values.map { timeEntries ->
timeEntries.reduce { acc, timeEntry ->
acc.copy(
inputHours = (acc.inputHours ?: 0.0) + (timeEntry.inputHours ?: 0.0),
otHours = (acc.otHours ?: 0.0) + (timeEntry.otHours ?: 0.0)
)
}
}
}

@Transactional(rollbackFor = [Exception::class])
open fun importFile(workbook: Workbook?): String {
val logger = LogFactory.getLog(javaClass)


Chargement…
Annuler
Enregistrer