레이어 관리 api 추가

This commit is contained in:
2026-01-27 20:54:27 +09:00
parent 6af8584526
commit 52011c8f03
7 changed files with 54 additions and 11 deletions

View File

@@ -22,6 +22,7 @@ public class WmtsDto {
@NoArgsConstructor
public static class WmtsAddDto {
private WmtsLayerInfo wmtsLayerInfo;
private String title;
private String description;
}
}

View File

@@ -3,6 +3,7 @@ package com.kamco.cd.kamcoback.layer.service;
import com.kamco.cd.kamcoback.layer.dto.WmtsDto.WmtsAddDto;
import com.kamco.cd.kamcoback.layer.dto.WmtsDto.WmtsAddReqDto;
import com.kamco.cd.kamcoback.layer.dto.WmtsLayerInfo;
import com.kamco.cd.kamcoback.postgres.core.MapLayerCoreService;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
@@ -26,6 +27,8 @@ import org.w3c.dom.NodeList;
@Transactional(readOnly = true)
public class WmtsService {
private final MapLayerCoreService mapLayerCoreService;
@Value("${layer.geoserver-url}")
private String geoserverUrl;
@@ -62,11 +65,12 @@ public class WmtsService {
WmtsAddDto addDto = new WmtsAddDto();
addDto.setWmtsLayerInfo(info);
addDto.setDescription(dto.getDescription());
addDto.setTitle(dto.getTitle());
mapLayerCoreService.save(addDto);
}
public WmtsLayerInfo getDetail(String tile) {
WmtsService wmtsService = new WmtsService();
return wmtsService.getLayerInfoByTitle(geoserverUrl, workspace, tile);
return getLayerInfoByTitle(geoserverUrl, workspace, tile);
}
private List<WmtsLayerInfo> getAllLayers(String geoserverUrl, String workspace) {

View File

@@ -0,0 +1,28 @@
package com.kamco.cd.kamcoback.postgres.core;
import com.kamco.cd.kamcoback.common.utils.UserUtil;
import com.kamco.cd.kamcoback.layer.dto.WmtsDto.WmtsAddDto;
import com.kamco.cd.kamcoback.postgres.entity.MapLayerEntity;
import com.kamco.cd.kamcoback.postgres.repository.layer.MapLayerRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
public class MapLayerCoreService {
private final MapLayerRepository mapLayerRepository;
private final UserUtil userUtil;
/**
* wmts 저장
*
* @param addDto
*/
public void save(WmtsAddDto addDto) {
MapLayerEntity mapLayerEntity = new MapLayerEntity();
mapLayerEntity.setTitle(addDto.getTitle());
mapLayerEntity.setDescription(addDto.getDescription());
mapLayerEntity.setCreatedUid(userUtil.getId());
}
}

View File

@@ -10,8 +10,9 @@ import jakarta.persistence.Table;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import java.math.BigDecimal;
import java.time.Instant;
import java.time.ZonedDateTime;
import java.util.Map;
import java.util.UUID;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.annotations.ColumnDefault;
@@ -72,9 +73,18 @@ public class MapLayerEntity {
@NotNull
@ColumnDefault("now()")
@Column(name = "created_at", nullable = false)
private Instant createdAt;
@Column(name = "created_dttm", nullable = false)
private ZonedDateTime createdAt = ZonedDateTime.now();
@Column(name = "updated_at")
private Instant updatedAt;
@Column(name = "updated_dttm")
private ZonedDateTime updatedAt;
@Column(name = "uuid")
private UUID uuid = UUID.randomUUID();
@Column(name = "created_uid")
private Long createdUid;
@Column(name = "updated_uid")
private Long updatedUid;
}

View File

@@ -3,5 +3,5 @@ package com.kamco.cd.kamcoback.postgres.repository.layer;
import com.kamco.cd.kamcoback.postgres.entity.MapLayerEntity;
import org.springframework.data.jpa.repository.JpaRepository;
public interface LayerRepository
extends JpaRepository<MapLayerEntity, Long>, LayerRepositoryCustom {}
public interface MapLayerRepository
extends JpaRepository<MapLayerEntity, Long>, MapLayerRepositoryCustom {}

View File

@@ -1,3 +1,3 @@
package com.kamco.cd.kamcoback.postgres.repository.layer;
public interface LayerRepositoryCustom {}
public interface MapLayerRepositoryCustom {}

View File

@@ -3,4 +3,4 @@ package com.kamco.cd.kamcoback.postgres.repository.layer;
import org.springframework.stereotype.Repository;
@Repository
public class LayerRepositoryImpl implements LayerRepositoryCustom {}
public class MapLayerRepositoryImpl {}