wilian 2015-10-26 16:09:52 +00:00
parent 5f8fa3a878
commit ad9ec35c8d
9 changed files with 308 additions and 4 deletions

View File

@ -45,4 +45,8 @@ public interface ConferenciaComissaoDAO extends GenericDAO<Conferencia, Long> {
public List<LogConferencia> carregarLogConferencia(Long conferenciaId) throws BusinessException; public List<LogConferencia> carregarLogConferencia(Long conferenciaId) throws BusinessException;
public boolean isBilhetesSemConferencia(Conferencia conferencia) throws BusinessException;
public boolean isEventosFinanceirosSemConferencia(Conferencia conferencia) throws BusinessException;
} }

View File

@ -9,6 +9,7 @@ import java.util.Collection;
import java.util.Collections; import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Map.Entry; import java.util.Map.Entry;
@ -43,6 +44,7 @@ import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao;
import com.rjconsultores.ventaboletos.vo.comissao.ConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.ConferenciaComissaoVO;
import com.rjconsultores.ventaboletos.vo.comissao.DiaConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.DiaConferenciaComissaoVO;
import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO; import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO;
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;
@ -396,10 +398,12 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
StringBuilder sQuery = new StringBuilder(); StringBuilder sQuery = new StringBuilder();
sQuery.append("SELECT DISTINCT EE.EVENTOEXTRA_ID AS \"eventoextraId\", EE.NUMDOCUMENTO AS \"numdocumento\", ") sQuery.append("SELECT DISTINCT EE.EVENTOEXTRA_ID AS \"eventoextraId\", EE.NUMDOCUMENTO AS \"numdocumento\", ")
.append("EE.IMPINGRESO AS \"impingreso\", TEE.DESCTIPOEVENTO AS \"desctipoevento\", EE.DESCINFO AS \"descinfo\", ") .append("EE.IMPINGRESO AS \"impingreso\", TEE.DESCTIPOEVENTO AS \"desctipoevento\", EE.DESCINFO AS \"descinfo\", ")
.append("LOG.STATUS AS \"status\" ") .append("LOG.STATUS AS \"status\", FP.FORMAPAGO_ID AS \"formapagoId\", FP.DESCPAGO AS \"descpago\", ")
.append("FP.INDCONFERENCIAFISICACOMISSAO AS \"indconferenciafisicacomissao\" ")
.append("FROM EVENTO_EXTRA EE ") .append("FROM EVENTO_EXTRA EE ")
.append("JOIN TIPO_EVENTO_EXTRA TEE ON EE.TIPOEVENTOEXTRA_ID = TEE.TIPOEVENTOEXTRA_ID ") .append("JOIN TIPO_EVENTO_EXTRA TEE ON EE.TIPOEVENTOEXTRA_ID = TEE.TIPOEVENTOEXTRA_ID ")
.append("LEFT JOIN LOG_CONFERENCIA LOG ON LOG.EVENTOEXTRA_ID = EE.EVENTOEXTRA_ID ") .append("LEFT JOIN LOG_CONFERENCIA LOG ON LOG.EVENTOEXTRA_ID = EE.EVENTOEXTRA_ID ")
.append("LEFT JOIN FORMA_PAGO FP ON FP.FORMAPAGO_ID = EE.FORMAPAGO_ID ")
.append("WHERE EE.ACTIVO = 1 ") .append("WHERE EE.ACTIVO = 1 ")
.append("AND TO_DATE(EE.FECHORINGRESO,'DD/MM/YY') = :datamovimento "); .append("AND TO_DATE(EE.FECHORINGRESO,'DD/MM/YY') = :datamovimento ");
@ -424,6 +428,9 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
.addScalar("desctipoevento", Hibernate.STRING) .addScalar("desctipoevento", Hibernate.STRING)
.addScalar("descinfo", Hibernate.STRING) .addScalar("descinfo", Hibernate.STRING)
.addScalar("status", Hibernate.INTEGER) .addScalar("status", Hibernate.INTEGER)
.addScalar("formapagoId", Hibernate.INTEGER)
.addScalar("descpago", Hibernate.STRING)
.addScalar("indconferenciafisicacomissao", Hibernate.BOOLEAN)
.setResultTransformer(Transformers.aliasToBean(EventosFinanceirosVO.class)); .setResultTransformer(Transformers.aliasToBean(EventosFinanceirosVO.class));
setParametros(qr, parametros); setParametros(qr, parametros);
@ -535,13 +542,16 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
.append("B.NUMFOLIOPREIMPRESO AS \"numFolioPreImpreso\", EST.CVEESTADO AS \"uf\", CAT.DESCCATEGORIA AS \"desccategoria\", ") .append("B.NUMFOLIOPREIMPRESO AS \"numFolioPreImpreso\", EST.CVEESTADO AS \"uf\", CAT.DESCCATEGORIA AS \"desccategoria\", ")
.append("NVL(B.PRECIOPAGADO,0) AS \"valorpagado\", NVL(B.IMPORTEOUTROS,0) AS \"seguroOutros\", ") .append("NVL(B.PRECIOPAGADO,0) AS \"valorpagado\", NVL(B.IMPORTEOUTROS,0) AS \"seguroOutros\", ")
.append("NVL(B.IMPORTEPEDAGIO,0) AS \"pedagio\", NVL(B.IMPORTESEGURO,0) AS \"seguro\", ") .append("NVL(B.IMPORTEPEDAGIO,0) AS \"pedagio\", NVL(B.IMPORTESEGURO,0) AS \"seguro\", ")
.append("B.TIPOVENTA_ID AS \"tipoVenta\", B.INDSTATUSBOLETO AS \"indstatusboleto\", LOG.STATUS AS \"status\" ") .append("B.TIPOVENTA_ID AS \"tipoVenta\", B.INDSTATUSBOLETO AS \"indstatusboleto\", LOG.STATUS AS \"status\", ")
.append("FP.FORMAPAGO_ID AS \"formapagoId\", FP.DESCPAGO AS \"descpago\", FP.INDCONFERENCIAFISICACOMISSAO AS \"indconferenciafisicacomissao\" ")
.append("FROM BOLETO B ") .append("FROM BOLETO B ")
.append("LEFT JOIN PARADA ORI ON ORI.PARADA_ID = B.ORIGEN_ID ") .append("LEFT JOIN PARADA ORI ON ORI.PARADA_ID = B.ORIGEN_ID ")
.append("LEFT JOIN CIUDAD CID ON CID.CIUDAD_ID = ORI.PARADA_ID ") .append("LEFT JOIN CIUDAD CID ON CID.CIUDAD_ID = ORI.PARADA_ID ")
.append("LEFT JOIN ESTADO EST ON EST.ESTADO_ID = CID.ESTADO_ID ") .append("LEFT JOIN ESTADO EST ON EST.ESTADO_ID = CID.ESTADO_ID ")
.append("LEFT JOIN CATEGORIA CAT ON CAT.CATEGORIA_ID = B.CATEGORIA_ID ") .append("LEFT JOIN CATEGORIA CAT ON CAT.CATEGORIA_ID = B.CATEGORIA_ID ")
.append("LEFT JOIN LOG_CONFERENCIA LOG ON LOG.BOLETO_ID = B.BOLETO_ID ") .append("LEFT JOIN LOG_CONFERENCIA LOG ON LOG.BOLETO_ID = B.BOLETO_ID ")
.append("INNER JOIN BOLETO_FORMAPAGO BF ON BF.BOLETO_ID = B.BOLETO_ID ")
.append("INNER JOIN FORMA_PAGO FP ON FP.FORMAPAGO_ID = BF.FORMAPAGO_ID ")
.append("WHERE B.ACTIVO = 1 ") .append("WHERE B.ACTIVO = 1 ")
.append("AND TO_DATE(B.FECHORVENTA,'DD/MM/YY') = :datamovimento "); .append("AND TO_DATE(B.FECHORVENTA,'DD/MM/YY') = :datamovimento ");
@ -612,10 +622,30 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
.addScalar("tipoVenta", Hibernate.INTEGER) .addScalar("tipoVenta", Hibernate.INTEGER)
.addScalar("indstatusboleto", Hibernate.STRING) .addScalar("indstatusboleto", Hibernate.STRING)
.addScalar("status", Hibernate.INTEGER) .addScalar("status", Hibernate.INTEGER)
.addScalar("formapagoId", Hibernate.INTEGER)
.addScalar("descpago", Hibernate.STRING)
.addScalar("indconferenciafisicacomissao", Hibernate.BOOLEAN)
.setResultTransformer(Transformers.aliasToBean(BoletoComissao.class)); .setResultTransformer(Transformers.aliasToBean(BoletoComissao.class));
setParametros(qr, parametros); setParametros(qr, parametros);
return qr.list(); List<BoletoComissao> lsBoletoComissao = new ArrayList<BoletoComissao>();
List<BoletoComissao> auxLsBoletoComissao = qr.list();
for (BoletoComissao boletoComissao : auxLsBoletoComissao) {
if(boletoComissao.getFormapagos() == null) {
boletoComissao.setFormapagos(new HashSet<FormapagoVO>());
}
if(lsBoletoComissao.contains(boletoComissao)) {
BoletoComissao aux = lsBoletoComissao.get(lsBoletoComissao.indexOf(boletoComissao));
aux.getFormapagos().add(new FormapagoVO(boletoComissao.getFormapagoId(), boletoComissao.getDescpago(), boletoComissao.getIndconferenciafisicacomissao()));
lsBoletoComissao.set(lsBoletoComissao.indexOf(boletoComissao), aux);
} else {
boletoComissao.getFormapagos().add(new FormapagoVO(boletoComissao.getFormapagoId(), boletoComissao.getDescpago(), boletoComissao.getIndconferenciafisicacomissao()));
lsBoletoComissao.add(boletoComissao);
}
}
return lsBoletoComissao;
} 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);
@ -748,4 +778,93 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO<Confere
} }
} }
@Override
@SuppressWarnings("deprecation")
public boolean isBilhetesSemConferencia(Conferencia conferencia) throws BusinessException {
try {
Map<String, Object> parametros = carregarParametros(null, conferencia.getEmpresa(), conferencia.getPuntoVenta());
StringBuilder sQuery = new StringBuilder();
sQuery.append("SELECT B.BOLETO_ID AS \"boletoId\" ")
.append("FROM BOLETO B ")
.append("LEFT JOIN LOG_CONFERENCIA LOG ON LOG.BOLETO_ID = B.BOLETO_ID ")
.append("INNER JOIN BOLETO_FORMAPAGO BF ON BF.BOLETO_ID = B.BOLETO_ID ")
.append("INNER JOIN FORMA_PAGO FP ON FP.FORMAPAGO_ID = BF.FORMAPAGO_ID ")
.append("WHERE B.ACTIVO = 1 ")
.append("AND (LOG.LOGCONFERENCIA_ID IS NULL OR LOG.ACTIVO = 0) ")
.append("AND FP.INDCONFERENCIAFISICACOMISSAO = 1 ")
.append("AND TO_DATE(B.FECHORVENTA,'DD/MM/YY') = :datamovimento ")
.append("AND B.TIPOVENTA_ID IN (:tipoVenta) ")
.append("AND ( ")
.append(" (B.INDSTATUSBOLETO = 'V' AND B.MOTIVOCANCELACION_ID IS NULL) ")
.append(" OR ")
.append(" (B.INDSTATUSBOLETO = 'C' AND B.MOTIVOCANCELACION_ID IN (:motivocancelacionId)) ")
.append(" ) ");
parametros.put("datamovimento", conferencia.getDatamovimento());
parametros.put("tipoVenta", Arrays.asList(Constantes.TPV_BOLETO_REMOTO,Constantes.TPV_MANUAL,Constantes.TPV_DIRECTO_NORMAL));
parametros.put("motivocancelacionId", Arrays.asList(Constantes.MVO_CANCEL_CANCELACION,Constantes.MVO_CANCEL_DEVOLUCAO));
if(parametros.containsKey("empresaId")) {
sQuery.append("AND B.EMPRESACORRIDA_ID = :empresaId ");
}
if(parametros.containsKey("puntoventaId")) {
sQuery.append("AND B.PUNTOVENTA_ID = :puntoventaId ");
}
log.info(sQuery.toString());
Query qr = getSession().createSQLQuery(sQuery.toString())
.addScalar("boletoId", Hibernate.LONG)
.setResultTransformer(Transformers.aliasToBean(BoletoComissao.class));
setParametros(qr, parametros);
return !qr.list().isEmpty();
} catch (Exception e) {
log.error(e.getMessage(), e);
throw new BusinessException(e.getMessage(), e);
}
}
@Override
@SuppressWarnings("deprecation")
public boolean isEventosFinanceirosSemConferencia(Conferencia conferencia) throws BusinessException {
try {
Map<String, Object> parametros = carregarParametros(null, conferencia.getEmpresa(), conferencia.getPuntoVenta());
StringBuilder sQuery = new StringBuilder();
sQuery.append("SELECT DISTINCT EE.EVENTOEXTRA_ID AS \"eventoextraId\" ")
.append("FROM EVENTO_EXTRA EE ")
.append("JOIN TIPO_EVENTO_EXTRA TEE ON EE.TIPOEVENTOEXTRA_ID = TEE.TIPOEVENTOEXTRA_ID ")
.append("LEFT JOIN LOG_CONFERENCIA LOG ON LOG.EVENTOEXTRA_ID = EE.EVENTOEXTRA_ID ")
.append("LEFT JOIN FORMA_PAGO FP ON FP.FORMAPAGO_ID = EE.FORMAPAGO_ID ")
.append("WHERE EE.ACTIVO = 1 ")
.append("AND (LOG.LOGCONFERENCIA_ID IS NULL OR LOG.ACTIVO = 0) ")
.append("AND FP.INDCONFERENCIAFISICACOMISSAO = 1 ")
.append("AND TO_DATE(EE.FECHORINGRESO,'DD/MM/YY') = :datamovimento ");
parametros.put("datamovimento", conferencia.getDatamovimento());
if(parametros.containsKey("empresaId")) {
sQuery.append("AND EE.EMPRESA_ID = :empresaId ");
}
if(parametros.containsKey("puntoventaId")) {
sQuery.append("AND EE.PUNTOVENTA_ID = :puntoventaId ");
}
log.info(sQuery.toString());
Query qr = getSession().createSQLQuery(sQuery.toString())
.addScalar("eventoextraId", Hibernate.LONG)
.setResultTransformer(Transformers.aliasToBean(EventosFinanceirosVO.class));
setParametros(qr, parametros);
return !qr.list().isEmpty();
} catch (Exception e) {
log.error(e.getMessage(), e);
throw new BusinessException(e.getMessage(), e);
}
}
} }

