년도 1개만 조회하는 타일 API
This commit is contained in:
@@ -226,11 +226,18 @@ public class LayerApiController {
|
||||
return ApiResponseDto.ok(layerService.findLayerMapList("labeling"));
|
||||
}
|
||||
|
||||
@Operation(summary = "년도별 tile Url", description = "년도별 tile Url")
|
||||
@Operation(summary = "년도별 tile Url(before,after 모두 조회)", description = "년도별 tile Url")
|
||||
@GetMapping("/tile-url")
|
||||
public ApiResponseDto<LayerDto.YearTileDto> getChangeDetectionTileUrl(
|
||||
@Parameter(description = "이전 년도", example = "2023") @RequestParam Integer beforeYear,
|
||||
@Parameter(description = "이후 년도", example = "2024") @RequestParam Integer afterYear) {
|
||||
return ApiResponseDto.ok(layerService.getChangeDetectionTileUrl(beforeYear, afterYear));
|
||||
}
|
||||
|
||||
@Operation(summary = "년도별 tile Url(년도 1개만 조회)", description = "년도별 tile Url")
|
||||
@GetMapping("/tile-url-year")
|
||||
public ApiResponseDto<LayerDto.TileUrlDto> getChangeDetectionTileOneYearUrl(
|
||||
@Parameter(description = "년도", example = "2023") @RequestParam Integer year) {
|
||||
return ApiResponseDto.ok(layerService.getChangeDetectionTileOneYearUrl(year));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.kamco.cd.kamcoback.layer.dto.LayerDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.Basic;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.LayerMapDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.OrderReq;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.TileUrlDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.WmsDto.WmsAddDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.WmsDto.WmsAddReqDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.WmsLayerInfo;
|
||||
@@ -168,4 +169,8 @@ public class LayerService {
|
||||
public LayerDto.YearTileDto getChangeDetectionTileUrl(Integer beforeYear, Integer afterYear) {
|
||||
return mapLayerCoreService.getChangeDetectionTileUrl(beforeYear, afterYear);
|
||||
}
|
||||
|
||||
public TileUrlDto getChangeDetectionTileOneYearUrl(Integer year) {
|
||||
return mapLayerCoreService.getChangeDetectionTileOneYearUrl(year);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import com.kamco.cd.kamcoback.common.utils.UserUtil;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.LayerMapDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.OrderReq;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.TileUrlDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.WmsDto.WmsAddDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.WmtsDto.WmtsAddDto;
|
||||
import com.kamco.cd.kamcoback.postgres.entity.MapLayerEntity;
|
||||
@@ -301,4 +302,8 @@ public class MapLayerCoreService {
|
||||
public LayerDto.YearTileDto getChangeDetectionTileUrl(Integer beforeYear, Integer afterYear) {
|
||||
return mapLayerRepository.getChangeDetectionTileUrl(beforeYear, afterYear);
|
||||
}
|
||||
|
||||
public TileUrlDto getChangeDetectionTileOneYearUrl(Integer year) {
|
||||
return mapLayerRepository.getChangeDetectionTileOneYearUrl(year);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.kamco.cd.kamcoback.postgres.repository.layer;
|
||||
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.LayerMapDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.TileUrlDto;
|
||||
import com.kamco.cd.kamcoback.postgres.entity.MapLayerEntity;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
@@ -21,4 +22,6 @@ public interface MapLayerRepositoryCustom {
|
||||
List<LayerMapDto> findLayerMapList(String type);
|
||||
|
||||
LayerDto.YearTileDto getChangeDetectionTileUrl(Integer beforeYear, Integer afterYear);
|
||||
|
||||
TileUrlDto getChangeDetectionTileOneYearUrl(Integer year);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetMngTileEntity.mapS
|
||||
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.LayerMapDto;
|
||||
import com.kamco.cd.kamcoback.layer.dto.LayerDto.TileUrlDto;
|
||||
import com.kamco.cd.kamcoback.postgres.entity.MapLayerEntity;
|
||||
import com.querydsl.core.BooleanBuilder;
|
||||
import com.querydsl.core.types.Projections;
|
||||
@@ -172,6 +173,32 @@ public class MapLayerRepositoryImpl implements MapLayerRepositoryCustom {
|
||||
return new LayerDto.YearTileDto(before, after);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileUrlDto getChangeDetectionTileOneYearUrl(Integer year) {
|
||||
return queryFactory
|
||||
.select(
|
||||
Projections.constructor(
|
||||
LayerDto.TileUrlDto.class,
|
||||
mapSheetMngTileEntity.mngYyyy,
|
||||
mapSheetMngTileEntity.tag,
|
||||
mapSheetMngTileEntity.url,
|
||||
mapSheetMngTileEntity.minLon,
|
||||
mapSheetMngTileEntity.minLat,
|
||||
mapSheetMngTileEntity.maxLon,
|
||||
mapSheetMngTileEntity.maxLat,
|
||||
mapSheetMngTileEntity.minZoom,
|
||||
mapSheetMngTileEntity.maxZoom,
|
||||
Expressions.stringTemplate(
|
||||
"ST_AsGeoJSON(ST_MakeEnvelope({0}, {1}, {2}, {3}, 4326))",
|
||||
mapSheetMngTileEntity.minLon,
|
||||
mapSheetMngTileEntity.minLat,
|
||||
mapSheetMngTileEntity.maxLon,
|
||||
mapSheetMngTileEntity.maxLat)))
|
||||
.from(mapSheetMngTileEntity)
|
||||
.where(mapSheetMngTileEntity.mngYyyy.eq(year))
|
||||
.fetchOne();
|
||||
}
|
||||
|
||||
private BooleanExpression layerTypeCondition(String type) {
|
||||
return type.equals("change-detection")
|
||||
? mapLayerEntity.isChangeMap.isTrue()
|
||||
|
||||
Reference in New Issue
Block a user