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
@@ -1,7 +1,7 @@
package HalfFifty.HalfFifty_BE.FAQ.bean;

import HalfFifty.HalfFifty_BE.FAQ.bean.small.CreateAqUserDAOBean;
import HalfFifty.HalfFifty_BE.FAQ.bean.small.SaveAqUserDAOBean;
import HalfFifty.HalfFifty_BE.FAQ.bean.small.SaveAqDAOBean;
import HalfFifty.HalfFifty_BE.FAQ.domain.AqDAO;
import HalfFifty.HalfFifty_BE.FAQ.domain.DTO.RequestAqUserSaveDTO;
import org.springframework.beans.factory.annotation.Autowired;
Expand All @@ -12,12 +12,12 @@
@Component
public class AqUserSaveBean {
CreateAqUserDAOBean createAqUserDAOBean;
SaveAqUserDAOBean saveAqUserDAOBean;
SaveAqDAOBean saveAqDAOBean;

@Autowired
public AqUserSaveBean(CreateAqUserDAOBean createAqUserDAOBean, SaveAqUserDAOBean saveAqUserDAOBean) {
public AqUserSaveBean(CreateAqUserDAOBean createAqUserDAOBean, SaveAqDAOBean saveAqDAOBean) {
this.createAqUserDAOBean = createAqUserDAOBean;
this.saveAqUserDAOBean = saveAqUserDAOBean;
this.saveAqDAOBean = saveAqDAOBean;
}

// AQ 등록
Expand All @@ -27,7 +27,7 @@ public UUID exec(RequestAqUserSaveDTO requestAqUserSaveDTO) {
if(aqDAO == null) return null;

// 생성한 객체 저장
saveAqUserDAOBean.exec(aqDAO);
saveAqDAOBean.exec(aqDAO);

// 키값 반환
return aqDAO.getAqId();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package HalfFifty.HalfFifty_BE.FAQ.bean;

import HalfFifty.HalfFifty_BE.FAQ.bean.small.GetAqDAOBean;
import HalfFifty.HalfFifty_BE.FAQ.bean.small.SaveAqDAOBean;
import HalfFifty.HalfFifty_BE.FAQ.domain.AqDAO;
import HalfFifty.HalfFifty_BE.FAQ.domain.DTO.RequestAqAdminUpdateDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;
import java.util.UUID;

@Component
public class UpdateAqAdminBean {
GetAqDAOBean getAqDAOBean;
SaveAqDAOBean saveAqDAOBean;

@Autowired
public UpdateAqAdminBean(GetAqDAOBean getAqDAOBean, SaveAqDAOBean saveAqDAOBean) {
this.getAqDAOBean = getAqDAOBean;
this.saveAqDAOBean = saveAqDAOBean;
}

// AQ admin 답장
public UUID exec(RequestAqAdminUpdateDTO requestAqAdminUpdateDTO) {
// AQ 아이디를 통해 원하는 객체 찾기
AqDAO aqDAO = getAqDAOBean.exec(requestAqAdminUpdateDTO.getAqId());
if(aqDAO == null) return null;

// 찾은 객체 수정
aqDAO.setAnswer(requestAqAdminUpdateDTO.getAnswer());
aqDAO.setIsAnswer(Boolean.TRUE);
aqDAO.setAnswerCreatedAt(LocalDateTime.now());

// 수정된 값 저장
saveAqDAOBean.exec(aqDAO);

// 키값 반환
return aqDAO.getAqId();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package HalfFifty.HalfFifty_BE.FAQ.bean.small;

import HalfFifty.HalfFifty_BE.FAQ.domain.AqDAO;
import HalfFifty.HalfFifty_BE.FAQ.repository.AqRepositoryJPA;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.UUID;

@Component
public class GetAqDAOBean {
AqRepositoryJPA aqRepositoryJPA;

@Autowired
public GetAqDAOBean(AqRepositoryJPA aqRepositoryJPA) {
this.aqRepositoryJPA = aqRepositoryJPA;
}

// AQ 아이디를 통해 원하는 객체 찾기
public AqDAO exec(UUID AqId) {
return aqRepositoryJPA.findById(AqId).orElse(null);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
import org.springframework.stereotype.Component;

@Component
public class SaveAqUserDAOBean {
public class SaveAqDAOBean {
AqRepositoryJPA aqRepositoryJPA;

@Autowired
public SaveAqUserDAOBean(AqRepositoryJPA aqRepositoryJPA) {
public SaveAqDAOBean(AqRepositoryJPA aqRepositoryJPA) {
this.aqRepositoryJPA = aqRepositoryJPA;
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package HalfFifty.HalfFifty_BE.FAQ.controller;

import HalfFifty.HalfFifty_BE.FAQ.domain.DTO.RequestAqAdminUpdateDTO;
import HalfFifty.HalfFifty_BE.FAQ.domain.DTO.RequestAqUserSaveDTO;
import HalfFifty.HalfFifty_BE.FAQ.service.AqService;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down Expand Up @@ -39,4 +40,22 @@ public ResponseEntity<Map<String, Object>> saveUserAq(@RequestBody RequestAqUser
// status, body 값 설정해서 응답 리턴
return ResponseEntity.status(HttpStatus.OK).body(requestMap);
}

@PatchMapping
public ResponseEntity<Map<String, Object>> updateAdminAq(@RequestBody RequestAqAdminUpdateDTO requestAqAdminUpdateDTO) {
// AQ 어드민 답장 service
UUID AqId = aqService.updateAdminAq(requestAqAdminUpdateDTO);

// AQ 어드민 답장 성공 여부
Boolean success = AqId != null;

// Map을 통해 메시지와 list 값 json 데이터로 변환
Map<String, Object> requestMap = new HashMap<>();
requestMap.put("success", success);
requestMap.put("message", success ? "AQ 어드민 답장 성공" : "AQ 어드민 답장 실패");
requestMap.put("AQId", AqId);

// status, body 값 설정해서 응답 리턴
return ResponseEntity.status(HttpStatus.OK).body(requestMap);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package HalfFifty.HalfFifty_BE.FAQ.domain.DTO;

import lombok.Data;

import java.util.UUID;

@Data
public class RequestAqAdminUpdateDTO {
UUID AqId;
String answer;
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package HalfFifty.HalfFifty_BE.FAQ.service;

import HalfFifty.HalfFifty_BE.FAQ.bean.AqUserSaveBean;
import HalfFifty.HalfFifty_BE.FAQ.bean.UpdateAqAdminBean;
import HalfFifty.HalfFifty_BE.FAQ.domain.DTO.RequestAqAdminUpdateDTO;
import HalfFifty.HalfFifty_BE.FAQ.domain.DTO.RequestAqUserSaveDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
Expand All @@ -10,14 +12,21 @@
@Service
public class AqService {
AqUserSaveBean aqUserSaveBean;
UpdateAqAdminBean updateAqAdminBean;

@Autowired
public AqService(AqUserSaveBean aqUserSaveBean) {
public AqService(AqUserSaveBean aqUserSaveBean, UpdateAqAdminBean updateAqAdminBean) {
this.aqUserSaveBean = aqUserSaveBean;
this.updateAqAdminBean = updateAqAdminBean;
}

// AQ 유저 등록
public UUID saveUserAq(RequestAqUserSaveDTO requestAqUserSaveDTO) {
return aqUserSaveBean.exec(requestAqUserSaveDTO);
}

// AQ 어드민 답장
public UUID updateAdminAq(RequestAqAdminUpdateDTO requestAqAdminUpdateDTO) {
return updateAqAdminBean.exec(requestAqAdminUpdateDTO);
}
}
Loading