Fix: errors in the YAML files. Add: DTO for making pre-user requests in huertos.
This commit is contained in:
@@ -43,10 +43,10 @@ public class SecurityConfig {
|
||||
.authorizeHttpRequests(auth -> auth
|
||||
// PUBLICAS
|
||||
.requestMatchers("/login").permitAll()
|
||||
.requestMatchers("/announces/**").permitAll()
|
||||
.requestMatchers("/huertos/members/waitlist").permitAll()
|
||||
.requestMatchers("/huertos/members/waitlist/limited").permitAll()
|
||||
.requestMatchers("/huertos/members/latest-number").permitAll()
|
||||
.requestMatchers("/announces").permitAll()
|
||||
.requestMatchers("/requests").permitAll()
|
||||
.requestMatchers("/huertos/users/waitlist/limited").permitAll()
|
||||
.requestMatchers("/huertos/users/latest-number").permitAll()
|
||||
// PRIVADAS
|
||||
.anyRequest().authenticated()
|
||||
);
|
||||
|
||||
@@ -1,13 +1,19 @@
|
||||
package net.miarma.backend.huertos.controller;
|
||||
|
||||
import jakarta.transaction.Transactional;
|
||||
import net.miarma.backend.huertos.dto.CreateWaitlistDto;
|
||||
import net.miarma.backend.huertos.dto.PreUserDto;
|
||||
import net.miarma.backend.huertos.dto.RequestCountDto;
|
||||
import net.miarma.backend.huertos.dto.RequestDto;
|
||||
import net.miarma.backend.huertos.dto.view.VRequestsWithPreUsersDto;
|
||||
import net.miarma.backend.huertos.mapper.PreUserMapper;
|
||||
import net.miarma.backend.huertos.mapper.RequestMapper;
|
||||
import net.miarma.backend.huertos.mapper.view.VIncomesWithFullNamesMapper;
|
||||
import net.miarma.backend.huertos.mapper.view.VRequestsWithPreUsersMapper;
|
||||
import net.miarma.backend.huertos.model.PreUser;
|
||||
import net.miarma.backend.huertos.model.Request;
|
||||
import net.miarma.backend.huertos.model.view.VRequestsWithPreUsers;
|
||||
import net.miarma.backend.huertos.service.PreUserService;
|
||||
import net.miarma.backend.huertos.service.RequestService;
|
||||
import net.miarma.backend.huertos.service.view.VRequestsWithPreUsersService;
|
||||
import net.miarma.backlib.security.JwtService;
|
||||
@@ -26,11 +32,16 @@ import java.util.stream.Collectors;
|
||||
public class RequestController {
|
||||
|
||||
private final RequestService requestService;
|
||||
private final PreUserService preUserService;
|
||||
private final VRequestsWithPreUsersService vRequestsWithPreUsersService;
|
||||
private final JwtService jwtService;
|
||||
|
||||
public RequestController(RequestService requestService, VRequestsWithPreUsersService vRequestsWithPreUsersService, JwtService jwtService) {
|
||||
public RequestController(RequestService requestService,
|
||||
PreUserService preUserService,
|
||||
VRequestsWithPreUsersService vRequestsWithPreUsersService,
|
||||
JwtService jwtService) {
|
||||
this.requestService = requestService;
|
||||
this.preUserService = preUserService;
|
||||
this.vRequestsWithPreUsersService = vRequestsWithPreUsersService;
|
||||
this.jwtService = jwtService;
|
||||
}
|
||||
@@ -108,6 +119,14 @@ public class RequestController {
|
||||
return ResponseEntity.ok(RequestMapper.toResponse(request));
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
@Transactional
|
||||
public ResponseEntity<RequestDto.Response> create(
|
||||
@RequestBody CreateWaitlistDto body) {
|
||||
RequestDto.Response response = requestService.create(body.request(), body.preUser());
|
||||
return ResponseEntity.ok(response);
|
||||
}
|
||||
|
||||
@PutMapping("/{request_id}")
|
||||
@PreAuthorize("hasAnyRole('HUERTOS_ROLE_ADMIN', 'HUERTOS_ROLE_DEV')")
|
||||
public ResponseEntity<RequestDto.Response> update(
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
package net.miarma.backend.huertos.dto;
|
||||
|
||||
public record CreateWaitlistDto(
|
||||
RequestDto.Request request,
|
||||
PreUserDto.Request preUser
|
||||
) {
|
||||
}
|
||||
@@ -4,8 +4,13 @@ import java.time.Instant;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import net.miarma.backend.huertos.dto.PreUserDto;
|
||||
import net.miarma.backend.huertos.dto.RequestDto;
|
||||
import net.miarma.backend.huertos.mapper.PreUserMapper;
|
||||
import net.miarma.backend.huertos.mapper.RequestMapper;
|
||||
import net.miarma.backend.huertos.model.HuertosUserMetadata;
|
||||
import net.miarma.backend.huertos.model.PreUser;
|
||||
import net.miarma.backend.huertos.repository.PreUserRepository;
|
||||
import net.miarma.backlib.exception.BadRequestException;
|
||||
import net.miarma.backlib.exception.NotFoundException;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -20,11 +25,14 @@ import net.miarma.backlib.util.UuidUtil;
|
||||
public class RequestService {
|
||||
|
||||
private final RequestRepository requestRepository;
|
||||
private final PreUserRepository preUserRepository;
|
||||
private final HuertosUserMetadataService metadataService;
|
||||
|
||||
public RequestService(RequestRepository requestRepository,
|
||||
PreUserRepository preUserRepository,
|
||||
HuertosUserMetadataService metadataSertice) {
|
||||
this.requestRepository = requestRepository;
|
||||
this.preUserRepository = preUserRepository;
|
||||
this.metadataService = metadataSertice;
|
||||
}
|
||||
|
||||
@@ -73,6 +81,14 @@ public class RequestService {
|
||||
return requestRepository.save(request);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public RequestDto.Response create(RequestDto.Request requestDto,
|
||||
PreUserDto.Request preUserDto) {
|
||||
PreUser preUser = preUserRepository.save(PreUserMapper.toEntity(preUserDto));
|
||||
Request request = requestRepository.save(RequestMapper.toEntity(requestDto));
|
||||
return RequestMapper.toResponse(request);
|
||||
}
|
||||
|
||||
public Request update(UUID requestId, RequestDto.Request dto) {
|
||||
byte[] idBytes = UuidUtil.uuidToBin(requestId);
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ core:
|
||||
|
||||
huertos:
|
||||
user: SYSTEM
|
||||
password: ${HUERTOS_SYSTEM_PASSWORD}
|
||||
password: ${HUERTOS_PASS}
|
||||
|
||||
mail:
|
||||
smtp:
|
||||
|
||||
@@ -19,7 +19,7 @@ core:
|
||||
|
||||
huertos:
|
||||
user: SYSTEM
|
||||
password: ${HUERTOS_SYSTEM_PASSWORD}
|
||||
password: ${HUERTOS_PASS}
|
||||
|
||||
mail:
|
||||
smtp:
|
||||
|
||||
Reference in New Issue
Block a user