Estoque por Agência

1 – AIDF
 - Incluir nos campos espécie e tipo a opção de Excesso de Bagagem ok
1.1 - No campo de insc. Estadual, ao selecionar a empresa, apresentar  lista de inscrição estadual. Será necessário para a pesquisa, Incluir no cadastro da empresa um campo para cadastro de inscrição estadual. Obs. Uma UF pode ter mais de uma inscrição estadual

3 – Movimento de Estoque – Agência
 3.1 - No campo Origem apresentar as opções contendo Número e descrição da estação (Hoje esta buscando somente a descrição); ok
 - Limpar combo, pois esta trazendo informações de agências que já foram pesquisadas
 3.2 - No campo Série, apresentar as séries já cadastradas na estação selecionada no campo origem



git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@34250 d1611594-4594-4d17-8e1d-87c2c4800839
master
vinicius 2014-03-20 18:37:44 +00:00
parent ecda0554ff
commit 35f2710625
13 changed files with 255 additions and 13 deletions

View File

@ -26,6 +26,7 @@ public interface AbastoCentralDAO extends GenericDAO<AbastoCentral, Long> {
public void gravaControleEstoqueMigracao(PuntoVenta puntoVenta, Date fecmodif, Integer usuarioId);
public List<String> buscarSeriesBilhetesPorEstacion(Estacion estacion);
}

View File