View File

@ -57,6 +57,8 @@ public class FormaPago implements Serializable {
private List<ConfigRestriccionPago> configRestriccionPagoList; private List<ConfigRestriccionPago> configRestriccionPagoList;
@OneToMany(mappedBy = "formaPago") @OneToMany(mappedBy = "formaPago")
private List<PricingFormapago> pricingFormapagoList; private List<PricingFormapago> pricingFormapagoList;
@Column(name = "INDCONFERENCIAFISICACOMISSAO")
private Boolean indconferenciafisicacomissao;
public FormaPago() { public FormaPago() {
} }
@ -194,4 +196,12 @@ public class FormaPago implements Serializable {
public void setImpfiscal(Boolean impfiscal) { public void setImpfiscal(Boolean impfiscal) {
this.impfiscal = impfiscal; this.impfiscal = impfiscal;
} }
public Boolean getIndconferenciafisicacomissao() {
return indconferenciafisicacomissao;
}
public void setIndconferenciafisicacomissao(Boolean indconferenciafisicacomissao) {
this.indconferenciafisicacomissao = indconferenciafisicacomissao;
}
} }

View File

@ -86,6 +86,9 @@ public class TipoEventoExtra implements Serializable {
@Column(name = "CONTACONTABIL") @Column(name = "CONTACONTABIL")
private String contaContabil; private String contaContabil;
@Column(name = "INDCONFERENCIAFISICACOMISSAO")
private Boolean indconferenciafisicacomissao;
// @Column(name = "FORMAPAGO_ID") // @Column(name = "FORMAPAGO_ID")
// private Integer formapagoId; // private Integer formapagoId;
// @Column(name = "PARAMARTICULO2_ID") // @Column(name = "PARAMARTICULO2_ID")
@ -329,5 +332,12 @@ public class TipoEventoExtra implements Serializable {
this.contaContabil = contaContabil; this.contaContabil = contaContabil;
} }
public Boolean getIndconferenciafisicacomissao() {
return indconferenciafisicacomissao;
}
public void setIndconferenciafisicacomissao(Boolean indconferenciafisicacomissao) {
this.indconferenciafisicacomissao = indconferenciafisicacomissao;
}
} }

