Add: unified requests with pre users endpoint
This commit is contained in:
@@ -60,11 +60,11 @@ public class RequestController {
|
||||
)));
|
||||
}
|
||||
|
||||
@PostMapping("/waitlist")
|
||||
@PostMapping("/with-pre-user")
|
||||
@Transactional
|
||||
public ResponseEntity<RequestDto.Response> createWaitlist(
|
||||
@RequestBody CreateWaitlistDto body) {
|
||||
RequestDto.Response response = requestService.createWaitlist(body.request(), body.preUser());
|
||||
public ResponseEntity<RequestDto.Response> createWithPreUser(
|
||||
@RequestBody RequestWithPreUserDto.Request body) {
|
||||
RequestDto.Response response = requestService.createWithPreUser(body.getRequest(), body.getPreUser());
|
||||
return ResponseEntity.ok(response);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
package net.miarma.backend.huertos.dto;
|
||||
|
||||
public record CreateWaitlistDto(
|
||||
RequestDto.Request request,
|
||||
PreUserDto.Request preUser
|
||||
) {
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package net.miarma.backend.huertos.dto;
|
||||
|
||||
public class RequestWithPreUserDto {
|
||||
public static class Request {
|
||||
private RequestDto.Request request;
|
||||
private PreUserDto.Request preUser;
|
||||
|
||||
public Request(RequestDto.Request request, PreUserDto.Request preUser) {
|
||||
this.request = request;
|
||||
this.preUser = preUser;
|
||||
}
|
||||
|
||||
public RequestDto.Request getRequest() {
|
||||
return request;
|
||||
}
|
||||
|
||||
public void setRequest(RequestDto.Request request) {
|
||||
this.request = request;
|
||||
}
|
||||
|
||||
public PreUserDto.Request getPreUser() {
|
||||
return preUser;
|
||||
}
|
||||
|
||||
public void setPreUser(PreUserDto.Request preUser) {
|
||||
this.preUser = preUser;
|
||||
}
|
||||
}
|
||||
|
||||
public static class Response {
|
||||
private RequestDto.Response request;
|
||||
private PreUserDto.Response preUser;
|
||||
|
||||
public RequestDto.Response getRequest() {
|
||||
return request;
|
||||
}
|
||||
|
||||
public void setRequest(RequestDto.Response request) {
|
||||
this.request = request;
|
||||
}
|
||||
|
||||
public PreUserDto.Response getPreUser() {
|
||||
return preUser;
|
||||
}
|
||||
|
||||
public void setPreUser(PreUserDto.Response preUser) {
|
||||
this.preUser = preUser;
|
||||
}
|
||||
|
||||
public Response(RequestDto.Response request, PreUserDto.Response preUser) {
|
||||
this.request = request;
|
||||
this.preUser = preUser;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
package net.miarma.backend.huertos.mapper;
|
||||
|
||||
import net.miarma.backend.huertos.dto.RequestDto;
|
||||
import net.miarma.backend.huertos.dto.RequestWithPreUserDto;
|
||||
import net.miarma.backend.huertos.model.PreUser;
|
||||
import net.miarma.backend.huertos.model.Request;
|
||||
|
||||
public class RequestMapper {
|
||||
@@ -18,6 +20,15 @@ public class RequestMapper {
|
||||
return dto;
|
||||
}
|
||||
|
||||
public static RequestWithPreUserDto.Response toResponseWithPreUser(Request request, PreUser preUser) {
|
||||
if (request == null || preUser == null) return null;
|
||||
|
||||
return new RequestWithPreUserDto.Response(
|
||||
RequestMapper.toResponse(request),
|
||||
PreUserMapper.toResponse(preUser)
|
||||
);
|
||||
}
|
||||
|
||||
public static Request toEntity(RequestDto.Request dto) {
|
||||
if (dto == null) return null;
|
||||
|
||||
|
||||
@@ -81,10 +81,12 @@ public class RequestService {
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public RequestDto.Response createWaitlist(RequestDto.Request requestDto,
|
||||
PreUserDto.Request preUserDto) {
|
||||
PreUser preUser = preUserRepository.save(PreUserMapper.toEntity(preUserDto));
|
||||
public RequestDto.Response createWithPreUser(RequestDto.Request requestDto,
|
||||
PreUserDto.Request preUserDto) {
|
||||
Request request = requestRepository.save(RequestMapper.toEntity(requestDto));
|
||||
PreUser tmpPreUser = PreUserMapper.toEntity(preUserDto);
|
||||
tmpPreUser.setRequestId(request.getRequestId());
|
||||
PreUser preUser = preUserRepository.save(tmpPreUser);
|
||||
return RequestMapper.toResponse(request);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user