Add illustration id to publication entity.
This commit is contained in:
@@ -44,4 +44,8 @@ public class PictureUseCases {
|
||||
public Optional<Picture> findById(UUID pictureId) {
|
||||
return picturePort.findById(pictureId);
|
||||
}
|
||||
|
||||
public boolean existsById(UUID pictureId) {
|
||||
return picturePort.existsById(pictureId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,8 +19,8 @@ public class PublicationCreationRequestValidator {
|
||||
throw new PublicationEditionException("description cannot be null");
|
||||
}
|
||||
|
||||
if (request.pictureId() == null) {
|
||||
throw new PublicationEditionException("pictureId cannot be null");
|
||||
if (request.illustrationId() == null) {
|
||||
throw new PublicationEditionException("illustrationId cannot be null");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ public class PublicationUpdateRequestValidator {
|
||||
isNull(request.title()) &&
|
||||
isNull(request.text()) &&
|
||||
isNull(request.description()) &&
|
||||
isNull(request.pictureId()) &&
|
||||
isNull(request.illustrationId()) &&
|
||||
isNull(request.categoryId())
|
||||
) {
|
||||
throw new PublicationEditionException("no any field is filled");
|
||||
|
||||
@@ -15,7 +15,6 @@ import org.codiki.domain.category.exception.CategoryNotFoundException;
|
||||
import org.codiki.domain.category.model.Category;
|
||||
import org.codiki.domain.exception.AuthenticationRequiredException;
|
||||
import org.codiki.domain.picture.exception.PictureNotFoundException;
|
||||
import org.codiki.domain.picture.model.Picture;
|
||||
import org.codiki.domain.publication.exception.PublicationEditionException;
|
||||
import org.codiki.domain.publication.exception.PublicationNotFoundException;
|
||||
import org.codiki.domain.publication.exception.PublicationUpdateForbiddenException;
|
||||
@@ -68,10 +67,11 @@ public class PublicationUseCases {
|
||||
new CategoryNotFoundException(request.categoryId())
|
||||
));
|
||||
|
||||
Picture picture = pictureUseCases.findById(request.pictureId())
|
||||
.orElseThrow(() -> new PublicationEditionException(
|
||||
new PictureNotFoundException(request.pictureId())
|
||||
));
|
||||
if (!pictureUseCases.existsById(request.illustrationId())) {
|
||||
throw new PublicationEditionException(
|
||||
new PictureNotFoundException(request.illustrationId())
|
||||
);
|
||||
}
|
||||
|
||||
Publication newPublication = aPublication()
|
||||
.withId(UUID.randomUUID())
|
||||
@@ -79,7 +79,7 @@ public class PublicationUseCases {
|
||||
.withTitle(request.title())
|
||||
.withText(request.text())
|
||||
.withDescription(request.description())
|
||||
.withPicture(picture)
|
||||
.withIllustrationId(request.illustrationId())
|
||||
.withCreationDate(ZonedDateTime.now(clock))
|
||||
.withAuthor(anAuthor().basedOn(authenticatedUser).build())
|
||||
.withCategory(category)
|
||||
@@ -117,12 +117,13 @@ public class PublicationUseCases {
|
||||
publicationBuilder.withDescription(request.description());
|
||||
}
|
||||
|
||||
if (!isNull(request.pictureId())) {
|
||||
Picture picture = pictureUseCases.findById(request.pictureId())
|
||||
.orElseThrow(() -> new PublicationEditionException(
|
||||
new PictureNotFoundException(request.pictureId())
|
||||
));
|
||||
publicationBuilder.withPicture(picture);
|
||||
if (!isNull(request.illustrationId())) {
|
||||
if (!pictureUseCases.existsById(request.illustrationId())) {
|
||||
throw new PublicationEditionException(
|
||||
new PictureNotFoundException(request.illustrationId())
|
||||
);
|
||||
}
|
||||
publicationBuilder.withIllustrationId(request.illustrationId());
|
||||
}
|
||||
|
||||
if (!isNull(request.categoryId())) {
|
||||
|
||||
Reference in New Issue
Block a user