30 lines
861 B
Java
30 lines
861 B
Java
package com.faf223.expensetrackerfaf.dto;
|
|
|
|
import com.faf223.expensetrackerfaf.model.ExpenseCategory;
|
|
import jakarta.validation.constraints.DecimalMin;
|
|
import jakarta.validation.constraints.NotNull;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.Data;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.time.LocalDate;
|
|
|
|
@Data
|
|
@AllArgsConstructor
|
|
public class ExpenseDTO {
|
|
@NotNull(message = "ID must not be null")
|
|
private long expenseId;
|
|
|
|
@NotNull(message = "User must not be null")
|
|
private UserDTO userDTO;
|
|
|
|
@NotNull(message = "Category must not be null")
|
|
private ExpenseCategory expenseCategory;
|
|
|
|
@NotNull(message = "Date must not be null")
|
|
private LocalDate date;
|
|
|
|
@NotNull(message = "Amount must not be null")
|
|
@DecimalMin(value = "0.0", inclusive = false, message = "Amount must be positive")
|
|
private BigDecimal amount;
|
|
} |