Skip to content

Commit

Permalink
Merge pull request #80 from SanE-Seo/develop
Browse files Browse the repository at this point in the history
Develop
Changha-dev authored May 3, 2024
2 parents 8e64f23 + e4574d3 commit 26ff900
Showing 23 changed files with 894 additions and 39 deletions.
Original file line number Diff line number Diff line change
@@ -1,24 +1,29 @@
package com.seoultech.sanEseo.district.adapter;

import com.seoultech.sanEseo.district.application.port.CreateDistrictRequest;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.seoultech.sanEseo.district.domain.District;
import com.seoultech.sanEseo.district.application.port.GetDistrictResponse;
import com.seoultech.sanEseo.district.application.port.DistrictPort;
import com.seoultech.sanEseo.global.response.ApiResponse;
import jakarta.validation.Valid;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.io.IOException;
import java.util.Arrays;
import java.util.List;

@RestController
@RequestMapping("/api/districts")
public class DistrictController {
private final DistrictPort districtPort;
private final ResourceLoader resourceLoader;

public DistrictController(DistrictPort districtPort) {

public DistrictController(DistrictPort districtPort, ResourceLoader resourceLoader) {
this.districtPort = districtPort;
this.resourceLoader = resourceLoader;
}

@PostMapping
@@ -31,6 +36,18 @@ public ResponseEntity<?> createDistrict() {
return ApiResponse.ok("자치구가 생성되었습니다.");
}

@PostMapping("/custom")
public ResponseEntity<?> createCustomDistrict() throws IOException {
Resource resource = resourceLoader.getResource("classpath:districts.json");
ObjectMapper mapper = new ObjectMapper();
List<String> districts = mapper.readValue(resource.getInputStream(), List.class);

districts.forEach(name -> districtPort.save(new District(name)));

return ApiResponse.ok("자치구가 생성되었습니다.");
}


@GetMapping
public ResponseEntity<?> findAllDistricts() {
List<District> districts = districtPort.findAll();
Original file line number Diff line number Diff line change
@@ -2,16 +2,12 @@

import com.fasterxml.jackson.annotation.JsonProperty;
import com.seoultech.sanEseo.post.domain.Category;
import com.seoultech.sanEseo.image.PostImage;
import com.seoultech.sanEseo.public_api.CoordinateRequest;
import com.seoultech.sanEseo.public_api.application.service.dto.CoordinateRequest;

import com.seoultech.sanEseo.public_api.GetGeometryResponse;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Getter;

import java.util.List;

@Getter
public class AddPostRequest {
@NotNull(message = "카테고리는 필수입니다.")
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.seoultech.sanEseo.post.application.service;

import com.seoultech.sanEseo.post.domain.Category;
import com.seoultech.sanEseo.public_api.GetCoordinateResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.GetCoordinateResponse;
import org.springframework.util.Assert;

public record GetPostResponse(
Original file line number Diff line number Diff line change
@@ -9,11 +9,11 @@
import com.seoultech.sanEseo.post.exception.AuthorMismatchException;
import com.seoultech.sanEseo.post_district.domain.PostDistrict;
import com.seoultech.sanEseo.post_district.application.port.PostDistrictPort;
import com.seoultech.sanEseo.public_api.Coordinate;
import com.seoultech.sanEseo.public_api.CoordinateService;
import com.seoultech.sanEseo.public_api.GetCoordinateResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.CoordinateRequest;
import com.seoultech.sanEseo.public_api.domain.Coordinate;
import com.seoultech.sanEseo.public_api.application.service.CoordinateService;
import com.seoultech.sanEseo.public_api.application.service.dto.GetCoordinateResponse;
import lombok.RequiredArgsConstructor;
import com.seoultech.sanEseo.public_api.*;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@

import com.seoultech.sanEseo.post.domain.Category;
import com.seoultech.sanEseo.image.PostImage;
import com.seoultech.sanEseo.public_api.CoordinateRequest;
import com.seoultech.sanEseo.public_api.application.service.dto.CoordinateRequest;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Getter;
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.adapter;

import com.seoultech.sanEseo.post.domain.Post;
import com.seoultech.sanEseo.public_api.domain.Coordinate;
import org.springframework.data.jpa.repository.JpaRepository;

public interface CoordinateRepository extends JpaRepository<Coordinate, Long> {
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.adapter;

import com.seoultech.sanEseo.global.response.ApiResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.GetCourseResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.GetGeometryResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.GetLinearResponse;
import com.seoultech.sanEseo.public_api.application.service.PublicDataService;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application;

public class DataConstant {

Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service;

import com.seoultech.sanEseo.post.domain.Post;
import com.seoultech.sanEseo.public_api.adapter.CoordinateRepository;
import com.seoultech.sanEseo.public_api.application.service.dto.CoordinateRequest;
import com.seoultech.sanEseo.public_api.application.service.dto.GetCoordinateResponse;
import com.seoultech.sanEseo.public_api.domain.Coordinate;
import jakarta.transaction.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.seoultech.sanEseo.district.application.port.DistrictPort;
import com.seoultech.sanEseo.district.domain.District;
import com.seoultech.sanEseo.post.application.service.AddPostRequest;
import com.seoultech.sanEseo.post.application.service.PostService;
import com.seoultech.sanEseo.post.domain.Category;
import com.seoultech.sanEseo.post.domain.Post;
import com.seoultech.sanEseo.public_api.application.service.dto.CourseResponseWrapper;
import com.seoultech.sanEseo.public_api.application.DataConstant;
import com.seoultech.sanEseo.public_api.application.service.dto.LinearResponseWrapper;
import com.seoultech.sanEseo.public_api.application.service.dto.CoordinateRequest;
import com.seoultech.sanEseo.public_api.application.service.dto.GetCourseResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.GetGeometryResponse;
import com.seoultech.sanEseo.public_api.application.service.dto.GetLinearResponse;
import lombok.RequiredArgsConstructor;
import org.apache.commons.text.similarity.JaroWinklerSimilarity;
import org.geojson.*;
@@ -18,10 +24,6 @@
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import lombok.AllArgsConstructor;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonProperty;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;


import com.fasterxml.jackson.databind.annotation.JsonSerialize;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;


import lombok.AllArgsConstructor;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import lombok.AllArgsConstructor;
import lombok.Getter;
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import org.geojson.GeoJsonObject;

@Getter
@NoArgsConstructor
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.application.service.dto;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonProperty;
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
package com.seoultech.sanEseo.public_api;
package com.seoultech.sanEseo.public_api.domain;


import com.seoultech.sanEseo.post.domain.Post;
import com.seoultech.sanEseo.public_api.CoordinatesConverter;
import com.seoultech.sanEseo.public_api.application.service.dto.CoordinatesConverter;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.List;

@Entity
Loading

0 comments on commit 26ff900

Please sign in to comment.