Skip to content

Commit

Permalink
[BE] Modify : 불필요한 삭제 및 주석 처리와 이슈 목록 반환 시 ApiResponse 클래스에 감싸서 반환
Browse files Browse the repository at this point in the history
  • Loading branch information
hanurii committed Jun 19, 2020
1 parent 0f3db66 commit 442b8e9
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 84 deletions.
Original file line number Diff line number Diff line change
@@ -1,17 +1,15 @@
package com.codesquad.issuetracker.hamill.controller;

import com.codesquad.issuetracker.common.CommonMessage;
import com.codesquad.issuetracker.hamill.dto.ListOfIssuesDto;
import com.codesquad.issuetracker.hamill.dto.RequestNewIssueDto;
import com.codesquad.issuetracker.hamill.dto.info.IssuesDto;
import com.codesquad.issuetracker.hamill.response.ApiResponse;
import com.codesquad.issuetracker.hamill.service.IssueService_Hamill;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/hamill")
Expand All @@ -25,32 +23,19 @@ public IssueController_Hamill(IssueService_Hamill issueService_Hamill) {
this.issueService_Hamill = issueService_Hamill;
}

// @GetMapping("/api/issues")
// public ResponseEntity<List<IssuesDto>> showList() {
// return new ResponseEntity<>(issueService_Hamill.findAllIssues(), HttpStatus.OK);
// }

