0004840: WS caja
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@33375 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
ccf92df389
commit
b808a1d116
|
@ -3,8 +3,11 @@ package com.rjconsultores.ventaboletos.dao;
|
|||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import com.rjconsultores.ventaboletos.vo.caja.CajaCerradoVO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.CajaVO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.UsuarioVO;
|
||||
|
||||
public interface CajaDAO {
|
||||
public List<CajaVO> buscarCajaFecha(boolean yaCerrado, Date fechaDesde, Date fechaHasta);
|
||||
public List<UsuarioVO> buscarCajaCerrado(Date fecha);
|
||||
}
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
package com.rjconsultores.ventaboletos.dao.hibernate;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.Hibernate;
|
||||
import org.hibernate.SQLQuery;
|
||||
import org.hibernate.SessionFactory;
|
||||
import org.hibernate.transform.AliasToBeanResultTransformer;
|
||||
|
@ -19,7 +17,10 @@ import org.springframework.stereotype.Repository;
|
|||
|
||||
import com.rjconsultores.ventaboletos.dao.CajaDAO;
|
||||
import com.rjconsultores.ventaboletos.dao.sqlbuilder.SQLBuilder;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.CajaCerradoVO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.CajaVO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.ReceitaDespesaVO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.UsuarioVO;
|
||||
|
||||
@Repository("cajaDAO")
|
||||
public class CajaHibernateDAO extends GenericHibernateDAO<Object, Long> implements CajaDAO {
|
||||
|
@ -32,6 +33,7 @@ public class CajaHibernateDAO extends GenericHibernateDAO<Object, Long> implemen
|
|||
setSessionFactory(factory);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<CajaVO> buscarCajaFecha(boolean yaCerrado, Date fechaDesde, Date fechaHasta) {
|
||||
String sqlBuscarCajaFecha = sqlBuilder.getSQLBuscarCajaFecha(yaCerrado, fechaDesde, fechaHasta);
|
||||
|
@ -75,4 +77,54 @@ public class CajaHibernateDAO extends GenericHibernateDAO<Object, Long> implemen
|
|||
return sql.list();
|
||||
}
|
||||
|
||||
public List<UsuarioVO> buscarCajaCerrado(Date fecha){
|
||||
try{
|
||||
String sqlBuscarUsuariosCajaCerrado = sqlBuilder.getSQLBuscarUsuariosCajaCerrado(fecha);
|
||||
SQLQuery sql = getSession().createSQLQuery(sqlBuscarUsuariosCajaCerrado)
|
||||
.addScalar("usuarioId", IntegerType.INSTANCE)
|
||||
.addScalar("nombusuario", StringType.INSTANCE);
|
||||
sql.setResultTransformer(new AliasToBeanResultTransformer(UsuarioVO.class));
|
||||
List<UsuarioVO> usuarios = sql.list();
|
||||
|
||||
for (UsuarioVO u : usuarios){
|
||||
String sqlBuscarCajaFecha = sqlBuilder.getSQLBuscarCajaCerrado(u.getUsuarioId(), fecha);
|
||||
sql = getSession().createSQLQuery(sqlBuscarCajaFecha)
|
||||
.addScalar("cajaId", LongType.INSTANCE)
|
||||
.addScalar("numFolioSistema", StringType.INSTANCE)
|
||||
.addScalar("origen", StringType.INSTANCE)
|
||||
.addScalar("destino", StringType.INSTANCE)
|
||||
.addScalar("corridaId", IntegerType.INSTANCE)
|
||||
.addScalar("precioBase", BigDecimalType.INSTANCE)
|
||||
.addScalar("precioPagado", BigDecimalType.INSTANCE)
|
||||
.addScalar("fecHorVenta", DateType.INSTANCE)
|
||||
.addScalar("puntoVentaId", IntegerType.INSTANCE)
|
||||
.addScalar("importeTaxaEmbarque", BigDecimalType.INSTANCE)
|
||||
.addScalar("ruta", StringType.INSTANCE)
|
||||
.addScalar("numAutorizacion", StringType.INSTANCE)
|
||||
.addScalar("ordenSevicio", StringType.INSTANCE)
|
||||
.addScalar("fecCorte", DateType.INSTANCE)
|
||||
.addScalar("turnoId", IntegerType.INSTANCE)
|
||||
.addScalar("importeTotal", BigDecimalType.INSTANCE)
|
||||
.addScalar("secretaria", StringType.INSTANCE)
|
||||
.addScalar("emissorTarjeta", StringType.INSTANCE)
|
||||
.addScalar("tipoPasaje", StringType.INSTANCE);
|
||||
|
||||
|
||||
sql.setResultTransformer(new AliasToBeanResultTransformer(CajaCerradoVO.class));
|
||||
|
||||
u.setPasajes((List<CajaCerradoVO>)sql.list());
|
||||
|
||||
String sqlBuscarReceitaDespesa = sqlBuilder.getSQLBuscarReceitasDespesasCaja(u.getUsuarioId(), fecha);
|
||||
sql = getSession().createSQLQuery(sqlBuscarReceitaDespesa)
|
||||
.addScalar("precio", BigDecimalType.INSTANCE)
|
||||
.addScalar("tipoEvento", StringType.INSTANCE);
|
||||
sql.setResultTransformer(new AliasToBeanResultTransformer(ReceitaDespesaVO.class));
|
||||
u.setDiversos((List<ReceitaDespesaVO>)sql.list());
|
||||
}
|
||||
return usuarios;
|
||||
} catch (Exception e){
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -44,4 +44,10 @@ public interface SQLBuilder {
|
|||
|
||||
public String getSQLBuscarCajaFecha(boolean yaCerrado, Date fechaDesde, Date fechaHasta);
|
||||
|
||||
public String getSQLBuscarUsuariosCajaCerrado(Date fecha);
|
||||
|
||||
public String getSQLBuscarCajaCerrado(Integer usuarioId, Date fecha);
|
||||
|
||||
public String getSQLBuscarReceitasDespesasCaja(Integer usuarioId, Date fec);
|
||||
|
||||
}
|
||||
|
|
|
@ -604,4 +604,92 @@ public class SQLBuilderOracle implements SQLBuilder {
|
|||
return sb.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSQLBuscarUsuariosCajaCerrado(Date fecha){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
StringBuilder sb = new StringBuilder("");
|
||||
sb.append(" select ");
|
||||
sb.append(" ");
|
||||
sb.append(" u.usuario_id as \"usuarioId\", ");
|
||||
sb.append(" u.nombusuario as \"nombusuario\" ");
|
||||
sb.append(" ");
|
||||
sb.append(" from ");
|
||||
sb.append(" caja c ");
|
||||
sb.append(" left join usuario u on c.usuario_id = u.usuario_id ");
|
||||
sb.append(" ");
|
||||
sb.append(" where ");
|
||||
sb.append(" trunc(c.feccorte) = to_date('").append(sdf.format(fecha)).append("','yyyy-MM-dd')");
|
||||
sb.append(" and c.turno_id is not null");
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSQLBuscarCajaCerrado(Integer usuarioId, Date fecha) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
StringBuilder sb = new StringBuilder("");
|
||||
sb.append(" select ");
|
||||
sb.append(" ");
|
||||
sb.append(" c.CAJA_ID as \"cajaId\", ");
|
||||
sb.append(" c.NUMFOLIOSISTEMA as \"numFolioSistema\", ");
|
||||
sb.append(" ori.descparada as \"origen\", ");
|
||||
sb.append(" des.descparada as \"destino\", ");
|
||||
sb.append(" c.CORRIDA_ID as \"corridaId\", ");
|
||||
sb.append(" c.PRECIOBASE as \"precioBase\", ");
|
||||
sb.append(" c.PRECIOPAGADO as \"precioPagado\", ");
|
||||
sb.append(" c.FECHORVENTA as \"fecHorVenta\", ");
|
||||
sb.append(" c.PUNTOVENTA_ID as \"puntoVentaId\", ");
|
||||
sb.append(" c.IMPORTETAXAEMBARQUE as \"importeTaxaEmbarque\", ");
|
||||
sb.append(" ru.descruta as \"ruta\", ");
|
||||
sb.append(" ct.numautorizacion as \"numAutorizacion\", ");
|
||||
sb.append(" (case when cfp.formapago_id = 11 then cdp.numdocumento else null end) as \"ordenSevicio\", ");
|
||||
sb.append(" c.FECCORTE as \"fecCorte\", ");
|
||||
sb.append(" c.TURNO_ID as \"turnoId\", ");
|
||||
sb.append(" (select sum(importe) from conta_corrente_ptovta ccpv where ccpv.puntoventa_id = c.puntoventa_id and ccpv.usuario_id = c.usuario_id and ccpv.feccorte = c.feccorte and ccpv.turno_id = c.turno_id) as \"importeTotal\", ");
|
||||
sb.append(" s.descsecretaria as \"secretaria\", ");
|
||||
sb.append(" ct.TIPOTARJETA as \"emissorTarjeta\", ");
|
||||
sb.append(" cat.DESCCATEGORIA as \"tipoPasaje\" ");
|
||||
sb.append(" ");
|
||||
sb.append(" from ");
|
||||
sb.append(" caja c ");
|
||||
sb.append(" left join corrida co on co.corrida_id = c.corrida_id and co.feccorrida = c.feccorrida ");
|
||||
sb.append(" left join caja_formapago cfp on cfp.caja_id = c.caja_id ");
|
||||
sb.append(" left join caja_det_pago cdp on cdp.cajaformapago_id = cfp.cajaformapago_id ");
|
||||
sb.append(" left join caja_tarjeta ct on ct.cajadetpago_id = cdp.cajadetpago_id ");
|
||||
sb.append(" left join categoria cat on cat.categoria_id = c.categoria_id ");
|
||||
sb.append(" left join secretaria s on s.secretaria_id = cdp.opcional1 ");
|
||||
sb.append(" left join ruta ru on ru.ruta_id = co.ruta_id ");
|
||||
sb.append(" left join parada ori on ori.parada_id = c.origen_id ");
|
||||
sb.append(" left join parada des on des.parada_id = c.destino_id ");
|
||||
sb.append(" ");
|
||||
sb.append(" where ");
|
||||
sb.append(" trunc(c.feccorte) = to_date('").append(sdf.format(fecha)).append("','yyyy-MM-dd')");
|
||||
sb.append(" and c.usuario_id = ").append(usuarioId);
|
||||
sb.append(" and c.turno_id is not null");
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSQLBuscarReceitasDespesasCaja(Integer usuarioId, Date fec) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
StringBuilder sb = new StringBuilder("");
|
||||
sb.append(" select ");
|
||||
sb.append(" ");
|
||||
sb.append(" c.precio as \"precio\", ");
|
||||
sb.append(" t.desctipoevento as \"tipoEvento\" ");
|
||||
sb.append(" ");
|
||||
sb.append(" from ");
|
||||
sb.append(" caja_diversos c ");
|
||||
sb.append(" left join evento_extra e on c.eventoextra_id = e.eventoextra_id ");
|
||||
sb.append(" left join tipo_evento_extra t on t.tipoeventoextra_id = e.tipoeventoextra_id ");
|
||||
sb.append(" ");
|
||||
sb.append(" where ");
|
||||
sb.append(" c.feccorte = to_date('").append(sdf.format(fec)).append("','yyyy-MM-dd')");
|
||||
sb.append(" and c.turno_id is not null");
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,170 @@
|
|||
package com.rjconsultores.ventaboletos.vo.caja;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement
|
||||
public class CajaCerradoVO {
|
||||
|
||||
private Long cajaId;
|
||||
private String numFolioSistema;
|
||||
private String origen;
|
||||
private String destino;
|
||||
private Integer corridaId;
|
||||
private BigDecimal precioBase;
|
||||
private BigDecimal precioPagado;
|
||||
private Date fecHorVenta;
|
||||
private Integer puntoVentaId;
|
||||
private BigDecimal importeTaxaEmbarque;
|
||||
private String ruta;
|
||||
private String numAutorizacion;
|
||||
private String ordenSevicio;
|
||||
private Date fecCorte;
|
||||
private Integer turnoId;
|
||||
private BigDecimal importeTotal;
|
||||
private String secretaria;
|
||||
private String emissorTarjeta;
|
||||
private String tipoPasaje;
|
||||
|
||||
public CajaCerradoVO() {
|
||||
this.cajaId = new Long(-1);
|
||||
this.numFolioSistema = "";
|
||||
this.origen = "";
|
||||
this.destino = "";
|
||||
this.corridaId = new Integer(-1);
|
||||
this.precioBase = new BigDecimal(0);
|
||||
this.precioPagado = new BigDecimal(0);
|
||||
this.fecHorVenta = new Date();
|
||||
this.puntoVentaId = new Integer(-1);
|
||||
this.importeTaxaEmbarque = new BigDecimal(0);
|
||||
this.ruta = "";
|
||||
this.numAutorizacion = "";
|
||||
this.ordenSevicio = "";
|
||||
this.fecCorte = new Date();;
|
||||
this.turnoId = new Integer(-1);
|
||||
this.importeTotal = new BigDecimal(0);
|
||||
this.secretaria = "";
|
||||
this.emissorTarjeta = "";
|
||||
this.tipoPasaje = "";
|
||||
}
|
||||
|
||||
|
||||
public Long getCajaId() {
|
||||
return cajaId;
|
||||
}
|
||||
public void setCajaId(Long cajaId) {
|
||||
this.cajaId = cajaId;
|
||||
}
|
||||
public String getNumFolioSistema() {
|
||||
return numFolioSistema;
|
||||
}
|
||||
public void setNumFolioSistema(String numFolioSistema) {
|
||||
this.numFolioSistema = numFolioSistema;
|
||||
}
|
||||
public String getOrigen() {
|
||||
return origen;
|
||||
}
|
||||
public void setOrigen(String origen) {
|
||||
this.origen = origen;
|
||||
}
|
||||
public String getDestino() {
|
||||
return destino;
|
||||
}
|
||||
public void setDestino(String destino) {
|
||||
this.destino = destino;
|
||||
}
|
||||
public Integer getCorridaId() {
|
||||
return corridaId;
|
||||
}
|
||||
public void setCorridaId(Integer corridaId) {
|
||||
this.corridaId = corridaId;
|
||||
}
|
||||
public BigDecimal getPrecioBase() {
|
||||
return precioBase;
|
||||
}
|
||||
public void setPrecioBase(BigDecimal precioBase) {
|
||||
this.precioBase = precioBase;
|
||||
}
|
||||
public BigDecimal getPrecioPagado() {
|
||||
return precioPagado;
|
||||
}
|
||||
public void setPrecioPagado(BigDecimal precioPagado) {
|
||||
this.precioPagado = precioPagado;
|
||||
}
|
||||
public Date getFecHorVenta() {
|
||||
return fecHorVenta;
|
||||
}
|
||||
public void setFecHorVenta(Date fecHorVenta) {
|
||||
this.fecHorVenta = fecHorVenta;
|
||||
}
|
||||
public Integer getPuntoVentaId() {
|
||||
return puntoVentaId;
|
||||
}
|
||||
public void setPuntoVentaId(Integer puntoVentaId) {
|
||||
this.puntoVentaId = puntoVentaId;
|
||||
}
|
||||
public BigDecimal getImporteTaxaEmbarque() {
|
||||
return importeTaxaEmbarque;
|
||||
}
|
||||
public void setImporteTaxaEmbarque(BigDecimal importeTaxaEmbarque) {
|
||||
this.importeTaxaEmbarque = importeTaxaEmbarque;
|
||||
}
|
||||
public String getRuta() {
|
||||
return ruta;
|
||||
}
|
||||
public void setRuta(String ruta) {
|
||||
this.ruta = ruta;
|
||||
}
|
||||
public String getNumAutorizacion() {
|
||||
return numAutorizacion;
|
||||
}
|
||||
public void setNumAutorizacion(String numAutorizacion) {
|
||||
this.numAutorizacion = numAutorizacion;
|
||||
}
|
||||
public String getOrdenSevicio() {
|
||||
return ordenSevicio;
|
||||
}
|
||||
public void setOrdenSevicio(String ordenSevicio) {
|
||||
this.ordenSevicio = ordenSevicio;
|
||||
}
|
||||
public Date getFecCorte() {
|
||||
return fecCorte;
|
||||
}
|
||||
public void setFecCorte(Date fecCorte) {
|
||||
this.fecCorte = fecCorte;
|
||||
}
|
||||
public Integer getTurnoId() {
|
||||
return turnoId;
|
||||
}
|
||||
public void setTurnoId(Integer turnoId) {
|
||||
this.turnoId = turnoId;
|
||||
}
|
||||
public BigDecimal getImporteTotal() {
|
||||
return importeTotal;
|
||||
}
|
||||
public void setImporteTotal(BigDecimal importeTotal) {
|
||||
this.importeTotal = importeTotal;
|
||||
}
|
||||
public String getCodigoSecretaria() {
|
||||
return secretaria;
|
||||
}
|
||||
public void setCodigoSecretaria(String secretaria) {
|
||||
this.secretaria = secretaria;
|
||||
}
|
||||
public String getEmissorTarjeta() {
|
||||
return emissorTarjeta;
|
||||
}
|
||||
public void setEmissorTarjeta(String emissorTarjeta) {
|
||||
this.emissorTarjeta = emissorTarjeta;
|
||||
}
|
||||
public String getTipoPasaje() {
|
||||
return tipoPasaje;
|
||||
}
|
||||
public void setTipoPasaje(String tipoPasaje) {
|
||||
this.tipoPasaje = tipoPasaje;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
package com.rjconsultores.ventaboletos.vo.caja;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
|
||||
public class ReceitaDespesaVO {
|
||||
private BigDecimal precio;
|
||||
private String tipoEvento;
|
||||
|
||||
public BigDecimal getPrecio() {
|
||||
return precio;
|
||||
}
|
||||
public void setPrecio(BigDecimal precio) {
|
||||
this.precio = precio;
|
||||
}
|
||||
public String getTipoEvento() {
|
||||
return tipoEvento;
|
||||
}
|
||||
public void setTipoEvento(String tipoEvento) {
|
||||
this.tipoEvento = tipoEvento;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
package com.rjconsultores.ventaboletos.vo.caja;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
@XmlRootElement
|
||||
public class UsuarioVO {
|
||||
private Integer usuarioId;
|
||||
private String nombusuario;
|
||||
private List<CajaCerradoVO> pasajes;
|
||||
private List<ReceitaDespesaVO> diversos;
|
||||
|
||||
public List<CajaCerradoVO> getPasajes() {
|
||||
return pasajes;
|
||||
}
|
||||
public void setPasajes(List<CajaCerradoVO> pasajes) {
|
||||
this.pasajes = pasajes;
|
||||
}
|
||||
public List<ReceitaDespesaVO> getDiversos() {
|
||||
return diversos;
|
||||
}
|
||||
public void setDiversos(List<ReceitaDespesaVO> diversos) {
|
||||
this.diversos = diversos;
|
||||
}
|
||||
public String getNombusuario() {
|
||||
return nombusuario;
|
||||
}
|
||||
public void setNombusuario(String nombusuario) {
|
||||
this.nombusuario = nombusuario;
|
||||
}
|
||||
public Integer getUsuarioId() {
|
||||
return usuarioId;
|
||||
}
|
||||
public void setUsuarioId(Integer usuarioId) {
|
||||
this.usuarioId = usuarioId;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
package com.rjconsultores.ventaboletos.ws.rs;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.QueryParam;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import com.rjconsultores.ventaboletos.dao.CajaDAO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.CajaCerradoVO;
|
||||
import com.rjconsultores.ventaboletos.vo.caja.UsuarioVO;
|
||||
import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext;
|
||||
|
||||
@Path("/cajasCerrados")
|
||||
public class CajaCerrado {
|
||||
@GET
|
||||
@Produces({ MediaType.APPLICATION_XML })
|
||||
public List<UsuarioVO> buscarCajaCerrado(@QueryParam("fecha") String fecha) {
|
||||
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
|
||||
|
||||
Date fec = new Date(); Date fecHastaD = new Date();
|
||||
|
||||
try {
|
||||
fec = StringUtils.isBlank(fecha) ? new Date() : sdf.parse(fecha);
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
|
||||
CajaDAO cajaDAO = (CajaDAO) AppContext.getApplicationContext().getBean("cajaDAO");
|
||||
List<UsuarioVO> list = cajaDAO.buscarCajaCerrado(fec);
|
||||
|
||||
return list;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue