Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.time.LocalDate;

@Getter
@NoArgsConstructor
public class DailyLogRequestDTO {
Expand All @@ -14,4 +16,6 @@ public class DailyLogRequestDTO {

@Size(max = 255)
private String answer3;

private LocalDate date;
}
6 changes: 3 additions & 3 deletions src/main/java/com/umc/timeto/dailyLog/entity/DailyLog.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,19 +24,19 @@ public class DailyLog {
@Column(nullable = false)
private Achievement answer2; // 1-5 계획 이행

@Column(nullable = false)
private String answer3; // 잘한 점과 아쉬운 점

@Column(nullable = false)
private LocalDate createdAt;
private LocalDate date;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id")
private Member member;

public void update(Satisfaction answer1, Achievement answer2, String answer3) {
public void update(Satisfaction answer1, Achievement answer2, String answer3, LocalDate date) {
this.answer1 = answer1;
this.answer2 = answer2;
this.answer3 = answer3;
this.date = date;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,7 @@

@Repository
public interface DailyLogRepository extends JpaRepository<DailyLog, Long> {
Optional<DailyLog> findByMemberAndCreatedAt(Member member, LocalDate createdAt);
List<DailyLog> findByMemberAndCreatedAtBetween(Member member, LocalDate start, LocalDate end);
List<DailyLog> findByMemberAndDateBetweenOrderByDateAscIdAsc(Member member, LocalDate start, LocalDate end);

// 회원의 일지 전체 삭제
@Modifying(clearAutomatically = true, flushAutomatically = true)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,11 @@ public DailyLogResponseDTO saveLog(DailyLogRequestDTO dto, Long memberId) {
Member member = memberRepository.findById(memberId)
.orElseThrow(() -> new GlobalException(ErrorCode.MEMBER_NOT_FOUND)); // 에러 코드 수정

LocalDate today = LocalDate.now();
if (dailyLogRepository.findByMemberAndCreatedAt(member, today).isPresent()) {
throw new GlobalException(ErrorCode.DUPLICATE_DAILY_LOG);
}

DailyLog dailyLog = DailyLog.builder()
.answer1(dto.getAnswer1())
.answer2(dto.getAnswer2())
.answer3(dto.getAnswer3())
.createdAt(today)
.date(dto.getDate())
.member(member)
.build();

Expand All @@ -48,7 +43,7 @@ public DailyLogResponseDTO saveLog(DailyLogRequestDTO dto, Long memberId) {
savedLog.getAnswer1(),
savedLog.getAnswer2(),
savedLog.getAnswer3(),
savedLog.getCreatedAt()
savedLog.getDate()
);
}

Expand All @@ -61,9 +56,9 @@ public List<DailyLogMonthlyDTO> getMonthlyLogs(int year, int month, Long memberI
LocalDate start = LocalDate.of(year, month, 1);
LocalDate end = start.withDayOfMonth(start.lengthOfMonth());

return dailyLogRepository.findByMemberAndCreatedAtBetween(member, start, end)
return dailyLogRepository.findByMemberAndDateBetweenOrderByDateAscIdAsc(member, start, end)
.stream()
.map(log -> new DailyLogMonthlyDTO(log.getId(), log.getCreatedAt(), log.getAnswer1()))
.map(log -> new DailyLogMonthlyDTO(log.getId(), log.getDate(), log.getAnswer1()))
.toList();
}

Expand All @@ -86,7 +81,7 @@ public DailyLogResponseDTO getDailyLog(Long logId, Long memberId) {
dailyLog.getAnswer1(),
dailyLog.getAnswer2(),
dailyLog.getAnswer3(),
dailyLog.getCreatedAt()
dailyLog.getDate()
);
}

Expand All @@ -102,14 +97,14 @@ public DailyLogResponseDTO updateLog(Long logId, DailyLogRequestDTO dto, Long me
throw new GlobalException(ErrorCode.LOG_FORBIDDEN);
}

dailyLog.update(dto.getAnswer1(), dto.getAnswer2(), dto.getAnswer3());
dailyLog.update(dto.getAnswer1(), dto.getAnswer2(), dto.getAnswer3(), dto.getDate());

return new DailyLogResponseDTO(
dailyLog.getId(),
dailyLog.getAnswer1(),
dailyLog.getAnswer2(),
dailyLog.getAnswer3(),
dailyLog.getCreatedAt()
dailyLog.getDate()
);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ public enum ErrorCode {
/**
* 409 CONFLICT - 요청 충돌
*/
DUPLICATE_DAILY_LOG(HttpStatus.CONFLICT, "일지는 하루에 하나만 작성할 수 있습니다."),
AUTH_MEMBER_DUPLICATE(HttpStatus.CONFLICT, "이미 가입된 회원입니다."),
AUTH_EMAIL_DUPLICATE(HttpStatus.CONFLICT, "이미 사용 중인 이메일입니다."),
AUTH_SOCIAL_ID_DUPLICATE(HttpStatus.CONFLICT, "이미 연결된 소셜 계정입니다."),
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/com/umc/timeto/global/config/SwaggerConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
Info info = new Info()
.title("ZERO-Helper API") //이름
.description("당신의 평범한 일상이 취업 스펙이 되는 곳, Zero Helper"); //설명
.title("timeto API") //이름
.description("ADHD를 가진 개인을 지원하기 위해 설계된 태스크 관리 서비스, timeto"); //설명

Server localServer = new Server().url("/");

Expand Down