@ -7,6 +7,7 @@ package com.rjconsultores.ventaboletos.dao;
import java.util.List;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
/**
@ -26,4 +27,8 @@ public interface EmpresaDAO extends GenericDAO<Empresa, Integer> {
public List<Empresa> obtenerIndTipo2();
public List<Empresa> buscarNotInPuntoVtaComissao(PuntoVenta puntoVenta);
public List<InscricaoEstadual> buscaInscricoesEstaduais(Empresa empresa);
public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual);
}

View File

@ -8,6 +8,8 @@ import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Property;
import org.hibernate.criterion.Restrictions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
@ -191,4 +193,17 @@ public class AbastoCentralHibernateDAO extends GenericHibernateDAO<AbastoCentral
session.flush();
session.clear();
}
@Override
public List<String> buscarSeriesBilhetesPorEstacion(Estacion estacion) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.setProjection(Projections.distinct(Property.forName("numseriepreimpresa")));
c.add(Restrictions.eq("activo", Boolean.TRUE));
c.add(Restrictions.eq("estacion", estacion));
c.addOrder(Order.asc("numseriepreimpresa"));
return (List<String>)c.list();
}
}

View File

@ -9,6 +9,7 @@ import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
@ -18,6 +19,7 @@ import org.springframework.stereotype.Repository;
import com.rjconsultores.ventaboletos.dao.EmpresaDAO;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
/**
@ -126,4 +128,22 @@ public class EmpresaHibernateDAO extends GenericHibernateDAO<Empresa, Integer>
return lsEmpresa;
}
@Override
public List<InscricaoEstadual> buscaInscricoesEstaduais(Empresa empresa) {
Criteria c = getSession().createCriteria(InscricaoEstadual.class);
c.add(Restrictions.eq("empresa", empresa));
c.add(Restrictions.eq("activo", Boolean.TRUE));
return c.list();
}
@Override
public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual) {
Session session = getSessionFactory().getCurrentSession();
session.saveOrUpdate(inscricaoEstadual);
session.flush();
}
}

View File

@ -79,6 +79,7 @@ public class EstacionHibernateDAO extends GenericHibernateDAO<Estacion, Integer>
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("activo", Boolean.TRUE));
c.add(Restrictions.eq("puntoVenta", puntoVenta));
c.addOrder(Order.asc("numcaja"));
c.addOrder(Order.asc("descestacion"));
c.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

View File

@ -5,6 +5,7 @@
package com.rjconsultores.ventaboletos.entidad;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -23,6 +24,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.Predicate;
/**
*
* @author Rafius
@ -86,6 +90,9 @@ public class Empresa implements Serializable {
@OneToMany(mappedBy = "empresa")
private List<EmpresaImposto> empresaImpostoList;
@OneToMany(mappedBy = "empresa")
private List<InscricaoEstadual> inscricoesEstaduais;
public Empresa() {
}
@ -307,4 +314,29 @@ public class Empresa implements Serializable {
return this.getNombempresa();
}
public List<InscricaoEstadual> getInscricoesEstaduais() {
return inscricoesEstaduais;
}
public List<InscricaoEstadual> getInscricoesEstaduaisActivas() {
List<InscricaoEstadual> inscEstaduais = new ArrayList<InscricaoEstadual>();
inscEstaduais.addAll(getInscricoesEstaduais());
CollectionUtils.filter(inscEstaduais, new Predicate() {
@Override
public boolean evaluate(Object arg0) {
return ((InscricaoEstadual)arg0).getActivo();
}
});
return inscEstaduais;
}
public void setInscricoesEstaduais(List<InscricaoEstadual> inscricoesEstaduais) {
this.inscricoesEstaduais = inscricoesEstaduais;
}
}

View File

@ -296,6 +296,6 @@ public class Estacion implements Serializable {
@Override
public String toString() {
return descestacion;
return (numcaja != null) ? String.format("%d - %s", numcaja, descestacion) : descestacion;
}
}

View File

@ -0,0 +1,143 @@
package com.rjconsultores.ventaboletos.entidad;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@Entity
@Table(name = "INSCRICAO_ESTADUAL")
public class InscricaoEstadual {
// INSCRICAOESTADUAL_ID
private Long inscricaoestadualId;
// INSCRICAO_ESTADUAL
private String inscricaoEstadual;
private Empresa empresa;
private Estado estado;
private Boolean activo;
private Date fecmodif;
private Integer usuarioId;
public InscricaoEstadual() {
// TODO Auto-generated constructor stub
}
public InscricaoEstadual(String inscricaoEstadual, Empresa empresa, Estado estado, Integer usuarioId) {
super();
this.inscricaoEstadual = inscricaoEstadual;
this.empresa = empresa;
this.estado = estado;
this.fecmodif = new Date();
this.activo = true;
this.usuarioId = usuarioId;
}
@SequenceGenerator(name = "INSCRICAO_ESTADUAL_SEQ", sequenceName = "INSCRICAO_ESTADUAL_SEQ", allocationSize = 1)
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "INSCRICAO_ESTADUAL_SEQ")
@Column(name = "INSCRICAOESTADUAL_ID", unique = true, nullable = false, precision = 15, scale = 0)
public Long getInscricaoestadualId() {
return inscricaoestadualId;
}
public void setInscricaoestadualId(Long inscricaoestadualId) {
this.inscricaoestadualId = inscricaoestadualId;
}
@Column(name = "INSCRICAO_ESTADUAL", length = 20)
public String getInscricaoEstadual() {
return inscricaoEstadual;
}
public void setInscricaoEstadual(String inscricaoEstadual) {
this.inscricaoEstadual = inscricaoEstadual;
}
@JoinColumn(name = "EMPRESA_ID")
@ManyToOne
public Empresa getEmpresa() {
return empresa;
}
public void setEmpresa(Empresa empresa) {
this.empresa = empresa;
}
@JoinColumn(name = "ESTADO_ID")
@ManyToOne
public Estado getEstado() {
return estado;
}
public void setEstado(Estado estado) {
this.estado = estado;
}
@Column(name = "ACTIVO", precision = 1, scale = 0)
public Boolean getActivo() {
return activo;
}
public void setActivo(Boolean activo) {
this.activo = activo;
}
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "FECMODIF", length = 7)
public Date getFecmodif() {
return fecmodif;
}
public void setFecmodif(Date fecmodif) {
this.fecmodif = fecmodif;
}
@Column(name = "USUARIO_ID", precision = 7, scale = 0)
public Integer getUsuarioId() {
return usuarioId;
}
public void setUsuarioId(Integer usuarioId) {
this.usuarioId = usuarioId;
}
@Override
public boolean equals(Object object) {
if (!(object instanceof EmpresaImposto)) {
return false;
}
InscricaoEstadual other = (InscricaoEstadual) object;
if ((this.inscricaoestadualId == null && other.inscricaoestadualId != null) || (this.inscricaoestadualId != null && !this.inscricaoestadualId.equals(other.inscricaoestadualId))) {
return false;
}
return true;
}
@Override
public String toString() {
return String.format("%s-%s", estado.getCveestado(), inscricaoEstadual);
}
}

View File

@ -7,6 +7,7 @@ package com.rjconsultores.ventaboletos.service;
import java.util.List;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.exception.BusinessException;
@ -33,5 +34,8 @@ public interface EmpresaService {
public List<Empresa> obtenerIndTipo2();
public List<Empresa> buscarNotInPuntoVtaComissao(PuntoVenta puntoVenta);
public List<InscricaoEstadual> buscaInscricoesEstaduais(Empresa empresa);
public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual);
}

View File

@ -28,4 +28,6 @@ public interface MovimentacionBilhetesService {
public List<TipoMovimentacion> obtenerTiposMovimetacionPuntoVenta();
public void realizaMovimentacionBilhetes(PuntoVenta puntoVentaBilhetes, Estacion origem, Estacion destino, String numSerie, String formInicial, String formFinal, TipoMovimentacion tipoMovimentacion);
public List<String> buscarSeriesBilhetesPorEstacion(Estacion estacion);
}

View File

@ -68,17 +68,19 @@ public class DetAbastoBoletoServiceImpl implements DetAbastoBoletoService {
List<DetAbastoBoleto> detAbastoBoletos = detAbastoBoletoDAO.buscaDetAbastoBoletos(origem, numfolioinicial, numfoliofinal, numseriepreimpresa);
detAbastoBoletoDAO.desativaDetAbastos(detAbastoBoletos);
DetAbastoBoleto detAbastoBoletoInicial = detAbastoBoletos.get(0);
detAbastoBoletoInicial.setNumfoliofinal(numfolioinicial);
detAbastoBoletoInicial.setActivo(Boolean.TRUE);
detAbastoBoletoDAO.actualizacion(detAbastoBoletoInicial);
DetAbastoBoleto detAbastoBoletoFinal = detAbastoBoletos.get(detAbastoBoletos.size() - 1);
detAbastoBoletoFinal.setNumfolioinicial(numfoliofinal);
detAbastoBoletoFinal.setActivo(Boolean.TRUE);
detAbastoBoletoDAO.actualizacion(detAbastoBoletoFinal);
if(!detAbastoBoletos.isEmpty()){
detAbastoBoletoDAO.desativaDetAbastos(detAbastoBoletos);
DetAbastoBoleto detAbastoBoletoInicial = detAbastoBoletos.get(0);
detAbastoBoletoInicial.setNumfoliofinal(numfolioinicial);
detAbastoBoletoInicial.setActivo(Boolean.TRUE);
detAbastoBoletoDAO.actualizacion(detAbastoBoletoInicial);
DetAbastoBoleto detAbastoBoletoFinal = detAbastoBoletos.get(detAbastoBoletos.size() - 1);
detAbastoBoletoFinal.setNumfolioinicial(numfoliofinal);
detAbastoBoletoFinal.setActivo(Boolean.TRUE);
detAbastoBoletoDAO.actualizacion(detAbastoBoletoFinal);
}
}
}

View File

@ -13,6 +13,7 @@ import org.springframework.transaction.annotation.Transactional;
import com.rjconsultores.ventaboletos.dao.EmpresaDAO;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.exception.BusinessException;
import com.rjconsultores.ventaboletos.service.EmpresaService;
@ -98,4 +99,14 @@ public class EmpresaServiceImpl implements EmpresaService {
return empresaDAO.buscarNotInPuntoVtaComissao(puntoVenta);
}
@Override
public List<InscricaoEstadual> buscaInscricoesEstaduais(Empresa empresa) {
return empresaDAO.buscaInscricoesEstaduais(empresa);
}
@Override
public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual) {
empresaDAO.actualizaInscEstadual(inscricaoEstadual);
}
}

View File

@ -194,5 +194,11 @@ public class MovimentacionBilhetesServiceImpl implements MovimentacionBilhetesSe
abastoCentralDAO.actualizaBilhetes(bilhetes, destino);
abastoHistoDAO.grabaHistoricoBilhetes(bilhetes, tipoMovimentacion);
}
@Override
public List<String> buscarSeriesBilhetesPorEstacion(Estacion estacion) {
List<String> seriesEstacion = abastoCentralDAO.buscarSeriesBilhetesPorEstacion(estacion);
return seriesEstacion;
}
}