Calculo com BigDecimal [RESOLVIDO]

Olá, estou com a seguinte dúvida preciso fazer uns cálculos com BigDecimal e estou tendo dificuldades na seguinte situação:

BigDecimal subtotal_produtos = new BigDecimal(0);
BigDecimal subtotal_departamento = new BigDecimal(0);
BigDecimal subtotal_geral = new BigDecimal(0);

for(RelatorioPedidoUsuario relPedUs: listaPedUsu){
    for(RelatorioPedidoProduto relPedPro: relatorioPedido.getRelatorioPedidoProduto(codigoPedido, relPedUs.getCodigoUsuario())){
        //esse campo me retorna um BigDecimal relPedPro.getSubTotal()
        subtotal_produtos.add(relPedPro.getSubTotal()); 


    }
    subtotal_departamento.add(subtotal_produtos);
    subtotal_geral.add(subtotal_produtos);
}
System.out.println("subtotal_departamento " + subtotal_departamento);
System.out.println("subtotal_geral " + subtotal_geral);

Ao imprimir esses subtotais vem sempre zerados, o que preciso adaptar para que esses cálculos funcionem?

Comi bola:


 BigDecimal subtotal_produtos = new BigDecimal(0);
 BigDecimal subtotal_departamento = new BigDecimal(0);
 BigDecimal subtotal_geral = new BigDecimal(0);
 
 for(RelatorioPedidoUsuario relPedUs: listaPedUsu){
     for(RelatorioPedidoProduto relPedPro: relatorioPedido.getRelatorioPedidoProduto(codigoPedido, relPedUs.getCodigoUsuario())){
         //esse campo me retorna um BigDecimal relPedPro.getSubTotal()
          subtotal_produtos = subtotal_produtos.add(relPedPro.getSubTotal()); 
 
 
     }
     subtotal_departamento =subtotal_departamento.add(subtotal_produtos);
     subtotal_geral = subtotal_geral.add(subtotal_produtos);
 }
 System.out.println("subtotal_departamento " + subtotal_departamento);
 System.out.println("subtotal_geral " + subtotal_geral);