Example usage for com.google.gson JsonObject get

List of usage examples for com.google.gson JsonObject get

Introduction

In this page you can find the example usage for com.google.gson JsonObject get.

Prototype

public JsonElement get(String memberName) 

Source Link

Document

Returns the member with the specified name.

Usage

From source file:co.cask.tigon.internal.app.FlowletSpecificationCodec.java

License:Apache License

@Override
public FlowletSpecification deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
        throws JsonParseException {
    JsonObject jsonObj = json.getAsJsonObject();

    String className = jsonObj.get("className").getAsString();
    String name = jsonObj.get("name").getAsString();
    String description = jsonObj.get("description").getAsString();
    FailurePolicy policy = FailurePolicy.valueOf(jsonObj.get("failurePolicy").getAsString());
    Map<String, String> properties = deserializeMap(jsonObj.get("properties"), context, String.class);
    ResourceSpecification resources = context.deserialize(jsonObj.get("resources"),
            new TypeToken<ResourceSpecification>() {
            }.getType());/*from  w  w  w  .j a  v a 2s .  com*/
    int maxInstances = jsonObj.get("maxInstances").getAsInt();

    return new DefaultFlowletSpecification(className, name, description, policy, properties, resources,
            maxInstances);
}

From source file:co.com.powersoft.lab.databaselab.controller.LineaGeneralServlet.java

/**
 * Metodo que permite insertar// ww w .j  ava  2s.  c o  m
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso, 2 si ya existe o 0 si no fue
 * exitoso
 * @exception IOException
 */
public void agregarLineaGeneral(HttpServletRequest request, HttpServletResponse response) throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.AGREGAR_LINEA_GENERAL;

    int resp = 0;

    try {

        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "linea_";

            String idPlanta = request.getParameter("idPlanta") == null ? "0"
                    : HashEncripter.getInstance().desencrypterKey(request.getParameter("idPlanta"));

            //Validamos que exista un idPlanta
            if (!idPlanta.equals("0")) {
                JsonArray arrayCodigo = (JsonArray) result.get(prefijo + "codigo");
                JsonArray arrayNombre = (JsonArray) result.get(prefijo + "nombre");

                //Organizamos el objeto a agregar
                LineaGeneral lineaGeneral = new LineaGeneral();
                for (int i = 0; i < arrayCodigo.size(); i++) {
                    lineaGeneral.setCodigo(
                            arrayCodigo.get(i).getAsString().isEmpty() ? "" : arrayCodigo.get(i).getAsString());
                    lineaGeneral.setNombre(
                            arrayNombre.get(i).getAsString().isEmpty() ? "" : arrayNombre.get(i).getAsString());

                    PlantaGeneral plantaGeneral = new PlantaGeneral();
                    plantaGeneral.setId(Integer.parseInt(idPlanta));
                    lineaGeneral.setPlantaGeneral(plantaGeneral);
                }

                //Agregamos el objeto a la BD
                resp = ServiceFactory.getInstance().getServiceBeanLab().agregarLineaGeneral(usuario,
                        lineaGeneral);
            }
        }

        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.LineaGeneralServlet.java

/**
 * Metodo que permite modificar//  w w w .  j ava2 s  .  c  o m
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso o 0 si no lo fue
 * @exception IOException
 */
public void modificarLineaGeneral(HttpServletRequest request, HttpServletResponse response) throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.MODIFICAR_LINEA_GENERAL;

    int resp = 0;

    try {
        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "linea_";

            JsonArray arrayIdLinea = (JsonArray) result.get(prefijo + "idLinea");
            JsonArray arrayCodigo = (JsonArray) result.get(prefijo + "codigo");
            JsonArray arrayNombre = (JsonArray) result.get(prefijo + "nombre");
            JsonArray arrayIdPlantaGeneral = (JsonArray) result.get(prefijo + "idPlantaNew");

            //Organizamos el objeto a agregar
            LineaGeneral lineaGeneral = new LineaGeneral();
            for (int i = 0; i < arrayIdLinea.size(); i++) {
                lineaGeneral.setId(Integer.parseInt(
                        HashEncripter.getInstance().desencrypterKey(arrayIdLinea.get(i).getAsString())));
                lineaGeneral.setCodigo(
                        arrayCodigo.get(i).getAsString().isEmpty() ? "" : arrayCodigo.get(i).getAsString());
                lineaGeneral.setNombre(
                        arrayNombre.get(i).getAsString().isEmpty() ? "" : arrayNombre.get(i).getAsString());

                PlantaGeneral plantaGeneral = new PlantaGeneral();
                plantaGeneral.setId(Integer.parseInt(HashEncripter.getInstance()
                        .desencrypterKey(arrayIdPlantaGeneral.get(i).getAsString())));
                lineaGeneral.setPlantaGeneral(plantaGeneral);
            }

            //Obtenemos el usuario por session
            //Modificamos el objeto a la BD                
            resp = ServiceFactory.getInstance().getServiceBeanLab().modificarLinea(usuario, lineaGeneral);
        }

        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.MaquinaGeneralServlet.java

