bug #6669
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@49453 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
66bada7575
commit
bc5faa20b2
|
@ -52,41 +52,69 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private DescontoComissaoService descontoComissaoService;
|
private DescontoComissaoService descontoComissaoService;
|
||||||
|
|
||||||
|
public boolean validaCompetencia(Date periodo) {
|
||||||
|
Calendar calendario = Calendar.getInstance();
|
||||||
|
calendario.setTime(periodo);
|
||||||
|
|
||||||
|
int mes = calendario.get(Calendar.MONTH) + 1;
|
||||||
|
int ano = calendario.get(Calendar.YEAR);
|
||||||
|
|
||||||
|
Calendar now = Calendar.getInstance();
|
||||||
|
int mesNow = now.get(Calendar.MONTH) + 1;
|
||||||
|
int anoNow = now.get(Calendar.YEAR);
|
||||||
|
|
||||||
|
if (anoNow == ano) {
|
||||||
|
if (mesNow > mes) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (anoNow > ano) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registrarCalculoComissao(Integer puntoVentaId, Integer empresaId, Date periodo) throws ComissaoException {
|
public void registrarCalculoComissao(Integer puntoVentaId, Integer empresaId, Date periodo) throws ComissaoException {
|
||||||
|
|
||||||
String competencia = DateUtil.getStringDate(periodo, "MM/yyyy");
|
if (validaCompetencia(periodo)) {
|
||||||
List<Comissao> comissoes = comissaoDAO.buscaComissaoVigencia(puntoVentaId, empresaId, competencia);
|
|
||||||
if (comissoes.isEmpty()) {
|
|
||||||
|
|
||||||
RegistroCalculo rc = realizarCalculoComissao(puntoVentaId, empresaId, periodo);
|
String competencia = DateUtil.getStringDate(periodo, "MM/yyyy");
|
||||||
|
List<Comissao> comissoes = comissaoDAO.buscaComissaoVigencia(puntoVentaId, empresaId, competencia);
|
||||||
|
if (comissoes.isEmpty()) {
|
||||||
|
|
||||||
Comissao comissao = new Comissao();
|
RegistroCalculo rc = realizarCalculoComissao(puntoVentaId, empresaId, periodo);
|
||||||
|
|
||||||
comissao.setCompetencia(competencia);
|
Comissao comissao = new Comissao();
|
||||||
comissao.setDataPagamento(Calendar.getInstance().getTime());
|
|
||||||
|
|
||||||
comissao.setEmpresaId(empresaId);
|
comissao.setCompetencia(competencia);
|
||||||
comissao.setPuntoVentaId(puntoVentaId);
|
comissao.setDataPagamento(Calendar.getInstance().getTime());
|
||||||
|
|
||||||
comissao.setBonificacaoMetas(rc.getComissaoBonificaoMetas());
|
comissao.setEmpresaId(empresaId);
|
||||||
comissao.setComissaoBpr(rc.getComissaoBPR());
|
comissao.setPuntoVentaId(puntoVentaId);
|
||||||
comissao.setEntregasPassagem(rc.getComissaoEntregaPassagem());
|
|
||||||
comissao.setReceitaExcessobagagem(rc.getComissaoExcessoBagagem());
|
|
||||||
comissao.setReceitaSeguroopcional(rc.getComissaoSegOpcional());
|
|
||||||
comissao.setReceitaOutros(rc.getComissaoOutros());
|
|
||||||
|
|
||||||
comissao.setRoyaties(rc.getRoyaties());
|
comissao.setBonificacaoMetas(rc.getComissaoBonificaoMetas());
|
||||||
comissao.setIssRetido(rc.getRetidoISS());
|
comissao.setComissaoBpr(rc.getComissaoBPR());
|
||||||
comissao.setBonificacaoMetas(rc.getComissaoBonificaoMetas());
|
comissao.setEntregasPassagem(rc.getComissaoEntregaPassagem());
|
||||||
comissao.setDescontosEventuais(rc.getDescontos());
|
comissao.setReceitaExcessobagagem(rc.getComissaoExcessoBagagem());
|
||||||
|
comissao.setReceitaSeguroopcional(rc.getComissaoSegOpcional());
|
||||||
|
comissao.setReceitaOutros(rc.getComissaoOutros());
|
||||||
|
|
||||||
comissao.setIndPago(true);
|
comissao.setRoyaties(rc.getRoyaties());
|
||||||
comissao.setUsuarioPagamentoId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
|
comissao.setIssRetido(rc.getRetidoISS());
|
||||||
|
comissao.setBonificacaoMetas(rc.getComissaoBonificaoMetas());
|
||||||
|
comissao.setDescontosEventuais(rc.getDescontos());
|
||||||
|
|
||||||
comissao = comissaoService.suscribir(comissao);
|
comissao.setIndPago(true);
|
||||||
|
comissao.setUsuarioPagamentoId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
|
||||||
|
|
||||||
|
comissao = comissaoService.suscribir(comissao);
|
||||||
|
} else {
|
||||||
|
throw new ComissaoException("busquedaCalculoComissaoController.registro.exception");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
throw new ComissaoException("busquedaCalculoComissaoController.registro.exception");
|
throw new ComissaoException("busquedaCalculoComissaoController.competencia.exception");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue