Skip to content

Commit

Permalink
Merge pull request #49 from How-homework-out/master
Browse files Browse the repository at this point in the history
Master
  • Loading branch information
ryulkim authored Nov 24, 2023
2 parents 17eb2e0 + 7696916 commit 4e1811e
Show file tree
Hide file tree
Showing 6 changed files with 97 additions and 7 deletions.
4 changes: 3 additions & 1 deletion src/main/java/inha/how/Config/BaseResponseStatus.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,9 @@ public enum BaseResponseStatus {

// users
USERS_EMPTY_USER_ID(false, 2010, "유저 아이디 값을 확인해주세요."),
USERS_EMPTY_PASSWORD(false, 2010, "유저 비밀번호 값을 확인해주세요."),
USERS_EMPTY_PASSWORD(false, 2011, "유저 비밀번호 값을 확인해주세요."),

CALENDAR_NOT_FOUND(false, 2012, "해당하는 달력을 찾을 수 없습니다."),

// [POST] /users
POST_USERS_EMPTY_EMAIL(false, 2015, "이메일을 입력해주세요."),
Expand Down
19 changes: 15 additions & 4 deletions src/main/java/inha/how/Controller/CalendarController.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
package inha.how.Controller;

import inha.how.Config.BaseResponse;
import inha.how.Domain.dto.calendar.CalendarAddRes;
import inha.how.Domain.dto.calendar.CalendarInfoMapping;
import inha.how.Domain.dto.calendar.CalendarModifyReq;
import inha.how.Domain.entity.User;
import inha.how.Service.CalendarService;
import inha.how.Service.UserService;
import io.swagger.v3.oas.annotations.Operation;
import lombok.RequiredArgsConstructor;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;

import java.util.List;
Expand All @@ -27,14 +30,22 @@ public BaseResponse<List<CalendarInfoMapping>> CalendarList(@RequestHeader("Auth
List<CalendarInfoMapping> res=calendarService.findCalendar(user);
return new BaseResponse<>(res);
}
/*

@Operation(summary = "내 달력 루틴 추가", description = "자신의 달력에 할 루틴을 등록하는 api다.")
@PostMapping("")
public BaseResponse CalendarAdd(){
public BaseResponse CalendarAdd(@RequestHeader("Authorization") String jws, @RequestBody CalendarAddRes calendarAddRes){
User user=userService.validUser(jws);
calendarService.CalendarAdd(user, calendarAddRes);

return new BaseResponse();
}

@Operation(summary = "달력 운동루틴 체크/해제", description = "내 달력의 할 운동 루틴에 체크/해제한다.")
@PatchMapping("/{id}")
public BaseResponse CalendarModify(@PathVariable("id") Long id, @RequestBody CalendarModifyReq calendarModifyReq){
calendarService.modifyCalendar(id, calendarModifyReq);

*/
return new BaseResponse();
}
//CalendarModify: 운동 체크
}
17 changes: 17 additions & 0 deletions src/main/java/inha/how/Domain/dto/calendar/CalendarAddRes.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package inha.how.Domain.dto.calendar;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import org.springframework.cglib.core.Local;

import java.time.LocalDate;

@Getter
@AllArgsConstructor
@NoArgsConstructor
public class CalendarAddRes {
private LocalDate localDate;
private Long routId;
private Boolean check;
}
13 changes: 13 additions & 0 deletions src/main/java/inha/how/Domain/dto/calendar/CalendarModifyReq.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package inha.how.Domain.dto.calendar;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;

@Getter
@AllArgsConstructor
@NoArgsConstructor
public class CalendarModifyReq {
private boolean chk;

}
18 changes: 17 additions & 1 deletion src/main/java/inha/how/Domain/entity/Calendar.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import jakarta.persistence.*;
import lombok.Getter;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.CreatedDate;

import java.time.LocalDate;
Expand All @@ -20,5 +21,20 @@ public class Calendar extends BaseTimeEntity{
@JoinColumn(name = "rout_id", referencedColumnName = "id")
private Routine routine;
private LocalDate date;
private boolean check;
@Column(name="chk")
private Boolean check;


public void setUser(User user){
this.user=user;
}
public void setRoutine(Routine routine){
this.routine=routine;
}
public void setDate(LocalDate localDate){
this.date=localDate;
}
public void setCheck(boolean check){
this.check=check;
}
}
33 changes: 32 additions & 1 deletion src/main/java/inha/how/Service/CalendarService.java
Original file line number Diff line number Diff line change
@@ -1,28 +1,59 @@
package inha.how.Service;

import inha.how.Config.BaseResponseStatus;
import inha.how.Config.exception.BaseException;
import inha.how.Domain.dto.calendar.CalendarAddRes;
import inha.how.Domain.dto.calendar.CalendarInfoMapping;
import inha.how.Domain.dto.calendar.CalendarModifyReq;
import inha.how.Domain.entity.Calendar;
import inha.how.Domain.entity.Routine;
import inha.how.Domain.entity.User;
import inha.how.Repository.CalendarRepository;
import inha.how.Repository.Routine.RoutineRepository;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.time.LocalDate;
import java.util.List;

@Slf4j
@RequiredArgsConstructor
@Service
public class CalendarService {
private final CalendarRepository calendarRepository;
private final RoutineRepository routineRepository;

public List<CalendarInfoMapping> findCalendar(User user){
List<CalendarInfoMapping> calendarInfoMappingList = calendarRepository.findCalendarByUser(user);

return calendarInfoMappingList;
}

public void CalendarAdd(){
public void CalendarAdd(User user, CalendarAddRes calendarAddRes){
Long routId= calendarAddRes.getRoutId();
LocalDate localDate=calendarAddRes.getLocalDate();
Boolean check = calendarAddRes.getCheck();

Routine routine = routineRepository.findRoutineById(routId);

Calendar calendar=new Calendar();
calendar.setUser(user);
calendar.setDate(localDate);
calendar.setCheck(check);
calendar.setRoutine(routine);

calendarRepository.save(calendar);
}

@Transactional
//modifyCalendar: 달력 체크 수정
public void modifyCalendar(Long id, CalendarModifyReq calendarModifyReq){
Calendar calendar= calendarRepository.findById(id).orElseThrow(()->new BaseException(BaseResponseStatus.CALENDAR_NOT_FOUND));

log.error("check: "+calendarModifyReq.isChk());
calendar.setCheck(calendarModifyReq.isChk());
}

}

0 comments on commit 4e1811e

Please sign in to comment.