package com.danielbohry.stocks.domain; import lombok.Builder; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; @Data @Builder public class Portfolio { private String id; private List stocks; private BigDecimal totalValue; private Integer totalAssets; private String username; private LocalDateTime createdAt; private LocalDateTime updatedAt; public BigDecimal getTotalValue() { return this.stocks.stream() .map(Stock::getTotal) .reduce(BigDecimal.ZERO, BigDecimal::add); } public Integer getTotalAssets() { return this.stocks.size(); } }