@GetMapping("/api/issues")
public ResponseEntity<ListOfIssuesDto> showList() {
return new ResponseEntity<>(issueService_Hamill.getIssuesAndAllElements(), HttpStatus.OK);
public ResponseEntity<ApiResponse<ListOfIssuesDto>> showList() {
return new ResponseEntity<>(ApiResponse.OK(issueService_Hamill.getIssuesAndAllElements()), HttpStatus.OK);
}

@GetMapping("/api/issues/{issueId}")
public ResponseEntity<IssuesDto> findIssueByIssueId(@PathVariable Long issueId) {
return new ResponseEntity<>(issueService_Hamill.findIssueByIssueId(issueId), HttpStatus.OK);
}

@PostMapping("/api/issues")
public ResponseEntity<CommonMessage> create(@RequestBody RequestNewIssueDto requestNewIssueDto) {
issueService_Hamill.save(requestNewIssueDto);
return new ResponseEntity<>(getMessage("200", "새로운 이슈 생성 성공"), HttpStatus.OK);
}

private CommonMessage getMessage(String statusCode, String message) {

return CommonMessage.builder()
.statusCode(statusCode)
.message(message)
.build();
}
// @GetMapping("/api/issues/{issueId}")
// public ResponseEntity<IssuesDto> findIssueByIssueId(@PathVariable Long issueId) {
// return new ResponseEntity<>(issueService_Hamill.findIssueByIssueId(issueId), HttpStatus.OK);
// }
//
// @PostMapping("/api/issues")
// public ResponseEntity<CommonMessage> create(@RequestBody RequestNewIssueDto requestNewIssueDto) {
// issueService_Hamill.save(requestNewIssueDto);
// return new ResponseEntity<>(getMessage("200", "새로운 이슈 생성 성공"), HttpStatus.OK);
// }
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,16 @@
import com.codesquad.issuetracker.hamill.domain.Milestone;
import com.codesquad.issuetracker.hamill.domain.User;
import com.codesquad.issuetracker.hamill.dto.ListOfIssuesDto;
import com.codesquad.issuetracker.hamill.dto.RequestNewIssueDto;
import com.codesquad.issuetracker.hamill.vo.UserVO.UserSummary;
import com.codesquad.issuetracker.hamill.vo.issueVO.IssueDetails;
import com.codesquad.issuetracker.hamill.vo.labelVO.LabelInformation;
import com.codesquad.issuetracker.hamill.vo.labelVO.LabelSummary;
import com.codesquad.issuetracker.hamill.vo.milestoneVO.MilestoneInformation;
import com.codesquad.issuetracker.hamill.vo.UserVO.UserSummary;

import com.codesquad.issuetracker.hamill.vo.milestoneVO.MilestoneSummary;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import com.codesquad.issuetracker.hamill.dto.info.*;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

Expand All @@ -42,10 +38,7 @@ public IssueService_Hamill(IssueDao_Hamill issueDao_Hamill, LabelService_Hamill

public ListOfIssuesDto getIssuesAndAllElements() {
List<Issue> issues = issueDao_Hamill.findAllIssues();
List<IssueDetails> issueDetails = issues.stream()
.map(this::mapToIssueDetails)
.collect(Collectors.toList());

List<IssueDetails> issueDetails = issues.stream().map(this::mapToIssueDetails).collect(Collectors.toList());
LabelInformation labelInfo = labelService_hamill.findLabelInformation();
MilestoneInformation milestoneInfo = milestoneService_hamill.findMilestoneInformation();
List<UserSummary> userSummary = userService_hamill.findUserInformation();
Expand All @@ -59,52 +52,46 @@ private IssueDetails mapToIssueDetails(Issue issue) {
List<UserSummary> allocatedAssignees = userService_hamill.findUserSummaryByIssueId(issue.getId());
User user = userService_hamill.findUserByUserId(issue.getUserId());

return IssueDetails.of(
issue.getId(),
issue.getTitle(),
MilestoneSummary.of(milestone.getId(), milestone.getTitle()),
attachedLabels,
UserSummary.of(user.getId(), user.getName(), user.getAvatarUrl()),
allocatedAssignees,
issue.getCreatedDateTime(),
issue.isOpened());
}


public IssuesDto findIssueByIssueId(Long issueId) {

IssuesDto issuesDto = issueDao_Hamill.findIssueByIssueId(issueId);
issuesDto.setAttachedLabels(issueDao_Hamill.findLabelsByIssuesId(issueId));
issuesDto.setAllocatedAssignees(issueDao_Hamill.findAssigneeByIssueId(issueId));
return issuesDto;
return IssueDetails.of(issue.getId(), issue.getTitle(), MilestoneSummary.of(milestone.getId(), milestone.getTitle()),
attachedLabels, UserSummary.of(user.getId(), user.getName(), user.getAvatarUrl()), allocatedAssignees,
issue.getCreatedDateTime(), issue.isOpened());
}

public void save(RequestNewIssueDto requestNewIssueDto) {
Long newIssueId = issueDao_Hamill.getCountOfIssues() + 1L;
issueDao_Hamill.saveNewIssue(
newIssueId,
requestNewIssueDto.getTitle(),
requestNewIssueDto.getUserId(),
requestNewIssueDto.getMilestone().getMilestoneId());

saveNewIssueHasLabel(requestNewIssueDto);
saveAssignees(requestNewIssueDto);

IssuesDto issuesDto = issueDao_Hamill.findIssueByIssueId(newIssueId);
issuesDto.setAttachedLabels(requestNewIssueDto.getAttachedLabels());
issuesDto.setAllocatedAssignees(requestNewIssueDto.getAllocatedAssignees());
}

private void saveNewIssueHasLabel(RequestNewIssueDto requestNewIssueDto) {
for (int i = ZERO; i < requestNewIssueDto.getAttachedLabels().size(); i++) {
issueDao_Hamill.saveNewIssueHasLabel(requestNewIssueDto.getAttachedLabels().get(i).getLabelId(), (long)issueDao_Hamill.getCountOfIssues());
}
}

private void saveAssignees(RequestNewIssueDto requestNewIssueDto) {
for (int i = ZERO; i < requestNewIssueDto.getAllocatedAssignees().size(); i++) {
issueDao_Hamill.saveAssignees((long)issueDao_Hamill.getCountOfIssues(), requestNewIssueDto.getAllocatedAssignees().get(i).getUserId());
}
}
// public IssuesDto findIssueByIssueId(Long issueId) {
//
// IssuesDto issuesDto = issueDao_Hamill.findIssueByIssueId(issueId);
// issuesDto.setAttachedLabels(issueDao_Hamill.findLabelsByIssuesId(issueId));
// issuesDto.setAllocatedAssignees(issueDao_Hamill.findAssigneeByIssueId(issueId));
// return issuesDto;
// }
//
// public void save(RequestNewIssueDto requestNewIssueDto) {
// Long newIssueId = issueDao_Hamill.getCountOfIssues() + 1L;
// issueDao_Hamill.saveNewIssue(
// newIssueId,
// requestNewIssueDto.getTitle(),
// requestNewIssueDto.getUserId(),
// requestNewIssueDto.getMilestone().getMilestoneId());
//
// saveNewIssueHasLabel(requestNewIssueDto);
// saveAssignees(requestNewIssueDto);
//
// IssuesDto issuesDto = issueDao_Hamill.findIssueByIssueId(newIssueId);
// issuesDto.setAttachedLabels(requestNewIssueDto.getAttachedLabels());
// issuesDto.setAllocatedAssignees(requestNewIssueDto.getAllocatedAssignees());
// }

// private void saveNewIssueHasLabel(RequestNewIssueDto requestNewIssueDto) {
// for (int i = ZERO; i < requestNewIssueDto.getAttachedLabels().size(); i++) {
// issueDao_Hamill.saveNewIssueHasLabel(requestNewIssueDto.getAttachedLabels().get(i).getLabelId(), (long)issueDao_Hamill.getCountOfIssues());
// }
// }
//
// private void saveAssignees(RequestNewIssueDto requestNewIssueDto) {
// for (int i = ZERO; i < requestNewIssueDto.getAllocatedAssignees().size(); i++) {
// issueDao_Hamill.saveAssignees((long)issueDao_Hamill.getCountOfIssues(), requestNewIssueDto.getAllocatedAssignees().get(i).getUserId());
// }
// }

}

0 comments on commit 442b8e9

Please sign in to comment.