Project

General

Profile

Tareas #245 » ObjetoController.java

Jesús Freire, 11/16/2018 08:16 AM

 
package net.bersus.selene.spring.controller;

import static org.springframework.web.bind.annotation.RequestMethod.GET;
import static org.springframework.web.bind.annotation.RequestMethod.POST;

import java.beans.PropertyVetoException;

import javax.naming.NamingException;
import javax.validation.Valid;

import net.bersus.selene.interfaz.http.obj.LHObjeto;
import net.bersus.selene.spring.form.Objmd1idForm;
import net.bersus.selene.util.Conexion;
import net.bersus.selene.util.Modelo;
import net.bersus.selene.util.SeleneException;
import net.bersus.selene.util.SeleneKeys;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.SessionAttribute;

@Controller
public class ObjetoController {
// Instancia del logger
private static final Logger logger = LoggerFactory.getLogger(ObjetoController.class);
@Autowired
private PlatformTransactionManager transactionManager;
@RequestMapping(value="/OBJMD1ID", method = GET)
public String objmd1id(
Objmd1idForm objmd1idForm,
@SessionAttribute(SeleneKeys.CTX_CONEXION) Conexion conexion,
Model model)
throws SeleneException, PropertyVetoException, NamingException {
logger.debug("Vista: OBJMD1ID. Modelo de entrada: " + model.asMap().toString());
// Transformar el modelo de Spring al modelo Selene
Modelo modelo = new Modelo(model.asMap());
LHObjeto objmHome = new LHObjeto();
String evento = SeleneKeys.EVT_OK;
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Leyendo tipos de objeto");
evento = objmHome.leerTiposDeObjeto(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Leyendo subtipos de objeto");
evento = objmHome.leerSubtiposDeObjetoCriterioSeleccion(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Leyendo tipos de indicador lista");
evento = objmHome.leerTiposDeIndicadorLista(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Limpiando criterio de seleccion");
evento = objmHome.limpiarCriterioSeleccion(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
} else {
return "util/mensaje";
}
logger.debug("Vista: OBJMD1ID. Modelo de salida: " + model.asMap().toString());
logger.debug("Vista: seleccionaObjeto");
return "seleccionaObjeto";
}
@RequestMapping(value="/seleccionaObjeto", method = GET)
public String seleccionaobjmd1idForm(Objmd1idForm objmd1idForm) {
logger.debug("Entrando en el controlador GET de seleccionarObjeto");
return "seleccionaObjeto";
}
@RequestMapping(value="/seleccionaObjeto", method = POST)
public String seleccionaObjetoSubmit(
@ModelAttribute Objmd1idForm objmd1idForm,
@SessionAttribute(SeleneKeys.CTX_CONEXION) Conexion conexion,
BindingResult bindingResult,
Model model)
throws SeleneException, PropertyVetoException, NamingException {
logger.debug("Vista: seleccionaObjeto. Modelo de entrada: " + model.asMap().toString());
if (bindingResult.hasErrors()) {
return "seleccionarObjeto";
}
// Anadir el formulario al dato del contexto correspondiente
objmd1idForm.toModel(model);

// Transformar el modelo de Spring al modelo Selene
Modelo modelo = new Modelo(model.asMap());
LHObjeto objmHome = new LHObjeto();
String evento = SeleneKeys.EVT_OK;
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Seleccionando");
evento = objmHome.seleccionar(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
// Transformar el modelo de Spring al formulario
objmd1idForm.setModel(model);
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Leyendo padres de objeto");
evento = objmHome.leerPadresObjeto(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
// Transformar el modelo de Spring al formulario
objmd1idForm.setModel(model);
} else if (evento.equalsIgnoreCase(SeleneKeys.EVT_LISTA_VACIA)) {
return "util/mensaje";
} else if (evento.equalsIgnoreCase(SeleneKeys.EVT_LISTA)) {
model.addAttribute(objmd1idForm);
logger.debug("Vista: seleccionaObjeto. Modelo de salida: " + model.asMap().toString());
logger.debug("Vista: listaObjetos");
return "listaObjetos";
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
model.addAttribute(objmd1idForm);
logger.debug("Vista: seleccionaObjeto. Modelo de salida: " + model.asMap().toString());
logger.debug("Vista: consultarObjeto");
return "consultarObjeto";
} else {
return "util/mensaje";
}
}
@RequestMapping(value="/listaObjetos", method = GET)
public String listaObjetos(Model model)
throws PropertyVetoException {
Objmd1idForm objmd1idForm = new Objmd1idForm();
objmd1idForm.setModel(model);
model.addAttribute(objmd1idForm);
return "listaObjetos";
}
@RequestMapping(value="/listaObjetos", method = POST)
public String listaObjetos(
@ModelAttribute Objmd1idForm objmd1idForm,
@SessionAttribute(SeleneKeys.CTX_CONEXION) Conexion conexion,
BindingResult bindingResult,
Model model)
throws SeleneException, PropertyVetoException, NamingException {
logger.debug("Vista: listaObjetos. Modelo de entrada: " + model.asMap().toString());
if (bindingResult.hasErrors()) {
return "listaObjetos";
}
// Anadir el formulario al dato del contexto correspondiente
objmd1idForm.toModel(model);

// Transformar el modelo de Spring al modelo Selene
Modelo modelo = new Modelo(model.asMap());
LHObjeto objmHome = new LHObjeto();
String evento = SeleneKeys.EVT_OK;
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Incluyendo");
evento = objmHome.incluir(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
// Transformar el modelo de Spring al formulario
objmd1idForm.setModel(model);
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Leyendo padres de objeto");
evento = objmHome.leerPadresObjeto(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
// Transformar el modelo de Spring al formulario
objmd1idForm.setModel(model);
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
model.addAttribute(objmd1idForm);
logger.debug("Vista: listaObjetos. Modelo de salida: " + model.asMap().toString());
logger.debug("Vista: consultarObjeto");
return "consultarObjeto";
} else {
return "util/mensaje";
}
}
@RequestMapping(value="/consultarObjeto", method = GET)
public String consultarObjeto(Model model) throws PropertyVetoException {
Objmd1idForm objmd1idForm = new Objmd1idForm();
objmd1idForm.setModel(model);
model.addAttribute(objmd1idForm);
return "consultarObjeto";
}
@RequestMapping(value="/consultarObjeto", method = POST)
public String consultarObjeto(
@Valid Objmd1idForm objmd1idForm,
@SessionAttribute(SeleneKeys.CTX_CONEXION) Conexion conexion,
BindingResult bindingResult,
Model model)
throws SeleneException, PropertyVetoException, NamingException {
logger.debug("Vista: consultarObjeto. Modelo de entrada: " + model.asMap().toString());
if (bindingResult.hasErrors()) {
return "seleccionarObjeto";
}
// Anadir el formulario al dato del contexto correspondiente
objmd1idForm.toModel(model);

// Transformar el modelo de Spring al modelo Selene
Modelo modelo = new Modelo(model.asMap());
LHObjeto objmHome = new LHObjeto();
String evento = SeleneKeys.EVT_OK;
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
logger.debug("Obteniendo documentacion");
evento = objmHome.obtenerDocumentacion(modelo, conexion);
// Transformar el modelo de Selene al modelo Spring
model.addAllAttributes(modelo.getElementos());
// Transformar el modelo de Spring al formulario
objmd1idForm.setModel(model);
} else {
return "util/mensaje";
}
if (evento.equalsIgnoreCase(SeleneKeys.EVT_OK)) {
model.addAttribute(objmd1idForm);
logger.debug("Vista: consultarObjeto. Modelo de salida: " + model.asMap().toString());
logger.debug("Vista: consultarObjeto");
return "consultarObjeto";
} else {
return "util/mensaje";
}
}
}
(4-4/6)