diff --git a/src/main/java/com/ffii/tsms/modules/project/entity/ProjectRepository.kt b/src/main/java/com/ffii/tsms/modules/project/entity/ProjectRepository.kt index 7a55c60..e0b5634 100644 --- a/src/main/java/com/ffii/tsms/modules/project/entity/ProjectRepository.kt +++ b/src/main/java/com/ffii/tsms/modules/project/entity/ProjectRepository.kt @@ -38,6 +38,8 @@ interface ProjectRepository : AbstractRepository { fun findByCode(code: String): Project? + fun findByCodeAndDeletedIsFalse(code: String): Project? + @Query("SELECT p.id FROM Project p WHERE substring_index(substring_index(p.code, '-', 2), '-', -1) like concat('%', substring_index(substring_index(?1, '-', 2), '-', -1), '%')") fun checkMainProjectByCodeLike(code: String): List? diff --git a/src/main/java/com/ffii/tsms/modules/project/service/ProjectsService.kt b/src/main/java/com/ffii/tsms/modules/project/service/ProjectsService.kt index e1665c2..09bb101 100644 --- a/src/main/java/com/ffii/tsms/modules/project/service/ProjectsService.kt +++ b/src/main/java/com/ffii/tsms/modules/project/service/ProjectsService.kt @@ -210,7 +210,7 @@ open class ProjectsService( // if (request.projectCode != null && request.mainProjectId == null) projectRepository.checkMainProjectByCodeLike(request.projectCode) else null val duplicateProject = - if (request.projectCode != null) projectRepository.findByCode(request.projectCode) else null + if (request.projectCode != null) projectRepository.findByCodeAndDeletedIsFalse(request.projectCode) else null //check duplicate project // if (!duplicateProject.isNullOrEmpty() && !duplicateProject.contains(request.projectId)) { @@ -597,7 +597,7 @@ open class ProjectsService( mainProjectCode + '-' + String.format("%03d", splitProjectCode[1].split(')')[0].toInt()) val mainProject = - projectRepository.findByCode(mainProjectCode) ?: projectRepository.saveAndFlush( + projectRepository.findByCodeAndDeletedIsFalse(mainProjectCode) ?: projectRepository.saveAndFlush( Project().apply { name = row.getCell(1).stringCellValue description = row.getCell(1).stringCellValue @@ -617,7 +617,7 @@ open class ProjectsService( projectCode = splitProjectCode[0] + '-' + String.format("%04d", splitProjectCode[1].toInt()) } - val project = projectRepository.findByCode(projectCode) + val project = projectRepository.findByCodeAndDeletedIsFalse(projectCode) val projectId = project?.id logger.info("projectCode :$projectCode") diff --git a/src/main/java/com/ffii/tsms/modules/timesheet/service/TimesheetsService.kt b/src/main/java/com/ffii/tsms/modules/timesheet/service/TimesheetsService.kt index cd2ca3c..5573028 100644 --- a/src/main/java/com/ffii/tsms/modules/timesheet/service/TimesheetsService.kt +++ b/src/main/java/com/ffii/tsms/modules/timesheet/service/TimesheetsService.kt @@ -240,7 +240,7 @@ open class TimesheetsService( } logger.info("Project Code: $projectCode") - val project = projectRepository.findByCode(projectCode) + val project = projectRepository.findByCodeAndDeletedIsFalse(projectCode) // process project task logger.info("---------project task-------")