Fixes one bug and makes change in data model... (delete teams must still be fixed)
This commit is contained in:
@@ -89,8 +89,7 @@ public class TeamService {
|
|||||||
|
|
||||||
// then I'm deleting team and returning mono of DTO
|
// then I'm deleting team and returning mono of DTO
|
||||||
|
|
||||||
teamRepository.delete(TeamUtils.toId.apply(team));
|
return teamRepository.delete(teamId).map(Team::toGetTeamDto);
|
||||||
return Mono.just(team.toGetTeamDto());
|
|
||||||
})
|
})
|
||||||
.switchIfEmpty(Mono.error(new TeamServiceException("cannot find team to delete")));
|
.switchIfEmpty(Mono.error(new TeamServiceException("cannot find team to delete")));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,14 +18,12 @@ public class Team {
|
|||||||
|
|
||||||
String id;
|
String id;
|
||||||
String name;
|
String name;
|
||||||
User lead;
|
|
||||||
List<User> members;
|
List<User> members;
|
||||||
|
|
||||||
public Team withMembers(List<User> newMembers) {
|
public Team withMembers(List<User> newMembers) {
|
||||||
return Team.builder()
|
return Team.builder()
|
||||||
.id(id)
|
.id(id)
|
||||||
.name(name)
|
.name(name)
|
||||||
.lead(lead)
|
|
||||||
.members(newMembers)
|
.members(newMembers)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
@@ -34,7 +32,6 @@ public class Team {
|
|||||||
return TeamEntity.builder()
|
return TeamEntity.builder()
|
||||||
.id(id)
|
.id(id)
|
||||||
.name(name)
|
.name(name)
|
||||||
.lead(lead)
|
|
||||||
.members(members)
|
.members(members)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
@@ -43,7 +40,6 @@ public class Team {
|
|||||||
return new GetTeamDto(
|
return new GetTeamDto(
|
||||||
id,
|
id,
|
||||||
name,
|
name,
|
||||||
lead,
|
members.stream().map(User::toGetUserDto).toList());
|
||||||
members);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,16 +1,14 @@
|
|||||||
package net.szymonsawicki.reactivetimesheetapp.domain.team.dto;
|
package net.szymonsawicki.reactivetimesheetapp.domain.team.dto;
|
||||||
|
|
||||||
import net.szymonsawicki.reactivetimesheetapp.domain.team.Team;
|
import net.szymonsawicki.reactivetimesheetapp.domain.team.Team;
|
||||||
import net.szymonsawicki.reactivetimesheetapp.domain.user.User;
|
|
||||||
import net.szymonsawicki.reactivetimesheetapp.domain.user.dto.GetUserDto;
|
import net.szymonsawicki.reactivetimesheetapp.domain.user.dto.GetUserDto;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public record CreateTeamDto(String name, User lead, List<GetUserDto> members) {
|
public record CreateTeamDto(String name, List<GetUserDto> members) {
|
||||||
public Team toTeam() {
|
public Team toTeam() {
|
||||||
return Team.builder()
|
return Team.builder()
|
||||||
.name(name)
|
.name(name)
|
||||||
.lead(lead)
|
|
||||||
.members(members.stream().map(GetUserDto::toUser).toList())
|
.members(members.stream().map(GetUserDto::toUser).toList())
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,18 +1,17 @@
|
|||||||
package net.szymonsawicki.reactivetimesheetapp.domain.team.dto;
|
package net.szymonsawicki.reactivetimesheetapp.domain.team.dto;
|
||||||
|
|
||||||
import net.szymonsawicki.reactivetimesheetapp.domain.team.Team;
|
import net.szymonsawicki.reactivetimesheetapp.domain.team.Team;
|
||||||
import net.szymonsawicki.reactivetimesheetapp.domain.user.User;
|
import net.szymonsawicki.reactivetimesheetapp.domain.user.dto.GetUserDto;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public record GetTeamDto(String id, String name, User lead, List<User> members) {
|
public record GetTeamDto(String id, String name, List<GetUserDto> members) {
|
||||||
|
|
||||||
public Team toTeam() {
|
public Team toTeam() {
|
||||||
return Team.builder()
|
return Team.builder()
|
||||||
.id(id)
|
.id(id)
|
||||||
.name(name)
|
.name(name)
|
||||||
.lead(lead)
|
.members(members.stream().map(GetUserDto::toUser).toList())
|
||||||
.members(members)
|
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,14 +22,12 @@ public class TeamEntity {
|
|||||||
String id;
|
String id;
|
||||||
|
|
||||||
String name;
|
String name;
|
||||||
User lead;
|
|
||||||
List<User> members;
|
List<User> members;
|
||||||
|
|
||||||
public Team toTeam() {
|
public Team toTeam() {
|
||||||
return Team.builder()
|
return Team.builder()
|
||||||
.id(id)
|
.id(id)
|
||||||
.name(name)
|
.name(name)
|
||||||
.lead(lead)
|
|
||||||
.members(members)
|
.members(members)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ public class UserHandlers {
|
|||||||
|
|
||||||
public Mono<ServerResponse> findByUsername(ServerRequest serverRequest) {
|
public Mono<ServerResponse> findByUsername(ServerRequest serverRequest) {
|
||||||
var username = serverRequest.pathVariable("username");
|
var username = serverRequest.pathVariable("username");
|
||||||
return GlobalRoutingHandler.doRequest(userService.findById(username), HttpStatus.OK);
|
return GlobalRoutingHandler.doRequest(userService.findByUsername(username), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Mono<ServerResponse> createUser(ServerRequest serverRequest) {
|
public Mono<ServerResponse> createUser(ServerRequest serverRequest) {
|
||||||
|
|||||||
Reference in New Issue
Block a user