Pessoal, poderiam me dar uma ajudinha aqui?
Não consigo estou conseguindo gerar o ArrayList de parcelas atravez do controller de emprestimo. E não tenho noção de onde esta o problema.
O que pretendo fazer:
- emprestar 100,00 e gerar duas parcelas de 50,00 - não consigo gerar essas parcelas!
classe emprestimo:
public class Emprestimo {
@OneToMany
private List<Parcela> parcela;
}
Classe parcela
public class Parcela {
@ManyToOne
@JoinColumn(name="emprestimo_id")
private Emprestimo emprestimo;
private String obs;
}
Controller
@RequestMapping(value = "/novo", method = RequestMethod.POST)
public ModelAndView salvar(@ModelAttribute Emprestimo emprestimo) {
ModelAndView mv = new ModelAndView("/Emprestimo");
emprestimoService.salvar(emprestimo);
System.out.println("Salvo>>>>>>>" + emprestimo);
return mv;
}
Meu service
@Service
public class EmprestimoService {
@Autowired
private Emprestimos emprestimos;
Emprestimo emprestimo;
Parcela parcela;
@Transactional
public void salvar(Emprestimo emprestimo) {
// calcula o valor a receber
Double a = emprestimo.getValorSolicitado();
Double b = emprestimo.getPercentual();
Double c = (a + (a * b / 100));
emprestimo.setValorEmprestado(c);
**//estou me perdendo desse codigo**
List<Parcela> parcelas = new ArrayList<Parcela>();
parcelas.add(parcela);
emprestimo.setParcela(parcelas);
emprestimos.save(emprestimo);
}
}
Abaixo o meu html completo
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorate="~{/comum/LayoutPadrao}">
<head>
<title></title>
</head>
<section layout:fragment="conteudo01">
<form class="form-horizontal " id="myForm" role="form" method="post"
th:action="@{/emprestimos/novo}" th:object="${emprestimo}">
<div class="panel panel-default">
<div class="panel-heading">
<h1 class="panel-title aw-titulo-panel">Novo Emprestimo</h1>
</div>
<div class="panel-body">
<div class="form-group">
<label for="cliente" class="col-md-2 control-label">Cliente:</label>
<div class="bw-field-action">
<select class="chosen-select chosen-rlt col-md-3"
th:field="*{cliente}">
<option value=""></option>
<!--isso deve esta aqui para que o placeholder possa funcionar corretamente -->
<option th:each="cliente : ${clientes}" th:value="${cliente.id}"
th:text="${cliente.nome}"></option>
</select>
<div class="bw-field-action__icon">
<a href="#" data-toggle="modal" data-target="#modalClienteRapido">
<i class="glyphicon glyphicon-plus-sign bw-glyphicon-large"></i>
</a>
</div>
</div>
</div>
<div class="form-group">
<label for="nome" class="col-md-2 control-label">Valor
Solicitado:</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="valorSolicitado"
th:field="*{valorSolicitado}" placeholder="Valor solicitado" />
</div>
</div>
<div class="form-group">
<label for="nome" class="col-md-2 control-label">Numero de
parcelas:</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="nParcelas"
th:field="*{nParcelas}" placeholder="numero de parcelas" />
</div>
</div>
<div class="form-group">
<label for="nome" class="col-md-2 control-label">Percentual
Juros: </label>
<div class="col-sm-2">
<input type="text" class="form-control" id="percentual"
th:field="*{percentual}" placeholder="% de juros" />
</div>
</div>
<div class="form-group">
<label for="nome" class="col-md-2 control-label">Data
entrega dinheiro </label>
<div class="col-sm-2">
<input type="text" class="form-control" id="dataEmprestimo"
th:field="*{dataEmprestimo}" placeholder="entrega"
data-provide="datepicker" data-date-format="dd/mm/yyyy"
data-date-language="pt-BR" data-date-autoclose="true"
data-date-today-highlight="true" data-date-orientation="bottom" />
</div>
</div>
<div class="form-group">
<label for="nome" class="col-md-2 control-label">Pag. 1ª
parela: </label>
<div class="col-sm-2">
<input type="text" class="form-control" id="primeiraEmprestimo"
th:field="*{primeiraEmprestimo}" placeholder="data 1 pag"
data-provide="datepicker" data-date-format="dd/mm/yyyy"
data-date-language="pt-BR" data-date-autoclose="true"
data-date-today-highlight="true" data-date-orientation="bottom" />
</div>
</div>
<div class="form-group">
<label for="nome" class="col-md-2 control-label">Anotação
</label>
<div class="col-sm-2">
<textarea class="form-control" id="anotacao"
th:field="*{anotacao}" placeholder="até 255 caracteres..."></textarea>
</div>
</div>
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary">Salvar</button>
</div>
</div>
<!-- fim do body -->
</div>
</form>
<div th:replace="ClienteRapido:: modal"></div>
</section>
</html>