Skip to content

Commit

Permalink
Merge pull request #45 from saessagMarket/feat/#44-location-save
Browse files Browse the repository at this point in the history
지도 위치 저장
  • Loading branch information
JunBe authored Jan 22, 2025
2 parents 21eede9 + d6c4283 commit dccaf95
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 15 deletions.
1 change: 1 addition & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ dependencies {
implementation 'software.amazon.awssdk:s3:2.20.0'
implementation 'software.amazon.awssdk:core:2.20.0'
implementation 'software.amazon.awssdk:auth:2.20.0'
implementation 'me.paulschwarz:spring-dotenv:3.0.0'
}

test {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import com.market.saessag.domain.product.dto.ProductRequest;
import com.market.saessag.domain.product.dto.ProductResponse;
import com.market.saessag.domain.product.entity.Product;
import com.market.saessag.domain.product.service.ProductService;
import com.market.saessag.global.response.ApiResponse;
import lombok.RequiredArgsConstructor;
Expand Down Expand Up @@ -62,8 +61,8 @@ public ResponseEntity<ApiResponse<ProductResponse>> createProduct(@RequestBody P
//상품 수정
@PutMapping("/{productId}")
public ResponseEntity<ApiResponse<ProductResponse>> updateProduct(@PathVariable Long productId,
@RequestBody Product product) {
ProductResponse updatedProduct = productService.updateProduct(productId, product);
@RequestBody ProductRequest productRequest) {
ProductResponse updatedProduct = productService.updateProduct(productId, productRequest);
ApiResponse<ProductResponse> response = ApiResponse.<ProductResponse>builder()
.status("200")
.data(updatedProduct)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,10 @@ public class ProductRequest {
private String title;
private Long price;
private String description;
private String meetingPlace;
private Double latitude;
private Double longitude;
private String basicAddress;
private String detailedAddress;
private List<String> photo;
private String status;
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ public class ProductResponse {
private String title;
private Long price;
private String description;
private String meetingPlace;
private String basicAddress;
private String detailedAddress;
private final String addedDate;
private String status;
private final UserResponse user;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,13 @@ public class Product {
@Column(columnDefinition = "TEXT")
private String description;

private String meetingPlace;
private Double latitude;

private Double longitude;

private String basicAddress;

private String detailedAddress;

private LocalDateTime addedDate;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,22 +33,28 @@ public ProductResponse createProduct(ProductRequest productRequest) {
product.setTitle(productRequest.getTitle());
product.setPrice(productRequest.getPrice());
product.setDescription(productRequest.getDescription());
product.setMeetingPlace(productRequest.getMeetingPlace());
product.setLatitude(productRequest.getLatitude());
product.setLongitude(productRequest.getLongitude());
product.setBasicAddress(productRequest.getBasicAddress());
product.setDetailedAddress(productRequest.getDetailedAddress());
product.setPhoto(productRequest.getPhoto());
product.setStatus(Product.ProductStatus.valueOf(productRequest.getStatus()));
return convertToDTO(productRepository.save(product));
}

//상품 수정
public ProductResponse updateProduct(Long productId, Product product) {
public ProductResponse updateProduct(Long productId, ProductRequest productRequest) {
Product productDTO = productRepository.findById(productId)
.map(afterProduct -> {
afterProduct.setDescription(product.getDescription());
afterProduct.setMeetingPlace(product.getMeetingPlace());
afterProduct.setPhoto(product.getPhoto());
afterProduct.setPrice(product.getPrice());
afterProduct.setStatus(product.getStatus());
afterProduct.setTitle(product.getTitle());
afterProduct.setDescription(productRequest.getDescription());
afterProduct.setLatitude(productRequest.getLatitude());
afterProduct.setLongitude(productRequest.getLongitude());
afterProduct.setBasicAddress(productRequest.getBasicAddress());
afterProduct.setDetailedAddress(productRequest.getDetailedAddress());
afterProduct.setPhoto(productRequest.getPhoto());
afterProduct.setPrice(productRequest.getPrice());
afterProduct.setStatus(Product.ProductStatus.valueOf(productRequest.getStatus()));
afterProduct.setTitle(productRequest.getTitle());
return productRepository.save(afterProduct);
}).orElseThrow(() -> new IllegalArgumentException("없는 상품 번호 입니다."));

Expand Down Expand Up @@ -86,7 +92,8 @@ private ProductResponse convertToDTO(Product product) {
.title(product.getTitle())
.price(product.getPrice())
.description(product.getDescription())
.meetingPlace(product.getMeetingPlace())
.basicAddress(product.getBasicAddress())
.detailedAddress(product.getDetailedAddress())
.addedDate(TimeUtils.getRelativeTime(product.getAddedDate()))
.status(product.getStatus().toString())
.user(UserResponse.builder()
Expand Down

0 comments on commit dccaf95

Please sign in to comment.