Skip to content

Commit

Permalink
Merge pull request #77 from Codiary-UMC-6th/feature/#43-team-crud-create
Browse files Browse the repository at this point in the history
Feature/#43 team crud create
  • Loading branch information
insa658723 authored Aug 4, 2024
2 parents 9ca1368 + 0212871 commit ffc167f
Show file tree
Hide file tree
Showing 6 changed files with 209 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,40 @@
package com.codiary.backend.global.converter;

import com.codiary.backend.global.domain.entity.Team;
import com.codiary.backend.global.web.dto.Team.TeamResponseDTO;

public class TeamConverter {
//νŒ€μƒμ„±
public static TeamResponseDTO.CreateTeamResponseDTO toCreateMemberDTO(Team team) {
return TeamResponseDTO.CreateTeamResponseDTO.builder()
.teamId(team.getTeamId())
.name(team.getName())
.intro(team.getIntro())
.profilePhoto(team.getProfilePhoto())
.build();
}

//νŒ€ 쑰회
public static TeamResponseDTO.TeamCheckResponseDTO toTeamCheckDTO(Team team) {
return TeamResponseDTO.TeamCheckResponseDTO.builder()
.name(team.getName())
.intro(team.getIntro())
.profilePhoto(team.getProfilePhoto())
.github(team.getGithub())
.email(team.getEmail())
.linkedIn(team.getLinkedin())
.build();
}

//νŒ€ ν”„λ‘œν•„ μˆ˜μ •
public static TeamResponseDTO.UpdateTeamDTO toUpdateTeamDTO(Team team) {
return TeamResponseDTO.UpdateTeamDTO.builder()
.name(team.getName())
.intro(team.getIntro())
.profilePhoto(team.getProfilePhoto())
.github(team.getGithub())
.email(team.getEmail())
.linkedIn(team.getLinkedin())
.build();
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,13 @@
package com.codiary.backend.global.service.TeamService;

import com.codiary.backend.global.domain.entity.Team;
import com.codiary.backend.global.web.dto.Team.TeamRequestDTO;
import com.codiary.backend.global.web.dto.TeamMember.TeamMemberRequestDTO;

public interface TeamCommandService {
//νŒ€ 생성
Team createTeam(TeamRequestDTO.CreateTeamRequestDTO request);

//νŒ€ ν”„λ‘œν•„ μˆ˜μ •
Team updateTeam(Long teamId);
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,65 @@
package com.codiary.backend.global.web.controller;

import com.codiary.backend.global.apiPayload.ApiResponse;
import com.codiary.backend.global.apiPayload.code.status.SuccessStatus;
import com.codiary.backend.global.converter.PostConverter;
import com.codiary.backend.global.converter.TeamConverter;
import com.codiary.backend.global.domain.entity.Post;
import com.codiary.backend.global.domain.entity.Team;
import com.codiary.backend.global.service.PostService.PostCommandService;
import com.codiary.backend.global.service.TeamService.TeamCommandService;
import com.codiary.backend.global.web.dto.Post.PostRequestDTO;
import com.codiary.backend.global.web.dto.Post.PostResponseDTO;
import com.codiary.backend.global.web.dto.Team.TeamRequestDTO;
import com.codiary.backend.global.web.dto.Team.TeamResponseDTO;
import io.swagger.v3.oas.annotations.Operation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;

@RequiredArgsConstructor
@RestController
@RequestMapping("/teams")
public class TeamController {
private final TeamCommandService teamCommandService;
//νŒ€ 생성
@PostMapping()
@Operation(
summary = "νŒ€ 생성"
)
public ApiResponse<TeamResponseDTO.CreateTeamResponseDTO> createTeam(
@RequestBody TeamRequestDTO.CreateTeamRequestDTO request
){
Team newTeam = teamCommandService.createTeam(request);
return ApiResponse.onSuccess(
SuccessStatus.TEAM_OK,
TeamConverter.toCreateMemberDTO(newTeam)
);
}

//νŒ€ 쑰회
@GetMapping("/{teamId}")
@Operation(
summary = "νŒ€ 쑰회"
)
public ApiResponse<TeamResponseDTO.TeamCheckResponseDTO> checkTeam(
@RequestParam Long teamId
){
return ApiResponse.onSuccess(SuccessStatus.TEAM_OK, TeamConverter.toTeamCheckDTO());
}

@PatchMapping("/profile/{teamId}")
@Operation(
summary = "νŒ€ ν”„λ‘œν•„ μˆ˜μ •"
)
public ApiResponse<TeamResponseDTO.UpdateTeamDTO> updateTeam(
@RequestBody TeamRequestDTO.UpdateTeamDTO request,
@PathVariable Long teamId
){
return ApiResponse.onSuccess(
SuccessStatus.TEAM_OK,
TeamConverter.toUpdateTeamDTO(
teamCommandService.updateTeam(teamId)
)
);
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,47 @@
package com.codiary.backend.global.web.dto.Team;

import com.codiary.backend.global.domain.enums.PostAccess;
import com.codiary.backend.global.web.dto.Member.MemberResponseDTO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.List;

public class TeamRequestDTO {
@Getter
@Builder
@AllArgsConstructor
@NoArgsConstructor
public static class CreateTeamRequestDTO { //νŒ€ 생성
private String name;
private String profilePhoto;
private String intro;
private String github;
private String linkedIn;
private String discord;
private String instagram;
}

@Getter
@Builder
@AllArgsConstructor
@NoArgsConstructor
public static class CheckTeam { //νŒ€ 쑰회
private Long teamId;
}

@Getter
@Builder
@AllArgsConstructor
@NoArgsConstructor
public static class UpdateTeamDTO { //νŒ€ ν”„λ‘œν•„ μˆ˜μ •
private String name;
private String intro;
private String github;
private String linkedIn;
private String discord;
private String instagram;
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,50 @@
package com.codiary.backend.global.web.dto.Team;

import com.codiary.backend.global.domain.enums.PostAccess;
import com.codiary.backend.global.jwt.TokenInfo;
import lombok.*;

import java.util.Set;

public class TeamResponseDTO {

@Builder
@Getter
@NoArgsConstructor
@AllArgsConstructor
public static class CreateTeamResponseDTO { // νŒ€ 생성
Long teamId;
String name;
String intro;
String profilePhoto;
}

@Builder
@Getter
@NoArgsConstructor
@AllArgsConstructor
public static class TeamCheckResponseDTO { // νŒ€ 쑰회
Long teamId;
String name;
String intro;
String profilePhoto;
String github;
String email;
String linkedIn;
}

@Getter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class UpdateTeamDTO { // νŒ€ ν”„λ‘œν•„ μˆ˜μ •
Long teamId;
String name;
String intro;
String profilePhoto;
String github;
String email;
String linkedIn;
}

}
Original file line number Diff line number Diff line change
@@ -1,4 +1,18 @@
package com.codiary.backend.global.web.dto.TeamMember;

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

public class TeamMemberResponseDTO {

@Builder
@Getter
@NoArgsConstructor
@AllArgsConstructor
public static class TeamMemberViewResponseDTO {
Long teamMemberId;

}
}

0 comments on commit ffc167f

Please sign in to comment.