fixes bug#0012560

dev: thiago
qua: wallysson

Implementação efetuada. O script solicitado encontra-se anexo ao mantis.

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@87173 d1611594-4594-4d17-8e1d-87c2c4800839
master
emerson 2018-11-20 13:55:12 +00:00
parent fead1d2f0d
commit cc7663ba52
5 changed files with 140 additions and 118 deletions

View File

@ -1,12 +1,9 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.pricing; package com.rjconsultores.ventaboletos.web.gui.controladores.pricing;
import java.util.List; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope; import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.zkoss.util.resource.Labels;
import org.zkoss.zhtml.Messagebox;
import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.Event;
@ -14,6 +11,8 @@ import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.Pricing; import com.rjconsultores.ventaboletos.entidad.Pricing;
import com.rjconsultores.ventaboletos.service.PricingService; import com.rjconsultores.ventaboletos.service.PricingService;
import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties;
import com.rjconsultores.ventaboletos.web.utilerias.MensagensUtils;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
@ -21,6 +20,8 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
@Scope("prototype") @Scope("prototype")
public class CopiarPricingController extends MyGenericForwardComposer { public class CopiarPricingController extends MyGenericForwardComposer {
private static final String CONTROLLER_WINDOW_TITLE = "copiarPricingController.window.title";
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@Autowired @Autowired
@ -38,42 +39,30 @@ public class CopiarPricingController extends MyGenericForwardComposer {
} }
public void onClick$btnSalvarCopia(Event ev) throws InterruptedException { public void onClick$btnSalvarCopia(Event ev) throws InterruptedException {
if (!nombrePricing.getText().equals("") && nombrePricing.getText() != null) { if (StringUtils.isBlank(nombrePricing.getText())) {
MensagensUtils.showMessageExclamation("copiarPricingController.MSG.sem.nome",CONTROLLER_WINDOW_TITLE);
return;
}
List<Pricing> lsPricing = if (existePricingComMesmoNome()) {
pricingService.buscarPorNombre(nombrePricing.getText()); MensagensUtils.showMessageExclamation("copiarPricingController.MSG.Registro.Existe", CONTROLLER_WINDOW_TITLE);
return;
}
if (lsPricing.isEmpty()) { Boolean clonou = pricingService.clonarPricing(pricing.getPricingId(), nombrePricing.getText(),
ApplicationProperties.getInstance().usaPadraoPricingTipoPassagemPET());
Boolean resp = pricingService.clonarPricing(pricing.getPricingId(), nombrePricing.getText());
if (resp) {
if (clonou) {
closeWindow(); closeWindow();
Messagebox.show( MensagensUtils.showMessageInformation("copiarPricingController.MSG.suscribirOK", CONTROLLER_WINDOW_TITLE);
Labels.getLabel("copiarPricingController.MSG.suscribirOK"),
Labels.getLabel("copiarPricingController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
} else { } else {
Messagebox.show( MensagensUtils.showMessageInformation("copiarPricingController.MSG.ERRO", CONTROLLER_WINDOW_TITLE);
Labels.getLabel("copiarPricingController.MSG.ERRO"),
Labels.getLabel("copiarPricingController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
} }
} else {
Messagebox.show(
Labels.getLabel("copiarPricingController.MSG.Registro.Existe"),
Labels.getLabel("copiarPricingController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
}
} else {
Messagebox.show(
Labels.getLabel("copiarPricingController.MSG.sem.nome"),
Labels.getLabel("copiarPricingController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
} }
protected boolean existePricingComMesmoNome() {
return pricingService.buscarPorNombre(nombrePricing.getText()).size() > 0;
} }
public void onClose$winCopiarPricing(Event ev) { public void onClose$winCopiarPricing(Event ev) {

View File

@ -100,7 +100,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.RenderPricingVigencia
@Controller("editarPricingController") @Controller("editarPricingController")
@Scope("prototype") @Scope("prototype")
@SuppressWarnings("unused") @SuppressWarnings("unused")
public class EditarPricingController extends MyGenericForwardComposer { public class EditarPricingController extends PricingController {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(EditarPricingController.class); private static Logger log = Logger.getLogger(EditarPricingController.class);
@ -266,7 +266,6 @@ public class EditarPricingController extends MyGenericForwardComposer {
@Override @Override
public void doAfterCompose(Component comp) throws Exception { public void doAfterCompose(Component comp) throws Exception {
lsEmpresa = UsuarioLogado.getUsuarioLogado().getEmpresa(); lsEmpresa = UsuarioLogado.getUsuarioLogado().getEmpresa();
// lsEmpresa.add(empresaService.obtenerID(-1));
pricing = (Pricing) Executions.getCurrent().getArg().get("pricing"); pricing = (Pricing) Executions.getCurrent().getArg().get("pricing");
pricingList = (MyListbox) Executions.getCurrent().getArg().get("pricingList"); pricingList = (MyListbox) Executions.getCurrent().getArg().get("pricingList");
@ -663,29 +662,27 @@ public class EditarPricingController extends MyGenericForwardComposer {
pricingMercadoService.suscribir(pme); pricingMercadoService.suscribir(pme);
} }
// Empresa
// Empresa emp = empresaService.obtenerID(-1);
// if (emp != null) {
// pricing.setEmpresa(emp);
// cmbEmpresa.setText(emp.getNombempresa());
// }
}
// Tipo Pasajero - Categoria // Tipo Pasajero - Categoria
PricingCategoria pc = new PricingCategoria();
Categoria categoria = null;
if (ApplicationProperties.getInstance().habilitarPricingCategoria()) { if (ApplicationProperties.getInstance().habilitarPricingCategoria()) {
pricingCategoriaList.setDisabled(Boolean.FALSE); pricingCategoriaList.setDisabled(Boolean.FALSE);
btnNovoCategoria.setDisabled(Boolean.FALSE); btnNovoCategoria.setDisabled(Boolean.FALSE);
btnApagarCategoria.setDisabled(Boolean.FALSE); btnApagarCategoria.setDisabled(Boolean.FALSE);
btnModificarCategoria.setDisabled(Boolean.FALSE); btnModificarCategoria.setDisabled(Boolean.FALSE);
} else { } else {
categoria = categoriaService.obtenerID(1); incluirCategoria(categoriaService.obtenerID(1));
} }
incluirCategoriasPadroes();
btnApagar.setVisible(Boolean.FALSE);
btnInativar.setVisible(Boolean.FALSE);
btnAtivar.setVisible(Boolean.FALSE);
}
}
private void incluirCategoria(Categoria categoria) {
if (categoria != null && verificarCategoriaNaoAdicionada(categoria)) { if (categoria != null && verificarCategoriaNaoAdicionada(categoria)) {
PricingCategoria pc = new PricingCategoria();
pc.setCategoria(categoria); pc.setCategoria(categoria);
pc.setPricing(pricing); pc.setPricing(pricing);
pc.setActivo(Pricing.ATIVO); pc.setActivo(Pricing.ATIVO);
@ -699,12 +696,6 @@ public class EditarPricingController extends MyGenericForwardComposer {
pricingCategoriaList.setData(lsPricingCategoria); pricingCategoriaList.setData(lsPricingCategoria);
pricingCategoriaService.suscribir(pc); pricingCategoriaService.suscribir(pc);
} }
if (pricing.getPricingId() == null) {
btnApagar.setVisible(Boolean.FALSE);
btnInativar.setVisible(Boolean.FALSE);
btnAtivar.setVisible(Boolean.FALSE);
}
} }
/** Valida se a categoria não foi adicionada */ /** Valida se a categoria não foi adicionada */
@ -720,6 +711,16 @@ public class EditarPricingController extends MyGenericForwardComposer {
return true; return true;
} }
@Override
protected void incluirCategoriaNormal(Categoria categoriaNormal) {
incluirCategoria(categoriaNormal);
}
@Override
protected void incluirCategoriaPet(Categoria categoriaPET) {
incluirCategoria(categoriaPET);
}
public void onClick$radioImp(Event ev) { public void onClick$radioImp(Event ev) {
btnNovoImporte.setVisible(true); btnNovoImporte.setVisible(true);
btnApagarImporte.setVisible(true); btnApagarImporte.setVisible(true);

View File

@ -43,7 +43,6 @@ import com.rjconsultores.ventaboletos.entidad.PricingEspecificoCategoria;
import com.rjconsultores.ventaboletos.entidad.PricingEspecificoOcupacion; import com.rjconsultores.ventaboletos.entidad.PricingEspecificoOcupacion;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.entidad.TipoPuntoVenta; import com.rjconsultores.ventaboletos.entidad.TipoPuntoVenta;
import com.rjconsultores.ventaboletos.service.CategoriaService;
import com.rjconsultores.ventaboletos.service.ClaseServicioService; import com.rjconsultores.ventaboletos.service.ClaseServicioService;
import com.rjconsultores.ventaboletos.service.CorridaCtrlService; import com.rjconsultores.ventaboletos.service.CorridaCtrlService;
import com.rjconsultores.ventaboletos.service.MarcaService; import com.rjconsultores.ventaboletos.service.MarcaService;
@ -73,7 +72,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.RenderPricingEspecifi
@Controller("editarPricingEspecificoController") @Controller("editarPricingEspecificoController")
@Scope("prototype") @Scope("prototype")
@SuppressWarnings({ "unchecked", "rawtypes", "unused" }) @SuppressWarnings({ "unchecked", "rawtypes", "unused" })
public class EditarPricingEspecificoController extends MyGenericForwardComposer { public class EditarPricingEspecificoController extends PricingController {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(EditarPricingController.class); private static Logger log = Logger.getLogger(EditarPricingController.class);
@ -83,8 +82,6 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer
@Autowired @Autowired
private TipoPuntoVentaService puntoVentaService; private TipoPuntoVentaService puntoVentaService;
@Autowired @Autowired
private CategoriaService categoriaService;
@Autowired
private ClaseServicioService claseServicioService; private ClaseServicioService claseServicioService;
@Autowired @Autowired
private MarcaService marcaService; private MarcaService marcaService;
@ -141,7 +138,7 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer
@Override @Override
public void doAfterCompose(Component comp) throws Exception { public void doAfterCompose(Component comp) throws Exception {
lsCategoria = categoriaService.obtenerTodos(); lsCategoria = getCategoriaService().obtenerTodos();
lsMarca = marcaService.buscarMarcaPorEmpresa(UsuarioLogado.getUsuarioLogado().getEmpresa()); lsMarca = marcaService.buscarMarcaPorEmpresa(UsuarioLogado.getUsuarioLogado().getEmpresa());
lsMoneda = monedaService.obtenerTodos(); lsMoneda = monedaService.obtenerTodos();
lsPtovata = puntoVentaService.obtenerTodos(); lsPtovata = puntoVentaService.obtenerTodos();
@ -161,7 +158,7 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer
if (pricingEspecifico.getPricingespecificoId() == null) { if (pricingEspecifico.getPricingespecificoId() == null) {
btnApagar.setVisible(Boolean.FALSE); btnApagar.setVisible(Boolean.FALSE);
setTipoPassagemPadrao(); incluirCategoriasPadroes();
} else { } else {
Parada origem = pricingEspecifico.getParada(); Parada origem = pricingEspecifico.getParada();
if (origem != null) { if (origem != null) {
@ -194,33 +191,6 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer
fechaInicio.focus(); fechaInicio.focus();
} }
private void setTipoPassagemPadrao() {
if (ApplicationProperties.getInstance().usaPadroPricingEspecificoTipoPassagemPET()) {
Categoria categoriaNormal = buscarCategoria("NORMAL");
Categoria categoriaPET = buscarCategoria("PET");
if (categoriaNormal != null) {
PricingEspecificoCategoria pcNormal = new PricingEspecificoCategoria(categoriaNormal, pricingEspecifico, UsuarioLogado.getUsuarioLogado().getUsuarioId());
pricingListEspCategoria.addItemNovo(pcNormal);
pricingEspecifico.getPricingEspecificoCategoriaList().add(pcNormal);
}
if (categoriaPET != null) {
PricingEspecificoCategoria pcPET = new PricingEspecificoCategoria(categoriaPET, pricingEspecifico, UsuarioLogado.getUsuarioLogado().getUsuarioId());
pricingListEspCategoria.addItemNovo(pcPET);
pricingEspecifico.getPricingEspecificoCategoriaList().add(pcPET);
}
}
}
private Categoria buscarCategoria(String categoria) {
List<Categoria> categoriaList = categoriaService.buscar(categoria);
if(categoriaList.isEmpty()){
return null;
}
return categoriaList.get(0);
}
public void verPricingEspecificoOcupacion(PricingEspecificoOcupacion especificoOcupacion, Boolean isEdicao) { public void verPricingEspecificoOcupacion(PricingEspecificoOcupacion especificoOcupacion, Boolean isEdicao) {
Map args = new HashMap(); Map args = new HashMap();
@ -1082,21 +1052,6 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer
this.puntoVentaService = puntoVentaService; this.puntoVentaService = puntoVentaService;
} }
/**
* @return the categoriaService
*/
public CategoriaService getCategoriaService() {
return categoriaService;
}
/**
* @param categoriaService
* the categoriaService to set
*/
public void setCategoriaService(CategoriaService categoriaService) {
this.categoriaService = categoriaService;
}
/** /**
* @return the claseServicioService * @return the claseServicioService
*/ */
@ -1199,4 +1154,18 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer
} }
@Override
protected void incluirCategoriaNormal(Categoria categoriaNormal) {
PricingEspecificoCategoria pcNormal = new PricingEspecificoCategoria(categoriaNormal, pricingEspecifico, UsuarioLogado.getUsuarioLogado().getUsuarioId());
pricingListEspCategoria.addItemNovo(pcNormal);
pricingEspecifico.getPricingEspecificoCategoriaList().add(pcNormal);
}
@Override
protected void incluirCategoriaPet(Categoria categoriaPET) {
PricingEspecificoCategoria pcPET = new PricingEspecificoCategoria(categoriaPET, pricingEspecifico, UsuarioLogado.getUsuarioLogado().getUsuarioId());
pricingListEspCategoria.addItemNovo(pcPET);
pricingEspecifico.getPricingEspecificoCategoriaList().add(pcPET);
}
} }

View File

@ -0,0 +1,51 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.pricing;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import com.rjconsultores.ventaboletos.entidad.Categoria;
import com.rjconsultores.ventaboletos.service.CategoriaService;
import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
@Controller("pricingController")
@Scope("prototype")
public abstract class PricingController extends MyGenericForwardComposer {
private static final long serialVersionUID = -63691911293429900L;
@Autowired
private CategoriaService categoriaService;
protected void incluirCategoriasPadroes() {
if (ApplicationProperties.getInstance().usaPadraoPricingTipoPassagemPET()) {
Categoria categoriaNormal = getCategoriaNormal();
Categoria categoriaPET = getCategoriaPET();
if (categoriaNormal != null) {
incluirCategoriaNormal(categoriaNormal);
}
if (categoriaPET != null) {
incluirCategoriaPet(categoriaPET);
}
}
}
protected Categoria getCategoriaPET() {
return getCategoriaService().buscarUmaCategoria("PET");
}
protected Categoria getCategoriaNormal() {
return getCategoriaService().buscarUmaCategoria("NORMAL");
}
protected abstract void incluirCategoriaNormal(Categoria categoriaNormal);
protected abstract void incluirCategoriaPet(Categoria categoriaPET);
public CategoriaService getCategoriaService() {
return categoriaService;
}
}

View File

@ -9,11 +9,23 @@ public class MensagensUtils {
} }
public static void showMessageInformation(String labelMensagem, String tituloMenssagem) { public static void showMessageInformation(String labelMensagem, String tituloMenssagem) {
showMessage(labelMensagem, tituloMenssagem, Messagebox.INFORMATION);
}
public static void showMessageExclamation(String labelMensagem, String tituloMenssagem) {
showMessage(labelMensagem, tituloMenssagem, Messagebox.EXCLAMATION);
}
public static void showMessageError(String labelMensagem, String tituloMenssagem) {
showMessage(labelMensagem, tituloMenssagem, Messagebox.ERROR);
}
private static void showMessage(String labelMensagem, String tituloMenssagem, String tipoMenssagem) {
try { try {
Messagebox.show( Messagebox.show(
Labels.getLabel(labelMensagem), Labels.getLabel(labelMensagem),
Labels.getLabel(tituloMenssagem), Labels.getLabel(tituloMenssagem),
Messagebox.OK, Messagebox.INFORMATION); Messagebox.OK, tipoMenssagem);
} catch (InterruptedException e) { } catch (InterruptedException e) {
Thread.currentThread().interrupt(); Thread.currentThread().interrupt();
} }