package jp.primecloud.auto.api.component; import java.util.List; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; import jp.primecloud.auto.api.ApiSupport; import jp.primecloud.auto.api.ApiValidate; import jp.primecloud.auto.api.response.component.ComponentTypeResponse; import jp.primecloud.auto.api.response.component.ListComponentTypeResponse; import jp.primecloud.auto.entity.crud.Farm; import jp.primecloud.auto.service.dto.ComponentTypeDto; @Path("/ListComponentType") public class ListComponentType extends ApiSupport { @GET @Produces(MediaType.APPLICATION_JSON) public ListComponentTypeResponse listComponentType(@QueryParam(PARAM_NAME_FARM_NO) String farmNo) { // 入力チェック ApiValidate.validateFarmNo(farmNo); // ファーム取得 Farm farm = getFarm(Long.parseLong(farmNo)); // 権限チェック checkAndGetUser(farm); List<ComponentTypeDto> componentTypeDtos = componentService.getComponentTypes(farm.getFarmNo()); ListComponentTypeResponse response = new ListComponentTypeResponse(); for (ComponentTypeDto componentTypeDto : componentTypeDtos) { ComponentTypeResponse componentTypeResponse = new ComponentTypeResponse(componentTypeDto.getComponentType()); response.getComponentTypes().add(componentTypeResponse); } return response; } }