bug #6558
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@46811 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
1772b26889
commit
5390cfe68c
|
@ -11,20 +11,34 @@ import org.hibernate.type.DateType;
|
|||
import org.hibernate.type.IntegerType;
|
||||
import org.hibernate.type.LongType;
|
||||
import org.hibernate.type.StringType;
|
||||
import org.hibernate.type.TimestampType;
|
||||
import org.slf4j.Logger;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.rjconsultores.ventaboletos.constantes.Constantes;
|
||||
import com.rjconsultores.ventaboletos.dao.BusquedaDatosTicketDAO;
|
||||
import com.rjconsultores.ventaboletos.entidad.Pacote;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.DatosTicketResultTransformer;
|
||||
import com.rjconsultores.ventaboletos.enums.SituacaoVendaPacote;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.ClientePacoteVO;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.EnderecoApanheVO;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.PacoteVO;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.PagamentoVO;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.PassageiroVO;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.ServicoVO;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer.DatosClientePacoteResultTransformer;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer.DatosEnderecoApanheResultTransformer;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer.DatosPagamentoResultTransformer;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer.DatosPassageiroResultTransformer;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer.DatosServicoResultTransformer;
|
||||
import com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer.DatosTicketResultTransformer;
|
||||
|
||||
@Repository("busquedaDatosTicketDAO")
|
||||
public class BusquedaDatosTicketHibernateDAO extends GenericHibernateDAO<Pacote, Integer> implements BusquedaDatosTicketDAO {
|
||||
|
||||
private static Logger log = org.slf4j.LoggerFactory.getLogger(BusquedaDatosTicketHibernateDAO.class);
|
||||
private List<Long> vendapacoteIds;
|
||||
|
||||
@Autowired
|
||||
public BusquedaDatosTicketHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
|
||||
|
@ -33,71 +47,288 @@ public class BusquedaDatosTicketHibernateDAO extends GenericHibernateDAO<Pacote,
|
|||
|
||||
@Override
|
||||
public List<PacoteVO> buscaDatosTickets(Date fecInicial, Date fecFinal) {
|
||||
|
||||
StringBuilder sql = new StringBuilder("");
|
||||
|
||||
sql.append("SELECT blt.boleto_id as \"boletoId\", ")
|
||||
.append("blt.numfoliosistema as \"numBoleto\", ")
|
||||
.append("blt.categoria_id as \"categoriaId\", ")
|
||||
.append("ctg.desccategoria as \"categoria\", ")
|
||||
.append("blt.origen_id as \"origenId\", ")
|
||||
.append("blt.destino_id as \"destinoId\", ")
|
||||
.append("blt.nombpasajero as \"nombPasajero\", ")
|
||||
.append("blt.fechorviaje as \"fechorViaje\", ")
|
||||
.append("blt.fechorventa as \"fechorVenta\", ")
|
||||
.append("blt.numoperacion as \"numOperacion\", ")
|
||||
.append("blt.tipoidentificacion_id as \"tipoIdentificacionId\", ")
|
||||
.append("blt.numidentificacion as \"numIdentificacion\", ")
|
||||
.append("blt.usuario_id as \"usuarioId\", ")
|
||||
.append("fpg.cvepago as \"cvePago\", ")
|
||||
.append("fpg.descpago as \"descPago\", ")
|
||||
.append("bfp.importe as \"importe\" ")
|
||||
.append("FROM boleto blt, ")
|
||||
.append("categoria ctg, ")
|
||||
.append("boleto_formapago bfp, ")
|
||||
.append("forma_pago fpg ")
|
||||
.append("WHERE bfp.boleto_id = blt.boleto_id ")
|
||||
.append("AND blt.categoria_id = ctg.categoria_id ")
|
||||
.append("AND bfp.formapago_id = fpg.formapago_id ")
|
||||
.append("AND blt.motivocancelacion_id is null ")
|
||||
.append("AND blt.indstatusoperacion = 'F' ")
|
||||
.append("AND blt.activo = 1 ")
|
||||
.append("AND blt.fechorviaje BETWEEN :fechaInicial AND :fechaFinal ")
|
||||
.append("ORDER BY bfp.boleto_id desc ");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sql.toString())
|
||||
.addScalar("boletoId", LongType.INSTANCE)
|
||||
.addScalar("numBoleto", StringType.INSTANCE)
|
||||
.addScalar("categoriaId", IntegerType.INSTANCE)
|
||||
.addScalar("categoria", StringType.INSTANCE)
|
||||
.addScalar("origenId", IntegerType.INSTANCE)
|
||||
.addScalar("destinoId", IntegerType.INSTANCE)
|
||||
.addScalar("nombPasajero", StringType.INSTANCE)
|
||||
.addScalar("fechorViaje", DateType.INSTANCE)
|
||||
.addScalar("fechorVenta", DateType.INSTANCE)
|
||||
.addScalar("numOperacion", StringType.INSTANCE)
|
||||
.addScalar("tipoIdentificacionId", IntegerType.INSTANCE)
|
||||
.addScalar("numIdentificacion", StringType.INSTANCE)
|
||||
.addScalar("usuarioId", IntegerType.INSTANCE)
|
||||
.addScalar("cvePago", StringType.INSTANCE)
|
||||
.addScalar("descPago", StringType.INSTANCE)
|
||||
.addScalar("importe", BigDecimalType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosTicketResultTransformer());
|
||||
|
||||
query.setParameter("fechaInicial", fecInicial, DateType.INSTANCE)
|
||||
.setParameter("fechaFinal", fecFinal, DateType.INSTANCE);
|
||||
|
||||
vendapacoteIds = null;
|
||||
List<PacoteVO> pacotes = new ArrayList<PacoteVO>();
|
||||
|
||||
try{
|
||||
pacotes = query.list();
|
||||
}catch(Exception ex){
|
||||
log.error("", ex);
|
||||
return null;
|
||||
try {
|
||||
pacotes = carregarDadosPacotes(fecInicial, fecFinal);
|
||||
carregarDadosPagamento(pacotes);
|
||||
carregarDadosServico(pacotes);
|
||||
carregarDadosPassageiros(pacotes);
|
||||
carregarDadosCliente(pacotes);
|
||||
carregarDadosEnderecoApanhe(pacotes);
|
||||
|
||||
} catch(Exception e) {
|
||||
log.error(e.getMessage(), e);
|
||||
pacotes.clear();
|
||||
}
|
||||
|
||||
return pacotes;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private List<PacoteVO> carregarDadosPacotes(Date fecInicial, Date fecFinal) {
|
||||
StringBuilder sQuery = new StringBuilder();
|
||||
sQuery.append("SELECT VP.VENDAPACOTE_ID, VP.DATAPACOTE, VP.DATAVENDA, VP.SUBTOTAL, VP.TOTAL, VP.DESCONTO, VP.NUMOPERACION, P.NOMPACOTE, E.NOMBEMPRESA, ")
|
||||
.append("VP.SITUACAO, PV.NOMBPUNTOVENTA, VP.USUARIO_ID, ")
|
||||
.append("COUNT(TVP.TARIFAVENDAPACOTE_ID) AS QTDEPASSAGEIRO, ")
|
||||
.append("SUM(B.PRECIOPAGADO) AS TOTALTARIFA, ")
|
||||
.append("SUM(B.IMPORTETAXAEMBARQUE) AS TOTALTAXAEMBARQUE, ")
|
||||
.append("SUM(B.IMPORTEPEDAGIO) AS TOTALPEDAGIO, ")
|
||||
.append("SUM(B.IMPORTEOUTROS) AS TOTALOUTROS, ")
|
||||
.append("SUM(B.IMPORTESEGURO) AS TOTALSEGURO, ")
|
||||
.append("COUNT(PFP.PACOTEFORMAPAGO_ID) AS QTDEPACOTEFORMAPAGO ")
|
||||
.append("FROM VENDA_PACOTE VP ")
|
||||
.append("JOIN PACOTE P ON P.PACOTE_ID = VP.PACOTE_ID ")
|
||||
.append("JOIN EMPRESA E ON E.EMPRESA_ID = P.EMPRESA_ID ")
|
||||
.append("LEFT JOIN PUNTO_VENTA PV ON PV.PUNTOVENTA_ID = VP.PUNTOVENTA_ID ")
|
||||
.append("LEFT JOIN TARIFA_VENDA_PACOTE TVP ON TVP.VENDAPACOTE_ID = VP.VENDAPACOTE_ID ")
|
||||
.append("LEFT JOIN BOLETO B ON B.BOLETO_ID = TVP.BOLETO_ID ")
|
||||
.append("LEFT JOIN PACOTE_FORMAPAGO PFP ON PFP.VENDAPACOTE_ID = VP.VENDAPACOTE_ID ")
|
||||
.append("WHERE (B.BOLETO_ID IS NULL OR B.INDSTATUSBOLETO = 'V') ")
|
||||
.append("AND VP.DATAPACOTE BETWEEN :fecInicial AND :fecFinal ")
|
||||
.append("GROUP BY VP.VENDAPACOTE_ID, VP.DATAPACOTE, VP.DATAVENDA, VP.SUBTOTAL, VP.TOTAL, ")
|
||||
.append("VP.DESCONTO, VP.NUMOPERACION, P.NOMPACOTE, E.NOMBEMPRESA, VP.SITUACAO, PV.NOMBPUNTOVENTA, VP.USUARIO_ID ");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sQuery.toString())
|
||||
.addScalar("VENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("DATAPACOTE", DateType.INSTANCE)
|
||||
.addScalar("DATAVENDA", DateType.INSTANCE)
|
||||
.addScalar("SUBTOTAL", BigDecimalType.INSTANCE)
|
||||
.addScalar("TOTAL", BigDecimalType.INSTANCE)
|
||||
.addScalar("DESCONTO", BigDecimalType.INSTANCE)
|
||||
.addScalar("NUMOPERACION", StringType.INSTANCE)
|
||||
.addScalar("NOMPACOTE", StringType.INSTANCE)
|
||||
.addScalar("NOMBEMPRESA", StringType.INSTANCE)
|
||||
.addScalar("SITUACAO", IntegerType.INSTANCE)
|
||||
.addScalar("NOMBPUNTOVENTA", StringType.INSTANCE)
|
||||
.addScalar("USUARIO_ID", IntegerType.INSTANCE)
|
||||
.addScalar("QTDEPASSAGEIRO", IntegerType.INSTANCE)
|
||||
.addScalar("TOTALTARIFA", BigDecimalType.INSTANCE)
|
||||
.addScalar("TOTALTAXAEMBARQUE", BigDecimalType.INSTANCE)
|
||||
.addScalar("TOTALPEDAGIO", BigDecimalType.INSTANCE)
|
||||
.addScalar("TOTALOUTROS", BigDecimalType.INSTANCE)
|
||||
.addScalar("TOTALSEGURO", BigDecimalType.INSTANCE)
|
||||
.addScalar("QTDEPACOTEFORMAPAGO", IntegerType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosTicketResultTransformer());
|
||||
query.setParameter("fecInicial", fecInicial, DateType.INSTANCE)
|
||||
.setParameter("fecFinal", fecFinal, DateType.INSTANCE);
|
||||
|
||||
return query.list();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private void carregarDadosPagamento(List<PacoteVO> pacotes) {
|
||||
StringBuilder sQuery = new StringBuilder();
|
||||
sQuery.append("SELECT PFP.PACOTEFORMAPAGO_ID, PFP.VALOR, PFP.VENDAPACOTE_ID, FP.FORMAPAGO_ID, FP.DESCPAGO, CT.TIPOTARJETA, CT.NUMAUTORIZACION, CT.CANTPARCELAS, ")
|
||||
.append("NC.NOTACREDITOVENDAPACOTE_ID, VPC.NUMOPERACION AS NUMOPERACAOPACOTECANCELAMENTO, VPP.NUMOPERACION AS NUMOPERACAOPACOTEPAGAMENTO ")
|
||||
.append("FROM PACOTE_FORMAPAGO PFP ")
|
||||
.append("JOIN FORMA_PAGO FP ON FP.FORMAPAGO_ID = PFP.FORMAPAGO_ID ")
|
||||
.append("LEFT JOIN CAJA_DIVERSOS CD ON CD.VENDAPACOTE_ID = PFP.VENDAPACOTE_ID ")
|
||||
.append("LEFT JOIN CAJA_DIVERSOS_PAGO CDP ON CDP.CAJADIVERSOS_ID = CD.CAJADIVERSOS_ID ")
|
||||
.append("LEFT JOIN CAJA_TARJETA CT ON CT.CAJATARJETA_ID = CDP.CAJATARJETA_ID ")
|
||||
.append("LEFT JOIN NOTA_CREDITO_VENDA_PACOTE NC ON NC.VENDAPACOTEPAGAMENTO_ID = PFP.VENDAPACOTE_ID ")
|
||||
.append("LEFT JOIN VENDA_PACOTE VPC ON NC.VENDAPACOTECANCELAMENTO_ID = VPC.VENDAPACOTE_ID ")
|
||||
.append("LEFT JOIN VENDA_PACOTE VPP ON NC.VENDAPACOTEPAGAMENTO_ID = VPP.VENDAPACOTE_ID ")
|
||||
.append("WHERE PFP.VENDAPACOTE_ID IN (:vendapacoteIds) ")
|
||||
.append("ORDER BY PFP.VENDAPACOTE_ID");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sQuery.toString())
|
||||
.addScalar("PACOTEFORMAPAGO_ID", LongType.INSTANCE)
|
||||
.addScalar("VALOR", BigDecimalType.INSTANCE)
|
||||
.addScalar("VENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("FORMAPAGO_ID", IntegerType.INSTANCE)
|
||||
.addScalar("DESCPAGO", StringType.INSTANCE)
|
||||
.addScalar("TIPOTARJETA", StringType.INSTANCE)
|
||||
.addScalar("NUMAUTORIZACION", StringType.INSTANCE)
|
||||
.addScalar("CANTPARCELAS", IntegerType.INSTANCE)
|
||||
.addScalar("NOTACREDITOVENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("NUMOPERACAOPACOTECANCELAMENTO", StringType.INSTANCE)
|
||||
.addScalar("NUMOPERACAOPACOTEPAGAMENTO", StringType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosPagamentoResultTransformer());
|
||||
query.setParameterList("vendapacoteIds", getVendapacoteIds(pacotes));
|
||||
|
||||
List<PagamentoVO> pagamentos = query.list();
|
||||
for (PacoteVO pacote : pacotes) {
|
||||
int flag = -1;
|
||||
for (PagamentoVO pagamento : pagamentos) {
|
||||
if(pagamento.getVendapacoteId().equals(pacote.getVendapacoteId())) {
|
||||
flag = 0;
|
||||
if(pacote.getFormaspagamento() == null) {
|
||||
pacote.setFormaspagamento(new ArrayList<PagamentoVO>());
|
||||
}
|
||||
|
||||
if(isPacoteReserva(pacote) && isPagamentoPacoteReserva(pagamento) ||
|
||||
(isPagamentoPacoteReserva(pagamento) && pacote.getQtdePacoteFormaspago() == 1) ||
|
||||
(!isPacoteReserva(pacote) && !isPagamentoPacoteReserva(pagamento))) {
|
||||
pacote.getFormaspagamento().add(pagamento);
|
||||
}
|
||||
} else if(flag == 0){
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isPacoteReserva(PacoteVO pacote) {
|
||||
return SituacaoVendaPacote.RESERVA.toString().equals(pacote.getStatus());
|
||||
}
|
||||
|
||||
private boolean isPagamentoPacoteReserva(PagamentoVO pagamento) {
|
||||
return pagamento.getFormapagoId().equals(Constantes.FORMA_PAGO_RESERVA.intValue());
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private void carregarDadosServico(List<PacoteVO> pacotes) {
|
||||
StringBuilder sQuery = new StringBuilder();
|
||||
sQuery.append("SELECT DISTINCT VP.VENDAPACOTE_ID, B.FECHORVIAJE, B.ORIGEN_ID, CONCAT(CONCAT(ORI.CVEPARADA,' - '),ORI.DESCPARADA) AS ORIGEM, CONCAT(CONCAT(DES.CVEPARADA,' - '),DES.DESCPARADA) AS DESTINO ")
|
||||
.append("FROM VENDA_PACOTE VP ")
|
||||
.append("JOIN PACOTE P ON P.PACOTE_ID = VP.PACOTE_ID ")
|
||||
.append("JOIN TARIFA_VENDA_PACOTE TVP ON TVP.VENDAPACOTE_ID = VP.VENDAPACOTE_ID ")
|
||||
.append("JOIN BOLETO B ON B.BOLETO_ID = TVP.BOLETO_ID ")
|
||||
.append("JOIN PARADA ORI ON ORI.PARADA_ID = B.ORIGEN_ID ")
|
||||
.append("JOIN PARADA DES ON DES.PARADA_ID = B.DESTINO_ID ")
|
||||
.append("WHERE VP.VENDAPACOTE_ID IN (:vendapacoteIds) ");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sQuery.toString())
|
||||
.addScalar("VENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("FECHORVIAJE", TimestampType.INSTANCE)
|
||||
.addScalar("ORIGEN_ID", IntegerType.INSTANCE)
|
||||
.addScalar("ORIGEM", StringType.INSTANCE)
|
||||
.addScalar("DESTINO", StringType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosServicoResultTransformer());
|
||||
query.setParameterList("vendapacoteIds", getVendapacoteIds(pacotes));
|
||||
|
||||
List<ServicoVO> servicos = query.list();
|
||||
for (PacoteVO pacote : pacotes) {
|
||||
for (ServicoVO servico : servicos) {
|
||||
if(servico.getVendapacoteId().equals(pacote.getVendapacoteId())) {
|
||||
pacote.setServico(servico);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private void carregarDadosCliente(List<PacoteVO> pacotes) {
|
||||
StringBuilder sQuery = new StringBuilder();
|
||||
sQuery.append("SELECT DISTINCT VP.VENDAPACOTE_ID, CP.RAZAO_SOCIAL, CP.CPF_CNPJ, CP.TIPO_PESSOA, CP.DESCEMAIL, CP.DESCTELEFONE, CP.DESCFAX, CP.CEP, CP.ENDERECO, CP.NUMERO, CP.COMPLEMENTO, CP.PAIS, CP.ESTADO, CP.CIDADE, CP.BAIRRO ")
|
||||
.append("FROM CLIENTE_PACOTE CP ")
|
||||
.append("JOIN VENDA_PACOTE VP ON CP.CLIENTEPACOTE_ID = VP.CLIENTEPACOTE_ID ")
|
||||
.append("WHERE VP.VENDAPACOTE_ID IN (:vendapacoteIds) ");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sQuery.toString())
|
||||
.addScalar("VENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("RAZAO_SOCIAL", StringType.INSTANCE)
|
||||
.addScalar("CPF_CNPJ", StringType.INSTANCE)
|
||||
.addScalar("TIPO_PESSOA", IntegerType.INSTANCE)
|
||||
.addScalar("DESCEMAIL", StringType.INSTANCE)
|
||||
.addScalar("DESCTELEFONE", StringType.INSTANCE)
|
||||
.addScalar("DESCFAX", StringType.INSTANCE)
|
||||
.addScalar("CEP", StringType.INSTANCE)
|
||||
.addScalar("ENDERECO", StringType.INSTANCE)
|
||||
.addScalar("NUMERO", StringType.INSTANCE)
|
||||
.addScalar("COMPLEMENTO", StringType.INSTANCE)
|
||||
.addScalar("PAIS", StringType.INSTANCE)
|
||||
.addScalar("ESTADO", StringType.INSTANCE)
|
||||
.addScalar("CIDADE", StringType.INSTANCE)
|
||||
.addScalar("BAIRRO", StringType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosClientePacoteResultTransformer());
|
||||
query.setParameterList("vendapacoteIds", getVendapacoteIds(pacotes));
|
||||
|
||||
List<ClientePacoteVO> clientesPacotes = query.list();
|
||||
for (PacoteVO pacote : pacotes) {
|
||||
for (ClientePacoteVO clientePacote : clientesPacotes) {
|
||||
if(clientePacote.getVendapacoteId().equals(pacote.getVendapacoteId())) {
|
||||
pacote.setClientePacote(clientePacote);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private void carregarDadosPassageiros(List<PacoteVO> pacotes) {
|
||||
StringBuilder sQuery = new StringBuilder();
|
||||
sQuery.append("SELECT DISTINCT VP.VENDAPACOTE_ID, TVP.TARIFAVENDAPACOTE_ID, TVP.NOMEPASSAGEIRO, CONCAT(CONCAT(TVP.TIPODOC,' - '), TVP.DOCUMENTO) AS DOCUMENTO, B.NUMASIENTO, C.CATEGORIA_ID, C.DESCCATEGORIA, B.BOLETO_ID ")
|
||||
.append("FROM VENDA_PACOTE VP ")
|
||||
.append("JOIN TARIFA_VENDA_PACOTE TVP ON TVP.VENDAPACOTE_ID = VP.VENDAPACOTE_ID ")
|
||||
.append("LEFT JOIN BOLETO B ON B.BOLETO_ID = TVP.BOLETO_ID ")
|
||||
.append("LEFT JOIN CATEGORIA C ON C.CATEGORIA_ID = B.CATEGORIA_ID ")
|
||||
.append("WHERE VP.VENDAPACOTE_ID IN (:vendapacoteIds) ");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sQuery.toString())
|
||||
.addScalar("VENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("BOLETO_ID", LongType.INSTANCE)
|
||||
.addScalar("TARIFAVENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("NOMEPASSAGEIRO", StringType.INSTANCE)
|
||||
.addScalar("DOCUMENTO", StringType.INSTANCE)
|
||||
.addScalar("NUMASIENTO", StringType.INSTANCE)
|
||||
.addScalar("CATEGORIA_ID", IntegerType.INSTANCE)
|
||||
.addScalar("DESCCATEGORIA", StringType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosPassageiroResultTransformer());
|
||||
query.setParameterList("vendapacoteIds", getVendapacoteIds(pacotes));
|
||||
|
||||
List<PassageiroVO> passageiros = query.list();
|
||||
for (PacoteVO pacote : pacotes) {
|
||||
for (PassageiroVO passageiro : passageiros) {
|
||||
if(passageiro.getVendapacoteId().equals(pacote.getVendapacoteId())) {
|
||||
if(pacote.getPax() == null) {
|
||||
pacote.setPax(new ArrayList<PassageiroVO>());
|
||||
}
|
||||
pacote.getPax().add(passageiro);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private void carregarDadosEnderecoApanhe(List<PacoteVO> pacotes) {
|
||||
StringBuilder sQuery = new StringBuilder();
|
||||
sQuery.append("SELECT DISTINCT VP.VENDAPACOTE_ID, EA.LOCAL, EA.DESCHOTEL, EA.CEP, EA.ENDERECO, EA.NUMERO, EA.COMPLEMENTO, EA.CIDADE, EA.BAIRRO, EA.REFERENCIA ")
|
||||
.append("FROM ENDERECO_APANHE EA ")
|
||||
.append("JOIN VENDA_PACOTE VP ON EA.VENDAPACOTE_ID = VP.VENDAPACOTE_ID ")
|
||||
.append("WHERE VP.VENDAPACOTE_ID IN (:vendapacoteIds) ")
|
||||
.append("AND EA.ACTIVO = 1");
|
||||
|
||||
SQLQuery query = getSession().createSQLQuery(sQuery.toString())
|
||||
.addScalar("VENDAPACOTE_ID", LongType.INSTANCE)
|
||||
.addScalar("LOCAL", IntegerType.INSTANCE)
|
||||
.addScalar("CEP", StringType.INSTANCE)
|
||||
.addScalar("ENDERECO", StringType.INSTANCE)
|
||||
.addScalar("NUMERO", StringType.INSTANCE)
|
||||
.addScalar("COMPLEMENTO", StringType.INSTANCE)
|
||||
.addScalar("CIDADE", StringType.INSTANCE)
|
||||
.addScalar("BAIRRO", StringType.INSTANCE)
|
||||
.addScalar("REFERENCIA", StringType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new DatosEnderecoApanheResultTransformer());
|
||||
query.setParameterList("vendapacoteIds", getVendapacoteIds(pacotes));
|
||||
|
||||
List<EnderecoApanheVO> enderecosApanhe = query.list();
|
||||
for (PacoteVO pacote : pacotes) {
|
||||
for (EnderecoApanheVO enderecoApanhe : enderecosApanhe) {
|
||||
if(enderecoApanhe.getVendapacoteId().equals(pacote.getVendapacoteId())) {
|
||||
pacote.setEnderecoApanhe(enderecoApanhe);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private List<Long> getVendapacoteIds(List<PacoteVO> pacotes) {
|
||||
if(vendapacoteIds == null || vendapacoteIds.isEmpty()) {
|
||||
vendapacoteIds = new ArrayList<Long>();
|
||||
for (PacoteVO pacoteVO : pacotes) {
|
||||
vendapacoteIds.add(pacoteVO.getVendapacoteId());
|
||||
}
|
||||
}
|
||||
|
||||
return vendapacoteIds;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
import com.rjconsultores.ventaboletos.enums.TipoPessoa;
|
||||
|
@ -10,6 +11,7 @@ import com.rjconsultores.ventaboletos.enums.TipoPessoa;
|
|||
"bairro", "cidade", "estado", "cep", "pais"})
|
||||
public class ClientePacoteVO {
|
||||
|
||||
private Long vendapacoteId;
|
||||
private String razaoSocial;
|
||||
private String cpfCnpj;
|
||||
private String tipoPessoa;
|
||||
|
@ -160,4 +162,13 @@ public class ClientePacoteVO {
|
|||
this.bairro = bairro;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Long getVendapacoteId() {
|
||||
return vendapacoteId;
|
||||
}
|
||||
|
||||
public void setVendapacoteId(Long vendapacoteId) {
|
||||
this.vendapacoteId = vendapacoteId;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name = "dadosBancarios")
|
||||
@XmlType(propOrder = {"banco", "identificadorDeposito"})
|
||||
public class DadosBancarioVO {
|
||||
|
||||
private String banco;
|
||||
private String identificadorDeposito;
|
||||
|
||||
public String getBanco() {
|
||||
return banco;
|
||||
}
|
||||
|
||||
public void setBanco(String banco) {
|
||||
this.banco = banco;
|
||||
}
|
||||
|
||||
public String getIdentificadorDeposito() {
|
||||
return identificadorDeposito;
|
||||
}
|
||||
|
||||
public void setIdentificadorDeposito(String identificadorDeposito) {
|
||||
this.identificadorDeposito = identificadorDeposito;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,276 +0,0 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.hibernate.transform.ResultTransformer;
|
||||
|
||||
public class DatosTicketResultTransformer implements ResultTransformer {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||
public List<PacoteVO> transformList(List mapList) {
|
||||
|
||||
Map<String, PacoteVO> pacotes = new HashMap<String, PacoteVO>();
|
||||
|
||||
for(Object objmap : mapList ){
|
||||
|
||||
Map<String, Object> tupleMap = (Map<String, Object>) objmap;
|
||||
|
||||
String numOperacao = (String) tupleMap.get("numOperacion");
|
||||
|
||||
if(!pacotes.containsKey(numOperacao)){
|
||||
|
||||
PacoteVO pacote = new PacoteVO();
|
||||
|
||||
setDatosPacote(pacote, tupleMap);
|
||||
|
||||
pacotes.put(numOperacao, pacote);
|
||||
}
|
||||
|
||||
PacoteVO pacote = pacotes.get(numOperacao);
|
||||
|
||||
setServico(pacote, tupleMap);
|
||||
|
||||
setFormasPagamento(pacote, tupleMap);
|
||||
}
|
||||
|
||||
List<PacoteVO> pacotesList = new ArrayList<PacoteVO>();
|
||||
pacotesList.addAll(pacotes.values());
|
||||
|
||||
return pacotesList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object transformTuple(Object[] data, String[] aliases) {
|
||||
|
||||
Map<String,Object> row = new HashMap<String,Object>();
|
||||
|
||||
for(int index = 0; index < aliases.length; index++){
|
||||
row.put(aliases[index], data[index]);
|
||||
}
|
||||
|
||||
return row;
|
||||
}
|
||||
|
||||
private void setDatosPacote(PacoteVO pacote, Map<String, Object> tupleMap){
|
||||
|
||||
String numoperacao = (String) tupleMap.get("numOperacion");
|
||||
pacote.setNumoperacao(numoperacao);
|
||||
|
||||
Integer usuariovenda = (Integer) tupleMap.get("usuarioId");
|
||||
pacote.setUsuariovenda(usuariovenda);
|
||||
|
||||
Date datavenda = (Date)tupleMap.get("fechorVenta");
|
||||
pacote.setDatavenda(datavenda);
|
||||
|
||||
}
|
||||
|
||||
private void setFormasPagamento(PacoteVO pacote, Map<String, Object> tupleMap){
|
||||
|
||||
Pagamento pagamento = new Pagamento();
|
||||
pagamento.setMoeda("R$");
|
||||
|
||||
BigDecimal valorPagamento = (BigDecimal)tupleMap.get("importe");
|
||||
pagamento.setValor(valorPagamento);
|
||||
|
||||
String cvePago = (String)tupleMap.get("cvePago");
|
||||
|
||||
boolean isVentaCartaoCredito = isVentaCartaoCredito(cvePago);
|
||||
boolean isVentaCartaoDebito = isVentaCartaoDebito(cvePago);
|
||||
|
||||
if(isVentaCartaoCredito || isVentaCartaoDebito){
|
||||
PagamentoCartao pgtoCartao = new PagamentoCartao();
|
||||
Integer tipo = (isVentaCartaoCredito) ? PagamentoCartao.TIPO_CREDITO : PagamentoCartao.TIPO_DEBITO;
|
||||
pgtoCartao.setTipo(tipo);
|
||||
pgtoCartao.setBandeira(getBandeiraCartao(cvePago));
|
||||
pagamento.setCartao(pgtoCartao);
|
||||
pagamento.setFormapagamento("CARTAO");
|
||||
} else {
|
||||
String descPago = (String)tupleMap.get("descPago");
|
||||
pagamento.setFormapagamento(descPago);
|
||||
}
|
||||
|
||||
pacote.setValortotal(pacote.getValortotal().add(valorPagamento));
|
||||
|
||||
pacote.getFormaspagamento().add(pagamento);
|
||||
}
|
||||
|
||||
private boolean isVentaCartaoCredito(String cvePago){
|
||||
return PagamentoCartao.CREDITO.equals(cvePago)
|
||||
|| PagamentoCartao.VISA_CREDITO.equals(cvePago)
|
||||
|| PagamentoCartao.MASTER_CREDITO.equals(cvePago);
|
||||
}
|
||||
|
||||
private boolean isVentaCartaoDebito(String cvePago){
|
||||
return PagamentoCartao.DEBITO.equals(cvePago)
|
||||
|| PagamentoCartao.VISA_ELECTRON.equals(cvePago)
|
||||
|| PagamentoCartao.MAESTRO.equals(cvePago);
|
||||
}
|
||||
|
||||
private boolean isVentaCartaoVisa(String cvePago){
|
||||
return PagamentoCartao.MAESTRO.equals(cvePago)
|
||||
|| PagamentoCartao.MASTER_CREDITO.equals(cvePago);
|
||||
}
|
||||
|
||||
private boolean isVentaDebitoMaster(String cvePago){
|
||||
return PagamentoCartao.VISA_ELECTRON.equals(cvePago)
|
||||
|| PagamentoCartao.VISA_CREDITO.equals(cvePago);
|
||||
}
|
||||
|
||||
private String getBandeiraCartao(String cvePago){
|
||||
String bandeiraCartao = "";
|
||||
|
||||
if(isVentaCartaoVisa(cvePago)){
|
||||
bandeiraCartao = "VISA";
|
||||
}else if(isVentaDebitoMaster(cvePago)){
|
||||
bandeiraCartao = "MASTERCARD";
|
||||
} else {
|
||||
bandeiraCartao = String.format("OUTROS(%s)",cvePago);
|
||||
}
|
||||
|
||||
return bandeiraCartao;
|
||||
}
|
||||
|
||||
private void setServico(PacoteVO pacote, Map<String, Object> tupleMap){
|
||||
|
||||
Servico servico = pacote.getServico();
|
||||
servico = (servico == null) ? new Servico() : servico;
|
||||
|
||||
Date dataviagem = (Date)tupleMap.get("fechorViaje");
|
||||
servico.setDataviagem(dataviagem);
|
||||
|
||||
setDatosPassageiro(servico, pacote, tupleMap);
|
||||
|
||||
Integer quantidade = pacote.getQuantidade();
|
||||
pacote.setQuantidade(++quantidade);
|
||||
|
||||
Integer origenId = (Integer)tupleMap.get("origenId");
|
||||
servico.setLocalorigem(origenId);
|
||||
|
||||
Date fechorViaje = (Date)tupleMap.get("fechorViaje");
|
||||
servico.setDataviagem(fechorViaje);
|
||||
|
||||
pacote.setServico(servico);
|
||||
}
|
||||
|
||||
private void setDatosPassageiro(Servico servico, PacoteVO pacote, Map<String, Object> tupleMap){
|
||||
|
||||
Passageiro passageiro = new Passageiro();
|
||||
|
||||
String docPassageiro = (String) tupleMap.get("numIdentificacion");
|
||||
passageiro.setDocumento(docPassageiro);
|
||||
|
||||
String nomePassageiro = (String) tupleMap.get("nombPasajero");
|
||||
passageiro.setNome(nomePassageiro);
|
||||
|
||||
Long boletoId = (Long) tupleMap.get("boletoId");
|
||||
passageiro.setBoletoId(boletoId);
|
||||
|
||||
String numBoleto = (String) tupleMap.get("numBoleto");
|
||||
passageiro.setNumboleto(numBoleto);
|
||||
|
||||
setCategoriaPassageiro(passageiro, tupleMap);
|
||||
|
||||
List<Passageiro> pax = servico.getPax();
|
||||
|
||||
if(!pax.contains(passageiro)){
|
||||
pax.add(passageiro);
|
||||
}
|
||||
}
|
||||
|
||||
private void setCategoriaPassageiro(Passageiro passageiro, Map<String, Object> tupleMap){
|
||||
|
||||
Integer categoriaId = (Integer) tupleMap.get("categoriaId");
|
||||
String categoria = (String) tupleMap.get("categoria");
|
||||
String categoriaWS = "";
|
||||
|
||||
if(isCategoriaAdult(categoriaId)){
|
||||
|
||||
categoriaWS = Passageiro.CATEGORIA_ADULT;
|
||||
|
||||
}else if(isCategoriaInfant(categoriaId)){
|
||||
|
||||
categoriaWS = Passageiro.CATEGORIA_INFANT;
|
||||
|
||||
}else if(isCategoriaChild(categoriaId)){
|
||||
|
||||
categoriaWS = Passageiro.CATEGORIA_CHILD;
|
||||
|
||||
}else if(isCategoriaSenior(categoriaId)){
|
||||
|
||||
categoriaWS = Passageiro.CATEGORIA_SENIOR;
|
||||
|
||||
}else{
|
||||
categoriaWS = String.format("%s-%s", categoriaId.toString(), categoria);
|
||||
}
|
||||
|
||||
passageiro.setCategoria(categoriaWS);
|
||||
|
||||
}
|
||||
|
||||
private boolean isCategoriaSenior(Integer categoriaId){
|
||||
|
||||
return (Passageiro.CATEGORIA_IDOSO_100 == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_50 == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_CE == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_MA == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_50_MA == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_100_PB_BIL == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_50_PB_BIL == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_100_SP == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_100_GO == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_50_GO == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_100_TO == categoriaId
|
||||
|| Passageiro.CATEGORIA_IDOSO_50_TO == categoriaId);
|
||||
}
|
||||
|
||||
private boolean isCategoriaAdult(Integer categoriaId){
|
||||
|
||||
return (Passageiro.CATEGORIA_DEFICIENTE == categoriaId
|
||||
|| Passageiro.CATEGORIA_DEFICIENTE_GO == categoriaId
|
||||
|| Passageiro.CATEGORIA_DEFICIENTE_TO == categoriaId
|
||||
|| Passageiro.CATEGORIA_DEFICIENTE_PB == categoriaId
|
||||
|| Passageiro.CATEGORIA_DEFICIENTE_BA == categoriaId
|
||||
|| Passageiro.CATEGORIA_DEFICIENTE_MA == categoriaId
|
||||
|| Passageiro.CATEGORIA_DEFICIENTE_PI == categoriaId
|
||||
|| Passageiro.CATEGORIA_ESTUDANTE == categoriaId
|
||||
|| Passageiro.CATEGORIA_ESTUDANTE_PB == categoriaId
|
||||
|| Passageiro.CATEGORIA_ESTUDANTE_CE_LIBERCAD == categoriaId
|
||||
|| Passageiro.CATEGORIA_FISCAL_DO_TRABALHO == categoriaId
|
||||
|| Passageiro.CATEGORIA_OPERADOR_A_TRABALHO == categoriaId
|
||||
|| Passageiro.CATEGORIA_PRF == categoriaId
|
||||
|| Passageiro.CATEGORIA_POL_MILITAR_MA == categoriaId
|
||||
|| Passageiro.CATEGORIA_MILITAR_PI_POL == categoriaId
|
||||
|| Passageiro.CATEGORIA_CE_PM_BOMBEIRO == categoriaId
|
||||
|| Passageiro.CATEGORIA_CE_DETRAN == categoriaId
|
||||
|| Passageiro.CATEGORIA_MA_OFI_JUSTICA == categoriaId
|
||||
|| Passageiro.CATEGORIA_ERFP == categoriaId
|
||||
|| Passageiro.CATEGORIA_MA_SINFRA == categoriaId
|
||||
|| Passageiro.CATEGORIA_SINDICATO_PB == categoriaId
|
||||
|| Passageiro.CATEGORIA_SINDICATO_CE == categoriaId
|
||||
|| Passageiro.CATEGORIA_SINDICATO_PI == categoriaId
|
||||
|| Passageiro.CATEGORIA_PB_PORTADOR_DE_CA == categoriaId
|
||||
|| Passageiro.CATEGORIA_PB_ACOMP_PORT_CA == categoriaId
|
||||
|| Passageiro.CATEGORIA_PB_INTEG_PARAIBA == categoriaId
|
||||
|| Passageiro.CATEGORIA_CORTESIA_AFETIVIDADE == categoriaId
|
||||
|| Passageiro.CATEGORIA_CORTESIA_EMPRESA == categoriaId
|
||||
|| Passageiro.CATEGORIA_NORMAL == categoriaId );
|
||||
}
|
||||
|
||||
private boolean isCategoriaInfant(Integer categoriaId){
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean isCategoriaChild(Integer categoriaId){
|
||||
|
||||
return (Passageiro.CATEGORIA_CRIANCA_GRATUIDADE == categoriaId);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,94 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name = "pacote")
|
||||
@XmlType(propOrder = { "local", "cep", "endereco", "cidade", "numero", "bairro", "complemento", "referencia" })
|
||||
public class EnderecoApanheVO {
|
||||
|
||||
private Long vendapacoteId;
|
||||
private String local;
|
||||
private String cep;
|
||||
private String endereco;
|
||||
private String cidade;
|
||||
private String numero;
|
||||
private String bairro;
|
||||
private String complemento;
|
||||
private String referencia;
|
||||
|
||||
public String getLocal() {
|
||||
return local;
|
||||
}
|
||||
|
||||
public void setLocal(String local) {
|
||||
this.local = local;
|
||||
}
|
||||
|
||||
public String getCep() {
|
||||
return cep;
|
||||
}
|
||||
|
||||
public void setCep(String cep) {
|
||||
this.cep = cep;
|
||||
}
|
||||
|
||||
public String getEndereco() {
|
||||
return endereco;
|
||||
}
|
||||
|
||||
public void setEndereco(String endereco) {
|
||||
this.endereco = endereco;
|
||||
}
|
||||
|
||||
public String getCidade() {
|
||||
return cidade;
|
||||
}
|
||||
|
||||
public void setCidade(String cidade) {
|
||||
this.cidade = cidade;
|
||||
}
|
||||
|
||||
public String getNumero() {
|
||||
return numero;
|
||||
}
|
||||
|
||||
public void setNumero(String numero) {
|
||||
this.numero = numero;
|
||||
}
|
||||
|
||||
public String getBairro() {
|
||||
return bairro;
|
||||
}
|
||||
|
||||
public void setBairro(String bairro) {
|
||||
this.bairro = bairro;
|
||||
}
|
||||
|
||||
public String getComplemento() {
|
||||
return complemento;
|
||||
}
|
||||
|
||||
public void setComplemento(String complemento) {
|
||||
this.complemento = complemento;
|
||||
}
|
||||
|
||||
public String getReferencia() {
|
||||
return referencia;
|
||||
}
|
||||
|
||||
public void setReferencia(String referencia) {
|
||||
this.referencia = referencia;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Long getVendapacoteId() {
|
||||
return vendapacoteId;
|
||||
}
|
||||
|
||||
public void setVendapacoteId(Long vendapacoteId) {
|
||||
this.vendapacoteId = vendapacoteId;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name = "notacredito")
|
||||
@XmlType(propOrder = { "vouchernotacredito", "numoperacaopacotepagamento", "numoperacaopacotecancelamento" })
|
||||
public class NotaCreditoVendaPacoteVO {
|
||||
|
||||
private String numoperacaopacotecancelamento;
|
||||
private String numoperacaopacotepagamento;
|
||||
private Long vouchernotacredito;
|
||||
|
||||
public String getNumoperacaopacotecancelamento() {
|
||||
return numoperacaopacotecancelamento;
|
||||
}
|
||||
|
||||
public void setNumoperacaopacotecancelamento(String numoperacaopacotecancelamento) {
|
||||
this.numoperacaopacotecancelamento = numoperacaopacotecancelamento;
|
||||
}
|
||||
|
||||
public String getNumoperacaopacotepagamento() {
|
||||
return numoperacaopacotepagamento;
|
||||
}
|
||||
|
||||
public void setNumoperacaopacotepagamento(String numoperacaopacotepagamento) {
|
||||
this.numoperacaopacotepagamento = numoperacaopacotepagamento;
|
||||
}
|
||||
|
||||
public Long getVouchernotacredito() {
|
||||
return vouchernotacredito;
|
||||
}
|
||||
|
||||
public void setVouchernotacredito(Long vouchernotacredito) {
|
||||
this.vouchernotacredito = vouchernotacredito;
|
||||
}
|
||||
|
||||
}
|
|
@ -8,23 +8,44 @@ import java.util.List;
|
|||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name="pacote")
|
||||
@XmlType(propOrder={"datavenda", "numoperacao", "quantidade", "usuariovenda", "valortotal", "valordesconto", "status", "formaspagamento", "servico"})
|
||||
@XmlRootElement(name = "pacote")
|
||||
@XmlType(propOrder = { "numoperacao", "datavenda", "datapacote", "nompacote", "usuariovenda", "status", "pontoVenda", "empresa", "quantidade",
|
||||
"totalTarifa", "totalSeguro", "totalOutros", "totalPedagio", "totalTaxaEmbarque", "valorsubtotal", "valortotal", "valordesconto",
|
||||
"formaspagamento", "servico", "pax", "enderecoApanhe", "clientePacote" })
|
||||
public class PacoteVO {
|
||||
|
||||
private Long vendapacoteId;
|
||||
private Date datapacote;
|
||||
private Date datavenda;
|
||||
private String nompacote;
|
||||
private String numoperacao;
|
||||
private Integer quantidade = 0;
|
||||
private Integer usuariovenda;
|
||||
private BigDecimal valortotal = BigDecimal.ZERO;
|
||||
private BigDecimal valordesconto;
|
||||
private String status;
|
||||
private String pontoVenda;
|
||||
private String empresa;
|
||||
private Integer quantidade = 0;
|
||||
private BigDecimal totalTarifa = BigDecimal.ZERO;
|
||||
private BigDecimal totalSeguro = BigDecimal.ZERO;
|
||||
private BigDecimal totalOutros = BigDecimal.ZERO;
|
||||
private BigDecimal totalPedagio = BigDecimal.ZERO;
|
||||
private BigDecimal totalTaxaEmbarque = BigDecimal.ZERO;
|
||||
|
||||
private List<Pagamento> formaspagamento = new ArrayList<Pagamento>();
|
||||
private BigDecimal valorsubtotal = BigDecimal.ZERO;
|
||||
private BigDecimal valortotal = BigDecimal.ZERO;
|
||||
private BigDecimal valordesconto = BigDecimal.ZERO;
|
||||
|
||||
private Servico servico;
|
||||
private ClientePacoteVO clientePacote;
|
||||
private ServicoVO servico;
|
||||
private EnderecoApanheVO enderecoApanhe;
|
||||
|
||||
private List<PagamentoVO> formaspagamento = new ArrayList<PagamentoVO>();
|
||||
private List<PassageiroVO> pax = new ArrayList<PassageiroVO>();
|
||||
|
||||
/* Auxiliares */
|
||||
private Integer qtdePacoteFormaspago;
|
||||
|
||||
public Integer getQuantidade() {
|
||||
return quantidade;
|
||||
|
@ -83,23 +104,145 @@ public class PacoteVO {
|
|||
}
|
||||
|
||||
@XmlElementWrapper
|
||||
@XmlElement(name="pagamento", type=Pagamento.class)
|
||||
public List<Pagamento> getFormaspagamento() {
|
||||
@XmlElement(name = "pagamento", type = PagamentoVO.class)
|
||||
public List<PagamentoVO> getFormaspagamento() {
|
||||
return formaspagamento;
|
||||
}
|
||||
|
||||
public void setFormaspagamento(List<Pagamento> formaspagamento) {
|
||||
public void setFormaspagamento(List<PagamentoVO> formaspagamento) {
|
||||
this.formaspagamento = formaspagamento;
|
||||
}
|
||||
|
||||
public Servico getServico() {
|
||||
public ServicoVO getServico() {
|
||||
return servico;
|
||||
}
|
||||
|
||||
public void setServico(Servico servico) {
|
||||
public void setServico(ServicoVO servico) {
|
||||
this.servico = servico;
|
||||
}
|
||||
|
||||
@XmlElementWrapper
|
||||
@XmlElement(name = "passageiro", type = PassageiroVO.class)
|
||||
public List<PassageiroVO> getPax() {
|
||||
return pax;
|
||||
}
|
||||
|
||||
public void setPax(List<PassageiroVO> pax) {
|
||||
this.pax = pax;
|
||||
}
|
||||
|
||||
public Date getDatapacote() {
|
||||
return datapacote;
|
||||
}
|
||||
|
||||
public void setDatapacote(Date datapacote) {
|
||||
this.datapacote = datapacote;
|
||||
}
|
||||
|
||||
public String getPontoVenda() {
|
||||
return pontoVenda;
|
||||
}
|
||||
|
||||
public void setPontoVenda(String pontoVenda) {
|
||||
this.pontoVenda = pontoVenda;
|
||||
}
|
||||
|
||||
public String getEmpresa() {
|
||||
return empresa;
|
||||
}
|
||||
|
||||
public void setEmpresa(String empresa) {
|
||||
this.empresa = empresa;
|
||||
}
|
||||
|
||||
public BigDecimal getValorsubtotal() {
|
||||
return valorsubtotal;
|
||||
}
|
||||
|
||||
public void setValorsubtotal(BigDecimal valorsubtotal) {
|
||||
this.valorsubtotal = valorsubtotal;
|
||||
}
|
||||
|
||||
public BigDecimal getTotalTarifa() {
|
||||
return totalTarifa;
|
||||
}
|
||||
|
||||
public void setTotalTarifa(BigDecimal totalTarifa) {
|
||||
this.totalTarifa = totalTarifa;
|
||||
}
|
||||
|
||||
public BigDecimal getTotalSeguro() {
|
||||
return totalSeguro;
|
||||
}
|
||||
|
||||
public void setTotalSeguro(BigDecimal totalSeguro) {
|
||||
this.totalSeguro = totalSeguro;
|
||||
}
|
||||
|
||||
public BigDecimal getTotalOutros() {
|
||||
return totalOutros;
|
||||
}
|
||||
|
||||
public void setTotalOutros(BigDecimal totalOutros) {
|
||||
this.totalOutros = totalOutros;
|
||||
}
|
||||
|
||||
public ClientePacoteVO getClientePacote() {
|
||||
return clientePacote;
|
||||
}
|
||||
|
||||
public void setClientePacote(ClientePacoteVO clientePacote) {
|
||||
this.clientePacote = clientePacote;
|
||||
}
|
||||
|
||||
public BigDecimal getTotalTaxaEmbarque() {
|
||||
return totalTaxaEmbarque;
|
||||
}
|
||||
|
||||
public void setTotalTaxaEmbarque(BigDecimal totalTaxaEmbarque) {
|
||||
this.totalTaxaEmbarque = totalTaxaEmbarque;
|
||||
}
|
||||
|
||||
public BigDecimal getTotalPedagio() {
|
||||
return totalPedagio;
|
||||
}
|
||||
|
||||
public void setTotalPedagio(BigDecimal totalPedagio) {
|
||||
this.totalPedagio = totalPedagio;
|
||||
}
|
||||
|
||||
public String getNompacote() {
|
||||
return nompacote;
|
||||
}
|
||||
|
||||
public void setNompacote(String nompacote) {
|
||||
this.nompacote = nompacote;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Long getVendapacoteId() {
|
||||
return vendapacoteId;
|
||||
}
|
||||
|
||||
public void setVendapacoteId(Long vendapacoteId) {
|
||||
this.vendapacoteId = vendapacoteId;
|
||||
}
|
||||
|
||||
public EnderecoApanheVO getEnderecoApanhe() {
|
||||
return enderecoApanhe;
|
||||
}
|
||||
|
||||
public void setEnderecoApanhe(EnderecoApanheVO enderecoApanhe) {
|
||||
this.enderecoApanhe = enderecoApanhe;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Integer getQtdePacoteFormaspago() {
|
||||
return qtdePacoteFormaspago;
|
||||
}
|
||||
|
||||
public void setQtdePacoteFormaspago(Integer qtdePacoteFormaspago) {
|
||||
this.qtdePacoteFormaspago = qtdePacoteFormaspago;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name="pagamento")
|
||||
@XmlType(propOrder={"formapagamento", "moeda", "valor", "cartao"})
|
||||
public class Pagamento {
|
||||
|
||||
private String formapagamento;
|
||||
private String moeda;
|
||||
private BigDecimal valor;
|
||||
private PagamentoCartao cartao;
|
||||
|
||||
public String getMoeda() {
|
||||
return moeda;
|
||||
}
|
||||
public void setMoeda(String moeda) {
|
||||
this.moeda = moeda;
|
||||
}
|
||||
public String getFormapagamento() {
|
||||
return formapagamento;
|
||||
}
|
||||
public void setFormapagamento(String formapagamento) {
|
||||
this.formapagamento = formapagamento;
|
||||
}
|
||||
public PagamentoCartao getCartao() {
|
||||
return cartao;
|
||||
}
|
||||
public void setCartao(PagamentoCartao cartao) {
|
||||
this.cartao = cartao;
|
||||
}
|
||||
public BigDecimal getValor() {
|
||||
return valor;
|
||||
}
|
||||
public void setValor(BigDecimal valor) {
|
||||
this.valor = valor;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,49 +0,0 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement(name="cartao")
|
||||
public class PagamentoCartao {
|
||||
|
||||
public static final String DINHEIRO="DI";
|
||||
public static final String DOLAR="DO";
|
||||
|
||||
public static final String CREDITO="CR";
|
||||
public static final String DEBITO="DE";
|
||||
public static final String VISA_CREDITO="CM";
|
||||
public static final String VISA_ELECTRON="DM";
|
||||
public static final String MASTER_CREDITO="RC";
|
||||
public static final String MAESTRO="RD";
|
||||
|
||||
public static final String CORTESIA="CO";
|
||||
public static final String TROCA_DE_PASSGEM="TP";
|
||||
public static final String ORDEM_DE_SERVIC="OS";
|
||||
public static final String PASSAGENS_SRVP="PS";
|
||||
public static final String CORTESIA_SINTETI="CS";
|
||||
public static final String REIMPRESSAO_DE_PASSAGEM="RP";
|
||||
public static final String IMPRESSAO_PASSAGEM="IM";
|
||||
public static final String IMPRESSAO_CALL_CENTER="CC";
|
||||
public static final String IMPRESSÃO_INTERNET="II";
|
||||
|
||||
public static final int TIPO_CREDITO = 1;
|
||||
public static final int TIPO_DEBITO = 2;
|
||||
|
||||
// <!-- 1-credito/2-debito -->
|
||||
private Integer tipo;
|
||||
private String bandeira;
|
||||
|
||||
public Integer getTipo() {
|
||||
return tipo;
|
||||
}
|
||||
public void setTipo(Integer tipo) {
|
||||
this.tipo = tipo;
|
||||
}
|
||||
public String getBandeira() {
|
||||
return bandeira;
|
||||
}
|
||||
public void setBandeira(String bandeira) {
|
||||
this.bandeira = bandeira;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement(name="cartao")
|
||||
public class PagamentoCartaoVO {
|
||||
|
||||
private String bandeira;
|
||||
private String numautorizacao;
|
||||
private Integer parcelas;
|
||||
|
||||
public String getBandeira() {
|
||||
return bandeira;
|
||||
}
|
||||
public void setBandeira(String bandeira) {
|
||||
this.bandeira = bandeira;
|
||||
}
|
||||
public String getNumautorizacao() {
|
||||
return numautorizacao;
|
||||
}
|
||||
public void setNumautorizacao(String numautorizacao) {
|
||||
this.numautorizacao = numautorizacao;
|
||||
}
|
||||
public Integer getParcelas() {
|
||||
return parcelas;
|
||||
}
|
||||
public void setParcelas(Integer parcelas) {
|
||||
this.parcelas = parcelas;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,88 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name = "pagamento")
|
||||
@XmlType(propOrder = { "formapagamento", "moeda", "valor", "notacredito", "cartao", "dadosBancario" })
|
||||
public class PagamentoVO {
|
||||
|
||||
private String formapagamento;
|
||||
private String moeda;
|
||||
private BigDecimal valor;
|
||||
private PagamentoCartaoVO cartao;
|
||||
private DadosBancarioVO dadosBancario;
|
||||
private Long vendapacoteId;
|
||||
private Integer formapagoId;
|
||||
private NotaCreditoVendaPacoteVO notacredito;
|
||||
|
||||
public String getMoeda() {
|
||||
return moeda;
|
||||
}
|
||||
|
||||
public void setMoeda(String moeda) {
|
||||
this.moeda = moeda;
|
||||
}
|
||||
|
||||
public String getFormapagamento() {
|
||||
return formapagamento;
|
||||
}
|
||||
|
||||
public void setFormapagamento(String formapagamento) {
|
||||
this.formapagamento = formapagamento;
|
||||
}
|
||||
|
||||
public PagamentoCartaoVO getCartao() {
|
||||
return cartao;
|
||||
}
|
||||
|
||||
public void setCartao(PagamentoCartaoVO cartao) {
|
||||
this.cartao = cartao;
|
||||
}
|
||||
|
||||
public BigDecimal getValor() {
|
||||
return valor;
|
||||
}
|
||||
|
||||
public void setValor(BigDecimal valor) {
|
||||
this.valor = valor;
|
||||
}
|
||||
|
||||
public DadosBancarioVO getDadosBancario() {
|
||||
return dadosBancario;
|
||||
}
|
||||
|
||||
public void setDadosBancario(DadosBancarioVO dadosBancario) {
|
||||
this.dadosBancario = dadosBancario;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Long getVendapacoteId() {
|
||||
return vendapacoteId;
|
||||
}
|
||||
|
||||
public void setVendapacoteId(Long vendapacoteId) {
|
||||
this.vendapacoteId = vendapacoteId;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Integer getFormapagoId() {
|
||||
return formapagoId;
|
||||
}
|
||||
|
||||
public void setFormapagoId(Integer formapagoId) {
|
||||
this.formapagoId = formapagoId;
|
||||
}
|
||||
|
||||
public NotaCreditoVendaPacoteVO getNotacredito() {
|
||||
return notacredito;
|
||||
}
|
||||
|
||||
public void setNotacredito(NotaCreditoVendaPacoteVO notacredito) {
|
||||
this.notacredito = notacredito;
|
||||
}
|
||||
|
||||
}
|
|
@ -2,9 +2,11 @@ package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
|||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement(name="passageiro")
|
||||
public class Passageiro {
|
||||
@XmlType(propOrder = { "nome", "documento", "categoria", "asento", "boletoId" })
|
||||
public class PassageiroVO {
|
||||
|
||||
public static final String CATEGORIA_ADULT = "ADT";
|
||||
public static final String CATEGORIA_CHILD = "CHD";
|
||||
|
@ -65,12 +67,12 @@ public class Passageiro {
|
|||
public static final int CATEGORIA_DEFICIENTE_MA=33;
|
||||
public static final int CATEGORIA_DEFICIENTE_PI=36;
|
||||
|
||||
|
||||
private Long vendapacoteId;
|
||||
private Long tarifavendapacoteId;
|
||||
private Long boletoId;
|
||||
private String numboleto;
|
||||
private String asento;
|
||||
private String nome;
|
||||
private String documento;
|
||||
// ADT|CHD|INF|SEN
|
||||
private String categoria;
|
||||
|
||||
public String getNome() {
|
||||
|
@ -97,17 +99,29 @@ public class Passageiro {
|
|||
public void setBoletoId(Long boletoId) {
|
||||
this.boletoId = boletoId;
|
||||
}
|
||||
public String getNumboleto() {
|
||||
return numboleto;
|
||||
}
|
||||
public void setNumboleto(String numboleto) {
|
||||
this.numboleto = numboleto;
|
||||
|
||||
@XmlTransient
|
||||
public Long getVendapacoteId() {
|
||||
return vendapacoteId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
Passageiro param = (Passageiro)obj;
|
||||
return this.boletoId.equals(param.getBoletoId());
|
||||
public void setVendapacoteId(Long vendapacoteId) {
|
||||
this.vendapacoteId = vendapacoteId;
|
||||
}
|
||||
|
||||
public String getAsento() {
|
||||
return asento;
|
||||
}
|
||||
public void setAsento(String asento) {
|
||||
this.asento = asento;
|
||||
}
|
||||
|
||||
@XmlTransient
|
||||
public Long getTarifavendapacoteId() {
|
||||
return tarifavendapacoteId;
|
||||
}
|
||||
public void setTarifavendapacoteId(Long tarifavendapacoteId) {
|
||||
this.tarifavendapacoteId = tarifavendapacoteId;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,24 +1,22 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
import javax.xml.bind.annotation.XmlType;
|
||||
|
||||
@XmlRootElement
|
||||
public class Servico {
|
||||
@XmlType(propOrder = {"localorigem", "origem", "destino", "dataviagem", "horario", "horarioapanhe"})
|
||||
public class ServicoVO {
|
||||
|
||||
private Long vendapacoteId;
|
||||
private Integer localorigem;
|
||||
private Date dataviagem;
|
||||
private Date horario;
|
||||
private Date horarioapanhe;
|
||||
private Boolean faturado;
|
||||
private String observacoes;
|
||||
|
||||
private List<Passageiro> pax = new ArrayList<Passageiro>();
|
||||
private String destino;
|
||||
private String origem;
|
||||
|
||||
public Integer getLocalorigem() {
|
||||
return localorigem;
|
||||
|
@ -52,31 +50,29 @@ public class Servico {
|
|||
this.horarioapanhe = horarioapanhe;
|
||||
}
|
||||
|
||||
public Boolean getFaturado() {
|
||||
return faturado;
|
||||
public String getDestino() {
|
||||
return destino;
|
||||
}
|
||||
|
||||
public void setFaturado(Boolean faturado) {
|
||||
this.faturado = faturado;
|
||||
public void setDestino(String destino) {
|
||||
this.destino = destino;
|
||||
}
|
||||
|
||||
public String getObservacoes() {
|
||||
return observacoes;
|
||||
public String getOrigem() {
|
||||
return origem;
|
||||
}
|
||||
|
||||
public void setObservacoes(String observacoes) {
|
||||
this.observacoes = observacoes;
|
||||
public void setOrigem(String origem) {
|
||||
this.origem = origem;
|
||||
}
|
||||
|
||||
@XmlElementWrapper
|
||||
@XmlElement(name="passageiro", type=Passageiro.class)
|
||||
public List<Passageiro> getPax() {
|
||||
return pax;
|
||||
@XmlTransient
|
||||
public Long getVendapacoteId() {
|
||||
return vendapacoteId;
|
||||
}
|
||||
|
||||
public void setPax(List<Passageiro> pax) {
|
||||
this.pax = pax;
|
||||
public void setVendapacoteId(Long vendapacoteId) {
|
||||
this.vendapacoteId = vendapacoteId;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.resulttransformer;
|
||||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
|
@ -1,4 +1,4 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.resulttransformer;
|
||||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
|
@ -1,4 +1,4 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.resulttransformer;
|
||||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
|
@ -1,4 +1,4 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.resulttransformer;
|
||||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
|
@ -1,4 +1,4 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.resulttransformer;
|
||||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
|
@ -1,4 +1,4 @@
|
|||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.resulttransformer;
|
||||
package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
Loading…
Reference in New Issue