/**
 * Metodo que permite insertar/*  w  w  w .j a v a2 s  .  c  om*/
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso, 2 si ya existe o 0 si no fue
 * exitoso
 * @exception IOException
 */
public void agregarMaquinaGeneral(HttpServletRequest request, HttpServletResponse response) throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.AGREGAR_MAQUINA_GENERAL;

    int resp = 0;

    try {

        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "maquina_";

            String idPlanta = request.getParameter("idPlanta") == null ? "0"
                    : HashEncripter.getInstance().desencrypterKey(request.getParameter("idPlanta"));

            //Validamos que exista un idPlanta
            if (!idPlanta.equals("0")) {
                JsonArray arrayCodigo = (JsonArray) result.get(prefijo + "codigo");
                JsonArray arrayNombre = (JsonArray) result.get(prefijo + "nombre");
                JsonArray arrayReferencia = (JsonArray) result.get(prefijo + "referencia");
                JsonArray arrayIdsLineaGeneral = (JsonArray) result.get("idNewLineaGeneral");

                //Organizamos el objeto a agregar
                MaquinaGeneral maquinaGeneral = new MaquinaGeneral();
                for (int i = 0; i < arrayCodigo.size(); i++) {
                    maquinaGeneral.setCodigo(
                            arrayCodigo.get(i).getAsString().isEmpty() ? "" : arrayCodigo.get(i).getAsString());
                    maquinaGeneral.setNombre(
                            arrayNombre.get(i).getAsString().isEmpty() ? "" : arrayNombre.get(i).getAsString());
                    maquinaGeneral.setReferencia(arrayReferencia.get(i).getAsString().isEmpty() ? ""
                            : arrayReferencia.get(i).getAsString());

                    //Planta General
                    PlantaGeneral plantaGeneral = new PlantaGeneral();
                    plantaGeneral.setId(Integer.parseInt(idPlanta));
                    maquinaGeneral.setPlantaGeneral(plantaGeneral);

                    //LineaGeneral asociadas
                    List<LineaGeneral> listaLineaGeneral = new ArrayList<>();

                    if (arrayIdsLineaGeneral != null) {
                        for (JsonElement idLineaGeneral : arrayIdsLineaGeneral) {
                            //Validamos si el codigo es valido
                            if (!idLineaGeneral.getAsString().isEmpty()) {
                                String id = HashEncripter.getInstance()
                                        .desencrypterKey(idLineaGeneral.getAsString());
                                LineaGeneral lineaGeneral = new LineaGeneral(Integer.parseInt(id));
                                listaLineaGeneral.add(lineaGeneral);
                            }
                        }
                    }
                    maquinaGeneral.setListaLineasGeneral(listaLineaGeneral);
                }

                //Agregamos el objeto a la BD
                resp = ServiceFactory.getInstance().getServiceBeanLab().agregarMaquinaGeneral(usuario,
                        maquinaGeneral);
            }
        }

        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.MaquinaGeneralServlet.java

/**
 * Metodo que permite modificar//  w ww.  j a  v  a 2s. com
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso o 0 si no lo fue
 * @exception IOException
 */
public void modificarMaquinaGeneral(HttpServletRequest request, HttpServletResponse response)
        throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.MODIFICAR_MAQUINA_GENERAL;

    int resp = 0;

    try {
        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "maquina_";

            JsonArray arrayIdMaquina = (JsonArray) result.get(prefijo + "idMaquina");
            JsonArray arrayCodigo = (JsonArray) result.get(prefijo + "codigo");
            JsonArray arrayNombre = (JsonArray) result.get(prefijo + "nombre");
            JsonArray arrayReferencia = (JsonArray) result.get(prefijo + "referencia");
            JsonArray arrayIdPlantaGeneral = (JsonArray) result.get(prefijo + "idPlantaNew");
            JsonArray arrayIdsLineaGeneral = (JsonArray) result.get("idNewLineaGeneral");

            //Organizamos el objeto a agregar
            MaquinaGeneral maquinaGeneral = new MaquinaGeneral();
            for (int i = 0; i < arrayIdMaquina.size(); i++) {
                maquinaGeneral.setId(Integer.parseInt(
                        HashEncripter.getInstance().desencrypterKey(arrayIdMaquina.get(i).getAsString())));
                maquinaGeneral.setCodigo(
                        arrayCodigo.get(i).getAsString().isEmpty() ? "" : arrayCodigo.get(i).getAsString());
                maquinaGeneral.setNombre(
                        arrayNombre.get(i).getAsString().isEmpty() ? "" : arrayNombre.get(i).getAsString());
                maquinaGeneral.setReferencia(arrayReferencia.get(i).getAsString().isEmpty() ? ""
                        : arrayReferencia.get(i).getAsString());

                //Planta General
                PlantaGeneral plantaGeneral = new PlantaGeneral();
                plantaGeneral.setId(Integer.parseInt(HashEncripter.getInstance()
                        .desencrypterKey(arrayIdPlantaGeneral.get(i).getAsString())));
                maquinaGeneral.setPlantaGeneral(plantaGeneral);

                //LineaGeneral asociadas
                List<LineaGeneral> listaLineaGeneral = new ArrayList<>();

                if (arrayIdsLineaGeneral != null) {
                    for (JsonElement idLineaGeneral : arrayIdsLineaGeneral) {
                        //Validamos si el codigo es valido
                        if (!idLineaGeneral.getAsString().isEmpty()) {
                            String id = HashEncripter.getInstance()
                                    .desencrypterKey(idLineaGeneral.getAsString());
                            LineaGeneral lineaGeneral = new LineaGeneral(Integer.parseInt(id));
                            listaLineaGeneral.add(lineaGeneral);
                        }
                    }
                }
                maquinaGeneral.setListaLineasGeneral(listaLineaGeneral);
            }

            //Modificamos el objeto a la BD
            resp = ServiceFactory.getInstance().getServiceBeanLab().modificarMaquinaGeneral(usuario,
                    maquinaGeneral);
        }

        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.MaquinaGeneralServlet.java

