|
|
@ -32,14 +32,28 @@ public class CnsQnaController { |
|
|
|
private final JwtTokenUtil jwtTokenUtil; |
|
|
|
private final JwtTokenUtil jwtTokenUtil; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA 등록하는 기능, |
|
|
|
|
|
|
|
* QnaInsertRQModel 모델에 요청값으로 QnA를 등록하는 기능. |
|
|
|
|
|
|
|
* @param rq |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@PostMapping(consumes = "multipart/form-data") |
|
|
|
@PostMapping(consumes = "multipart/form-data") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 등록 - 사용자") |
|
|
|
@ApiOperation(value = "QnA 등록 - 사용자") |
|
|
|
public ResponseEntity<? extends BasicResponse> insertQna(QnaInsertRQModel rq) { |
|
|
|
public ResponseEntity<? extends BasicResponse> insertQna(QnaInsertRQModel rq) { |
|
|
|
boolean result = false; |
|
|
|
boolean result = false; |
|
|
|
try { |
|
|
|
try { |
|
|
|
result = cnsQnaService.insertQna(rq); |
|
|
|
result = cnsQnaService.insertQna(rq); // Qna 추가 하는기능
|
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -47,6 +61,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
@ -55,6 +76,12 @@ public class CnsQnaController { |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(result)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(result)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA리스트 조회하는 기능[관리자], |
|
|
|
|
|
|
|
* QnaListAdminRQ 조건값에 따라 조회함. |
|
|
|
|
|
|
|
* @param rq |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@GetMapping |
|
|
|
@GetMapping |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 리스트 조회-관리자") |
|
|
|
@ApiOperation(value = "QnA 리스트 조회-관리자") |
|
|
@ -62,8 +89,16 @@ public class CnsQnaController { |
|
|
|
|
|
|
|
|
|
|
|
List<QnaBasModel> result = new ArrayList<>(); |
|
|
|
List<QnaBasModel> result = new ArrayList<>(); |
|
|
|
try { |
|
|
|
try { |
|
|
|
result = cnsQnaService.selectQnaList(rq); |
|
|
|
result = cnsQnaService.selectQnaList(rq); // Qna리스트 조회하는 기능
|
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -71,6 +106,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
@ -80,6 +122,12 @@ public class CnsQnaController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA리스트 조회하는 기능[관리자], |
|
|
|
|
|
|
|
* QnaSelectListRQ 값에 따라서 조회함. |
|
|
|
|
|
|
|
* @param rq |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@GetMapping("/user") |
|
|
|
@GetMapping("/user") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 리스트 조회-사용자") |
|
|
|
@ApiOperation(value = "QnA 리스트 조회-사용자") |
|
|
@ -89,6 +137,14 @@ public class CnsQnaController { |
|
|
|
try { |
|
|
|
try { |
|
|
|
result = cnsQnaService.selectQnaForUser(rq); |
|
|
|
result = cnsQnaService.selectQnaForUser(rq); |
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -96,6 +152,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
@ -105,14 +168,28 @@ public class CnsQnaController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA 상세보기 기능, |
|
|
|
|
|
|
|
* QnA일련번호[qnaSno]값으로 조회함. |
|
|
|
|
|
|
|
* @param qnaSno |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@GetMapping("/{qnaSno}") |
|
|
|
@GetMapping("/{qnaSno}") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 상세보기") |
|
|
|
@ApiOperation(value = "QnA 상세보기") |
|
|
|
public ResponseEntity<? extends BasicResponse> detailQna(@PathVariable int qnaSno) { |
|
|
|
public ResponseEntity<? extends BasicResponse> detailQna(@PathVariable int qnaSno) { |
|
|
|
QnaDetailRSModel result = null; |
|
|
|
QnaDetailRSModel result = null; |
|
|
|
try { |
|
|
|
try { |
|
|
|
result = cnsQnaService.getQnaDetail(qnaSno); |
|
|
|
result = cnsQnaService.getQnaDetail(qnaSno); // Qna 상세불러오기 기능
|
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -120,6 +197,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
@ -128,14 +212,28 @@ public class CnsQnaController { |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(result)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(result)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA수정 하는 기능[사용자], |
|
|
|
|
|
|
|
* QnaInsertRQModel 모델에 입력받은 사항들을 수정함. |
|
|
|
|
|
|
|
* @param rq |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@PutMapping(consumes = "multipart/form-data") |
|
|
|
@PutMapping(consumes = "multipart/form-data") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 수정 - 사용자") |
|
|
|
@ApiOperation(value = "QnA 수정 - 사용자") |
|
|
|
public ResponseEntity<? extends BasicResponse> updateQna(QnaInsertRQModel rq) { |
|
|
|
public ResponseEntity<? extends BasicResponse> updateQna(QnaInsertRQModel rq) { |
|
|
|
boolean result = false; |
|
|
|
boolean result = false; |
|
|
|
try { |
|
|
|
try { |
|
|
|
result = cnsQnaService.updateQna(rq); |
|
|
|
result = cnsQnaService.updateQna(rq); // Qna 업데이트하는 기능
|
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -143,6 +241,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
@ -152,6 +257,12 @@ public class CnsQnaController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA삭제하는 기능, |
|
|
|
|
|
|
|
* QnA일련번호[qnaSno]로 삭제함. |
|
|
|
|
|
|
|
* @param qnaSno |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@DeleteMapping("/{qnaSno}") |
|
|
|
@DeleteMapping("/{qnaSno}") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 삭제하기") |
|
|
|
@ApiOperation(value = "QnA 삭제하기") |
|
|
@ -159,8 +270,16 @@ public class CnsQnaController { |
|
|
|
// TODO 관리자만 삭제 가능 여부인지 확인 필요
|
|
|
|
// TODO 관리자만 삭제 가능 여부인지 확인 필요
|
|
|
|
boolean result = false; |
|
|
|
boolean result = false; |
|
|
|
try { |
|
|
|
try { |
|
|
|
result = cnsQnaService.deleteQna(qnaSno); |
|
|
|
result = cnsQnaService.deleteQna(qnaSno); // Qna 삭제하기, file들도 모두 논리삭제하는 기능.
|
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -168,6 +287,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
@ -176,6 +302,12 @@ public class CnsQnaController { |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(result)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(result)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* QnA 답변등록하는 기능[관리자], |
|
|
|
|
|
|
|
* QnaInsertAnserRQModel에 입력받은 값으로 답변을 등록함. |
|
|
|
|
|
|
|
* @param rq |
|
|
|
|
|
|
|
* @return |
|
|
|
|
|
|
|
*/ |
|
|
|
@PutMapping("/answer") |
|
|
|
@PutMapping("/answer") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@Tag(name = "QNA", description = "QNA 관련 API") |
|
|
|
@ApiOperation(value = "QnA 답변 등록 - 관리자") |
|
|
|
@ApiOperation(value = "QnA 답변 등록 - 관리자") |
|
|
@ -188,8 +320,16 @@ public class CnsQnaController { |
|
|
|
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body(new ErrorResponse(RSErrorCode.AUTH_ERROR)); |
|
|
|
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body(new ErrorResponse(RSErrorCode.AUTH_ERROR)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
result = cnsQnaService.insertAnswer(rq); |
|
|
|
result = cnsQnaService.insertAnswer(rq); // 답변추가하는 기능.
|
|
|
|
} catch (CustomException e) { |
|
|
|
} catch (CustomException e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* CustomException은 개발자가 "의도적으로" 낸 예외처리, |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
Map<String, Object> resultMap = new HashMap<>(); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
resultMap.put("result", false); |
|
|
|
resultMap.put("result", false); |
|
|
@ -197,6 +337,13 @@ public class CnsQnaController { |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
resultMap.put("errorMessage", e.getMessage()); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
return ResponseEntity.ok().body(new SuccessResponse<>(resultMap)); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* try{ |
|
|
|
|
|
|
|
... |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
* try 영역 안 코드들중 문제가 생기면 오는 곳. |
|
|
|
|
|
|
|
* log.error 로그로 원인 파악과 함께 API를 호출한 곳에 서버에러 내려줌 |
|
|
|
|
|
|
|
*/ |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
log.error("IGNORE : ", e); |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|
.body(new ErrorResponse("Server Error", "-1")); |
|
|
|