Skip to content

Commit

Permalink
Api-Release-v0.0.4
Browse files Browse the repository at this point in the history
Api-Release-v0.0.4
  • Loading branch information
imenuuu authored Oct 13, 2024
2 parents b39395d + 724bc83 commit 43a4523
Show file tree
Hide file tree
Showing 10 changed files with 55 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ public TastingNoteResponse.TasteAnalysisDTO TasteAnalysis(List<TastingNote> tast
int alcoholSum = 0;
int bodySum = 0;
int tanninSum = 0;
int sparklingSum = 0;
int finishSum = 0;
int totalPrice = 0;

Expand Down Expand Up @@ -85,9 +86,10 @@ public TastingNoteResponse.TasteAnalysisDTO TasteAnalysis(List<TastingNote> tast

sweetnessSum += tastingNote.getSweetness();
aciditySum += tastingNote.getAcidity();
alcoholSum += tastingNote.getAlcohol();
alcoholSum += (tastingNote.getAlcohol() != null ? tastingNote.getAlcohol() : 0);
bodySum += tastingNote.getBody();
tanninSum += tastingNote.getTannins();
sparklingSum += tastingNote.getSparkling() != null ? tastingNote.getSparkling() : 0;
finishSum += tastingNote.getFinish();
totalPrice += tastingNote.getPrice() != null ? tastingNote.getPrice() : 0;

Expand Down Expand Up @@ -189,6 +191,7 @@ public int compare(Map.Entry<String, Integer> entry1, Map.Entry<String, Integer>
.alcohol(calculateAvg(alcoholSum, totalWineCnt))
.body(calculateAvg(bodySum, totalWineCnt))
.tannin(calculateAvg(tanninSum, totalWineCnt))
.sparkling(calculateAvg(sparklingSum, totalWineCnt))
.finish(calculateAvg(finishSum, totalWineCnt))
.build())
.build();
Expand Down Expand Up @@ -238,6 +241,7 @@ public TastingNote CreateTastingNote(TastingNoteRequest.CreateTastingNoteDTO req
.vintage(request.getVintage())
.tannins(request.getTannin())
.finish(request.getFinish())
.sparkling(request.getSparkling())
.price(request.getPrice() != null ? request.getPrice() : 0)
.memo(request.getMemo())
.buyAgain(request.getBuyAgain())
Expand Down Expand Up @@ -287,7 +291,7 @@ private TastingNoteResponse.TastingNoteListDTO toTastingNoteListDTO(TastingNote
.wineType(result.getWine().getType())
.isPublic(result.getIsPublic())
.tastingNoteNo(tastingNoteNo.get(result.getId()))
.userNickname(result.getUser().getNickName())
.userNickname(result.getUser() != null ? result.getUser().getNickName() : "알 수 없음")
.noteDate(result.getCreatedAt().toLocalDate().toString())
.build();
}
Expand All @@ -305,6 +309,7 @@ public TastingNoteResponse.TastingNoteDTO toTastingNote(TastingNote tastingNote,
.wineType(wine.getType())
.wineName(wine.getName())
.region(wine.getRegion())
.country(wine.getCountry())
.vintage(tastingNote.getVintage())
.star(tastingNote.getStarRating() != null ? tastingNote.getStarRating() : null)
.color(tastingNote.getColor())
Expand Down Expand Up @@ -350,9 +355,10 @@ private TastingNoteResponse.MyWineTaste MyWineTaste(TastingNote tastingNote) {
.builder()
.sweetness(tastingNote.getSweetness())
.acidity(tastingNote.getAcidity())
.alcohol(tastingNote.getAlcohol())
.alcohol(tastingNote.getAlcohol() != null ? Double.valueOf(tastingNote.getAlcohol()) : 0)
.body(tastingNote.getBody())
.tannin(tastingNote.getTannins())
.sparkling(tastingNote.getSparkling() != null ? Double.valueOf(tastingNote.getSparkling()) : 0)
.finish(tastingNote.getFinish())
.build();
}
Expand Down Expand Up @@ -424,6 +430,10 @@ public void updateTastingNote(TastingNote tastingNote, TastingNoteRequest.Update
tastingNote.setAlcohol(request.getAlcohol());
tastingNote.setTannins(request.getTannin());
tastingNote.setFinish(request.getFinish());
if (request.getSparkling() != null){
tastingNote.setSparkling(request.getSparkling());
}
tastingNote.setSparkling(request.getSparkling());
tastingNote.setColor(request.getColor());
tastingNote.setVintage(request.getVintage());
Boolean isPublic = request.getIsPublic();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,9 @@ public static class CreateTastingNoteDTO {
@Schema(name="finish",description = "여운", required = true)
private Integer finish;

@Schema(name = "sparkling", description = "탄산감", required = false)
private Integer sparkling;

@NotNull(message = "느낌을 입력해주세요")
@Schema(name ="memo",description = "느낌", required = true)
private String memo;
Expand Down Expand Up @@ -142,6 +145,9 @@ public static class UpdateTastingNoteDTO {
@Schema(name="tannin",description = "탄닌", required = true)
private Integer tannin;

@Schema(name = "sparkling", description = "탄산감", required = false)
private Integer sparkling;

@Min(value = 1 ,message = "1이상을 입력해주세요")
@Max(value = 5 ,message = "5이하를 입력해주세요")
@Schema(name="finish",description = "여운", required = true)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@ public static class TastingNoteDTO {
@Schema(description = "와인 생상지")
private String region;

@Schema(description = "와인 생산지")
private Country country;

@Schema(description = "별점")
private Integer star;

Expand Down Expand Up @@ -154,6 +157,8 @@ public static class MyWineTaste{

private double tannin;

private Double sparkling;

private double finish;
}

Expand Down Expand Up @@ -227,6 +232,8 @@ public static class Taste{

private double tannin;

private Double sparkling;

private double finish;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;

Expand Down Expand Up @@ -75,18 +76,29 @@ public List<RecommendWineDTO> toRecommendWineDto(List<WineRepository.WineList> w
return recommendWineDTOS;
}

public PageResponse<List<WineResponse.SearchWineDto>> SearchWineList(Page<Wine> wines) {
public PageResponse<List<WineResponse.SearchWineDto>> SearchWineList(Page<Wine> wines, String content) {
List<WineResponse.SearchWineDto> wineDtoList = new ArrayList<>();

wines.getContent().forEach(
result -> wineDtoList.add(
convertWineInfo(result)
convertWineInfo(result, content)
)
);
return new PageResponse<>(wines.isLast(), wines.getTotalElements(), wineDtoList);
}

private WineResponse.SearchWineDto convertWineInfo(Wine result) {
private WineResponse.SearchWineDto convertWineInfo(Wine result, String content) {
String name ="";
if(content !=null){
if (Pattern.matches("^[a-zA-Z]*$", content)
) {
name = result.getEngName();
} else {
name = result.getName();
}
}else{
name = result.getName();
}
return WineResponse.SearchWineDto
.builder()
.wineId(result.getId())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,9 @@ public PageResponse<List<WineResponse.SearchWineDto>> searchWineList(Integer pag
if(content == null){
wines = wineRepository.findAll(pageable);
}else{
wines = wineRepository.findByNameContaining(content,pageable);
wines = wineRepository.findByNameContainingOrEngNameContaining(content,content,pageable);
}
return wineConvertor.SearchWineList(wines);
return wineConvertor.SearchWineList(wines, content);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,8 @@ public class QTastingNote extends EntityPathBase<TastingNote> {

public final ListPath<SmellKeywordTastingNote, QSmellKeywordTastingNote> smellKeywordTastingNote = this.<SmellKeywordTastingNote, QSmellKeywordTastingNote>createList("smellKeywordTastingNote", SmellKeywordTastingNote.class, QSmellKeywordTastingNote.class, PathInits.DIRECT2);

public final NumberPath<Integer> sparkling = createNumber("sparkling", Integer.class);

public final NumberPath<Integer> starRating = createNumber("starRating", Integer.class);

public final NumberPath<Integer> sweetness = createNumber("sweetness", Integer.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ public class QWine extends EntityPathBase<Wine> {
//inherited
public final DateTimePath<java.time.LocalDateTime> createdAt = _super.createdAt;

public final StringPath engName = createString("engName");

public final NumberPath<Long> id = createNumber("id", Long.class);

public final StringPath name = createString("name");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,9 @@ public class TastingNote extends BaseEntity {
@Column(name = "tannins")
private Integer tannins;

@Column(name ="sparkling")
private Integer sparkling;

/**
* 여운
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ public class Wine extends BaseEntity {
@Column(name = "name")
private String name;

@Column(name ="engName")
private String engName;

/**
* 품종
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ public interface WineRepository extends JpaRepository<Wine, Long> {

Page<Wine> findByNameContaining(String content, Pageable pageable);

Page<Wine> findByNameContainingOrEngNameContaining(String content1, String content2, Pageable pageable);

interface WineList{
Long getId();

Expand Down

0 comments on commit 43a4523

Please sign in to comment.