레이어 관리 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 @NoArgsConstructor
public static class WmtsAddDto { public static class WmtsAddDto {
private WmtsLayerInfo wmtsLayerInfo; private WmtsLayerInfo wmtsLayerInfo;
private String title;
private String description; 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.WmtsAddDto;
import com.kamco.cd.kamcoback.layer.dto.WmtsDto.WmtsAddReqDto; import com.kamco.cd.kamcoback.layer.dto.WmtsDto.WmtsAddReqDto;
import com.kamco.cd.kamcoback.layer.dto.WmtsLayerInfo; import com.kamco.cd.kamcoback.layer.dto.WmtsLayerInfo;
import com.kamco.cd.kamcoback.postgres.core.MapLayerCoreService;
import java.net.URL; import java.net.URL;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -26,6 +27,8 @@ import org.w3c.dom.NodeList;
@Transactional(readOnly = true) @Transactional(readOnly = true)
public class WmtsService { public class WmtsService {
private final MapLayerCoreService mapLayerCoreService;
@Value("${layer.geoserver-url}") @Value("${layer.geoserver-url}")
private String geoserverUrl; private String geoserverUrl;
@@ -62,11 +65,12 @@ public class WmtsService {
WmtsAddDto addDto = new WmtsAddDto(); WmtsAddDto addDto = new WmtsAddDto();
addDto.setWmtsLayerInfo(info); addDto.setWmtsLayerInfo(info);
addDto.setDescription(dto.getDescription()); addDto.setDescription(dto.getDescription());
addDto.setTitle(dto.getTitle());
mapLayerCoreService.save(addDto);
} }
public WmtsLayerInfo getDetail(String tile) { public WmtsLayerInfo getDetail(String tile) {
WmtsService wmtsService = new WmtsService(); return getLayerInfoByTitle(geoserverUrl, workspace, tile);
return wmtsService.getLayerInfoByTitle(geoserverUrl, workspace, tile);
} }
private List<WmtsLayerInfo> getAllLayers(String geoserverUrl, String workspace) { 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.NotNull;
import jakarta.validation.constraints.Size; import jakarta.validation.constraints.Size;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.Instant; import java.time.ZonedDateTime;
import java.util.Map; import java.util.Map;
import java.util.UUID;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import org.hibernate.annotations.ColumnDefault; import org.hibernate.annotations.ColumnDefault;
@@ -72,9 +73,18 @@ public class MapLayerEntity {
@NotNull @NotNull
@ColumnDefault("now()") @ColumnDefault("now()")
@Column(name = "created_at", nullable = false) @Column(name = "created_dttm", nullable = false)
private Instant createdAt; private ZonedDateTime createdAt = ZonedDateTime.now();
@Column(name = "updated_at") @Column(name = "updated_dttm")
private Instant updatedAt; 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 com.kamco.cd.kamcoback.postgres.entity.MapLayerEntity;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
public interface LayerRepository public interface MapLayerRepository
extends JpaRepository<MapLayerEntity, Long>, LayerRepositoryCustom {} extends JpaRepository<MapLayerEntity, Long>, MapLayerRepositoryCustom {}

View File

@@ -1,3 +1,3 @@
package com.kamco.cd.kamcoback.postgres.repository.layer; 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; import org.springframework.stereotype.Repository;
@Repository @Repository
public class LayerRepositoryImpl implements LayerRepositoryCustom {} public class MapLayerRepositoryImpl {}