From d1ebdb38f4839a7181f442f62871b6ed519f8e93 Mon Sep 17 00:00:00 2001 From: emerson Date: Tue, 20 Nov 2018 13:55:12 +0000 Subject: [PATCH] fixes bug#0012560 dev: thiago qua: wallysson MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implementação efetuada. O script solicitado encontra-se anexo ao mantis. git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@87173 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../service/CategoriaService.java | 2 + .../ventaboletos/service/PricingService.java | 2 +- .../service/impl/CategoriaServiceImpl.java | 9 + .../service/impl/PricingServiceImpl.java | 482 ++++++++++-------- .../utilerias/ApplicationProperties.java | 2 +- 5 files changed, 282 insertions(+), 215 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/service/CategoriaService.java b/src/com/rjconsultores/ventaboletos/service/CategoriaService.java index 53b49ceea..f2e12ec34 100644 --- a/src/com/rjconsultores/ventaboletos/service/CategoriaService.java +++ b/src/com/rjconsultores/ventaboletos/service/CategoriaService.java @@ -16,6 +16,8 @@ public interface CategoriaService extends GenericService { public List buscar(String desccategoria); + public Categoria buscarUmaCategoria(String desccategoria); + public List buscarCategoriaPesquisada(String desccategoria); /** diff --git a/src/com/rjconsultores/ventaboletos/service/PricingService.java b/src/com/rjconsultores/ventaboletos/service/PricingService.java index 47e56bdf4..19b0be06e 100644 --- a/src/com/rjconsultores/ventaboletos/service/PricingService.java +++ b/src/com/rjconsultores/ventaboletos/service/PricingService.java @@ -28,5 +28,5 @@ public interface PricingService extends GenericService { public void ativar(Pricing entidad); - public Boolean clonarPricing(Integer pricingId, String nomePricing); + public Boolean clonarPricing(Integer pricingId, String nomePricing, boolean incluirPadraoPricingTipoPassagemPET); } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java index 3d66d3465..a5b158e03 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java @@ -88,4 +88,13 @@ public class CategoriaServiceImpl implements CategoriaService { } return listCategoriasVisibles; } + + @Override + public Categoria buscarUmaCategoria(String desccategoria) { + List categoriaList = buscar(desccategoria); + if (categoriaList.isEmpty()) { + return null; + } + return categoriaList.get(0); + } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/PricingServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/PricingServiceImpl.java index e8751a041..8b50bfe96 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/PricingServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/PricingServiceImpl.java @@ -14,6 +14,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.rjconsultores.ventaboletos.dao.PricingDAO; +import com.rjconsultores.ventaboletos.entidad.Categoria; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Pricing; import com.rjconsultores.ventaboletos.entidad.PricingAsiento; @@ -31,6 +32,7 @@ import com.rjconsultores.ventaboletos.entidad.PricingRuta; import com.rjconsultores.ventaboletos.entidad.PricingTipoPtoVta; import com.rjconsultores.ventaboletos.entidad.PricingTipoServicio; import com.rjconsultores.ventaboletos.entidad.PricingVigencia; +import com.rjconsultores.ventaboletos.service.CategoriaService; import com.rjconsultores.ventaboletos.service.PricingService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; @@ -43,6 +45,9 @@ public class PricingServiceImpl implements PricingService { @Autowired private PricingDAO pricingDAO; + + @Autowired + private CategoriaService categoriaService; public List obtenerTodos() { return pricingDAO.obtenerTodos(); @@ -70,7 +75,7 @@ public class PricingServiceImpl implements PricingService { return pricingDAO.actualizacion(entidad); } - private void ativarInativarExcluirPricing(Pricing entidad, Integer statusPricing, Integer ativarInativarExcluir) { + private void ativarInativarExcluirPricing(Pricing entidad, Integer ativarInativarExcluir) { entidad = obtenerID(entidad.getPricingId()); for (PricingAsiento pricingAsiento : entidad.getPricingAsientoList()) { @@ -172,17 +177,17 @@ public class PricingServiceImpl implements PricingService { @Transactional public void borrar(Pricing entidad) { - ativarInativarExcluirPricing(entidad, Pricing.ATIVO, Pricing.EXCLUIDO); + ativarInativarExcluirPricing(entidad, Pricing.EXCLUIDO); } @Transactional public void inativar(Pricing entidad) { - ativarInativarExcluirPricing(entidad, Pricing.ATIVO, Pricing.INATIVO); + ativarInativarExcluirPricing(entidad, Pricing.INATIVO); } @Transactional public void ativar(Pricing entidad) { - ativarInativarExcluirPricing(entidad, Pricing.INATIVO, Pricing.ATIVO); + ativarInativarExcluirPricing(entidad, Pricing.ATIVO); } @Transactional @@ -200,7 +205,7 @@ public class PricingServiceImpl implements PricingService { } @Transactional - public Boolean clonarPricing(Integer pricingId, String nomePricing) { + public Boolean clonarPricing(Integer pricingId, String nomePricing, boolean incluirPadraoPricingTipoPassagemPET) { Pricing pricing = this.obtenerID(pricingId); Pricing clonePricing = new Pricing(); @@ -217,100 +222,217 @@ public class PricingServiceImpl implements PricingService { clonePricing.setIndGeneraFeriadoViaje(pricing.getIndGeneraFeriadoViaje()); clonePricing.setIndtransferible(pricing.getIndtransferible()); - clonePricing.setPricingAsientoList(new ArrayList()); - clonePricing.setPricingCategoriaList(new ArrayList()); - clonePricing.setPricingClaseList(new ArrayList()); - clonePricing.setPricingCorridaList(new ArrayList()); - clonePricing.setPricingDiaList(new ArrayList()); - clonePricing.setPricingImporteList(new ArrayList()); - clonePricing.setPricingMarcaList(new ArrayList()); - clonePricing.setPricingMercadoList(new ArrayList()); - clonePricing.setPricingOcupaAntecipaList(new ArrayList()); - clonePricing.setPricingPuntoventaList(new ArrayList()); - clonePricing.setPricingRutaList(new ArrayList()); - clonePricing.setPricingTipoptovtaList(new ArrayList()); - clonePricing.setPricingTipoServicioList(new ArrayList()); - clonePricing.setPricingVigenciaList(new ArrayList()); - clonePricing = suscribir(clonePricing); - clonePricing = percorrerPricingAtivoParaClonar(pricing, clonePricing); + percorrerPricingAtivoParaClonar(pricing, clonePricing, incluirPadraoPricingTipoPassagemPET); actualizacion(clonePricing); inativar(clonePricing); - if (clonePricing.getPricingId() != null) { - return true; - } else { - return false; - } + return clonePricing.getPricingId() != null; } - private Pricing percorrerPricingAtivoParaClonar(Pricing pricing, Pricing clonePricing) { - + private void percorrerPricingAtivoParaClonar(Pricing pricing, Pricing clonePricing, boolean incluirPadraoPricingTipoPassagemPET) { Integer ativar = Pricing.ATIVO; + clonePricing.setPricingAsientoList(obtemPricingAsientoList(pricing, clonePricing, ativar)); + clonePricing.setPricingCategoriaList(obtemPricingCategoriaList(pricing, clonePricing, ativar, incluirPadraoPricingTipoPassagemPET)); + clonePricing.setPricingClaseList(obtemPricingClaseList(pricing, clonePricing, ativar)); + clonePricing.setPricingCorridaList(obtemPricingCorridaList(pricing, clonePricing, ativar)); + clonePricing.setPricingDiaList(obtemPricingDiaList(pricing, clonePricing, ativar)); + clonePricing.setPricingImporteList(obtemPricingImporteList(pricing, clonePricing, ativar)); + clonePricing.setPricingMarcaList(obtemPricingMarcaList(pricing, clonePricing, ativar)); + clonePricing.setPricingMercadoList(obtemPricingMercadoList(pricing, clonePricing, ativar)); + clonePricing.setPricingOcupaAntecipaList(obtemPricingOcupaAntecipaList(pricing, clonePricing, ativar)); + clonePricing.setPricingPuntoventaList(obtemPricingPuntoVentaList(pricing, clonePricing, ativar)); + clonePricing.setPricingRutaList(obtemPricingRutaList(pricing, clonePricing, ativar)); + clonePricing.setPricingTipoptovtaList(obtemPricingTipoPtoVtaList(pricing, clonePricing, ativar)); + clonePricing.setPricingVigenciaList(obtemPricingVigenciaList(pricing, clonePricing, ativar)); + clonePricing.setPricingTipoServicioList(obtemPricingTipoServicioList(pricing, clonePricing, ativar)); + clonePricing.setPricingFormapagoList(obtemPricingFormapagoList(pricing, clonePricing, ativar)); + } - List pricingAsientoList = new ArrayList(); - for (PricingAsiento pricingAsiento : pricing.getPricingAsientoList()) { + private List obtemPricingFormapagoList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingFormapagoList = new ArrayList(); + for (PricingFormapago pricingFormapago : pricing.getPricingFormapagoList()) { - PricingAsiento clonePricingAsiento = new PricingAsiento(); + PricingFormapago clonePricingFormapago = new PricingFormapago(); + clonePricingFormapago.setIndexcepcion(pricingFormapago.getIndexcepcion()); + clonePricingFormapago.setFormaPago(pricingFormapago.getFormaPago()); - clonePricingAsiento.setNombImagen(pricingAsiento.getNombImagen()); - clonePricingAsiento.setNumeasiento(pricingAsiento.getNumeasiento()); - clonePricingAsiento.setPorcentaje(pricingAsiento.getPorcentaje()); - - clonePricingAsiento.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingAsiento.setFecmodif(Calendar.getInstance().getTime()); - clonePricingAsiento.setActivo(ativar); - clonePricingAsiento.setPricing(clonePricing); - pricingAsientoList.add(clonePricingAsiento); + clonePricingFormapago.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingFormapago.setFecmodif(Calendar.getInstance().getTime()); + clonePricingFormapago.setActivo(ativar); + clonePricingFormapago.setPricing(clonePricing); + pricingFormapagoList.add(clonePricingFormapago); } - clonePricing.setPricingAsientoList(pricingAsientoList); + return pricingFormapagoList; + } - List pricingCategoriaList = new ArrayList(); - for (PricingCategoria pricingCategoria : pricing.getPricingCategoriaList()) { + private List obtemPricingTipoServicioList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingTipoServicioList = new ArrayList(); + for (PricingTipoServicio pricingTipoServicio : pricing.getPricingTipoServicioList()) { - PricingCategoria clonePricingCategoria = new PricingCategoria(); + PricingTipoServicio clonePricingTipoServicio = new PricingTipoServicio(); + clonePricingTipoServicio.setTipoServicio(pricingTipoServicio.getTipoServicio()); - clonePricingCategoria.setCategoria(pricingCategoria.getCategoria()); - - clonePricingCategoria.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingCategoria.setFecmodif(Calendar.getInstance().getTime()); - clonePricingCategoria.setActivo(ativar); - clonePricingCategoria.setPricing(clonePricing); - pricingCategoriaList.add(clonePricingCategoria); + clonePricingTipoServicio.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingTipoServicio.setFecmodif(Calendar.getInstance().getTime()); + clonePricingTipoServicio.setActivo(ativar); + clonePricingTipoServicio.setPricing(clonePricing); + pricingTipoServicioList.add(clonePricingTipoServicio); } - clonePricing.setPricingCategoriaList(pricingCategoriaList); - List pricingClaseList = new ArrayList(); - for (PricingClase pricingClase : pricing.getPricingClaseList()) { + return pricingTipoServicioList; + } - PricingClase clonePricingClase = new PricingClase(); + private List obtemPricingVigenciaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingVigenciaList = new ArrayList(); + for (PricingVigencia pricingVigencia : pricing.getPricingVigenciaList()) { - clonePricingClase.setClaseServicio(pricingClase.getClaseServicio()); + PricingVigencia clonePricingVigencia = new PricingVigencia(); - clonePricingClase.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingClase.setFecmodif(Calendar.getInstance().getTime()); - clonePricingClase.setActivo(ativar); - clonePricingClase.setPricing(clonePricing); - pricingClaseList.add(clonePricingClase); + clonePricingVigencia.setFecfinventa(pricingVigencia.getFecfinventa()); + clonePricingVigencia.setFecinicioventa(pricingVigencia.getFecinicioventa()); + clonePricingVigencia.setFecinicioviaje(pricingVigencia.getFecinicioviaje()); + clonePricingVigencia.setFecfinviaje(pricingVigencia.getFecfinviaje()); + + clonePricingVigencia.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingVigencia.setFecmodif(Calendar.getInstance().getTime()); + clonePricingVigencia.setActivo(ativar); + clonePricingVigencia.setPricing(clonePricing); + pricingVigenciaList.add(clonePricingVigencia); } - clonePricing.setPricingClaseList(pricingClaseList); + return pricingVigenciaList; + } - List pricingCorridaList = new ArrayList(); - for (PricingCorrida pricingCorrida : pricing.getPricingCorridaList()) { + private List obtemPricingTipoPtoVtaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingTipoPtoVtaList = new ArrayList(); + for (PricingTipoPtoVta pricingTipoPtoVta : pricing.getPricingTipoptovtaList()) { - PricingCorrida clonePricingCorrida = new PricingCorrida(); + PricingTipoPtoVta clonePricingTipoPtoVta = new PricingTipoPtoVta(); - clonePricingCorrida.setCorridaCtrl(pricingCorrida.getCorridaCtrl()); + clonePricingTipoPtoVta.setTipoPtovta(pricingTipoPtoVta.getTipoPtovta()); - clonePricingCorrida.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingCorrida.setFecmodif(Calendar.getInstance().getTime()); - clonePricingCorrida.setActivo(ativar); - clonePricingCorrida.setPricing(clonePricing); - pricingCorridaList.add(clonePricingCorrida); + clonePricingTipoPtoVta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingTipoPtoVta.setFecmodif(Calendar.getInstance().getTime()); + clonePricingTipoPtoVta.setActivo(ativar); + clonePricingTipoPtoVta.setPricing(clonePricing); + pricingTipoPtoVtaList.add(clonePricingTipoPtoVta); } - clonePricing.setPricingCorridaList(pricingCorridaList); + return pricingTipoPtoVtaList; + } + private List obtemPricingRutaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingRutaList = new ArrayList(); + for (PricingRuta pricingRuta : pricing.getPricingRutaList()) { + + PricingRuta clonePricingRuta = new PricingRuta(); + + clonePricingRuta.setRuta(pricingRuta.getRuta()); + + clonePricingRuta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingRuta.setFecmodif(Calendar.getInstance().getTime()); + clonePricingRuta.setActivo(ativar); + clonePricingRuta.setPricing(clonePricing); + pricingRutaList.add(clonePricingRuta); + } + return pricingRutaList; + } + + private List obtemPricingPuntoVentaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingPuntoVentaList = new ArrayList(); + for (PricingPuntoVenta pricingPuntoVenta : pricing.getPricingPuntoventaList()) { + + PricingPuntoVenta clonePricingPuntoVenta = new PricingPuntoVenta(); + + clonePricingPuntoVenta.setPuntoVenta(pricingPuntoVenta.getPuntoVenta()); + + clonePricingPuntoVenta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingPuntoVenta.setFecmodif(Calendar.getInstance().getTime()); + clonePricingPuntoVenta.setActivo(ativar); + clonePricingPuntoVenta.setPricing(clonePricing); + pricingPuntoVentaList.add(clonePricingPuntoVenta); + } + return pricingPuntoVentaList; + } + + private List obtemPricingOcupaAntecipaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingOcupaAntecipaList = new ArrayList(); + for (PricingOcupaAntecipa pricingOcupaAntecipa : pricing.getPricingOcupaAntecipaList()) { + + PricingOcupaAntecipa clonePricingOcupaAntecipa = new PricingOcupaAntecipa(); + + clonePricingOcupaAntecipa.setCantasientosmin(pricingOcupaAntecipa.getCantasientosmin()); + clonePricingOcupaAntecipa.setCantasientosmax(pricingOcupaAntecipa.getCantasientosmax()); + clonePricingOcupaAntecipa.setCantdiasmin(pricingOcupaAntecipa.getCantdiasmin()); + clonePricingOcupaAntecipa.setCantdiasmax(pricingOcupaAntecipa.getCantdiasmax()); + clonePricingOcupaAntecipa.setImporte(pricingOcupaAntecipa.getImporte()); + clonePricingOcupaAntecipa.setPorcentaje(pricingOcupaAntecipa.getPorcentaje()); + clonePricingOcupaAntecipa.setOcupacioninicial(pricingOcupaAntecipa.getOcupacioninicial()); + clonePricingOcupaAntecipa.setOcupacionfinal(pricingOcupaAntecipa.getOcupacionfinal()); + + clonePricingOcupaAntecipa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingOcupaAntecipa.setFecmodif(Calendar.getInstance().getTime()); + clonePricingOcupaAntecipa.setActivo(ativar); + clonePricingOcupaAntecipa.setPricing(clonePricing); + pricingOcupaAntecipaList.add(clonePricingOcupaAntecipa); + } + return pricingOcupaAntecipaList; + } + + private List obtemPricingMercadoList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingMercadoList = new ArrayList(); + for (PricingMercado pricingMercado : pricing.getPricingMercadoList()) { + + PricingMercado clonePricingMercado = new PricingMercado(); + + clonePricingMercado.setDestino(pricingMercado.getDestino()); + clonePricingMercado.setOrigen(pricingMercado.getOrigen()); + + clonePricingMercado.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingMercado.setFecmodif(Calendar.getInstance().getTime()); + clonePricingMercado.setActivo(ativar); + clonePricingMercado.setPricing(clonePricing); + pricingMercadoList.add(clonePricingMercado); + } + return pricingMercadoList; + } + + private List obtemPricingMarcaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingMarcaList = new ArrayList(); + for (PricingMarca pricingMarca : pricing.getPricingMarcaList()) { + + PricingMarca clonePricingMarca = new PricingMarca(); + + clonePricingMarca.setMarca(pricingMarca.getMarca()); + + clonePricingMarca.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingMarca.setFecmodif(Calendar.getInstance().getTime()); + clonePricingMarca.setActivo(ativar); + clonePricingMarca.setPricing(clonePricing); + pricingMarcaList.add(clonePricingMarca); + } + return pricingMarcaList; + } + + private List obtemPricingImporteList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingImporteList = new ArrayList(); + for (PricingImporte pricingImporte : pricing.getPricingImporteList()) { + + PricingImporte clonePricingImporte = new PricingImporte(); + + clonePricingImporte.setImporte(pricingImporte.getImporte()); + clonePricingImporte.setMoneda(pricingImporte.getMoneda()); + + clonePricingImporte.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingImporte.setFecmodif(Calendar.getInstance().getTime()); + clonePricingImporte.setActivo(ativar); + clonePricingImporte.setPricing(clonePricing); + pricingImporteList.add(clonePricingImporte); + } + return pricingImporteList; + } + + private List obtemPricingDiaList(Pricing pricing, Pricing clonePricing, Integer ativar) { List pricingDiaList = new ArrayList(); for (PricingDia pricingDia : pricing.getPricingDiaList()) { @@ -334,169 +456,103 @@ public class PricingServiceImpl implements PricingService { clonePricingDia.setPricing(clonePricing); pricingDiaList.add(clonePricingDia); } - clonePricing.setPricingDiaList(pricingDiaList); + return pricingDiaList; + } - List pricingImporteList = new ArrayList(); - for (PricingImporte pricingImporte : pricing.getPricingImporteList()) { + private List obtemPricingCorridaList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingCorridaList = new ArrayList(); + for (PricingCorrida pricingCorrida : pricing.getPricingCorridaList()) { - PricingImporte clonePricingImporte = new PricingImporte(); + PricingCorrida clonePricingCorrida = new PricingCorrida(); - clonePricingImporte.setImporte(pricingImporte.getImporte()); - clonePricingImporte.setMoneda(pricingImporte.getMoneda()); + clonePricingCorrida.setCorridaCtrl(pricingCorrida.getCorridaCtrl()); - clonePricingImporte.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingImporte.setFecmodif(Calendar.getInstance().getTime()); - clonePricingImporte.setActivo(ativar); - clonePricingImporte.setPricing(clonePricing); - pricingImporteList.add(clonePricingImporte); + clonePricingCorrida.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingCorrida.setFecmodif(Calendar.getInstance().getTime()); + clonePricingCorrida.setActivo(ativar); + clonePricingCorrida.setPricing(clonePricing); + pricingCorridaList.add(clonePricingCorrida); } - clonePricing.setPricingImporteList(pricingImporteList); + return pricingCorridaList; + } - List pricingMarcaList = new ArrayList(); - for (PricingMarca pricingMarca : pricing.getPricingMarcaList()) { + private List obtemPricingAsientoList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingAsientoList = new ArrayList(); + for (PricingAsiento pricingAsiento : pricing.getPricingAsientoList()) { - PricingMarca clonePricingMarca = new PricingMarca(); + PricingAsiento clonePricingAsiento = new PricingAsiento(); - clonePricingMarca.setMarca(pricingMarca.getMarca()); + clonePricingAsiento.setNombImagen(pricingAsiento.getNombImagen()); + clonePricingAsiento.setNumeasiento(pricingAsiento.getNumeasiento()); + clonePricingAsiento.setPorcentaje(pricingAsiento.getPorcentaje()); - clonePricingMarca.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingMarca.setFecmodif(Calendar.getInstance().getTime()); - clonePricingMarca.setActivo(ativar); - clonePricingMarca.setPricing(clonePricing); - pricingMarcaList.add(clonePricingMarca); + clonePricingAsiento.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingAsiento.setFecmodif(Calendar.getInstance().getTime()); + clonePricingAsiento.setActivo(ativar); + clonePricingAsiento.setPricing(clonePricing); + pricingAsientoList.add(clonePricingAsiento); } - clonePricing.setPricingMarcaList(pricingMarcaList); + return pricingAsientoList; + } - List pricingMercadoList = new ArrayList(); - for (PricingMercado pricingMercado : pricing.getPricingMercadoList()) { + private List obtemPricingClaseList(Pricing pricing, Pricing clonePricing, Integer ativar) { + List pricingClaseList = new ArrayList(); + for (PricingClase pricingClase : pricing.getPricingClaseList()) { - PricingMercado clonePricingMercado = new PricingMercado(); + PricingClase clonePricingClase = new PricingClase(); - clonePricingMercado.setDestino(pricingMercado.getDestino()); - clonePricingMercado.setOrigen(pricingMercado.getOrigen()); + clonePricingClase.setClaseServicio(pricingClase.getClaseServicio()); - clonePricingMercado.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingMercado.setFecmodif(Calendar.getInstance().getTime()); - clonePricingMercado.setActivo(ativar); - clonePricingMercado.setPricing(clonePricing); - pricingMercadoList.add(clonePricingMercado); + clonePricingClase.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingClase.setFecmodif(Calendar.getInstance().getTime()); + clonePricingClase.setActivo(ativar); + clonePricingClase.setPricing(clonePricing); + pricingClaseList.add(clonePricingClase); } - clonePricing.setPricingMercadoList(pricingMercadoList); + return pricingClaseList; + } - List pricingOcupaAntecipaList = new ArrayList(); - for (PricingOcupaAntecipa pricingOcupaAntecipa : pricing.getPricingOcupaAntecipaList()) { - - PricingOcupaAntecipa clonePricingOcupaAntecipa = new PricingOcupaAntecipa(); - - clonePricingOcupaAntecipa.setCantasientosmin(pricingOcupaAntecipa.getCantasientosmin()); - clonePricingOcupaAntecipa.setCantasientosmax(pricingOcupaAntecipa.getCantasientosmax()); - clonePricingOcupaAntecipa.setCantdiasmin(pricingOcupaAntecipa.getCantdiasmin()); - clonePricingOcupaAntecipa.setCantdiasmax(pricingOcupaAntecipa.getCantdiasmax()); - clonePricingOcupaAntecipa.setImporte(pricingOcupaAntecipa.getImporte()); - clonePricingOcupaAntecipa.setPorcentaje(pricingOcupaAntecipa.getPorcentaje()); - clonePricingOcupaAntecipa.setOcupacioninicial(pricingOcupaAntecipa.getOcupacioninicial()); - clonePricingOcupaAntecipa.setOcupacionfinal(pricingOcupaAntecipa.getOcupacionfinal()); - - clonePricingOcupaAntecipa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingOcupaAntecipa.setFecmodif(Calendar.getInstance().getTime()); - clonePricingOcupaAntecipa.setActivo(ativar); - clonePricingOcupaAntecipa.setPricing(clonePricing); - pricingOcupaAntecipaList.add(clonePricingOcupaAntecipa); + private List obtemPricingCategoriaList(Pricing pricing, Pricing clonePricing, Integer ativar, boolean incluirPadraoPricingTipoPassagemPET) { + List pricingCategoriaList = new ArrayList(); + for (PricingCategoria pricingCategoria : pricing.getPricingCategoriaList()) { + setCategoria(clonePricing, ativar, pricingCategoriaList, pricingCategoria.getCategoria()); } - clonePricing.setPricingOcupaAntecipaList(pricingOcupaAntecipaList); - - List pricingPuntoVentaList = new ArrayList(); - for (PricingPuntoVenta pricingPuntoVenta : pricing.getPricingPuntoventaList()) { - - PricingPuntoVenta clonePricingPuntoVenta = new PricingPuntoVenta(); - - clonePricingPuntoVenta.setPuntoVenta(pricingPuntoVenta.getPuntoVenta()); - - clonePricingPuntoVenta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingPuntoVenta.setFecmodif(Calendar.getInstance().getTime()); - clonePricingPuntoVenta.setActivo(ativar); - clonePricingPuntoVenta.setPricing(clonePricing); - pricingPuntoVentaList.add(clonePricingPuntoVenta); + + if (incluirPadraoPricingTipoPassagemPET) { + configuraInclusaoPadraoTipoPassagemPET(pricing, clonePricing, ativar, pricingCategoriaList); } - clonePricing.setPricingPuntoventaList(pricingPuntoVentaList); + + return pricingCategoriaList; + } - List pricingRutaList = new ArrayList(); - for (PricingRuta pricingRuta : pricing.getPricingRutaList()) { - - PricingRuta clonePricingRuta = new PricingRuta(); - - clonePricingRuta.setRuta(pricingRuta.getRuta()); - - clonePricingRuta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingRuta.setFecmodif(Calendar.getInstance().getTime()); - clonePricingRuta.setActivo(ativar); - clonePricingRuta.setPricing(clonePricing); - pricingRutaList.add(clonePricingRuta); + protected void setCategoria(Pricing clonePricing, Integer ativar, List pricingCategoriaList, Categoria categoria) { + PricingCategoria clonePricingCategoria = new PricingCategoria(); + clonePricingCategoria.setCategoria(categoria); + clonePricingCategoria.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + clonePricingCategoria.setFecmodif(Calendar.getInstance().getTime()); + clonePricingCategoria.setActivo(ativar); + clonePricingCategoria.setPricing(clonePricing); + pricingCategoriaList.add(clonePricingCategoria); + } + + private void configuraInclusaoPadraoTipoPassagemPET(Pricing pricing, Pricing clonePricing, Integer ativar, List pricingCategoriaList) { + Categoria categoriaNormal = categoriaService.buscarUmaCategoria("NORMAL"); + if (!possuiCategoriaNaLista(pricing.getPricingCategoriaList(), categoriaNormal)) { + setCategoria(clonePricing, ativar, pricingCategoriaList, categoriaNormal); } - clonePricing.setPricingRutaList(pricingRutaList); - - List pricingTipoPtoVtaList = new ArrayList(); - for (PricingTipoPtoVta pricingTipoPtoVta : pricing.getPricingTipoptovtaList()) { - - PricingTipoPtoVta clonePricingTipoPtoVta = new PricingTipoPtoVta(); - - clonePricingTipoPtoVta.setTipoPtovta(pricingTipoPtoVta.getTipoPtovta()); - - clonePricingTipoPtoVta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingTipoPtoVta.setFecmodif(Calendar.getInstance().getTime()); - clonePricingTipoPtoVta.setActivo(ativar); - clonePricingTipoPtoVta.setPricing(clonePricing); - pricingTipoPtoVtaList.add(clonePricingTipoPtoVta); + Categoria categoriaPET = categoriaService.buscarUmaCategoria("PET"); + if (!possuiCategoriaNaLista(pricing.getPricingCategoriaList(), categoriaPET)) { + setCategoria(clonePricing, ativar, pricingCategoriaList, categoriaPET); } - clonePricing.setPricingTipoptovtaList(pricingTipoPtoVtaList); + + } - List pricingVigenciaList = new ArrayList(); - for (PricingVigencia pricingVigencia : pricing.getPricingVigenciaList()) { - - PricingVigencia clonePricingVigencia = new PricingVigencia(); - - clonePricingVigencia.setFecfinventa(pricingVigencia.getFecfinventa()); - clonePricingVigencia.setFecinicioventa(pricingVigencia.getFecinicioventa()); - clonePricingVigencia.setFecinicioviaje(pricingVigencia.getFecinicioviaje()); - clonePricingVigencia.setFecfinviaje(pricingVigencia.getFecfinviaje()); - - clonePricingVigencia.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingVigencia.setFecmodif(Calendar.getInstance().getTime()); - clonePricingVigencia.setActivo(ativar); - clonePricingVigencia.setPricing(clonePricing); - pricingVigenciaList.add(clonePricingVigencia); + private boolean possuiCategoriaNaLista(List categoriaList, Categoria categoria) { + for (PricingCategoria pricingCategoria : categoriaList) { + if (pricingCategoria.getCategoria().equals(categoria)) { + return true; + } } - clonePricing.setPricingVigenciaList(pricingVigenciaList); - - List pricingTipoServicioList = new ArrayList(); - for (PricingTipoServicio pricingTipoServicio : pricing.getPricingTipoServicioList()) { - - PricingTipoServicio clonePricingTipoServicio = new PricingTipoServicio(); - clonePricingTipoServicio.setTipoServicio(pricingTipoServicio.getTipoServicio()); - - clonePricingTipoServicio.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingTipoServicio.setFecmodif(Calendar.getInstance().getTime()); - clonePricingTipoServicio.setActivo(ativar); - clonePricingTipoServicio.setPricing(clonePricing); - pricingTipoServicioList.add(clonePricingTipoServicio); - } - clonePricing.setPricingTipoServicioList(pricingTipoServicioList); - - List pricingFormapagoList = new ArrayList(); - for (PricingFormapago pricingFormapago : pricing.getPricingFormapagoList()) { - - PricingFormapago clonePricingFormapago = new PricingFormapago(); - clonePricingFormapago.setIndexcepcion(pricingFormapago.getIndexcepcion()); - clonePricingFormapago.setFormaPago(pricingFormapago.getFormaPago()); - - clonePricingFormapago.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - clonePricingFormapago.setFecmodif(Calendar.getInstance().getTime()); - clonePricingFormapago.setActivo(ativar); - clonePricingFormapago.setPricing(clonePricing); - pricingFormapagoList.add(clonePricingFormapago); - } - clonePricing.setPricingFormapagoList(pricingFormapagoList); - - return clonePricing; + return false; } } diff --git a/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java b/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java index 9c7f4f134..5c6cb2439 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java @@ -190,7 +190,7 @@ public class ApplicationProperties { return property.equals("1"); } - public boolean usaPadroPricingEspecificoTipoPassagemPET(){ + public boolean usaPadraoPricingTipoPassagemPET(){ String property = p.getProperty("usaPadroPricingEspecificoTipoPassagemPET", "0"); return property.equals("1"); }