View File

@ -43,4 +43,8 @@ public interface ConferenciaComissaoService extends GenericService<Conferencia,
public Conferencia obtenerConferenciaDataMovimento(Date datamovimento, Integer puntoventaId, Integer empresaId) throws BusinessException; public Conferencia obtenerConferenciaDataMovimento(Date datamovimento, Integer puntoventaId, Integer empresaId) throws BusinessException;
public boolean isBilhetesSemConferencia(Conferencia conferencia) throws BusinessException;
public boolean isEventosFinanceirosSemConferencia(Conferencia conferencia) throws BusinessException;
} }

View File

@ -134,4 +134,14 @@ public class ConferenciaComissaoServiceImpl implements ConferenciaComissaoServic
return conferenciaComissaoDAO.obtenerConferenciaDataMovimento(datamovimento, puntoventaId, empresaId); return conferenciaComissaoDAO.obtenerConferenciaDataMovimento(datamovimento, puntoventaId, empresaId);
} }
@Override
public boolean isBilhetesSemConferencia(Conferencia conferencia) throws BusinessException {
return conferenciaComissaoDAO.isBilhetesSemConferencia(conferencia);
}
@Override
public boolean isEventosFinanceirosSemConferencia(Conferencia conferencia) throws BusinessException {
return conferenciaComissaoDAO.isEventosFinanceirosSemConferencia(conferencia);
}
} }

