fixes bug#10852

dev:thiago
qua:marcelo

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@80613 d1611594-4594-4d17-8e1d-87c2c4800839
master
wilian 2018-04-06 21:09:26 +00:00
parent 79723ad243
commit b4dbe7c6c3
2 changed files with 193 additions and 123 deletions

View File

@ -54,6 +54,7 @@ import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO;
import com.rjconsultores.ventaboletos.vo.comissao.FormapagoVO; import com.rjconsultores.ventaboletos.vo.comissao.FormapagoVO;
import com.rjconsultores.ventaboletos.vo.comissao.LogConferenciaVO; import com.rjconsultores.ventaboletos.vo.comissao.LogConferenciaVO;
import com.rjconsultores.ventaboletos.vo.comissao.OcdVO; import com.rjconsultores.ventaboletos.vo.comissao.OcdVO;
import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement;
@Repository("conferenciaComissaoDAO") @Repository("conferenciaComissaoDAO")
public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Conferencia, Long> public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Conferencia, Long>
@ -245,6 +246,12 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} }
} }
private void setParametros(NamedParameterStatement npst, Map<String, Object> parametros) throws SQLException {
for (Entry<String, Object> parametro : parametros.entrySet()) {
npst.setObject(parametro.getKey(), parametro.getValue());
}
}
private void carregarMovimentoVendas(Connection con, List<ConferenciaComissaoVO> lsConferencias, private void carregarMovimentoVendas(Connection con, List<ConferenciaComissaoVO> lsConferencias,
String competencia, Empresa empresa, PuntoVenta puntoVenta, Date dataMovimento, Date dataInicialDate, Date dataFinalDate) String competencia, Empresa empresa, PuntoVenta puntoVenta, Date dataMovimento, Date dataInicialDate, Date dataFinalDate)
throws BusinessException, SQLException { throws BusinessException, SQLException {
@ -588,16 +595,19 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} }
@Override @Override
@SuppressWarnings("unchecked")
public List<EventosFinanceirosVO> carregarEventosFinanceiros(Conferencia conferencia) public List<EventosFinanceirosVO> carregarEventosFinanceiros(Conferencia conferencia)
throws BusinessException { throws BusinessException {
Connection con = null;
NamedParameterStatement npst = null;
ResultSet rSet = null;
try { try {
Map<String, Object> parametros = carregarParametros(null, null, conferencia.getCompetencia(), conferencia.getEmpresa(), Map<String, Object> parametros = carregarParametros(null, null, conferencia.getCompetencia(), conferencia.getEmpresa(),
conferencia.getPuntoVenta(), conferencia.getDatamovimento(), true); conferencia.getPuntoVenta(), conferencia.getDatamovimento(), true);
StringBuilder sQuery = new StringBuilder() StringBuilder sQuery = new StringBuilder()
.append("SELECT EE.BOLETO_ID AS \"boletoId\", EE.EVENTOEXTRA_ID AS \"eventoextraId\", EE.NUMDOCUMENTO AS \"numdocumento\", ") .append("SELECT EE.BOLETO_ID AS \"boletoId\", EE.EVENTOEXTRA_ID AS \"eventoextraId\", EE.NUMDOCUMENTO AS \"numdocumento\", ")
.append("CFP.IMPORTE AS \"impingreso\", TEE.DESCTIPOEVENTO AS \"desctipoevento\", EE.DESCINFO AS \"descinfo\", ") .append("CFP.IMPORTE AS \"impingreso\", TEE.DESCTIPOEVENTO AS \"desctipoevento\", EE.DESCINFO AS \"descinfo\", ")
.append("LOG.STATUS AS \"status\", FP.FORMAPAGO_ID AS \"formapagoId\", FP.DESCPAGO AS \"descpago\", ") .append("NVL(LOG.STATUS,-1) AS \"status\", FP.FORMAPAGO_ID AS \"formapagoId\", FP.DESCPAGO AS \"descpago\", ")
.append("TEE.INDTIPO AS \"indtipo\", U.NOMBUSUARIO AS \"nombusuario\", LOG.LOGCONFERENCIA_ID AS \"logconferenciaId\", ") .append("TEE.INDTIPO AS \"indtipo\", U.NOMBUSUARIO AS \"nombusuario\", LOG.LOGCONFERENCIA_ID AS \"logconferenciaId\", ")
.append("COMFP.COMEMPFORMAPAGO_ID AS \"comempformapagoId\", COMTEE.COMEMPTIPOEVENTOEXTRA_ID AS \"comemptipoeventoextraId\", ") .append("COMFP.COMEMPFORMAPAGO_ID AS \"comempformapagoId\", COMTEE.COMEMPTIPOEVENTOEXTRA_ID AS \"comemptipoeventoextraId\", ")
.append("COALESCE(CEC.INDTIPO_DEB_CRED, 0) AS \"tipoeventoextradebcred\", ") .append("COALESCE(CEC.INDTIPO_DEB_CRED, 0) AS \"tipoeventoextradebcred\", ")
@ -632,42 +642,59 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} }
sQuery.append("ORDER BY TEE.DESCTIPOEVENTO "); sQuery.append("ORDER BY TEE.DESCTIPOEVENTO ");
@SuppressWarnings("deprecation") con = getConnection();
Query qr = getSession().createSQLQuery(sQuery.toString()) npst = new NamedParameterStatement(con, sQuery.toString());
.addScalar("boletoId", Hibernate.LONG) setParametros(npst, parametros);
.addScalar("eventoextraId", Hibernate.LONG) rSet = npst.executeQuery();
.addScalar("numdocumento", Hibernate.STRING)
.addScalar("impingreso", Hibernate.BIG_DECIMAL)
.addScalar("desctipoevento", Hibernate.STRING)
.addScalar("descinfo", Hibernate.STRING)
.addScalar("status", Hibernate.INTEGER)
.addScalar("formapagoId", Hibernate.INTEGER)
.addScalar("descpago", Hibernate.STRING)
.addScalar("comempformapagoId", Hibernate.INTEGER)
.addScalar("comemptipoeventoextraId", Hibernate.INTEGER)
.addScalar("tipoeventoextradebcred", Hibernate.INTEGER)
.addScalar("indtipo", Hibernate.STRING)
.addScalar("nombusuario", Hibernate.STRING)
.addScalar("logconferenciaId", Hibernate.LONG)
.addScalar("exigeConferenciaAba", Hibernate.BOOLEAN)
.addScalar("numFolioSistema", Hibernate.STRING)
.addScalar("cvetipoevento", Hibernate.STRING)
.addScalar("feccorte", Hibernate.DATE)
.addScalar("icmsBase", Hibernate.BIG_DECIMAL)
.addScalar("estadoId", Hibernate.INTEGER)
.setResultTransformer(Transformers.aliasToBean(EventosFinanceirosVO.class));
setParametros(qr, parametros);
List<EventosFinanceirosVO> result = qr.list(); List<EventosFinanceirosVO> result = new ArrayList<EventosFinanceirosVO>();
while(rSet.next()) {
EventosFinanceirosVO eventosFinanceiros = new EventosFinanceirosVO();
eventosFinanceiros.setBoletoId(rSet.getLong("boletoId") > 0 ? rSet.getLong("boletoId") : null);
eventosFinanceiros.setEventoextraId(rSet.getLong("eventoextraId"));
eventosFinanceiros.setNumdocumento(rSet.getString("numdocumento"));
eventosFinanceiros.setImpingreso(rSet.getBigDecimal("impingreso"));
eventosFinanceiros.setDesctipoevento(rSet.getString("desctipoevento"));
eventosFinanceiros.setDescinfo(rSet.getString("descinfo"));
eventosFinanceiros.setStatus(rSet.getInt("status") >= 0 ? rSet.getInt("status") : null);
eventosFinanceiros.setFormapagoId(rSet.getInt("formapagoId") > 0 ? rSet.getInt("formapagoId") : null);
eventosFinanceiros.setDescpago(rSet.getString("descpago"));
eventosFinanceiros.setComempformapagoId(rSet.getInt("comempformapagoId") > 0 ? rSet.getInt("comempformapagoId") : null);
eventosFinanceiros.setComemptipoeventoextraId(rSet.getInt("comemptipoeventoextraId") > 0 ? rSet.getInt("comemptipoeventoextraId") : null);
eventosFinanceiros.setTipoeventoextradebcred(rSet.getInt("tipoeventoextradebcred") > 0 ? rSet.getInt("tipoeventoextradebcred") : null);
eventosFinanceiros.setIndtipo(rSet.getString("indtipo"));
eventosFinanceiros.setNombusuario(rSet.getString("nombusuario"));
eventosFinanceiros.setLogconferenciaId(rSet.getLong("logconferenciaId") > 0 ? rSet.getLong("logconferenciaId") : null);
eventosFinanceiros.setExigeConferenciaAba(rSet.getBoolean("exigeConferenciaAba"));
eventosFinanceiros.setNumFolioSistema(rSet.getString("numFolioSistema"));
eventosFinanceiros.setCvetipoevento(rSet.getString("cvetipoevento"));
eventosFinanceiros.setFeccorte(rSet.getDate("feccorte"));
eventosFinanceiros.setIcmsBase(rSet.getBigDecimal("icmsBase"));
eventosFinanceiros.setEstadoId(rSet.getInt("estadoId") > 0 ? rSet.getInt("estadoId") : null);
for (EventosFinanceirosVO e : result) { eventosFinanceiros.setConferencia(conferencia);
e.setConferencia(conferencia);
result.add(eventosFinanceiros);
} }
return result; return result;
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
throw new BusinessException(e.getMessage(), e); throw new BusinessException(e.getMessage(), e);
} finally {
try {
if(rSet != null && !rSet.isClosed()) {
rSet.close();
}
if(npst != null && !npst.isClosed()) {
npst.close();
}
if(con != null && !con.isClosed()) {
con.close();
}
} catch (SQLException e) {
log.error(e.getMessage(), e);
}
} }
} }
@ -791,9 +818,13 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} }
@Override @Override
@SuppressWarnings("unchecked")
public List<BoletoComissao> carregarBilhetesComissao(Conferencia conferencia, boolean isCalculoComissao, boolean isConsideraBilhetesDevolvidosEmOutraAgencia) public List<BoletoComissao> carregarBilhetesComissao(Conferencia conferencia, boolean isCalculoComissao, boolean isConsideraBilhetesDevolvidosEmOutraAgencia)
throws BusinessException { throws BusinessException {
Connection con = null;
NamedParameterStatement npst = null;
ResultSet rSet = null;
try { try {
Map<String, Object> parametros = carregarParametros(null, null, conferencia.getCompetencia(), conferencia.getEmpresa(), Map<String, Object> parametros = carregarParametros(null, null, conferencia.getCompetencia(), conferencia.getEmpresa(),
conferencia.getPuntoVenta(), conferencia.getDatamovimento(), true); conferencia.getPuntoVenta(), conferencia.getDatamovimento(), true);
@ -802,7 +833,7 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
.append("SELECT C.CAJA_ID AS \"cajaId\", C.NUMASIENTO AS \"numAsiento\", C.NUMASIENTOVINCULADO AS \"numAsientoVinculado\", C.NUMOPERACION AS \"numoperacion\", C.NUMFOLIOSISTEMA AS \"numFolioSistema\", ") .append("SELECT C.CAJA_ID AS \"cajaId\", C.NUMASIENTO AS \"numAsiento\", C.NUMASIENTOVINCULADO AS \"numAsientoVinculado\", C.NUMOPERACION AS \"numoperacion\", C.NUMFOLIOSISTEMA AS \"numFolioSistema\", ")
.append("C.NUMSERIEPREIMPRESA AS \"numSeriePreimpresa\", C.NUMFOLIOPREIMPRESO AS \"numFolioPreImpreso\", EST.CVEESTADO AS \"uf\", CAT.DESCCATEGORIA AS \"desccategoria\", ") .append("C.NUMSERIEPREIMPRESA AS \"numSeriePreimpresa\", C.NUMFOLIOPREIMPRESO AS \"numFolioPreImpreso\", EST.CVEESTADO AS \"uf\", CAT.DESCCATEGORIA AS \"desccategoria\", ")
.append("NVL(C.PRECIOBASE,0) AS \"valorbase\", NVL(C.PRECIOPAGADO,0) AS \"valorpagado\", NVL(C.IMPORTEOUTROS,0) AS \"seguroOutros\", NVL(C.IMPORTEPEDAGIO,0) AS \"pedagio\", NVL(C.IMPORTESEGURO,0) AS \"seguro\", ") .append("NVL(C.PRECIOBASE,0) AS \"valorbase\", NVL(C.PRECIOPAGADO,0) AS \"valorpagado\", NVL(C.IMPORTEOUTROS,0) AS \"seguroOutros\", NVL(C.IMPORTEPEDAGIO,0) AS \"pedagio\", NVL(C.IMPORTESEGURO,0) AS \"seguro\", ")
.append("NVL(C.IMPORTETAXAEMBARQUE,0) AS \"embarque\", C.TIPOVENTA_ID AS \"tipoVenta\", C.INDSTATUSBOLETO AS \"indstatusboleto\", LOG.STATUS AS \"status\", FP.FORMAPAGO_ID AS \"formapagoId\", ") .append("NVL(C.IMPORTETAXAEMBARQUE,0) AS \"embarque\", C.TIPOVENTA_ID AS \"tipoVenta\", C.INDSTATUSBOLETO AS \"indstatusboleto\", NVL(LOG.STATUS,-1) AS \"status\", FP.FORMAPAGO_ID AS \"formapagoId\", ")
.append("FP.DESCPAGO AS \"descpago\", LOG.LOGCONFERENCIA_ID AS \"logconferenciaId\", MC.DESCMOTIVO AS \"descmotivocancelacion\", U.NOMBUSUARIO AS \"nombusuario\", C.MOTIVOCANCELACION_ID AS \"motivocancelacionId\", ") .append("FP.DESCPAGO AS \"descpago\", LOG.LOGCONFERENCIA_ID AS \"logconferenciaId\", MC.DESCMOTIVO AS \"descmotivocancelacion\", U.NOMBUSUARIO AS \"nombusuario\", C.MOTIVOCANCELACION_ID AS \"motivocancelacionId\", ")
.append("CF.IMPORTE AS \"importeFp\", COMFP.COMEMPFORMAPAGO_ID AS \"comempformapagoId\", ") .append("CF.IMPORTE AS \"importeFp\", COMFP.COMEMPFORMAPAGO_ID AS \"comempformapagoId\", ")
.append("(select max(COMEMPCATEGORIA_ID) from COM_EMP_CATEGORIA where CATEGORIA_ID = C.CATEGORIA_ID AND EMPRESA_ID = M.EMPRESA_ID AND ACTIVO = 1) AS \"comempcategoriaId\", C.NOMBPASAJERO AS \"nombpasajero\", ") .append("(select max(COMEMPCATEGORIA_ID) from COM_EMP_CATEGORIA where CATEGORIA_ID = C.CATEGORIA_ID AND EMPRESA_ID = M.EMPRESA_ID AND ACTIVO = 1) AS \"comempcategoriaId\", C.NOMBPASAJERO AS \"nombpasajero\", ")
@ -834,22 +865,15 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
.append("WHERE C.ACTIVO = 1 ") .append("WHERE C.ACTIVO = 1 ")
.append("AND C.FECCORTE BETWEEN TO_DATE(:dataInicial, 'DD/MM/YYYY') AND TO_DATE(:dataFinal, 'DD/MM/YYYY') ") .append("AND C.FECCORTE BETWEEN TO_DATE(:dataInicial, 'DD/MM/YYYY') AND TO_DATE(:dataFinal, 'DD/MM/YYYY') ")
.append("AND ((C.INDSTATUSBOLETO = 'E' AND C.INDREIMPRESION = 1) OR C.INDREIMPRESION = 0 OR C.MOTIVOCANCELACION_ID = :motivoCancelacionGeracaoOcd) "); .append("AND ((C.INDSTATUSBOLETO = 'E' AND C.INDREIMPRESION = 1) OR C.INDREIMPRESION = 0 OR C.MOTIVOCANCELACION_ID = :motivoCancelacionGeracaoOcd) ");
parametros.put("motivoCancelacionGeracaoOcd", Constantes.MVO_CANCEL_GERACAO_OCD.intValue());
if (parametros.containsKey("empresaId")) { if (parametros.containsKey("empresaId")) {
sQuery.append("AND M.EMPRESA_ID = :empresaId "); sQuery.append("AND M.EMPRESA_ID = :empresaId ");
} }
if (parametros.containsKey("puntoventaId")) { if (parametros.containsKey("puntoventaId")) {
if (isCalculoComissao && isConsideraBilhetesDevolvidosEmOutraAgencia){ if (isCalculoComissao && isConsideraBilhetesDevolvidosEmOutraAgencia){
sQuery.append("AND ( ") String sMotivosCancelacion = Arrays.asList(
.append(" (C.PUNTOVENTA_ID = :puntoventaId AND (C.MOTIVOCANCELACION_ID IS NULL OR C.MOTIVOCANCELACION_ID NOT IN (:motivosCancelacion))) ")
.append(" OR ")
.append(" (C.PTOVTAVENTA_ID = :puntoventaId AND C.MOTIVOCANCELACION_ID IN (:motivosCancelacion)) ")
.append(" OR ")
.append(" (C.PUNTOVENTA_ID = :puntoventaId AND (C.PTOVTAVENTA_ID IS NULL OR C.PUNTOVENTA_ID = C.PTOVTAVENTA_ID)) ")
.append(" OR ")
.append(" (C.PUNTOVENTA_ID = :puntoventaId AND C.INDSTATUSBOLETO = 'E' AND C.MOTIVOCANCELACION_ID IS NULL) ")
.append(" ) ");
parametros.put("motivosCancelacion", Arrays.asList(
Constantes.MVO_CANCEL_DEVOLUCAO.intValue(), Constantes.MVO_CANCEL_DEVOLUCAO.intValue(),
Constantes.MVO_CANCEL_DEVOLUCAO_CONTIGENCIA_100.intValue(), Constantes.MVO_CANCEL_DEVOLUCAO_CONTIGENCIA_100.intValue(),
Constantes.MVO_CANCEL_DEVOLUCAO_CONTIGENCIA_50.intValue(), Constantes.MVO_CANCEL_DEVOLUCAO_CONTIGENCIA_50.intValue(),
@ -857,7 +881,21 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
Constantes.MVO_CANCEL_GERACAO_OCD.intValue(), Constantes.MVO_CANCEL_GERACAO_OCD.intValue(),
Constantes.MVO_CANCEL_TROCA.intValue(), Constantes.MVO_CANCEL_TROCA.intValue(),
Constantes.MVO_CANCEL_TRANSFERENCIA.intValue() Constantes.MVO_CANCEL_TRANSFERENCIA.intValue()
)); ).toString().replaceAll("[\\[\\]]", "");
sQuery.append("AND ( ")
.append(" (C.PUNTOVENTA_ID = :puntoventaId AND (C.MOTIVOCANCELACION_ID IS NULL OR C.MOTIVOCANCELACION_ID NOT IN (")
.append(sMotivosCancelacion)
.append("))) ")
.append(" OR ")
.append(" (C.PTOVTAVENTA_ID = :puntoventaId AND C.MOTIVOCANCELACION_ID IN (")
.append(sMotivosCancelacion)
.append(")) ")
.append(" OR ")
.append(" (C.PUNTOVENTA_ID = :puntoventaId AND (C.PTOVTAVENTA_ID IS NULL OR C.PUNTOVENTA_ID = C.PTOVTAVENTA_ID)) ")
.append(" OR ")
.append(" (C.PUNTOVENTA_ID = :puntoventaId AND C.INDSTATUSBOLETO = 'E' AND C.MOTIVOCANCELACION_ID IS NULL) ")
.append(" ) ");
}else{ }else{
sQuery.append("AND C.PUNTOVENTA_ID = :puntoventaId "); sQuery.append("AND C.PUNTOVENTA_ID = :puntoventaId ");
} }
@ -868,58 +906,55 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} }
sQuery.append("ORDER BY C.INDSTATUSBOLETO, C.MOTIVOCANCELACION_ID, C.CAJA_ID "); sQuery.append("ORDER BY C.INDSTATUSBOLETO, C.MOTIVOCANCELACION_ID, C.CAJA_ID ");
@SuppressWarnings("deprecation") con = getConnection();
Query qr = getSession().createSQLQuery(sQuery.toString()) npst = new NamedParameterStatement(con, sQuery.toString());
.addScalar("cajaId", Hibernate.LONG) setParametros(npst, parametros);
.addScalar("transacaoOriginalId", Hibernate.LONG) rSet = npst.executeQuery();
.addScalar("numAsiento", Hibernate.STRING)
.addScalar("numAsientoVinculado", Hibernate.STRING)
.addScalar("numFolioSistema", Hibernate.STRING)
.addScalar("numSeriePreimpresa", Hibernate.STRING)
.addScalar("numFolioPreImpreso", Hibernate.STRING)
.addScalar("uf", Hibernate.STRING)
.addScalar("desccategoria", Hibernate.STRING)
.addScalar("valorpagado", Hibernate.BIG_DECIMAL)
.addScalar("valorTabela", Hibernate.BIG_DECIMAL)
.addScalar("seguroOutros", Hibernate.BIG_DECIMAL)
.addScalar("pedagio", Hibernate.BIG_DECIMAL)
.addScalar("seguro", Hibernate.BIG_DECIMAL)
.addScalar("embarque", Hibernate.BIG_DECIMAL)
.addScalar("tipoVenta", Hibernate.INTEGER)
.addScalar("indstatusboleto", Hibernate.STRING)
.addScalar("status", Hibernate.INTEGER)
.addScalar("formapagoId", Hibernate.INTEGER)
.addScalar("descpago", Hibernate.STRING)
.addScalar("logconferenciaId", Hibernate.LONG)
.addScalar("descmotivocancelacion", Hibernate.STRING)
.addScalar("nombusuario", Hibernate.STRING)
.addScalar("motivoCancelacionId", Hibernate.INTEGER)
.addScalar("importeFp", Hibernate.BIG_DECIMAL)
.addScalar("comempformapagoId", Hibernate.INTEGER)
.addScalar("comempcategoriaId", Hibernate.INTEGER)
.addScalar("numoperacion", Hibernate.STRING)
.addScalar("nombpasajero", Hibernate.STRING)
.addScalar("indcarboletosdevolvidosconf", Hibernate.BOOLEAN)
.addScalar("feccorrida", Hibernate.DATE)
.addScalar("corridaId", Hibernate.INTEGER)
.addScalar("indCancelacion", Hibernate.BOOLEAN)
.addScalar("indreimpresion", Hibernate.BOOLEAN)
.addScalar("feccorte", Hibernate.DATE)
.addScalar("icmsBase", Hibernate.BIG_DECIMAL)
.addScalar("estadoId", Hibernate.INTEGER)
.addScalar("ptoVtaOrigem", Hibernate.BOOLEAN)
.addScalar("valorbase", Hibernate.BIG_DECIMAL)
.addScalar("empresaId", Hibernate.INTEGER)
.addScalar("transacaoId", Hibernate.LONG)
.addScalar("conferidoEntrega", Hibernate.BOOLEAN)
.setResultTransformer(Transformers.aliasToBean(BoletoComissao.class));
parametros.put("motivoCancelacionGeracaoOcd", Constantes.MVO_CANCEL_GERACAO_OCD.intValue());
setParametros(qr, parametros);
List<BoletoComissao> lsBoletoComissao = new ArrayList<BoletoComissao>(); List<BoletoComissao> lsBoletoComissao = new ArrayList<BoletoComissao>();
List<BoletoComissao> auxLsBoletoComissao = qr.list(); while(rSet.next()) {
for (BoletoComissao boletoComissao : auxLsBoletoComissao) { BoletoComissao boletoComissao = new BoletoComissao();
boletoComissao.setCajaId(rSet.getLong("cajaId"));
boletoComissao.setTransacaoOriginalId(rSet.getLong("transacaoOriginalId") > 0 ? rSet.getLong("transacaoOriginalId") : null );
boletoComissao.setNumAsiento(rSet.getString("numAsiento"));
boletoComissao.setNumAsientoVinculado(rSet.getString("numAsientoVinculado"));
boletoComissao.setNumFolioSistema(rSet.getString("numFolioSistema"));
boletoComissao.setNumSeriePreimpresa(rSet.getString("numSeriePreimpresa"));
boletoComissao.setNumFolioPreImpreso(rSet.getString("numFolioPreImpreso"));
boletoComissao.setUf(rSet.getString("uf"));
boletoComissao.setDesccategoria(rSet.getString("desccategoria"));
boletoComissao.setValorpagado(rSet.getBigDecimal("valorpagado"));
boletoComissao.setValorTabela(rSet.getBigDecimal("valorTabela"));
boletoComissao.setSeguroOutros(rSet.getBigDecimal("seguroOutros"));
boletoComissao.setPedagio(rSet.getBigDecimal("pedagio"));
boletoComissao.setEmbarque(rSet.getBigDecimal("embarque"));
boletoComissao.setTipoVenta(rSet.getInt("tipoVenta"));
boletoComissao.setIndstatusboleto(rSet.getString("indstatusboleto"));
boletoComissao.setStatus(rSet.getInt("status") >= 0 ? rSet.getInt("status") : null);
boletoComissao.setFormapagoId(rSet.getInt("formapagoId") > 0 ? rSet.getInt("formapagoId") : null);
boletoComissao.setDescpago(rSet.getString("descpago"));
boletoComissao.setLogconferenciaId(rSet.getLong("logconferenciaId") > 0 ? rSet.getLong("logconferenciaId") : null);
boletoComissao.setDescmotivocancelacion(rSet.getString("descmotivocancelacion"));
boletoComissao.setNombusuario(rSet.getString("nombusuario"));
boletoComissao.setMotivoCancelacionId(rSet.getInt("motivoCancelacionId") > 0 ? rSet.getInt("motivoCancelacionId") : null);
boletoComissao.setImporteFp(rSet.getBigDecimal("importeFp"));
boletoComissao.setComempformapagoId(rSet.getInt("comempformapagoId") > 0 ? rSet.getInt("comempformapagoId") : null);
boletoComissao.setComempcategoriaId(rSet.getInt("comempcategoriaId") > 0 ? rSet.getInt("comempcategoriaId") : null);
boletoComissao.setNumoperacion(rSet.getString("numoperacion"));
boletoComissao.setNombpasajero(rSet.getString("nombpasajero"));
boletoComissao.setIndcarboletosdevolvidosconf(rSet.getBoolean("indcarboletosdevolvidosconf"));
boletoComissao.setFeccorrida(rSet.getDate("feccorrida"));
boletoComissao.setCorridaId(rSet.getInt("corridaId") > 0 ? rSet.getInt("corridaId") : null);
boletoComissao.setIndCancelacion(rSet.getBoolean("indCancelacion"));
boletoComissao.setIndreimpresion(rSet.getBoolean("indreimpresion"));
boletoComissao.setFeccorte(rSet.getDate("feccorte"));
boletoComissao.setIcmsBase(rSet.getBigDecimal("icmsBase"));
boletoComissao.setEstadoId(rSet.getInt("estadoId") > 0 ? rSet.getInt("estadoId") : null);
boletoComissao.setPtoVtaOrigem(rSet.getBoolean("ptoVtaOrigem"));
boletoComissao.setValorbase(rSet.getBigDecimal("valorbase"));
boletoComissao.setEmpresaId(rSet.getInt("empresaId"));
boletoComissao.setTransacaoId(rSet.getLong("transacaoId") > 0 ? rSet.getLong("transacaoId") : null);
boletoComissao.setConferidoEntrega(rSet.getBoolean("conferidoEntrega"));
if(boletoComissao.getStatus() == null && boletoComissao.getConferidoEntrega() != null && boletoComissao.getConferidoEntrega()) { if(boletoComissao.getStatus() == null && boletoComissao.getConferidoEntrega() != null && boletoComissao.getConferidoEntrega()) {
boletoComissao.setConferido(true); boletoComissao.setConferido(true);
@ -967,19 +1002,37 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
throw new BusinessException(e.getMessage(), e); throw new BusinessException(e.getMessage(), e);
} finally {
try {
if(rSet != null && !rSet.isClosed()) {
rSet.close();
}
if(npst != null && !npst.isClosed()) {
npst.close();
}
if(con != null && !con.isClosed()) {
con.close();
}
} catch (SQLException e) {
log.error(e.getMessage(), e);
}
} }
} }
@Override @Override
@SuppressWarnings("unchecked")
public List<OcdVO> carregarOcds(Conferencia conferencia) throws BusinessException { public List<OcdVO> carregarOcds(Conferencia conferencia) throws BusinessException {
Connection con = null;
NamedParameterStatement npst = null;
ResultSet rSet = null;
try { try {
Map<String, Object> parametros = carregarParametros(null, null, null, conferencia.getEmpresa(), Map<String, Object> parametros = carregarParametros(null, null, null, conferencia.getEmpresa(),
conferencia.getPuntoVenta(), conferencia.getDatamovimento(), false); conferencia.getPuntoVenta(), conferencia.getDatamovimento(), false);
StringBuilder sQuery = new StringBuilder() StringBuilder sQuery = new StringBuilder()
.append("SELECT DISTINCT O.OCD_ID AS \"ocdId\", O.NUMOPERACION AS \"numoperacion\", O.FECINC AS \"fecinc\", O.FECPAGAR AS \"fecpagar\", O.FECPAGO AS \"fecpago\", ") .append("SELECT DISTINCT O.OCD_ID AS \"ocdId\", O.NUMOPERACION AS \"numoperacion\", O.FECINC AS \"fecinc\", O.FECPAGAR AS \"fecpagar\", O.FECPAGO AS \"fecpago\", ")
.append("O.INDPAGO AS \"indpago\", O.VALOR_PAGAR AS \"valorPagar\", (B.PRECIOPAGADO * (O.PENALIZACION / 100)) AS \"penalizacion\", LOG.STATUS AS \"status\", ") .append("O.INDPAGO AS \"indpago\", O.VALOR_PAGAR AS \"valorPagar\", (B.PRECIOPAGADO * (O.PENALIZACION / 100)) AS \"penalizacion\", NVL(LOG.STATUS,-1) AS \"status\", ")
.append("U.NOMBUSUARIO AS \"nombusuario\", LOG.LOGCONFERENCIA_ID AS \"logconferenciaId\", U.CVEUSUARIO AS \"login\", B.NUMFOLIOSISTEMA AS \"numFolioSistema\", ") .append("U.NOMBUSUARIO AS \"nombusuario\", LOG.LOGCONFERENCIA_ID AS \"logconferenciaId\", U.CVEUSUARIO AS \"login\", B.NUMFOLIOSISTEMA AS \"numFolioSistema\", ")
.append("CEC.INDOCD AS \"exigeConferenciaAba\" ") .append("CEC.INDOCD AS \"exigeConferenciaAba\" ")
.append("FROM OCD O ") .append("FROM OCD O ")
@ -1000,35 +1053,50 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
sQuery.append("AND O.PUNTOVENTAPAGO_ID = :puntoventaId "); sQuery.append("AND O.PUNTOVENTAPAGO_ID = :puntoventaId ");
} }
@SuppressWarnings("deprecation") con = getConnection();
Query qr = getSession().createSQLQuery(sQuery.toString()) npst = new NamedParameterStatement(con, sQuery.toString());
.addScalar("ocdId", Hibernate.LONG) setParametros(npst, parametros);
.addScalar("numoperacion", Hibernate.STRING) rSet = npst.executeQuery();
.addScalar("fecinc", Hibernate.DATE)
.addScalar("fecpagar", Hibernate.DATE)
.addScalar("fecpago", Hibernate.DATE)
.addScalar("indpago", Hibernate.BOOLEAN)
.addScalar("valorPagar", Hibernate.BIG_DECIMAL)
.addScalar("penalizacion", Hibernate.BIG_DECIMAL)
.addScalar("status", Hibernate.INTEGER)
.addScalar("nombusuario", Hibernate.STRING)
.addScalar("logconferenciaId", Hibernate.LONG)
.addScalar("login", Hibernate.STRING)
.addScalar("numFolioSistema", Hibernate.STRING)
.addScalar("exigeConferenciaAba", Hibernate.BOOLEAN)
.setResultTransformer(Transformers.aliasToBean(OcdVO.class));
setParametros(qr, parametros);
List<OcdVO> result = qr.list(); List<OcdVO> result = new ArrayList<OcdVO>();
while(rSet.next()) {
for (OcdVO ocd : result) { OcdVO ocd = new OcdVO();
ocd.setOcdId(rSet.getLong("ocdId"));
ocd.setNumoperacion(rSet.getString("numoperacion"));
ocd.setFecinc(rSet.getDate("fecinc"));
ocd.setFecpagar(rSet.getDate("fecpagar"));
ocd.setFecpago(rSet.getDate("fecpago"));
ocd.setIndpago(rSet.getBoolean("indpago"));
ocd.setValorPagar(rSet.getBigDecimal("valorPagar"));
ocd.setPenalizacion(rSet.getBigDecimal("penalizacion"));
ocd.setStatus(rSet.getInt("status") >= 0 ? rSet.getInt("status") : null);
ocd.setLogconferenciaId(rSet.getLong("logconferenciaId") > 0 ? rSet.getLong("logconferenciaId") : null);
ocd.setLogin(rSet.getString("login"));
ocd.setNumFolioSistema(rSet.getString("numFolioSistema"));
ocd.setExigeConferenciaAba(rSet.getBoolean("exigeConferenciaAba"));
ocd.setConferencia(conferencia); ocd.setConferencia(conferencia);
result.add(ocd);
} }
return result; return result;
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
throw new BusinessException(e.getMessage(), e); throw new BusinessException(e.getMessage(), e);
} finally {
try {
if(rSet != null && !rSet.isClosed()) {
rSet.close();
}
if(npst != null && !npst.isClosed()) {
npst.close();
}
if(con != null && !con.isClosed()) {
con.close();
}
} catch (SQLException e) {
log.error(e.getMessage(), e);
}
} }
} }

View File

@ -200,6 +200,7 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
} }
@Override @Override
@Transactional
public RegistroCalculo relatorioCalculoComissao(Integer puntoVentaId, Integer empresaId, Date periodo, Integer usuarioId, Boolean isRetencaoDiaria, Boolean isRefazerCalculo) throws ComissaoException, BusinessException { public RegistroCalculo relatorioCalculoComissao(Integer puntoVentaId, Integer empresaId, Date periodo, Integer usuarioId, Boolean isRetencaoDiaria, Boolean isRefazerCalculo) throws ComissaoException, BusinessException {
return realizarCalculoComissao(puntoVentaId, empresaId, periodo, isRetencaoDiaria, usuarioId, isRefazerCalculo); return realizarCalculoComissao(puntoVentaId, empresaId, periodo, isRetencaoDiaria, usuarioId, isRefazerCalculo);
} }
@ -305,6 +306,7 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
return respDescontos; return respDescontos;
} }
@Transactional
public RegistroCalculo realizarCalculoComissao(Integer puntoVentaId, Integer empresaId, Date periodo, Boolean isRetencaoDiaria, Integer usuarioId, Boolean isRefazerCalculo) throws ComissaoException, BusinessException { public RegistroCalculo realizarCalculoComissao(Integer puntoVentaId, Integer empresaId, Date periodo, Boolean isRetencaoDiaria, Integer usuarioId, Boolean isRefazerCalculo) throws ComissaoException, BusinessException {
PtovtaComissao ptovtaComissao = ptovtaComissaoService.buscarPuntaVentaEmpresa(puntoVentaId, empresaId); PtovtaComissao ptovtaComissao = ptovtaComissaoService.buscarPuntaVentaEmpresa(puntoVentaId, empresaId);