|
|
@@ -4,11 +4,14 @@ import com.ffii.core.support.AbstractIdEntityService |
|
|
|
import com.ffii.core.support.JdbcDao |
|
|
|
import com.ffii.tsms.modules.project.entity.ProjectExpense |
|
|
|
import com.ffii.tsms.modules.project.entity.ProjectExpenseRepository |
|
|
|
import com.ffii.tsms.modules.project.entity.ProjectRepository |
|
|
|
import com.ffii.tsms.modules.project.entity.projections.ProjectExpenseSearchInfo |
|
|
|
import com.ffii.tsms.modules.project.web.models.ProjectExpenseRequest |
|
|
|
import org.springframework.stereotype.Service |
|
|
|
|
|
|
|
@Service |
|
|
|
open class ProjectExpenseService( |
|
|
|
private val projectRepository: ProjectRepository, |
|
|
|
private val projectExpenseRepository: ProjectExpenseRepository, |
|
|
|
private val jdbcDao: JdbcDao, |
|
|
|
) : AbstractIdEntityService<ProjectExpense, Long, ProjectExpenseRepository>(jdbcDao, projectExpenseRepository){ |
|
|
@@ -16,4 +19,27 @@ open class ProjectExpenseService( |
|
|
|
return projectExpenseRepository.findExpenseSearchInfoByDeletedFalse() |
|
|
|
} |
|
|
|
|
|
|
|
open fun createProjectExpense(projectExpenseList: List<ProjectExpenseRequest>): Boolean { |
|
|
|
try { |
|
|
|
for (projectExpense in projectExpenseList) { |
|
|
|
val project = projectRepository.findAll().filter { it.deleted == false && it.id == projectExpense.projectId }[0] |
|
|
|
val team = project.teamLead!!.team |
|
|
|
val newProjectExpense = ProjectExpense().apply { |
|
|
|
expenseNo = projectExpense.expenseNo |
|
|
|
issueDate = projectExpense.issueDate |
|
|
|
receiptDate = projectExpense.receiptDate |
|
|
|
amount = projectExpense.amount |
|
|
|
this.project = project |
|
|
|
this.team = team |
|
|
|
remarks = projectExpense.remarks |
|
|
|
} |
|
|
|
projectExpenseRepository.save(newProjectExpense) |
|
|
|
} |
|
|
|
} catch (e: Exception) { |
|
|
|
println(e) |
|
|
|
return false |
|
|
|
} |
|
|
|
return true |
|
|
|
} |
|
|
|
|
|
|
|
} |