package com.danielbohry.stocks.domain; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import java.math.BigDecimal; import java.time.Instant; import java.util.List; @Data @Builder @AllArgsConstructor public class PortfolioHistory { private String portfolioId; private BigDecimal totalValue; private Integer totalAssets; private List stocks; private Instant createdAt; public BigDecimal getTotalValue() { return stocks.stream() .map(PortfolioStock::getTotal) .reduce(BigDecimal.ZERO, BigDecimal::add); } public Integer getTotalAssets() { return stocks.size(); } }