|
@@ -3,10 +3,7 @@ package com.ffii.tsms.modules.project.service |
|
|
import com.ffii.core.support.JdbcDao |
|
|
import com.ffii.core.support.JdbcDao |
|
|
import com.ffii.tsms.modules.data.entity.GradeRepository |
|
|
import com.ffii.tsms.modules.data.entity.GradeRepository |
|
|
import com.ffii.tsms.modules.project.entity.* |
|
|
import com.ffii.tsms.modules.project.entity.* |
|
|
import com.ffii.tsms.modules.project.web.models.EditTaskTemplateDetails |
|
|
|
|
|
import com.ffii.tsms.modules.project.web.models.NewProjectRequest |
|
|
|
|
|
import com.ffii.tsms.modules.project.web.models.NewTaskTemplateRequest |
|
|
|
|
|
import com.ffii.tsms.modules.project.web.models.TaskGroupAllocation |
|
|
|
|
|
|
|
|
import com.ffii.tsms.modules.project.web.models.* |
|
|
import org.springframework.stereotype.Service |
|
|
import org.springframework.stereotype.Service |
|
|
import kotlin.jvm.optionals.getOrNull |
|
|
import kotlin.jvm.optionals.getOrNull |
|
|
|
|
|
|
|
@@ -36,6 +33,10 @@ class TasksService( |
|
|
taskTemplateRepository.deleteById(id) |
|
|
taskTemplateRepository.deleteById(id) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
fun findTaskTemplateByCode(code: String): TaskTemplate? { |
|
|
|
|
|
return taskTemplateRepository.findByCode(code) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
fun getTaskTemplateDetails(id: Long): EditTaskTemplateDetails? { |
|
|
fun getTaskTemplateDetails(id: Long): EditTaskTemplateDetails? { |
|
|
val taskTemplate = taskTemplateRepository.findById(id) |
|
|
val taskTemplate = taskTemplateRepository.findById(id) |
|
|
|
|
|
|
|
@@ -63,8 +64,19 @@ class TasksService( |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
fun saveTaskTemplate(request: NewTaskTemplateRequest): TaskTemplate { |
|
|
|
|
|
|
|
|
fun saveTaskTemplate(request: NewTaskTemplateRequest): NewTaskTemplateResponse { |
|
|
val id = request.id |
|
|
val id = request.id |
|
|
|
|
|
|
|
|
|
|
|
val duplicateTaskTemplate = findTaskTemplateByCode(request.code) |
|
|
|
|
|
|
|
|
|
|
|
//check duplicate customer |
|
|
|
|
|
if (duplicateTaskTemplate != null && duplicateTaskTemplate.id?.equals(id) == false) { |
|
|
|
|
|
return NewTaskTemplateResponse( |
|
|
|
|
|
taskTemplate = duplicateTaskTemplate, |
|
|
|
|
|
message = "The task template code has already existed" |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
val taskTemplate = if (id != null && id > 0) findTaskTemplate(id) else TaskTemplate() |
|
|
val taskTemplate = if (id != null && id > 0) findTaskTemplate(id) else TaskTemplate() |
|
|
taskTemplate.apply { |
|
|
taskTemplate.apply { |
|
|
this.name = request.name |
|
|
this.name = request.name |
|
@@ -96,17 +108,13 @@ class TasksService( |
|
|
|
|
|
|
|
|
val savedTaskTemplate = taskTemplateRepository.save<TaskTemplate>(taskTemplate) |
|
|
val savedTaskTemplate = taskTemplateRepository.save<TaskTemplate>(taskTemplate) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
println(taskTemplateGroupAllocationRepository.findAllByTaskTemplate(taskTemplate).size) |
|
|
|
|
|
println(groupAllocations.size) |
|
|
|
|
|
println(taskTemplateGroupAllocationRepository.findAllByTaskTemplate(taskTemplate).subtract(gradeAllocations.toSet()).size) |
|
|
|
|
|
taskTemplateGradeAllocationRepository.deleteAll(taskTemplateGradeAllocationRepository.findAllByTaskTemplate(taskTemplate).subtract(gradeAllocations.toSet())) |
|
|
taskTemplateGradeAllocationRepository.deleteAll(taskTemplateGradeAllocationRepository.findAllByTaskTemplate(taskTemplate).subtract(gradeAllocations.toSet())) |
|
|
taskTemplateGroupAllocationRepository.deleteAll(taskTemplateGroupAllocationRepository.findAllByTaskTemplate(taskTemplate).subtract(groupAllocations.toSet())) |
|
|
taskTemplateGroupAllocationRepository.deleteAll(taskTemplateGroupAllocationRepository.findAllByTaskTemplate(taskTemplate).subtract(groupAllocations.toSet())) |
|
|
|
|
|
|
|
|
taskTemplateGradeAllocationRepository.saveAll<TaskTemplateGradeAllocation>(gradeAllocations) |
|
|
taskTemplateGradeAllocationRepository.saveAll<TaskTemplateGradeAllocation>(gradeAllocations) |
|
|
taskTemplateGroupAllocationRepository.saveAll<TaskTemplateGroupAllocation>(groupAllocations) |
|
|
taskTemplateGroupAllocationRepository.saveAll<TaskTemplateGroupAllocation>(groupAllocations) |
|
|
|
|
|
|
|
|
return savedTaskTemplate |
|
|
|
|
|
|
|
|
return NewTaskTemplateResponse(taskTemplate = savedTaskTemplate, message = "Success"); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
fun allTaskGroups(): List<TaskGroup> { |
|
|
fun allTaskGroups(): List<TaskGroup> { |
|
|