fixes bug#11535

dev:gleimar
qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@83234 d1611594-4594-4d17-8e1d-87c2c4800839
master
wilian 2018-07-10 13:29:57 +00:00
parent 2c894f9ca7
commit 0323ea8301
2 changed files with 45 additions and 0 deletions

View File

@ -30,4 +30,6 @@ public interface CalculoComissaoService {
public void registrarCalculoComissao(PuntoVenta puntoVenta, Empresa empresa, Date dataInicial, Date dataFinal, Integer usuarioId) throws ComissaoException, BusinessException;
public void retencaoAutomaticaComissao();
}

View File

@ -17,6 +17,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.zkoss.util.resource.Labels;
import com.rjconsultores.ventaboletos.constantes.Constantes;
@ -43,10 +45,13 @@ import com.rjconsultores.ventaboletos.service.ConferenciaComissaoService;
import com.rjconsultores.ventaboletos.service.ConstanteService;
import com.rjconsultores.ventaboletos.service.DescontoComissaoService;
import com.rjconsultores.ventaboletos.service.EmpresaImpostoService;
import com.rjconsultores.ventaboletos.service.EmpresaService;
import com.rjconsultores.ventaboletos.service.PtovtaComissaoService;
import com.rjconsultores.ventaboletos.service.PuntoVentaService;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.MoneyHelper;
import com.rjconsultores.ventaboletos.utilerias.SendMail;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao;
import com.rjconsultores.ventaboletos.vo.comissao.ComissaoDesconto;
import com.rjconsultores.ventaboletos.vo.comissao.ComissaoDesconto.TipoDesconto;
@ -88,6 +93,12 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
@Autowired
private ComissaoReceitaService comissaoReceitaService;
@Autowired
private EmpresaService empresaService;
@Autowired
private PuntoVentaService puntoVentaService;
public boolean validaCompetencia(Date periodo) {
Calendar calendario = Calendar.getInstance();
calendario.setTime(periodo);
@ -1001,4 +1012,36 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
}
}
@Override
@Transactional(readOnly = true, propagation = Propagation.SUPPORTS)
public void retencaoAutomaticaComissao() {
Integer usuarioId = 1;
if (UsuarioLogado.getUsuarioLogado() != null && UsuarioLogado.getUsuarioLogado().getUsuarioId() != null) {
usuarioId = UsuarioLogado.getUsuarioLogado().getUsuarioId();
}
List<Empresa> empresas = empresaService.buscarEmpresaPtoVtaComissao();
List<PuntoVenta> puntoVentas = puntoVentaService.buscarPuntoVentaPtoVtaComissao(empresas);
Calendar cDataRetencao = Calendar.getInstance();
cDataRetencao.add(Calendar.DAY_OF_MONTH, -2);
Date dataRetencao = DateUtil.normalizarToFecha(cDataRetencao.getTime());
String sDataRetencao = DateUtil.getStringDate(dataRetencao, "dd/MM/yyyy");
for (Empresa empresa : empresas) {
for (PuntoVenta puntoVenta : puntoVentas) {
String descretencao = "Empresa: "+ empresa.getNombempresa() + " - Agencia: " + puntoVenta.getNombpuntoventa() +" data: " + sDataRetencao;
log.info("Inicio Retencao " + descretencao);
try {
registrarCalculoComissao(puntoVenta, empresa, dataRetencao, dataRetencao, usuarioId);
log.info("Fim Retencao " + descretencao);
} catch (Exception e) {
log.info("Erro retencao " + descretencao);
log.error(e.getMessage(), e);
}
}
}
}
}