From 832d1f2c339c7d2343fc1636cbc25a94a767fcc3 Mon Sep 17 00:00:00 2001 From: Harkamal Randhawa Date: Mon, 20 Apr 2026 10:26:01 -0600 Subject: [PATCH] validate pet price and species --- .../java/com/petshop/backend/dto/chat/MessageRequest.java | 2 +- .../main/java/com/petshop/backend/dto/pet/PetRequest.java | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/com/petshop/backend/dto/chat/MessageRequest.java b/backend/src/main/java/com/petshop/backend/dto/chat/MessageRequest.java index 37dcd683..0784054b 100644 --- a/backend/src/main/java/com/petshop/backend/dto/chat/MessageRequest.java +++ b/backend/src/main/java/com/petshop/backend/dto/chat/MessageRequest.java @@ -1,7 +1,7 @@ package com.petshop.backend.dto.chat; public class MessageRequest { - @jakarta.validation.constraints.Size(max = 10000, message = "Message content must not exceed 10000 characters") + @jakarta.validation.constraints.Size(max = 2000, message = "Message content must not exceed 2000 characters") private String content; private String attachmentUrl; private String attachmentName; diff --git a/backend/src/main/java/com/petshop/backend/dto/pet/PetRequest.java b/backend/src/main/java/com/petshop/backend/dto/pet/PetRequest.java index ff4f9ad2..c22a5da6 100644 --- a/backend/src/main/java/com/petshop/backend/dto/pet/PetRequest.java +++ b/backend/src/main/java/com/petshop/backend/dto/pet/PetRequest.java @@ -1,8 +1,11 @@ package com.petshop.backend.dto.pet; +import jakarta.validation.constraints.DecimalMax; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import jakarta.validation.constraints.Positive; +import jakarta.validation.constraints.PositiveOrZero; import java.math.BigDecimal; import java.util.Objects; @@ -11,6 +14,7 @@ public class PetRequest { private String petName; @NotBlank(message = "Species is required") + @Pattern(regexp = "^(Dog|Cat|Bird|Fish|Rabbit|Hamster|Guinea Pig|Reptile|Other)$", flags = Pattern.Flag.CASE_INSENSITIVE, message = "Species must be Dog, Cat, Bird, Fish, Rabbit, Hamster, Guinea Pig, Reptile, or Other") private String petSpecies; private String petBreed; @@ -21,6 +25,8 @@ public class PetRequest { @NotNull(message = "Status is required") private String petStatus; + @PositiveOrZero(message = "Price must be zero or positive") + @DecimalMax(value = "99999.99", message = "Price must not exceed 99999.99") private BigDecimal petPrice; private Long customerId;