Skip to content

Commit

Permalink
Merge pull request #95 from Team-KeepGoing/feature-#94
Browse files Browse the repository at this point in the history
add report single view api
  • Loading branch information
miraexhoi authored Oct 16, 2024
2 parents bfcedce + 3877365 commit 249f860
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,25 @@
public class DamageController {
private final DamageService damageService;

@Operation(summary = "파손 등록", description = "파손된 항목 등록을 진행합니다.")
@Operation(summary = "신고 등록", description = "파손된 항목 등록을 진행합니다.")
@PostMapping("/report")
public BaseResponse reportDamage(@Valid @RequestBody DamageCreateRequest request) {
return damageService.reportDamage(request);
}

@Operation(summary = "파손 정보 불러오기", description = "파손된 항목들을 불러옵니다.")
@Operation(summary = "모든 신고 정보 불러오기", description = "파손된 항목들을 불러옵니다.")
@GetMapping("/all")
public BaseResponse getAllDamages() {
return damageService.getAllDamages();
}

@Operation(summary = "파손 정보 삭제하기", description = "파손된 항목을 삭제합니다.")
@Operation(summary = "선택한 신고 정보 불러오기", description = "선택한 신고 정보를 조회합니다.")
@GetMapping("/{id}")
public BaseResponse getDamage(@PathVariable("id") Long id) {
return damageService.getDamage(id);
}

@Operation(summary = "신고 내역 삭제하기", description = "신고된 내역을 삭제합니다.")
@DeleteMapping("/{id}")
public BaseResponse deleteDamage(@PathVariable Long id) {
return damageService.deleteDamage(id);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,7 @@ public interface DamageService {

BaseResponse getAllDamages();

BaseResponse getDamage(Long id);

BaseResponse deleteDamage(Long id);
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,22 @@ public BaseResponse getAllDamages() {
if (damages.isEmpty()) {
throw new DamageException(DamageError.INVALID_DAMAGE);
}
return new BaseResponse(HttpStatus.OK, "파손 정보 불러오기 성공", damages);
return new BaseResponse(HttpStatus.OK, "모든 신고 내역 불러오기 성공", damages);
}

@Override
@Transactional(readOnly = true)
public BaseResponse getDamage(Long id) {
Damage damage = damageRepository.findById(id).orElseThrow(DamageException::invalidDamage);
return new BaseResponse(HttpStatus.OK, "선택한 신고 내역 조회 성공", damageMapper.entityToDto(damage));
}

@Override
@Transactional
public BaseResponse deleteDamage(Long id) {
findDamageById(id);
damageRepository.deleteById(id);
return new BaseResponse(HttpStatus.OK, "파손 정보 삭제 성공");
return new BaseResponse(HttpStatus.OK, "신고 내역 삭제 성공");
}

private void validateDuplicate(String code, IssueType issueType) {
Expand Down

0 comments on commit 249f860

Please sign in to comment.