View File

@ -1,6 +1,7 @@
package com.rjconsultores.ventaboletos.vo.comissao; package com.rjconsultores.ventaboletos.vo.comissao;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Set;
import com.rjconsultores.ventaboletos.enums.comissao.StatusLogConferencia; import com.rjconsultores.ventaboletos.enums.comissao.StatusLogConferencia;
@ -28,6 +29,12 @@ public class BoletoComissao {
private String uf; private String uf;
private String desccategoria; private String desccategoria;
private Integer status; private Integer status;
private Integer formapagoId;
private String descpago;
private Boolean indconferenciafisicacomissao;
private Set<FormapagoVO> formapagos;
private BigDecimal icmsBase; private BigDecimal icmsBase;
public Integer getEmpresaId() { public Integer getEmpresaId() {
@ -218,6 +225,75 @@ public class BoletoComissao {
return ""; return "";
} }
public String getDescFormapagos() {
StringBuilder sFormapagos = new StringBuilder();
for (FormapagoVO formapago : formapagos) {
if(sFormapagos.length() > 0) {
sFormapagos.append(", ");
}
sFormapagos.append(formapago.getDescpago());
}
return sFormapagos.toString();
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((boletoId == null) ? 0 : boletoId.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
BoletoComissao other = (BoletoComissao) obj;
if (boletoId == null) {
if (other.boletoId != null)
return false;
} else if (!boletoId.equals(other.boletoId))
return false;
return true;
}
public Integer getFormapagoId() {
return formapagoId;
}
public void setFormapagoId(Integer formapagoId) {
this.formapagoId = formapagoId;
}
public String getDescpago() {
return descpago;
}
public void setDescpago(String descpago) {
this.descpago = descpago;
}
public Boolean getIndconferenciafisicacomissao() {
return indconferenciafisicacomissao;
}
public void setIndconferenciafisicacomissao(Boolean indconferenciafisicacomissao) {
this.indconferenciafisicacomissao = indconferenciafisicacomissao;
}
public Set<FormapagoVO> getFormapagos() {
return formapagos;
}
public void setFormapagos(Set<FormapagoVO> formapagos) {
this.formapagos = formapagos;
}
public BigDecimal getIcmsBase() { public BigDecimal getIcmsBase() {
return icmsBase; return icmsBase;
} }

View File

@ -14,6 +14,9 @@ public class EventosFinanceirosVO {
private String desctipoevento; private String desctipoevento;
private String descinfo; private String descinfo;
private Integer status; private Integer status;
private Integer formapagoId;
private String descpago;
private Boolean indconferenciafisicacomissao;
public Long getEventoextraId() { public Long getEventoextraId() {
return eventoextraId; return eventoextraId;
@ -79,4 +82,28 @@ public class EventosFinanceirosVO {
return ""; return "";
} }
public Integer getFormapagoId() {
return formapagoId;
}
public void setFormapagoId(Integer formapagoId) {
this.formapagoId = formapagoId;
}
public String getDescpago() {
return descpago;
}
public void setDescpago(String descpago) {
this.descpago = descpago;
}
public Boolean getIndconferenciafisicacomissao() {
return indconferenciafisicacomissao;
}
public void setIndconferenciafisicacomissao(Boolean indconferenciafisicacomissao) {
this.indconferenciafisicacomissao = indconferenciafisicacomissao;
}
} }

View File

@ -0,0 +1,44 @@
package com.rjconsultores.ventaboletos.vo.comissao;
public class FormapagoVO {
private Integer formapagoId;
private String descpago;
private Boolean indconferenciafisicacomissao;
public FormapagoVO() {
super();
}
public FormapagoVO(Integer formapagoId, String descpago, Boolean indconferenciafisicacomissao) {
this();
this.formapagoId = formapagoId;
this.descpago = descpago;
this.indconferenciafisicacomissao = indconferenciafisicacomissao;
}
public Integer getFormapagoId() {
return formapagoId;
}
public void setFormapagoId(Integer formapagoId) {
this.formapagoId = formapagoId;
}
public String getDescpago() {
return descpago;
}
public void setDescpago(String descpago) {
this.descpago = descpago;
}
public Boolean getIndconferenciafisicacomissao() {
return indconferenciafisicacomissao;
}
public void setIndconferenciafisicacomissao(Boolean indconferenciafisicacomissao) {
this.indconferenciafisicacomissao = indconferenciafisicacomissao;
}
}