msa : monolithic - get webook list
This commit is contained in:
@@ -1,13 +1,14 @@
|
||||
package com.monolithicdemo.controller;
|
||||
|
||||
import com.monolithicdemo.model.dto.WebBookDto;
|
||||
import com.monolithicdemo.model.form.RegisterReaderForm;
|
||||
import com.monolithicdemo.service.ReaderService;
|
||||
import com.monolithicdemo.service.WebBookService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/reader")
|
||||
@@ -15,9 +16,15 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
public class ReaderController {
|
||||
|
||||
private final ReaderService ReaderService;
|
||||
private final WebBookService webBookService;
|
||||
|
||||
@PostMapping("/")
|
||||
public ResponseEntity<Long> registerReader(@RequestBody RegisterReaderForm registerReaderForm){
|
||||
return ResponseEntity.ok(ReaderService.registerReader(registerReaderForm));
|
||||
}
|
||||
|
||||
@GetMapping("/webBook")
|
||||
public ResponseEntity<List<WebBookDto>> getWebBookList() {
|
||||
return ResponseEntity.ok().body(webBookService.getWebBookList());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.monolithicdemo.model.dto;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class WebBookChapterDto {
|
||||
private Long webBookChapterId;
|
||||
private Long webBookId;
|
||||
private String name;
|
||||
private String detail;
|
||||
private LocalDateTime createdAt;
|
||||
private Integer price;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.monolithicdemo.model.dto;
|
||||
|
||||
import com.monolithicdemo.model.entity.WebBook;
|
||||
import lombok.*;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Setter
|
||||
@Getter
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class WebBookDto {
|
||||
private Long webBookId;
|
||||
private String name;
|
||||
private String description;
|
||||
private LocalDateTime createdAt;
|
||||
|
||||
public static WebBookDto from(WebBook webBook) {
|
||||
return WebBookDto.builder()
|
||||
.webBookId(webBook.getWebBookId())
|
||||
.name(webBook.getName())
|
||||
.description(webBook.getDescription())
|
||||
.createdAt(webBook.getCreatedAt())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.monolithicdemo.model.entity;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Table
|
||||
@Entity
|
||||
public class ReaderWebBookPayment {
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.SEQUENCE)
|
||||
private Long readerWebBookPayment;
|
||||
|
||||
private Long webBookChapterId;
|
||||
|
||||
private Integer paymentAmount;
|
||||
|
||||
private LocalDateTime createdAt;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.monolithicdemo.model.entity;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Table
|
||||
@Entity
|
||||
public class WriterWebBookPayment {
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.SEQUENCE)
|
||||
private Long writerWebBookPayment;
|
||||
|
||||
private Long webBookChapterId;
|
||||
|
||||
private Long readerWebBookPaymentId;
|
||||
|
||||
private Integer paymentAmount;
|
||||
|
||||
private boolean isWithdraw; // default = false
|
||||
|
||||
private LocalDateTime createdAt;
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.monolithicdemo.model.form;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Setter
|
||||
@Getter
|
||||
public class WebBookChapterPaymentForm {
|
||||
|
||||
private Long webBookChapterId;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.monolithicdemo.service;
|
||||
|
||||
import com.monolithicdemo.model.dto.WebBookDto;
|
||||
import com.monolithicdemo.repository.WebBookRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class WebBookService {
|
||||
|
||||
private final WebBookRepository webBookRepository;
|
||||
|
||||
public List<WebBookDto> getWebBookList() {
|
||||
return webBookRepository.findAll().stream()
|
||||
.map(webBook -> WebBookDto.from(webBook))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user