From 409bc7740966ff84805bbe15d94c973dc54cb004 Mon Sep 17 00:00:00 2001 From: "MSI\\derek" Date: Mon, 27 May 2024 17:59:28 +0800 Subject: [PATCH] update --- .../tsms/modules/data/web/TeamController.kt | 20 ++++++++++++++++++- .../modules/data/web/models/NewTeamRequest.kt | 3 ++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ffii/tsms/modules/data/web/TeamController.kt b/src/main/java/com/ffii/tsms/modules/data/web/TeamController.kt index bb00181..da737f9 100644 --- a/src/main/java/com/ffii/tsms/modules/data/web/TeamController.kt +++ b/src/main/java/com/ffii/tsms/modules/data/web/TeamController.kt @@ -1,8 +1,11 @@ package com.ffii.tsms.modules.data.web +import com.ffii.core.exception.NotFoundException import com.ffii.core.response.RecordsRes import com.ffii.core.utils.CriteriaArgsBuilder +import com.ffii.core.utils.Params import com.ffii.tsms.modules.data.entity.Team +import com.ffii.tsms.modules.data.service.StaffsService import com.ffii.tsms.modules.data.service.TeamService import com.ffii.tsms.modules.data.web.models.NewTeamRequest import jakarta.servlet.http.HttpServletRequest @@ -15,7 +18,10 @@ import org.springframework.web.bind.annotation.* @RestController @RequestMapping("/team") -class TeamController(private val teamService: TeamService) { +class TeamController( + private val teamService: TeamService, + private val staffsService: StaffsService, + ) { @GetMapping fun allStaff(args: Map): List> { @@ -34,6 +40,18 @@ class TeamController(private val teamService: TeamService) { return teamService.getTeamDetail(args); } + @GetMapping("/{id}") + fun getStaff(@PathVariable id: Long): MutableMap { + val map: MutableMap = mutableMapOf("team" to teamService.find(id).orElseThrow { NotFoundException() }) + val staffList = staffsService.findAllByTeamId(id).orElseThrow { NotFoundException() } + val staffIdList: MutableList = mutableListOf() + for (staff in staffList) { + staffIdList.add(staff.id as Long) + } + map["staffIds"] = staffIdList + return map + } + // @Transactional(rollbackFor = [Exception::class]) @DeleteMapping("/delete/{id}") @ResponseStatus(HttpStatus.NO_CONTENT) diff --git a/src/main/java/com/ffii/tsms/modules/data/web/models/NewTeamRequest.kt b/src/main/java/com/ffii/tsms/modules/data/web/models/NewTeamRequest.kt index 224a181..c320a7d 100644 --- a/src/main/java/com/ffii/tsms/modules/data/web/models/NewTeamRequest.kt +++ b/src/main/java/com/ffii/tsms/modules/data/web/models/NewTeamRequest.kt @@ -6,7 +6,8 @@ import java.time.LocalDate data class NewTeamRequest ( val addStaffIds: List?, - + val name: String, + val code: String, val deleteStaffIds: List?, val description: String?, val id: Long?