Skip to content

Commit

Permalink
Merge pull request #54 from AlongTheBlue/develop
Browse files Browse the repository at this point in the history
[Feat] 여행따라 코스 등록 API user 추가
  • Loading branch information
MoonInbae authored Oct 14, 2024
2 parents 8be5be4 + 0d38966 commit a0aed38
Show file tree
Hide file tree
Showing 8 changed files with 112 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.alongtheblue.alongtheblue_server.global.common.response.ApiResponse;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request.UserTourCourseRequestDto;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request.CreateUserTourCourseRequestDto;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.response.UserTourCourseDetailDto;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
Expand All @@ -22,7 +22,8 @@ public class TourCommunityController {
@Operation(summary = "여행따라 게시물 등록 API")
@PostMapping
public UserTourCourse createTourCourse(
@RequestPart(value = "request", required = false) UserTourCourseRequestDto dto,
@RequestHeader("Authorization") String uid,
@RequestPart(value = "request", required = false) CreateUserTourCourseRequestDto dto,
@RequestPart(value = "file", required = false) List<MultipartFile> images
// @RequestPart("title") String title,
// @RequestPart("writing") String writing,
Expand All @@ -32,7 +33,7 @@ public UserTourCourse createTourCourse(
// ,
// @RequestPart List<List<Integer>> imgIndexArr
) {
return tourCommunityService.createPost(dto, images);
return tourCommunityService.createPost(uid, dto.toServiceRequest(), images);
// UserTourCourse userTourCourse= new UserTourCourse();
// userTourCourse.setTitle(title);
// userTourCourse.setTourPostItems(tourItems);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
package org.alongtheblue.alongtheblue_server.global.data.tourcommunity;

import lombok.RequiredArgsConstructor;
import org.alongtheblue.alongtheblue_server.domain.userInfo.application.UserInfoService;
import org.alongtheblue.alongtheblue_server.domain.userInfo.domain.UserInfo;
import org.alongtheblue.alongtheblue_server.global.adapter.S3Adapter;
import org.alongtheblue.alongtheblue_server.global.common.response.ApiResponse;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request.UserTourCourseRequestDto;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request.CreateUserTourCourseServiceRequestDto;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request.TourPostItemRequestDto;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.response.TourImageResponseDto;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.response.TourPostItemResponseDto;
Expand All @@ -25,18 +27,23 @@ public class TourCommunityService {
private final TourImageRepository tourImageRepository;
private final S3Adapter s3Adapter;
private final ConversionService conversionService;
private final UserInfoService userInfoService;

// private final TourPostHashTagRepository tourPostHashTagRepository;

// 여행따라 저장
public UserTourCourse createPost(UserTourCourseRequestDto dto, List<MultipartFile> images) {
public UserTourCourse createPost(String uid, CreateUserTourCourseServiceRequestDto dto, List<MultipartFile> images) {

UserInfo userInfo = userInfoService.retrieveUserInfo(uid).getData();

// 먼저 userTourCourse 저장
UserTourCourse userCourse = new UserTourCourse();
userCourse.setTitle(dto.title());
userCourse.setWriting(dto.content());
TimeZone.setDefault(TimeZone.getTimeZone("Asia/Seoul"));
userCourse.setCreatedate(new Date());
userCourse.setWriting(dto.content());
userCourse.setUserInfo(userInfo);
userCourse = userTourCourseRepository.save(userCourse);

System.out.println(dto);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@

import com.fasterxml.jackson.annotation.JsonBackReference;
import jakarta.persistence.*;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.alongtheblue.alongtheblue_server.global.data.tourData.TourData;

@Entity
Expand All @@ -12,11 +15,21 @@ public class TourImage {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String fileName;
private String url;

@ManyToOne
@JoinColumn(name = "tourPostItem")
@JsonBackReference
private TourPostItem tourPostItem;

@Builder
public TourImage(String fileName, String url) {
this.fileName = fileName;
this.url = url;
}

public TourImage() {

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import jakarta.persistence.*;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;

import java.util.List;

Expand Down Expand Up @@ -32,4 +35,21 @@ public class TourPostItem {
@JsonManagedReference
private List<TourImage> tourImage;

@Builder
public TourPostItem(String name, String category, String address, String comment, String xMap, String yMap,
String contentId, UserTourCourse userTourCourse, List<TourImage> tourImage) {
this.name = name;
this.category = category;
this.address = address;
this.comment = comment;
this.xMap = xMap;
this.yMap = yMap;
this.contentId = contentId;
this.userTourCourse = userTourCourse;
this.tourImage = tourImage;
}

public TourPostItem() {

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import jakarta.persistence.*;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.alongtheblue.alongtheblue_server.domain.userInfo.domain.UserInfo;

import java.util.Date;
Expand Down Expand Up @@ -34,5 +37,16 @@ public class UserTourCourse {
// @JsonManagedReference
// private List<TourPostHashTag> tourPostHashTags;

private String contentId; // 필요 없음
@Builder
public UserTourCourse(Date createdate, String title, String writing, List<TourPostItem> tourPostItems, UserInfo userInfo) {
this.createdate = createdate;
this.title = title;
this.writing = writing;
this.tourPostItems = tourPostItems;
this.userInfo = userInfo;
}

public UserTourCourse() {

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,14 @@

import java.util.List;

public record UserTourCourseRequestDto(
public record CreateUserTourCourseRequestDto(
String title,
String content,
List<TourPostItemRequestDto> tourPostItems,
// List<TourPostHashTag> hashTags,
List<List<Integer>> imgIndexArr
) {
public CreateUserTourCourseServiceRequestDto toServiceRequest() {
return new CreateUserTourCourseServiceRequestDto(title, content, tourPostItems, imgIndexArr);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request;

import org.alongtheblue.alongtheblue_server.domain.userInfo.domain.UserInfo;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.TourPostItem;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.UserTourCourse;

import java.util.Date;
import java.util.List;

public record CreateUserTourCourseServiceRequestDto(
String title,
String content,
List<TourPostItemRequestDto> tourPostItems,
// List<TourPostHashTag> hashTags,
List<List<Integer>> imgIndexArr
) {
public UserTourCourse toEntity(UserInfo userInfo, Date date, List<TourPostItem> tourItems) {
return UserTourCourse.builder()
.createdate(date)
.title(title)
.writing(content)
.tourPostItems(tourItems)
.userInfo(userInfo)
.build();
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
package org.alongtheblue.alongtheblue_server.global.data.tourcommunity.dto.request;

import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.TourImage;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.TourPostItem;
import org.alongtheblue.alongtheblue_server.global.data.tourcommunity.UserTourCourse;

import java.util.List;

public record TourPostItemRequestDto(
String title,
String category,
Expand All @@ -9,5 +15,20 @@ public record TourPostItemRequestDto(
String comment
// String contentsId
) {
public TourPostItem toEntity(List<TourImage> tourImages) {
TourPostItem item = TourPostItem.builder()
.name(title)
.category(category)
.address(address)
.xMap(xMap)
.yMap(yMap)
.comment(comment)
.tourImage(tourImages)
.build();

// for (TourImage tourImage : tourImages) {
// tourImage.setTourPostItem(item);
// }
return item;
}
}

0 comments on commit a0aed38

Please sign in to comment.