/**
 * Metodo que permite CARGAR objetos LineaGeneral existente PAGINADAS
 *
 * @autor Leonardo Solano//from w  ww  .  j  a v a2s  . c o  m
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso o 0 si no lo fue
 * @param op es la opcion escogida por el usuario
 */
public void cargarSeleccionarLineaGeneralIdsOmitidos(HttpServletRequest request, HttpServletResponse response,
        int op) {

    //Nombre de la operacin
    String OPERACION = OperationConstants.CARGAR_SELECCIONAR_LINEAS_GENERAL_X_PLANTA_IDS_OMITIDOS;

    try {

        //Obtenemos el Personal x Cargo de la planta
        int idEmpresaGeneral = usuario.getEmpresaGeneral().getId();

        //Obtenemos el id de la planta
        String idPlanta = request.getParameter("idPlanta") == null ? "0"
                : HashEncripter.getInstance().desencrypterKey(request.getParameter("idPlanta"));

        //Palabra a buscar
        String buscar = request.getParameter("buscar") == null ? "" : request.getParameter("buscar");

        //Obtenemos los ids ya seleccionados en Objetos JSON
        String jsonIds = request.getParameter("jsonIds") == null ? "{}" : request.getParameter("jsonIds");
        String ids = "";

        //Validamos que no sea vacio
        if (jsonIds != null && !jsonIds.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonIds, JsonElement.class).getAsJsonObject();

            JsonArray arrayIds = (JsonArray) result.get("id");

            for (int i = 0; i < arrayIds.size(); i++) {
                if (i < arrayIds.size() - 1) {
                    ids += (arrayIds.get(i).getAsString().isEmpty() ? "0"
                            : HashEncripter.getInstance().desencrypterKey(arrayIds.get(i).getAsString())) + ",";
                } else {
                    ids += arrayIds.get(i).getAsString().isEmpty() ? "0"
                            : HashEncripter.getInstance().desencrypterKey(arrayIds.get(i).getAsString());
                }
            }
        }

        //Obtenemos la cantidad de registros totales en la tabla
        int cantRegistros;
        if (!ids.isEmpty()) {
            cantRegistros = ServiceFactory.getInstance().getServiceBeanLab().obtenerCantidadLineasIdsOmitidos(
                    idEmpresaGeneral, Integer.parseInt(idPlanta), buscar, ids);
        } else {
            cantRegistros = ServiceFactory.getInstance().getServiceBeanLab()
                    .obtenerCantidadLineas(idEmpresaGeneral, Integer.parseInt(idPlanta), buscar);
        }

        //Cantidad de Paginas a mostrar
        int cantPaginas = (int) Math.ceil((double) cantRegistros / MAX_REGISTROS_PAGINA);
        cantPaginas = cantPaginas == 0 ? 1 : cantPaginas;

        //Obtenemos la pagina actual
        int pagActual = Integer
                .parseInt(request.getParameter("pag") == null ? "1" : request.getParameter("pag"));

        //Obtenemos el valor inicial a mostrar registros
        int offset = Math.abs((pagActual - 1) * MAX_REGISTROS_PAGINA);

        //PAGINAMOS    
        int mitad;
        int comenzar;
        int finalizar;

        if (MAX_NUMERO_PAGINAS_MOSTRAR < cantPaginas) {
            //Validamos si es PAR o IMPAR
            if (MAX_NUMERO_PAGINAS_MOSTRAR % 2 == 0) {
                //Obtnemos la mitad
                mitad = MAX_NUMERO_PAGINAS_MOSTRAR / 2;
                comenzar = pagActual - (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
                finalizar = pagActual + (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
            } else {
                //Obtnemos la mitad
                mitad = MAX_NUMERO_PAGINAS_MOSTRAR / 2 + 1;
                comenzar = pagActual - (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
                finalizar = pagActual + (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
            }

            //Validamos que la primera pagina no sea menor que la pagina 1
            if (comenzar < 1) {
                finalizar = finalizar + (1 - comenzar);
                comenzar = 1;
            }

            //Validamos que la ultima pagina no pase la el total de paginas
            if (finalizar > cantPaginas) {
                comenzar = comenzar - (finalizar - cantPaginas);
                finalizar = cantPaginas;
            }

        } else {
            comenzar = 1;
            finalizar = cantPaginas;
        }

        List<LineaGeneral> listaLineaGeneral;
        if (!ids.equals("")) {
            listaLineaGeneral = ServiceFactory.getInstance().getServiceBeanLab()
                    .obtenerLineasPorPlantaIdsOmitidos(idEmpresaGeneral, Integer.parseInt(idPlanta), buscar,
                            ids, offset, MAX_REGISTROS_PAGINA);
        } else {
            listaLineaGeneral = ServiceFactory.getInstance().getServiceBeanLab().obtenerLineasPorPlanta(
                    idEmpresaGeneral, Integer.parseInt(idPlanta), buscar, offset, MAX_REGISTROS_PAGINA);
        }

        request.setAttribute("listaLineaGeneral", listaLineaGeneral);
        request.setAttribute("offset", offset);
        request.setAttribute("pagina", pagActual);
        request.setAttribute("cantPaginas", cantPaginas);
        request.setAttribute("cantRegistros", cantRegistros);
        request.setAttribute("comenzar", comenzar);
        request.setAttribute("finalizar", finalizar);

        request.setAttribute("maxPaginas", MAX_NUMERO_PAGINAS_MOSTRAR);
        request.setAttribute("op", op);

        //Nos vamos a la vista
        getServletContext().getRequestDispatcher(RUTA_MODULO + RESPUESTA).forward(request, response);

    } catch (ServletException | NumberFormatException | NamingException | IOException e) {
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.MaquinaGeneralServlet.java

/**
 * Metodo que permite mostrar un MODAL para seleccionar una linea
 *
 * @autor Leonardo Solano//  ww w.  j  a v a  2s .com
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso o 0 si no lo fue
 * @param op es la opcion escogida por el usuario
 */
public void mostrarModalSeleccionarLineaGeneral(HttpServletRequest request, HttpServletResponse response,
        int op) {

    //Nombre de la operacin
    String OPERACION = OperationConstants.MODAL_SELECCIONAR;

    try {

        //Obtenemos el Personal x Cargo de la planta
        int idEmpresaGeneral = usuario.getEmpresaGeneral().getId();

        //Obtenemos el id de la planta
        String idPlanta = request.getParameter("idPlanta") == null ? "0"
                : HashEncripter.getInstance().desencrypterKey(request.getParameter("idPlanta"));

        //Palabra a buscar
        String buscar = request.getParameter("buscar") == null ? "" : request.getParameter("buscar");

        //Obtenemos los ids ya seleccionados en Objetos JSON
        String jsonIds = request.getParameter("jsonIds") == null ? "{}" : request.getParameter("jsonIds");
        String ids = "";

        //Validamos que no sea vacio
        if (jsonIds != null && !jsonIds.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonIds, JsonElement.class).getAsJsonObject();

            JsonArray arrayIds = (JsonArray) result.get("id");

            for (int i = 0; i < arrayIds.size(); i++) {
                if (i < arrayIds.size() - 1) {
                    ids += (arrayIds.get(i).getAsString().isEmpty() ? "0"
                            : HashEncripter.getInstance().desencrypterKey(arrayIds.get(i).getAsString())) + ",";
                } else {
                    ids += arrayIds.get(i).getAsString().isEmpty() ? "0"
                            : HashEncripter.getInstance().desencrypterKey(arrayIds.get(i).getAsString());
                }
            }
        }

        //Obtenemos la cantidad de registros totales en la tabla
        int cantRegistros;
        if (!ids.isEmpty()) {
            cantRegistros = ServiceFactory.getInstance().getServiceBeanLab().obtenerCantidadLineasIdsOmitidos(
                    idEmpresaGeneral, Integer.parseInt(idPlanta), buscar, ids);
        } else {
            cantRegistros = ServiceFactory.getInstance().getServiceBeanLab()
                    .obtenerCantidadLineas(idEmpresaGeneral, Integer.parseInt(idPlanta), buscar);
        }

        //Cantidad de Paginas a mostrar
        int cantPaginas = (int) Math.ceil((double) cantRegistros / MAX_REGISTROS_PAGINA);
        cantPaginas = cantPaginas == 0 ? 1 : cantPaginas;

        //Obtenemos la pagina actual
        int pagActual = Integer
                .parseInt(request.getParameter("pag") == null ? "1" : request.getParameter("pag"));

        //Obtenemos el valor inicial a mostrar registros
        int offset = Math.abs((pagActual - 1) * MAX_REGISTROS_PAGINA);

        //PAGINAMOS    
        int mitad;
        int comenzar;
        int finalizar;

        if (MAX_NUMERO_PAGINAS_MOSTRAR < cantPaginas) {
            //Validamos si es PAR o IMPAR
            if (MAX_NUMERO_PAGINAS_MOSTRAR % 2 == 0) {
                //Obtnemos la mitad
                mitad = MAX_NUMERO_PAGINAS_MOSTRAR / 2;
                comenzar = pagActual - (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
                finalizar = pagActual + (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
            } else {
                //Obtnemos la mitad
                mitad = MAX_NUMERO_PAGINAS_MOSTRAR / 2 + 1;
                comenzar = pagActual - (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
                finalizar = pagActual + (MAX_NUMERO_PAGINAS_MOSTRAR - mitad);
            }

            //Validamos que la primera pagina no sea menor que la pagina 1
            if (comenzar < 1) {
                finalizar = finalizar + (1 - comenzar);
                comenzar = 1;
            }

            //Validamos que la ultima pagina no pase la el total de paginas
            if (finalizar > cantPaginas) {
                comenzar = comenzar - (finalizar - cantPaginas);
                finalizar = cantPaginas;
            }

        } else {
            comenzar = 1;
            finalizar = cantPaginas;
        }

        List<LineaGeneral> listaLineaGeneral;
        if (!ids.equals("")) {
            listaLineaGeneral = ServiceFactory.getInstance().getServiceBeanLab()
                    .obtenerLineasPorPlantaIdsOmitidos(idEmpresaGeneral, Integer.parseInt(idPlanta), buscar,
                            ids, offset, MAX_REGISTROS_PAGINA);
        } else {
            listaLineaGeneral = ServiceFactory.getInstance().getServiceBeanLab().obtenerLineasPorPlanta(
                    idEmpresaGeneral, Integer.parseInt(idPlanta), buscar, offset, MAX_REGISTROS_PAGINA);
        }

        request.setAttribute("listaLineaGeneral", listaLineaGeneral);
        request.setAttribute("offset", offset);
        request.setAttribute("pagina", pagActual);
        request.setAttribute("cantPaginas", cantPaginas);
        request.setAttribute("cantRegistros", cantRegistros);
        request.setAttribute("comenzar", comenzar);
        request.setAttribute("finalizar", finalizar);

        request.setAttribute("maxPaginas", MAX_NUMERO_PAGINAS_MOSTRAR);
        request.setAttribute("op", op);

        //Nos vamos a la vista
        getServletContext().getRequestDispatcher(RUTA_MODULO + RESPUESTA).forward(request, response);

    } catch (ServletException | NumberFormatException | NamingException | IOException e) {
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception ex) {
        Logger.getLogger(MaquinaGeneralServlet.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.PlantaGeneralServlet.java

/**
 * Metodo que permite insertar/*from  ww  w  .  j ava  2  s  .  com*/
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso, 2 si ya existe o 0 si no fue
 * exitoso
 * @exception IOException
 */
public void agregarPlanta(HttpServletRequest request, HttpServletResponse response) throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.AGREGAR_PLANTA_GENERAL;

    int resp = 0;

    try {

        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "planta_";

            JsonArray arrayCodigo = (JsonArray) result.get(prefijo + "codigo");
            JsonArray arrayRazonSocial = (JsonArray) result.get(prefijo + "razonSocial");
            JsonArray arrayTipoDocumento = (JsonArray) result.get(prefijo + "comboTipoDocumento");
            JsonArray arrayNIT = (JsonArray) result.get(prefijo + "NIT");
            JsonArray arrayCelular1 = (JsonArray) result.get(prefijo + "celular1");
            JsonArray arrayCelular2 = (JsonArray) result.get(prefijo + "celular2");
            JsonArray arrayTelFijo1 = (JsonArray) result.get(prefijo + "telFijo1");
            JsonArray arrayTelFijo2 = (JsonArray) result.get(prefijo + "telFijo2");
            JsonArray arrayEmail = (JsonArray) result.get(prefijo + "email");
            JsonArray arrayDireccion = (JsonArray) result.get(prefijo + "direccion");
            JsonArray arrayCiudad = (JsonArray) result.get(prefijo + "comboCiudad");

            //Organizamos el objeto a agregar
            PlantaGeneral plantaGeneral = new PlantaGeneral();
            for (int i = 0; i < arrayCodigo.size(); i++) {
                plantaGeneral.setCodigo(
                        arrayCodigo.get(i).getAsString().isEmpty() ? "" : arrayCodigo.get(i).getAsString());
                plantaGeneral.setRazonSocial(arrayRazonSocial.get(i).getAsString().isEmpty() ? ""
                        : arrayRazonSocial.get(i).getAsString());

                //TipoDocumento
                TipoDocumento tipoDocumento = new TipoDocumento();
                tipoDocumento.setId(arrayTipoDocumento.get(i).getAsInt());
                plantaGeneral.setTipoDocumento(tipoDocumento);

                plantaGeneral
                        .setNIT(arrayNIT.get(i).getAsString().isEmpty() ? "" : arrayNIT.get(i).getAsString());
                plantaGeneral.setCelular1(
                        arrayCelular1.get(i).getAsString().isEmpty() ? "" : arrayCelular1.get(i).getAsString());
                plantaGeneral.setCelular2(
                        arrayCelular2.get(i).getAsString().isEmpty() ? "" : arrayCelular2.get(i).getAsString());
                plantaGeneral.setTelFijo1(
                        arrayTelFijo1.get(i).getAsString().isEmpty() ? "" : arrayTelFijo1.get(i).getAsString());
                plantaGeneral.setTelFijo2(
                        arrayTelFijo2.get(i).getAsString().isEmpty() ? "" : arrayTelFijo2.get(i).getAsString());
                plantaGeneral.setEmail(
                        arrayEmail.get(i).getAsString().isEmpty() ? "" : arrayEmail.get(i).getAsString());
                plantaGeneral.setDireccion(arrayDireccion.get(i).getAsString().isEmpty() ? ""
                        : arrayDireccion.get(i).getAsString());

                //Ciudad
                Ciudad ciudad = new Ciudad();
                ciudad.setId(arrayCiudad.get(i).getAsInt());
                plantaGeneral.setCiudad(ciudad);
            }

            //Agregamos el objeto a la BD
            resp = ServiceFactory.getInstance().getServiceBeanLab().agregarPlanta(usuario, plantaGeneral);
        }

        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.PlantaGeneralServlet.java

/**
 * Metodo que permite modificar//from ww  w .  j  a  v  a 2 s .  c  o m
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso o 0 si no lo fue
 * @exception IOException
 */
public void modificarPlanta(HttpServletRequest request, HttpServletResponse response) throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.MODIFICAR_PLANTA_GENERAL;

    int resp = 0;

    try {
        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "planta_";

            JsonArray arrayIdPlanta = (JsonArray) result.get(prefijo + "idPlanta");
            JsonArray arrayCodigo = (JsonArray) result.get(prefijo + "codigo");
            JsonArray arrayRazonSocial = (JsonArray) result.get(prefijo + "razonSocial");
            JsonArray arrayTipoDocumento = (JsonArray) result.get(prefijo + "comboTipoDocumento");
            JsonArray arrayNIT = (JsonArray) result.get(prefijo + "NIT");
            JsonArray arrayCelular1 = (JsonArray) result.get(prefijo + "celular1");
            JsonArray arrayCelular2 = (JsonArray) result.get(prefijo + "celular2");
            JsonArray arrayTelFijo1 = (JsonArray) result.get(prefijo + "telFijo1");
            JsonArray arrayTelFijo2 = (JsonArray) result.get(prefijo + "telFijo2");
            JsonArray arrayEmail = (JsonArray) result.get(prefijo + "email");
            JsonArray arrayDireccion = (JsonArray) result.get(prefijo + "direccion");
            JsonArray arrayCiudad = (JsonArray) result.get(prefijo + "comboCiudad");

            //Organizamos el objeto a agregar
            PlantaGeneral plantaGeneral = new PlantaGeneral();
            for (int i = 0; i < arrayIdPlanta.size(); i++) {
                plantaGeneral.setId(Integer.parseInt(
                        HashEncripter.getInstance().desencrypterKey(arrayIdPlanta.get(i).getAsString())));
                plantaGeneral.setCodigo(
                        arrayCodigo.get(i).getAsString().isEmpty() ? "" : arrayCodigo.get(i).getAsString());
                plantaGeneral.setRazonSocial(arrayRazonSocial.get(i).getAsString().isEmpty() ? ""
                        : arrayRazonSocial.get(i).getAsString());

                //TipoDocumento
                TipoDocumento tipoDocumento = new TipoDocumento();
                tipoDocumento.setId(arrayTipoDocumento.get(i).getAsInt());
                plantaGeneral.setTipoDocumento(tipoDocumento);

                plantaGeneral
                        .setNIT(arrayNIT.get(i).getAsString().isEmpty() ? "" : arrayNIT.get(i).getAsString());
                plantaGeneral.setCelular1(
                        arrayCelular1.get(i).getAsString().isEmpty() ? "" : arrayCelular1.get(i).getAsString());
                plantaGeneral.setCelular2(
                        arrayCelular2.get(i).getAsString().isEmpty() ? "" : arrayCelular2.get(i).getAsString());
                plantaGeneral.setTelFijo1(
                        arrayTelFijo1.get(i).getAsString().isEmpty() ? "" : arrayTelFijo1.get(i).getAsString());
                plantaGeneral.setTelFijo2(
                        arrayTelFijo2.get(i).getAsString().isEmpty() ? "" : arrayTelFijo2.get(i).getAsString());
                plantaGeneral.setEmail(
                        arrayEmail.get(i).getAsString().isEmpty() ? "" : arrayEmail.get(i).getAsString());
                plantaGeneral.setDireccion(arrayDireccion.get(i).getAsString().isEmpty() ? ""
                        : arrayDireccion.get(i).getAsString());

                //Ciudad
                Ciudad ciudad = new Ciudad();
                ciudad.setId(arrayCiudad.get(i).getAsInt());
                plantaGeneral.setCiudad(ciudad);
            }

            //Obtenemos el usuario por session
            //Modificamos el objeto a la BD                
            resp = ServiceFactory.getInstance().getServiceBeanLab().modificarPlanta(usuario, plantaGeneral);
        }

        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}

From source file:co.com.powersoft.lab.databaselab.controller.PlantaGeneralServlet.java

/**
 * Metodo que permite insertar/*from   ww  w .  j a v a2s.  c  om*/
 *
 * @autor Leonardo Solano
 * @param request contiene los datos pasados por AJAX
 * @param response contiene 1 si fue exitoso, 2 si ya existe o 0 si no fue
 * exitoso
 * @exception IOException
 */
public void agregarPersonalPlanta(HttpServletRequest request, HttpServletResponse response) throws IOException {

    //Nombre de la operacin
    String OPERACION = OperationConstants.AGREGAR_PERSONAL_PLANTA_GENERAL;

    int resp = 0;

    try {
        //Objetos JSON
        String jsonElementos = request.getParameter("jsonElementos") == null ? "{}"
                : request.getParameter("jsonElementos");
        String idPlanta = request.getParameter("idPlanta") == null ? "0"
                : HashEncripter.getInstance().desencrypterKey(request.getParameter("idPlanta"));

        //Validamos que no sea vacio
        if (jsonElementos != null && !jsonElementos.equals("{}")) {

            Gson gson = new Gson();
            JsonObject result = gson.fromJson(jsonElementos, JsonElement.class).getAsJsonObject();
            //Nombre del prefijo del formulario
            String prefijo = "personaPlanta_";

            //                JsonArray arrayPersonaGeneralId = (JsonArray) result.get(prefijo + "personaGeneralId");
            JsonArray arrayTipoDocumento = (JsonArray) result.get(prefijo + "comboTipoDocumento");
            JsonArray arrayDocumento = (JsonArray) result.get(prefijo + "documento");
            JsonArray arrayPNombre = (JsonArray) result.get(prefijo + "pNombre");
            JsonArray arraySNombre = (JsonArray) result.get(prefijo + "sNombre");
            JsonArray arrayPApellido = (JsonArray) result.get(prefijo + "pApellido");
            JsonArray arraySApellido = (JsonArray) result.get(prefijo + "sApellido");
            JsonArray arrayCelular = (JsonArray) result.get(prefijo + "celular");
            JsonArray arrayTelFijo = (JsonArray) result.get(prefijo + "telFijo");
            JsonArray arrayFechaNacimiento = (JsonArray) result.get(prefijo + "fechaNacimiento");
            JsonArray arraySexo = (JsonArray) result.get(prefijo + "radioSexo");
            JsonArray arrayEmail = (JsonArray) result.get(prefijo + "email");
            JsonArray arrayDireccion = (JsonArray) result.get(prefijo + "direccion");
            JsonArray arrayCiudad = (JsonArray) result.get(prefijo + "comboCiudad");
            JsonArray arrayCodigoPostal = (JsonArray) result.get(prefijo + "codigoPostal");

            JsonArray arrayProfesion = (JsonArray) result.get(prefijo + "profesion");
            JsonArray arrayLicenciaProfesional = (JsonArray) result.get(prefijo + "licenciaProfesional");
            JsonArray arrayNumeroAutorizacion = (JsonArray) result.get(prefijo + "numeroAutorizacion");
            JsonArray arrayFechaAutorizacion = (JsonArray) result.get(prefijo + "fechaAutorizacion");
            JsonArray arrayAutoridadSuperior = (JsonArray) result.get(prefijo + "idAutoridadSuperior");

            //Organizamos el objeto a agregar
            PersonaPlantaGeneral personaPlantaGeneral = new PersonaPlantaGeneral();
            for (int i = 0; i < arrayDocumento.size(); i++) {

                //PlantaGeneral
                PlantaGeneral plantaGeneral = new PlantaGeneral();
                plantaGeneral.setId(Integer.parseInt(idPlanta));
                personaPlantaGeneral.setPlantaGeneral(plantaGeneral);

                //TipoCargoPlantaGeneral
                TipoCargoPlantaGeneral tipoCargoPlantaGeneral = new TipoCargoPlantaGeneral();
                tipoCargoPlantaGeneral.setId(Integer.parseInt(
                        request.getParameter("idCargo") == null ? "0" : request.getParameter("idCargo")));
                personaPlantaGeneral.setTipoCargoPlantaGeneral(tipoCargoPlantaGeneral);

                //Persona General
                PersonaGeneral personaGeneral = new PersonaGeneral();

                //TipoDocumento
                TipoDocumento tipoDocumento = new TipoDocumento();
                tipoDocumento.setId(arrayTipoDocumento.get(i).getAsInt());
                personaGeneral.setTipoDocumento(tipoDocumento);

                personaGeneral.setDocumento(arrayDocumento.get(i).getAsString().isEmpty() ? ""
                        : arrayDocumento.get(i).getAsString());
                personaGeneral.setpNombre(
                        arrayPNombre.get(i).getAsString().isEmpty() ? "" : arrayPNombre.get(i).getAsString());
                personaGeneral.setsNombre(
                        arraySNombre.get(i).getAsString().isEmpty() ? "" : arraySNombre.get(i).getAsString());
                personaGeneral.setpApellido(arrayPApellido.get(i).getAsString().isEmpty() ? ""
                        : arrayPApellido.get(i).getAsString());
                personaGeneral.setsApellido(arraySApellido.get(i).getAsString().isEmpty() ? ""
                        : arraySApellido.get(i).getAsString());
                personaGeneral.setCelular(
                        arrayCelular.get(i).getAsString().isEmpty() ? "" : arrayCelular.get(i).getAsString());
                personaGeneral.setTelFijo(
                        arrayTelFijo.get(i).getAsString().isEmpty() ? "" : arrayTelFijo.get(i).getAsString());
                personaGeneral.setFechaNacimiento(arrayFechaNacimiento.get(i).getAsString().isEmpty() ? ""
                        : arrayFechaNacimiento.get(i).getAsString());
                personaGeneral.setSexo(arraySexo.get(i).getAsString().isEmpty() ? ""
                        : arraySexo.get(i).getAsString().toUpperCase());
                personaGeneral.setEmail(
                        arrayEmail.get(i).getAsString().isEmpty() ? "" : arrayEmail.get(i).getAsString());
                personaGeneral.setDireccion(arrayDireccion.get(i).getAsString().isEmpty() ? ""
                        : arrayDireccion.get(i).getAsString());
                personaGeneral.setCodigoPostal(arrayCodigoPostal.get(i).getAsString().isEmpty() ? ""
                        : arrayCodigoPostal.get(i).getAsString());

                //Ciudad
                Ciudad ciudad = new Ciudad();
                ciudad.setId(arrayCiudad.get(i).getAsInt());
                personaGeneral.setCiudad(ciudad);

                personaPlantaGeneral.setPersonaGeneral(personaGeneral);

                //Profesion
                personaPlantaGeneral.setProfesion(arrayProfesion.get(i).getAsString().isEmpty() ? ""
                        : arrayProfesion.get(i).getAsString());
                personaPlantaGeneral
                        .setLicenciaProfesional(arrayLicenciaProfesional.get(i).getAsString().isEmpty() ? ""
                                : arrayLicenciaProfesional.get(i).getAsString());
                personaPlantaGeneral
                        .setNumeroAutorizacion(arrayNumeroAutorizacion.get(i).getAsString().isEmpty() ? ""
                                : arrayNumeroAutorizacion.get(i).getAsString());

                if (!arrayFechaAutorizacion.get(i).getAsString().isEmpty()) {
                    Date fecha = Utilidades.getInstance()
                            .convertirFecha(arrayFechaAutorizacion.get(i).getAsString(), "yyyy-MM-dd");
                    personaPlantaGeneral.setFechaAutorizacion(fecha);
                }

                //Validamos si tiene autoridad superior
                if (tipoCargoPlantaGeneral.getId() != 1) {
                    PersonaPlantaGeneral autoridadSuperior = new PersonaPlantaGeneral();
                    String idAutoridadSuperior = arrayAutoridadSuperior.get(i).getAsString().isEmpty() ? "0"
                            : arrayAutoridadSuperior.get(i).getAsString();
                    autoridadSuperior.setId(
                            Integer.parseInt(HashEncripter.getInstance().desencrypterKey(idAutoridadSuperior)));
                    personaPlantaGeneral.setAutoridadSuperior(autoridadSuperior);
                }
            }

            //Agregamos el objeto a la BD
            resp = ServiceFactory.getInstance().getServiceBeanLab().agregarPersonaPlanta(usuario,
                    personaPlantaGeneral);
        }
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);

    } catch (NumberFormatException | JsonSyntaxException | NamingException | IOException e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    } catch (Exception e) {
        //Retornamos la respuesta al JSP
        respuestaServer(response, resp);
        logger.error(ErrorUtil.getInstance().getErrorData(e, OPERACION, INFO_ADICIONAL), e);
    }
}