Example usage for java.lang Byte Byte

List of usage examples for java.lang Byte Byte

Introduction

In this page you can find the example usage for java.lang Byte Byte.

Prototype

@Deprecated(since = "9")
public Byte(String s) throws NumberFormatException 

Source Link

Document

Constructs a newly allocated Byte object that represents the byte value indicated by the String parameter.

Usage

From source file:ResultSetIterator.java

/**
 * Convert a <code>ResultSet</code> column into an object.  Simple 
 * implementations could just call <code>rs.getObject(index)</code> while
 * more complex implementations could perform type manipulation to match 
 * the column's type to the bean property type.
 * //from w  w w . j av  a  2  s  .c om
 * <p>
 * This implementation calls the appropriate <code>ResultSet</code> getter 
 * method for the given property type to perform the type conversion.  If 
 * the property type doesn't match one of the supported 
 * <code>ResultSet</code> types, <code>getObject</code> is called.
 * </p>
 * 
 * @param rs The <code>ResultSet</code> currently being processed.  It is
 * positioned on a valid row before being passed into this method.
 * 
 * @param index The current column index being processed.
 * 
 * @param propType The bean property type that this column needs to be
 * converted into.
 * 
 * @throws SQLException if a database access error occurs
 * 
 * @return The object from the <code>ResultSet</code> at the given column
 * index after optional type processing or <code>null</code> if the column
 * value was SQL NULL.
 */
protected Object processColumn(ResultSet rs, int index, Class propType) throws SQLException {

    if (!propType.isPrimitive() && rs.getObject(index) == null) {
        return null;
    }

    if (propType.equals(String.class)) {
        return rs.getString(index);

    } else if (propType.equals(Integer.TYPE) || propType.equals(Integer.class)) {
        return new Integer(rs.getInt(index));

    } else if (propType.equals(Boolean.TYPE) || propType.equals(Boolean.class)) {
        return new Boolean(rs.getBoolean(index));

    } else if (propType.equals(Long.TYPE) || propType.equals(Long.class)) {
        return new Long(rs.getLong(index));

    } else if (propType.equals(Double.TYPE) || propType.equals(Double.class)) {
        return new Double(rs.getDouble(index));

    } else if (propType.equals(Float.TYPE) || propType.equals(Float.class)) {
        return new Float(rs.getFloat(index));

    } else if (propType.equals(Short.TYPE) || propType.equals(Short.class)) {
        return new Short(rs.getShort(index));

    } else if (propType.equals(Byte.TYPE) || propType.equals(Byte.class)) {
        return new Byte(rs.getByte(index));

    } else if (propType.equals(Timestamp.class)) {
        return rs.getTimestamp(index);

    } else {
        return rs.getObject(index);
    }

}

From source file:org.skyscreamer.nevado.jms.message.NevadoStreamMessage.java

/**
 * Reads an object from the stream message. <p/>
 * <P>/*from   ww w.j av  a  2s  .c om*/
 * This method can be used to return, in objectified format, an object in
 * the Java programming language ("Java object") that has been written to
 * the stream with the equivalent <CODE>writeObject</CODE> method call, or
 * its equivalent primitive <CODE>write<I>type</I></CODE> method. <p/>
 * <P>
 * Note that byte values are returned as <CODE>byte[]</CODE>, not <CODE>Byte[]</CODE>.
 * <p/>
 * <P>
 * An attempt to call <CODE>readObject</CODE> to read a byte field value
 * into a new <CODE>byte[]</CODE> object before the full value of the byte
 * field has been read will throw a <CODE>MessageFormatException</CODE>.
 *
 * @return a Java object from the stream message, in objectified format (for
 *         example, if the object was written as an <CODE>int</CODE>, an
 *         <CODE>Integer</CODE> is returned)
 * @throws JMSException
 *             if the JMS provider fails to read the message due to some
 *             internal error.
 * @throws MessageEOFException
 *             if unexpected end of message stream has been reached.
 * @throws MessageFormatException
 *             if this type conversion is invalid.
 * @throws MessageNotReadableException
 *             if the message is in write-only mode.
 * @see #readBytes(byte[] value)
 */

public Object readObject() throws JMSException {
    initializeReading();
    try {
        this.dataIn.mark(65);
        int type = this.dataIn.read();
        if (type == -1) {
            throw new MessageEOFException("reached end of data");
        }
        if (type == MarshallingSupport.NULL) {
            return null;
        }
        if (type == MarshallingSupport.BIG_STRING_TYPE) {
            return MarshallingSupport.readUTF8(dataIn);
        }
        if (type == MarshallingSupport.STRING_TYPE) {
            return this.dataIn.readUTF();
        }
        if (type == MarshallingSupport.LONG_TYPE) {
            return new Long(this.dataIn.readLong());
        }
        if (type == MarshallingSupport.INTEGER_TYPE) {
            return new Integer(this.dataIn.readInt());
        }
        if (type == MarshallingSupport.SHORT_TYPE) {
            return new Short(this.dataIn.readShort());
        }
        if (type == MarshallingSupport.BYTE_TYPE) {
            return new Byte(this.dataIn.readByte());
        }
        if (type == MarshallingSupport.FLOAT_TYPE) {
            return new Float(this.dataIn.readFloat());
        }
        if (type == MarshallingSupport.DOUBLE_TYPE) {
            return new Double(this.dataIn.readDouble());
        }
        if (type == MarshallingSupport.BOOLEAN_TYPE) {
            return this.dataIn.readBoolean() ? Boolean.TRUE : Boolean.FALSE;
        }
        if (type == MarshallingSupport.CHAR_TYPE) {
            return new Character(this.dataIn.readChar());
        }
        if (type == MarshallingSupport.BYTE_ARRAY_TYPE) {
            int len = this.dataIn.readInt();
            byte[] value = new byte[len];
            this.dataIn.readFully(value);
            return value;
        } else {
            this.dataIn.reset();
            throw new MessageFormatException("unknown type");
        }
    } catch (NumberFormatException mfe) {
        try {
            this.dataIn.reset();
        } catch (IOException ioe) {
            JMSException jmsEx = new MessageFormatException(ioe.getMessage());
            jmsEx.setLinkedException(ioe);
            throw jmsEx;
        }
        throw mfe;

    } catch (EOFException e) {
        JMSException jmsEx = new MessageEOFException(e.getMessage());
        jmsEx.setLinkedException(e);
        throw jmsEx;
    } catch (IOException e) {
        JMSException jmsEx = new MessageFormatException(e.getMessage());
        jmsEx.setLinkedException(e);
        throw jmsEx;
    }
}

From source file:net.sourceforge.msscodefactory.cfasterisk.v2_0.CFAstXMsgClient.CFAstXMsgClientSchema.java

public static Byte getNullableByte(ResultSet reader, int colidx) {
    try {/*from w  w  w .  ja v a2  s  .  c om*/
        byte val = reader.getByte(colidx);
        if (reader.wasNull()) {
            return (null);
        } else {
            return (new Byte(val));
        }
    } catch (SQLException e) {
        throw CFLib.getDefaultExceptionFactory().newDbException(CFAstXMsgClientSchema.class, "getNullableByte",
                e);
    }
}

From source file:net.sf.json.TestJSONObject.java

public void testFromObject_use_wrappers() {
    JSONObject json = JSONObject.fromObject(Boolean.TRUE);
    assertTrue(json.isEmpty());//from   w  w  w  .  ja  v  a2  s.  c  o  m
    json = JSONObject.fromObject(new Byte(Byte.MIN_VALUE));
    assertTrue(json.isEmpty());
    json = JSONObject.fromObject(new Short(Short.MIN_VALUE));
    assertTrue(json.isEmpty());
    json = JSONObject.fromObject(new Integer(Integer.MIN_VALUE));
    assertTrue(json.isEmpty());
    json = JSONObject.fromObject(new Long(Long.MIN_VALUE));
    assertTrue(json.isEmpty());
    json = JSONObject.fromObject(new Float(Float.MIN_VALUE));
    assertTrue(json.isEmpty());
    json = JSONObject.fromObject(new Double(Double.MIN_VALUE));
    assertTrue(json.isEmpty());
    json = JSONObject.fromObject(new Character('A'));
    assertTrue(json.isEmpty());
}

From source file:org.opendaylight.controller.netconf.confignetconfconnector.NetconfMappingTest.java

License:asdf

private void setModule(final NetconfTestImplModuleMXBean mxBean, final ConfigTransactionJMXClient transaction,
        String depName) throws InstanceAlreadyExistsException, InstanceNotFoundException {
    mxBean.setSimpleInt((long) 44);
    mxBean.setBinaryLeaf(new byte[] { 8, 7, 9 });
    final DtoD dtob = getDtoD();
    mxBean.setDtoD(dtob);/*from w ww . j  a v a 2  s.c om*/
    //
    final DtoC dtoa = getDtoC();
    mxBean.setDtoC(dtoa);
    mxBean.setSimpleBoolean(false);
    //
    final Peers p1 = new Peers();
    p1.setCoreSize(44L);
    p1.setPort("port1");
    p1.setSimpleInt3(456);
    final Peers p2 = new Peers();
    p2.setCoreSize(44L);
    p2.setPort("port23");
    p2.setSimpleInt3(456);
    mxBean.setPeers(Lists.<Peers>newArrayList(p1, p2));
    // //
    mxBean.setSimpleLong(454545L);
    mxBean.setSimpleLong2(44L);
    mxBean.setSimpleBigInteger(BigInteger.valueOf(999L));
    mxBean.setSimpleByte(new Byte((byte) 4));
    mxBean.setSimpleShort(new Short((short) 4));
    mxBean.setSimpleTest(545);

    mxBean.setComplexList(Lists.<ComplexList>newArrayList());
    mxBean.setSimpleList(Lists.<Integer>newArrayList());

    final ObjectName testingDepOn = transaction.createModule(this.factory2.getImplementationName(), depName);
    int i = 1;
    for (Class<? extends AbstractServiceInterface> sInterface : factory2.getImplementedServiceIntefaces()) {
        ServiceInterfaceAnnotation annotation = sInterface.getAnnotation(ServiceInterfaceAnnotation.class);
        transaction.saveServiceReference(
                transaction.getServiceInterfaceName(annotation.namespace(), annotation.localName()),
                "ref_from_code_to_" + depName + "_" + i++, testingDepOn);

    }
    mxBean.setTestingDep(testingDepOn);
}

From source file:org.plasma.sdo.helper.DataConverter.java

public Object fromShort(Type targetType, short value) {
    DataType targetDataType = DataType.valueOf(targetType.getName());
    switch (targetDataType) {
    case Short:
        return Short.valueOf(value);
    case Byte:
        return new Byte(Short.valueOf(value).byteValue());
    case Double:
        return new Double(Short.valueOf(value).doubleValue());
    case Float:
        return new Float(Short.valueOf(value).floatValue());
    case Int:/*from   ww  w. ja  va 2 s .c o m*/
        return new Integer(Short.valueOf(value).intValue());
    case Long:
        return new Long(Short.valueOf(value).longValue());
    case String:
        return Short.valueOf(value).toString();
    default:
        throw new InvalidDataConversionException(targetDataType, DataType.Short, value);
    }
}

From source file:forseti.nomina.JNomMovDirDlg.java

@SuppressWarnings({ "rawtypes", "unchecked" })
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    super.doPost(request, response);

    String nom_nomina_dlg = "";
    request.setAttribute("nom_nomina_dlg", nom_nomina_dlg);

    String mensaje = "";
    short idmensaje = -1;
    String usuario = getSesion(request).getID_Usuario();

    if (request.getContentType() != null
            && request.getContentType().toLowerCase().indexOf("multipart/form-data") > -1) {
        if (!getSesion(request).getRegistrado()) {
            irApag("/forsetiweb/errorAtributos.jsp", request, response);
            return;
        } else {//from  w  w w  . j a  v  a2s  .  c o  m
            try {
                HttpSession ses = request.getSession(true);
                JFacturasXML nomrecxml = (JFacturasXML) ses.getAttribute("nom_rec_xml");
                Vector archivos = new Vector();
                DiskFileUpload fu = new DiskFileUpload();
                List items = fu.parseRequest(request);
                Iterator iter = items.iterator();
                while (iter.hasNext()) {
                    FileItem item = (FileItem) iter.next();
                    if (item.isFormField())
                        nomrecxml.getParametros().put(item.getFieldName(), item.getString());
                    else
                        archivos.addElement(item);
                }

                // revisa por las entidades
                JNominaEntidadesSetIds setids = new JNominaEntidadesSetIds(request, usuario,
                        getSesion(request).getSesion("NOM_NOMINA").getEspecial());
                setids.Open();

                if (setids.getNumRows() < 1) {
                    idmensaje = 3;
                    mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                            "NOM_NOMINA", "NNOM||||", mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }

                SubirArchivosCFD(request, response, nomrecxml, archivos);
                return;
            } catch (FileUploadException e) {
                e.printStackTrace();
                return;
            } catch (Exception e) {
                e.printStackTrace();
                return;
            }
        }
    }

    if (request.getParameter("proceso") != null && !request.getParameter("proceso").equals("")) {
        // revisa por las entidades
        JNominaEntidadesSetIds setids = new JNominaEntidadesSetIds(request, usuario,
                getSesion(request).getSesion("NOM_NOMINA").getEspecial());
        setids.Open();

        if (setids.getNumRows() < 1) {
            idmensaje = 3;
            mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
            getSesion(request).setID_Mensaje(idmensaje, mensaje);
            RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "NOM_NOMINA",
                    "NNOM||||", mensaje);
            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
            return;
        }

        request.setAttribute("idmod", "NOM_NOMINA");
        request.setAttribute("fact_xml", "NOMINA");

        // Revisa por intento de intrusion (Salto de permiso de entidad)
        if (!request.getParameter("proceso").equals("AGREGAR_NOMINA") && request.getParameter("id") != null) {
            JNominasModuloSet set = new JNominasModuloSet(request);
            set.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
            set.Open();
            if (set.getNumRows() < 1) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "AL", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA", "NNOM|" + request.getParameter("id") + "|"
                                + setids.getAbsRow(0).getID_Sucursal() + "||",
                        mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        }

        if (request.getParameter("proceso").equals("ENLAZAR_RECIBO")) {
            //System.out.println("Enlazar Recibos");
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            JNominasModuloSet setnom = new JNominasModuloSet(request);
            setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
            setnom.Open();

            if (setids.getAbsRow(0).getCFD()
                    || (setnom.getAbsRow(0).getTipo() != 1 && setnom.getAbsRow(0).getTipo() != 2
                            && setnom.getAbsRow(0).getTipo() != 5 && setnom.getAbsRow(0).getTipo() != 6
                            && setnom.getAbsRow(0).getTipo() != 7 && setnom.getAbsRow(0).getTipo() != 8)) {
                idmensaje = 3;
                mensaje += "ERROR: No se puede enlazar ningun CFDI porque esta entidad de nmina genera sus propios CFDIs, o  porque esta nmina es del tipo especial, la cual no es compatible para sellar.<br>";
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("subproceso") == null) // Como el subproceso no es ENVIAR ni ENLAZAR,
            {
                //System.out.println("Subproceso Nulo");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/fact_dlg_xmls.jsp", request, response);
                return;
            } else {
                //System.out.println("Subproceso NO Nulo");
                if (request.getParameter("subproceso").equals("ENLAZAR")) {
                    // Se supone que el recibo aun no estar ligado a un recibo existente...
                    JCFDCompSet comprobante = new JCFDCompSet(request, "NOMINA");
                    comprobante.m_Where = "UUID = '" + p(request.getParameter("uuid")) + "'";
                    comprobante.Open();

                    if (comprobante.getNumRows() < 1 || !comprobante.getAbsRow(0).getFSI_Tipo().equals("ENT")
                            || comprobante.getAbsRow(0).getFSI_ID() != Integer
                                    .parseInt(getSesion(request).getSesion("NOM_NOMINA").getEspecial())) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se ha cargado el CFDI del recibo, ste ya esta ligado a otro recibo,  el CFDI se carg en otra entidad<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    HttpSession ses = request.getSession(true);
                    JFacturasXML nomrecxml = (JFacturasXML) ses.getAttribute("nom_rec_xml");

                    if (nomrecxml == null) {
                        nomrecxml = new JFacturasXML();
                        ses.setAttribute("nom_rec_xml", nomrecxml);
                    } else {
                        nomrecxml = null;
                        nomrecxml = new JFacturasXML();
                        ses.setAttribute("nom_rec_xml", nomrecxml);
                    }

                    StringBuffer sb_mensaje = new StringBuffer();
                    if (!JForsetiCFD.CargarDocumentoCFDI(request, nomrecxml, sb_mensaje,
                            request.getParameter("uuid"), "N")) {
                        idmensaje = 3;
                        mensaje += sb_mensaje.toString();
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    if (nomrecxml.getComprobante().getProperty("tipoDeComprobante").equals("ingreso")
                            || nomrecxml.getComprobante().getProperty("tipoDeComprobante").equals("traslado")) {
                        idmensaje = 3;
                        mensaje += "ERROR: El tipo de comprobante fiscal digital CFDI, No corresponde con el tipo de documento a enlazar.<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    //Verifica que el RFC del Emisor sea igual al RFC registrado, o que sea rfc generico
                    JBDSSet set = new JBDSSet(request);
                    set.ConCat(true);
                    set.m_Where = "Nombre = 'FSIBD_" + p(getSesion(request).getBDCompania()) + "'";
                    set.Open();
                    if (!nomrecxml.getRFC_Emisor().equalsIgnoreCase(set.getAbsRow(0).getRFC())) {
                        idmensaje = 3;
                        mensaje = "ERROR: El RFC del emisor en el XML no pertenece a la compaia";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje.toString());
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    if (request.getParameter("idempleado") == null) // Significa que debe agregar un nuevo recibo 
                    {
                        if (setnom.getAbsRow(0).getCerrado()) {
                            idmensaje = 3;
                            mensaje += "ERROR: No se puede enlazar el CFDI a un recibo nuevo porque la nmina ya esta protegida <br>";
                            getSesion(request).setID_Mensaje(idmensaje, mensaje);
                            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                            return;
                        }
                        //float descuento = Float.parseFloat(nomrecxml.getComprobante().getProperty("descuento"));
                        //float totalImpuestosRetenidos = Float.parseFloat(nomrecxml.getImpuestos().getProperty("totalImpuestosRetenidos"));
                        JMasempSet setemp = new JMasempSet(request);
                        setemp.m_Where = "ID_Compania = '0' and ID_Sucursal = '"
                                + getSesion(request).getSesion("NOM_NOMINA").getEspecial()
                                + "' and ( RFC_Letras || RFC_Fecha || RFC_Homoclave ) ~~* '"
                                + p(nomrecxml.getRFC_Receptor()) + "'";
                        setemp.Open();
                        //System.out.println(setemp.getSQL());
                        if (setemp.getNumRows() == 0) {
                            idmensaje = 1;
                            mensaje = "PRECAUCION: No existe el empleado dado de alta en el sistema, est dado de alta en otra entidad o el RFC del empleado no coincide con el del recibo";
                            getSesion(request).setID_Mensaje(idmensaje, mensaje.toString());
                            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                            return;
                        }

                        JNomMovDirSes rec = (JNomMovDirSes) ses.getAttribute("nom_nomina_dlg");
                        if (rec == null) {
                            rec = new JNomMovDirSes();
                            ses.setAttribute("nom_nomina_dlg", rec);
                        } else
                            rec.resetear();

                        JProcessSet setRec = new JProcessSet(request);
                        setRec.setSQL("select Recibo from VIEW_NOM_CALCULO_NOMINA_ESP where ID_Nomina = '"
                                + p(request.getParameter("id")) + "' order by Recibo desc limit 1");
                        setRec.Open();

                        if (setRec.getNumRows() > 0)
                            rec.setRecibo(Integer.valueOf(setRec.getAbsRow(0).getSTS("Col1")) + 1);
                        else
                            rec.setRecibo(1);

                        //Llena el recibo
                        rec.setUUID(nomrecxml.getTFD().getProperty("UUID"));
                        rec.setID_Empleado(setemp.getAbsRow(0).getID_Empleado());
                        rec.setNombre(setemp.getAbsRow(0).getNombre() + " "
                                + setemp.getAbsRow(0).getApellido_Paterno() + " "
                                + setemp.getAbsRow(0).getApellido_Materno());

                        JCalculoNominaDetSet dset = new JCalculoNominaDetSet(request);
                        dset.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                                + p(request.getParameter("idempleado")) + "'";
                        dset.Open();

                        for (int i = 0; i < nomrecxml.getPercepciones().size(); i++) {
                            Properties percepcion = (Properties) nomrecxml.getPercepciones().elementAt(i);
                            int clave;
                            String descripcion;
                            boolean esDeduccion;
                            int idmovimiento;
                            try {
                                idmovimiento = Integer.parseInt(percepcion.getProperty("Clave"));
                            } catch (NumberFormatException e) {
                                idmovimiento = 0;
                            }
                            JMovimientosNomSet cat = new JMovimientosNomSet(request);
                            cat.m_Where = "ID_Movimiento = '" + idmovimiento + "'";
                            //System.out.println(cat.getSQL());
                            cat.Open();
                            if (cat.getNumRows() > 0) {
                                clave = cat.getAbsRow(0).getID_Movimiento();
                                descripcion = cat.getAbsRow(0).getDescripcion();
                                esDeduccion = cat.getAbsRow(0).getDeduccion();
                            } else // Si no existe la clave en el catalogo, enlaza desde catlogo intermediario 
                            {
                                clave = 0;
                                descripcion = percepcion.getProperty("Concepto");
                                esDeduccion = false;
                            }
                            float gravado = Float.parseFloat(percepcion.getProperty("ImporteGravado"));
                            float exento = Float.parseFloat(percepcion.getProperty("ImporteExento"));

                            rec.agregaPartida(clave, descripcion, gravado, exento, 0.00F, esDeduccion);
                        }

                        for (int i = 0; i < nomrecxml.getDeducciones().size(); i++) {
                            Properties deduccion = (Properties) nomrecxml.getDeducciones().elementAt(i);
                            int clave;
                            String descripcion;
                            boolean esDeduccion;

                            JMovimientosNomSet cat = new JMovimientosNomSet(request);
                            cat.m_Where = "ID_Movimiento = '" + p(deduccion.getProperty("Clave")) + "'";
                            //System.out.println(cat.getSQL());
                            cat.Open();
                            if (cat.getNumRows() > 0) {
                                clave = cat.getAbsRow(0).getID_Movimiento();
                                descripcion = cat.getAbsRow(0).getDescripcion();
                                esDeduccion = cat.getAbsRow(0).getDeduccion();
                            } else // Si no existe la clave en el catalogo, enlaza desde catlogo intermediario 
                            {
                                clave = 0;
                                descripcion = deduccion.getProperty("Concepto");
                                esDeduccion = true;
                            }
                            float gravado = Float.parseFloat(deduccion.getProperty("ImporteGravado"));
                            float exento = Float.parseFloat(deduccion.getProperty("ImporteExento"));

                            rec.agregaPartida(clave, descripcion, 0.00F, 0.00F, -(gravado + exento),
                                    esDeduccion);
                        }

                        for (int i = 0; i < nomrecxml.getIncapacidades().size(); i++) {
                            Properties incapacidad = (Properties) nomrecxml.getIncapacidades().elementAt(i);

                            float dias = Float.parseFloat(incapacidad.getProperty("DiasIncapacidad"));
                            int tipo = Integer.parseInt(incapacidad.getProperty("TipoIncapacidad"));
                            if (tipo == 1)
                                rec.setIXA(dias);
                            else if (tipo == 2)
                                rec.setIXE(dias);
                            else
                                rec.setIXM(dias);

                        }

                        for (int i = 0; i < nomrecxml.getHorasExtras().size(); i++) {
                            Properties horasextra = (Properties) nomrecxml.getHorasExtras().elementAt(i);

                            byte dias = Byte.parseByte(horasextra.getProperty("Dias"));
                            String tipo = horasextra.getProperty("TipoHoras");
                            float horas = Float.parseFloat(horasextra.getProperty("HorasExtra"));

                            rec.setDiasHorasExtras(dias);
                            if (tipo.equals("Dobles") || tipo.equals("dobles"))
                                rec.setHE(horas);
                            else // Triples o triples
                                rec.setHT(horas);

                        }

                        rec.establecerResultados();

                        if ((JUtil.redondear(rec.getSumGravado() + rec.getSumExento() + rec.getSumDeduccion(),
                                2)
                                - JUtil.redondear(
                                        Float.parseFloat(nomrecxml.getComprobante().getProperty("total")),
                                        2)) > 0.1
                                || (JUtil.redondear(
                                        rec.getSumGravado() + rec.getSumExento() + rec.getSumDeduccion(), 2)
                                        - JUtil.redondear(
                                                Float.parseFloat(
                                                        nomrecxml.getComprobante().getProperty("total")),
                                                2)) < -0.1) {
                            idmensaje = 3;
                            mensaje = "ERROR: El total en el CFDI no corresponde al Total calculado en el registro a partir de este CFDI. No se puede agregar. DOC: "
                                    + JUtil.redondear(
                                            rec.getSumGravado() + rec.getSumExento() + rec.getSumDeduccion(), 2)
                                    + " XML: "
                                    + JUtil.redondear(
                                            Float.parseFloat(nomrecxml.getComprobante().getProperty("total")),
                                            2);
                            getSesion(request).setID_Mensaje(idmensaje, mensaje.toString());
                            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                            return;
                        }

                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                        return;

                    } else // Significa que debe Enlazar a un recibo existente
                    {
                        if (setnom.getAbsRow(0).getFormaPago().equals("N")) //Si no est ya pagada la nomina lo rechaza porque no hay poliza para enlazar el cfdi a la contabilidad electronica
                        {
                            idmensaje = 3;
                            mensaje += "ERROR: No se puede enlazar el CFDI a un recibo existente porque la nmina no esta pagada an, lo que significa que no existe una pliza asociada para el enlace a la contabilidad elecrnica <br>";
                            getSesion(request).setID_Mensaje(idmensaje, mensaje);
                            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                            return;
                        }

                        String[] valoresParam = request.getParameterValues("idempleado");
                        if (valoresParam.length == 1) {
                            JCalculoNominaEspSet cset = new JCalculoNominaEspSet(request);
                            cset.m_Where = "ID_Nomina = '" + p(request.getParameter("id"))
                                    + "' and ID_Empleado = '" + p(request.getParameter("idempleado")) + "'";
                            cset.Open();
                            //System.out.println(setemp.getSQL());

                            if (cset.getAbsRow(0).getID_CFD() != 0) {
                                idmensaje = 1;
                                mensaje += "PRECAUCION: Este recibo ya tiene un CFDI asociado. No puedes asociar otro CFDI al mismo recibo<br>";
                                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                                return;
                            }

                            JMasempSetCons setemp = new JMasempSetCons(request);
                            setemp.m_Where = "ID_Empleado = '" + p(request.getParameter("idempleado")) + "'";
                            setemp.Open();

                            if (JUtil.redondear(
                                    cset.getAbsRow(0).getGravado() + cset.getAbsRow(0).getExento()
                                            + cset.getAbsRow(0).getDeduccion(),
                                    2) != JUtil.redondear(
                                            Float.parseFloat(nomrecxml.getComprobante().getProperty("total")),
                                            2)
                                    || !(setemp.getAbsRow(0).getRFC_Letras()
                                            + setemp.getAbsRow(0).getRFC_Fecha()
                                            + setemp.getAbsRow(0).getRFC_Homoclave())
                                                    .equals(nomrecxml.getRFC_Receptor())) {
                                idmensaje = 1;
                                mensaje += "PRECAUCION: Los totales o los RFCs del recibo y el CFDI no coinciden. No se puede asociar este CFDI al registro<br>";
                                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                                return;
                            }

                            // Aqui asocia.
                            Enlazar(request, response);
                            return;
                        } else {
                            idmensaje = 1;
                            mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                            getSesion(request).setID_Mensaje(idmensaje, mensaje);
                            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                            return;
                        }
                    }

                } else if (request.getParameter("subproceso").equals("ENVIAR")) {
                    if (AgregarRecursos(request, response) == -1) {
                        AgregarCambiarEmp(request, response);
                        return;
                    }

                    irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                    return;
                }
            }
        } else if (request.getParameter("proceso").equals("AGREGAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_AGREGAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_AGREGAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_AGREGAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            JAdmCompaniasSet setcom = new JAdmCompaniasSet(request);
            setcom.m_Where = "ID_Compania = '0' and ID_Sucursal = '"
                    + getSesion(request).getSesion("NOM_NOMINA").getEspecial() + "'";
            setcom.Open();

            Byte numero_nomina = new Byte(setcom.getAbsRow(0).getNumero());
            Date desde = new Date(setcom.getAbsRow(0).getFecha().getTime());
            Calendar hast = new GregorianCalendar();
            hast.setTime(setcom.getAbsRow(0).getFecha());
            Integer ano = new Integer(JUtil.obtAno(hast));
            Integer tipo_de_nomina = new Integer(-1);

            if (setcom.getAbsRow(0).getPeriodo().equals("sem"))
                hast.add(Calendar.DATE, 6);
            else if (setcom.getAbsRow(0).getPeriodo().equals("qui"))
                hast.add(Calendar.DATE, 14);
            else {
                hast.add(Calendar.MONTH, 1);
                hast.add(Calendar.DATE, -1);
            }
            Date hasta = hast.getTime();

            request.setAttribute("numero_nomina", numero_nomina);
            request.setAttribute("ano", ano);
            request.setAttribute("desde", desde);
            request.setAttribute("hasta", hasta);
            request.setAttribute("tipo_de_nomina", tipo_de_nomina);

            // Solicitud de envio a procesar
            if (request.getParameter("subproceso") != null
                    && request.getParameter("subproceso").equals("ENVIAR")) {
                // Verificacion
                if (VerificarParametros(request, response)) {
                    AgregarCambiarCabecero(request, response);
                    return;
                }
                irApag("/forsetiweb/nomina/nom_nomina_dlg.jsp", request, response);
                return;
            } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de AGREGADO para agregar `por primera vez
            {
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/nomina/nom_nomina_dlg.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("CAMBIAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    JNominasModuloSet setnom = new JNominasModuloSet(request);
                    setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                    setnom.Open();

                    if (setnom.getAbsRow(0).getCerrado()) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede cambiar la n&oacute;mina porque ya esta protegida<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    if (setnom.getAbsRow(0).getTipo() != 1 && setnom.getAbsRow(0).getTipo() != 2) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede cambiar la nmina porque no es una nmina normal<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }
                    Byte numero_nomina = new Byte((byte) setnom.getAbsRow(0).getNumero_Nomina());
                    Integer ano = new Integer(setnom.getAbsRow(0).getAno());
                    Date desde = new Date(setnom.getAbsRow(0).getFecha_Desde().getTime());
                    Date hasta = new Date(setnom.getAbsRow(0).getFecha_Hasta().getTime());
                    Integer tipo_de_nomina = new Integer(setnom.getAbsRow(0).getTipo());

                    request.setAttribute("numero_nomina", numero_nomina);
                    request.setAttribute("ano", ano);
                    request.setAttribute("desde", desde);
                    request.setAttribute("hasta", hasta);
                    request.setAttribute("tipo_de_nomina", tipo_de_nomina);

                    // Solicitud de envio a procesar
                    if (request.getParameter("subproceso") != null
                            && request.getParameter("subproceso").equals("ENVIAR")) {
                        // Verificacion
                        if (VerificarParametros(request, response)) {
                            AgregarCambiarCabecero(request, response);
                            return;
                        }
                        irApag("/forsetiweb/nomina/nom_nomina_dlg.jsp", request, response);
                        return;
                    } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de AGREGADO para agregar `por primera vez
                    {
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/nomina/nom_nomina_dlg.jsp", request, response);
                        return;
                    }
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("ELIMINAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_ELIMINAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_ELIMINAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_ELIMINAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    JNominasModuloSet setnom = new JNominasModuloSet(request);
                    setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                    setnom.Open();

                    if (setnom.getAbsRow(0).getCerrado()) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede eliminar la n&oacute;mina porque ya esta protegida <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    JCalculoNominaEspSet cset = new JCalculoNominaEspSet(request);
                    cset.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and TFD >= 2";
                    cset.Open();
                    if (cset.getNumRows() > 0) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede eliminar la nmina porque por lo menos un recibo ya tiene su CFDI enlazado. Primero debes desenlazar el CFDI desde el mdulo de CFDI y CE del centro de control<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    Eliminar(request, response);
                    return;
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("CALCULAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_AGREGAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_AGREGAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_AGREGAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    JNominasModuloSet setnom = new JNominasModuloSet(request);
                    setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                    setnom.Open();

                    if (setnom.getAbsRow(0).getCerrado()) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede calcular la n&oacute;mina porque ya est protegida <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    if (setnom.getAbsRow(0).getTipo() == 1 || setnom.getAbsRow(0).getTipo() == 2) {
                        if (request.getParameter("subproceso") != null
                                && request.getParameter("subproceso").equals("ENVIAR")) {
                            //Normales
                            Calcular(request, response, 12);
                            return;
                        } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de AGREGADO para agregar `por primera vez
                        {
                            getSesion(request).setID_Mensaje(idmensaje, mensaje);
                            irApag("/forsetiweb/nomina/nom_nomina_dlg_calcular.jsp", request, response);
                            return;
                        }
                    } else if (setnom.getAbsRow(0).getTipo() == 5 || setnom.getAbsRow(0).getTipo() == 6) {
                        //Aguinaldo
                        Calcular(request, response, 56);
                        return;
                    } else {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede calcular la nmina porque el tipo de nmina no es calculable <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 1;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("GENERAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_AGREGAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_AGREGAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_AGREGAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    JNominasModuloSet setnom = new JNominasModuloSet(request);
                    setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                    setnom.Open();

                    if (!setnom.getAbsRow(0).getCerrado() || setnom.getAbsRow(0).getStatus().equals("P")
                            || setnom.getAbsRow(0).getStatus().equals("C")) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede generar pago de n&oacute;mina porque no esta protegida, ya esta pagada o esta cancelada <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    Generar(request, response);
                    return;

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("CARGAR_RECIBO")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("ADM_CFDI_CARGAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_CARGAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "ADM_CFDI_CARGAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            JNominasModuloSet setnom = new JNominasModuloSet(request);
            setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
            setnom.Open();

            if (setids.getAbsRow(0).getCFD()
                    || (setnom.getAbsRow(0).getTipo() != 1 && setnom.getAbsRow(0).getTipo() != 2
                            && setnom.getAbsRow(0).getTipo() != 5 && setnom.getAbsRow(0).getTipo() != 6)) {
                idmensaje = 3;
                mensaje += "ERROR: No se puede cargar ningun CFDI porque esta entidad de nmina genera sus propios CFDIs, o  porque el tipo, no es compatible para sellar.<br>";
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            Integer subir_archivos = new Integer(2);
            request.setAttribute("subir_archivos", subir_archivos);

            HttpSession ses = request.getSession(true);
            JFacturasXML rec = (JFacturasXML) ses.getAttribute("nom_rec_xml");

            if (rec == null) {
                rec = new JFacturasXML();
                ses.setAttribute("nom_rec_xml", rec);
            } else {
                rec = null;
                rec = new JFacturasXML();
                ses.setAttribute("nom_rec_xml", rec);
            }

            getSesion(request).setID_Mensaje(idmensaje, mensaje);
            irApag("/forsetiweb/subir_archivos.jsp?verif=/servlet/CEFNomMovDirDlg&archivo_1=xml&archivo_2=pdf&proceso=CARGAR_RECIBO&subproceso=ENVIAR",
                    request, response);
            return;

        } else if (request.getParameter("proceso").equals("SELLAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_AGREGAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_AGREGAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_AGREGAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    if (setids.getAbsRow(0).getCFD() == false) {
                        idmensaje = 1;
                        mensaje += "PRECAUCION: Esta entidad de nmina no est&aacute; establecida como CFDI. No se pueden sellar los registros<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    JNominasModuloSet setnom = new JNominasModuloSet(request);
                    setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                    setnom.Open();

                    if (!setnom.getAbsRow(0).getCerrado() || !setnom.getAbsRow(0).getStatus().equals("P")
                            || setnom.getAbsRow(0).getStatus().equals("C")) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede sellar esta nmina porque no esta protegida, no esta pagada o est cancelada <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    if (setnom.getAbsRow(0).getTipo() == 1 || setnom.getAbsRow(0).getTipo() == 2
                            || setnom.getAbsRow(0).getTipo() == 5 || setnom.getAbsRow(0).getTipo() == 6
                            || setnom.getAbsRow(0).getTipo() == 7 || setnom.getAbsRow(0).getTipo() == 8) {
                        JCalculoNominaEspSet SetMod = new JCalculoNominaEspSet(request);
                        SetMod.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                        SetMod.m_OrderBy = "Recibo ASC";
                        SetMod.Open();

                        for (int i = 0; i < SetMod.getNumRows(); i++) {
                            if (SetMod.getAbsRow(i).getTFD() == 3)
                                continue;

                            StringBuffer sb_mensaje = new StringBuffer(254);
                            idmensaje = generarCFDI(request, response, "NOMINA",
                                    Integer.parseInt(request.getParameter("id")),
                                    SetMod.getAbsRow(i).getID_Empleado(), setids, SetMod.getAbsRow(i).getTFD(),
                                    sb_mensaje);
                            mensaje += SetMod.getAbsRow(i).getID_Empleado() + " " + sb_mensaje.toString()
                                    + "<br>";
                            if (idmensaje == 3)
                                break;
                        }

                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    } else {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede sellar la n&oacute;mina porque se trata de una n&oacute;mina especial. <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("PROTEGER_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    JNominasModuloSet setnom = new JNominasModuloSet(request);
                    setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
                    setnom.Open();
                    if (!setnom.getAbsRow(0).getFormaPago().equals("N")
                            || setnom.getAbsRow(0).getStatus().equals("C")) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede desproteger la nmina porque ya esta pagada o esta cancelada.<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    Proteger(request, response);
                    return;
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("CONSULTAR_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/nomina/nom_nomina_dlg_cons.jsp", request, response);
                    return;
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("MOVER_NOMINA")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("id") != null) {
                String[] valoresParam = request.getParameterValues("id");
                if (valoresParam.length == 1) {
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/nomina/nom_nomina_dlg_cons.jsp", request, response);
                    return;
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("AGR_EMP")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }
            JNominasModuloSet setnom = new JNominasModuloSet(request);
            setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
            setnom.Open();

            if (setnom.getAbsRow(0).getCerrado() || setnom.getAbsRow(0).getStatus().equals("C")) {
                idmensaje = 3;
                mensaje += "ERROR: No se puede agregar el empleado porque la nmina ya est protegida o est cancelada.<br>";
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            // Solicitud de envio a procesar
            if (request.getParameter("subproceso") != null
                    && request.getParameter("subproceso").equals("ENVIAR")) {
                if (AgregarCabeceroRecibo(request, response) == -1) {
                    AgregarCambiarEmp(request, response);
                    return;
                }
                irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                return;
            } else if (request.getParameter("subproceso") != null
                    && request.getParameter("subproceso").equals("AGR_PART")) {
                if (AgregarCabeceroRecibo(request, response) == -1) {
                    if (VerificarParametrosPartida(request, response))
                        AgregarPartida(request, response);
                }
                irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                return;
            } else if (request.getParameter("subproceso") != null
                    && request.getParameter("subproceso").equals("EDIT_PART")) {
                if (AgregarCabeceroRecibo(request, response) == -1) {
                    if (VerificarParametrosPartida(request, response))
                        EditarPartida(request, response);
                }
                irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                return;
            } else if (request.getParameter("subproceso") != null
                    && request.getParameter("subproceso").equals("BORR_PART")) {
                if (AgregarCabeceroRecibo(request, response) == -1) {
                    BorrarPartida(request, response);
                }
                irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                return;
            } else // Como el subproceso no es ENVIAR ni AGR_PART ni EDIT_PART ni BORR_PART, abre la ventana del proceso de AGREGADO para agregar `por primera vez
            {
                HttpSession ses = request.getSession(true);
                JNomMovDirSes rec = (JNomMovDirSes) ses.getAttribute("nom_nomina_dlg");
                if (rec == null) {
                    rec = new JNomMovDirSes();
                    ses.setAttribute("nom_nomina_dlg", rec);
                } else
                    rec.resetear();

                JProcessSet setRec = new JProcessSet(request);
                setRec.setSQL("select Recibo from VIEW_NOM_CALCULO_NOMINA_ESP where ID_Nomina = '"
                        + p(request.getParameter("id")) + "' order by Recibo desc limit 1");
                setRec.Open();

                if (setRec.getNumRows() > 0)
                    rec.setRecibo(Integer.valueOf(setRec.getAbsRow(0).getSTS("Col1")) + 1);
                else
                    rec.setRecibo(1);

                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                return;
            }
        } else if (request.getParameter("proceso").equals("CAM_EMP")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            JNominasModuloSet setnom = new JNominasModuloSet(request);
            setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
            setnom.Open();

            if (setnom.getAbsRow(0).getCerrado() || setnom.getAbsRow(0).getStatus().equals("C")) {
                idmensaje = 3;
                mensaje += "ERROR: No se puede cambiar el recibo porque la nmina ya est protegida o est cancelada.<br>";
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("idempleado") != null) {
                String[] valoresParam = request.getParameterValues("idempleado");
                if (valoresParam.length == 1) {
                    JCalculoNominaEspSet cset = new JCalculoNominaEspSet(request);
                    cset.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                            + p(request.getParameter("idempleado")) + "'";
                    cset.Open();
                    if (cset.getAbsRow(0).getTFD() >= 2) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede cambiar el recibo porque ya tiene un CFDI enlazado.<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }
                    //Solicitud de envio a procesar
                    if (request.getParameter("subproceso") != null
                            && request.getParameter("subproceso").equals("ENVIAR")) {
                        // Verificacion
                        if (AgregarCabeceroRecibo(request, response) == -1) {
                            AgregarCambiarEmp(request, response);
                            return;
                        }
                        irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                        return;
                    } else if (request.getParameter("subproceso") != null
                            && request.getParameter("subproceso").equals("AGR_PART")) {
                        if (AgregarCabeceroRecibo(request, response) == -1) {
                            if (VerificarParametrosPartida(request, response))
                                AgregarPartida(request, response);
                        }
                        irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                        return;
                    } else if (request.getParameter("subproceso") != null
                            && request.getParameter("subproceso").equals("EDIT_PART")) {
                        if (AgregarCabeceroRecibo(request, response) == -1) {
                            if (VerificarParametrosPartida(request, response))
                                EditarPartida(request, response);
                        }
                        irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                        return;
                    } else if (request.getParameter("subproceso") != null
                            && request.getParameter("subproceso").equals("BORR_PART")) {
                        if (AgregarCabeceroRecibo(request, response) == -1) {
                            BorrarPartida(request, response);
                        }
                        irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                        return;
                    } else // Como el subproceso no es ENVIAR ni AGR_PART ni EDIT_PART ni BORR_PART, abre la ventana del proceso de AGREGADO para agregar `por primera vez
                    {
                        HttpSession ses = request.getSession(true);
                        JNomMovDirSes rec = (JNomMovDirSes) ses.getAttribute("nom_nomina_dlg");
                        if (rec == null) {
                            rec = new JNomMovDirSes();
                            ses.setAttribute("nom_nomina_dlg", rec);
                        } else
                            rec.resetear();

                        //Llena el empleado
                        JCalculoNominaEspSet set = new JCalculoNominaEspSet(request);
                        set.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                                + p(request.getParameter("idempleado")) + "'";
                        set.Open();

                        rec.setID_Empleado(set.getAbsRow(0).getID_Empleado());
                        rec.setNombre(set.getAbsRow(0).getNombre());
                        rec.setFaltas(set.getAbsRow(0).getFaltas());
                        rec.setHE(set.getAbsRow(0).getHE());
                        rec.setHD(set.getAbsRow(0).getHD());
                        rec.setHT(set.getAbsRow(0).getHT());
                        rec.setIXA(set.getAbsRow(0).getIXA());
                        rec.setIXE(set.getAbsRow(0).getIXE());
                        rec.setIXM(set.getAbsRow(0).getIXM());
                        rec.setRecibo(set.getAbsRow(0).getRecibo());
                        rec.setDiasHorasExtras(set.getAbsRow(0).getDiasHorasExtras());

                        JCalculoNominaDetSet dset = new JCalculoNominaDetSet(request);
                        dset.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                                + p(request.getParameter("idempleado")) + "'";
                        dset.Open();

                        for (int i = 0; i < dset.getNumRows(); i++) {
                            rec.agregaPartida(dset.getAbsRow(i).getID_Movimiento(),
                                    dset.getAbsRow(i).getDescripcion(), dset.getAbsRow(i).getGravado(),
                                    dset.getAbsRow(i).getExento(), dset.getAbsRow(i).getDeduccion(),
                                    dset.getAbsRow(i).getEsDeduccion());
                        }
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/nomina/nom_nomina_dlg_emp.jsp", request, response);
                        return;
                    }

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

        } else if (request.getParameter("proceso").equals("BORR_EMP")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA_CAMBIAR")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA_CAMBIAR");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA_CAMBIAR", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            JNominasModuloSet setnom = new JNominasModuloSet(request);
            setnom.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "'";
            setnom.Open();

            if (setnom.getAbsRow(0).getCerrado() || setnom.getAbsRow(0).getStatus().equals("C")) {
                idmensaje = 3;
                mensaje += "ERROR: No se puede borrar el recibo porque la nmina ya est protegida o est cancelada.<br>";
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("idempleado") != null) {
                String[] valoresParam = request.getParameterValues("idempleado");
                if (valoresParam.length == 1) {
                    JCalculoNominaEspSet cset = new JCalculoNominaEspSet(request);
                    cset.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                            + p(request.getParameter("idempleado")) + "'";
                    cset.Open();
                    if (cset.getAbsRow(0).getTFD() >= 2) {
                        idmensaje = 3;
                        mensaje += "ERROR: No se puede eliminar el recibo porque ya tiene un CFDI enlazado.<br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    EliminarEmp(request, response);
                    return;
                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

        } else if (request.getParameter("proceso").equals("IMPRIMIR")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("idempleado") != null) {
                String[] valoresParam = request.getParameterValues("idempleado");
                if (valoresParam.length == 1) {
                    //Solicitud de envio a procesar
                    if (request.getParameter("subproceso") != null
                            && request.getParameter("subproceso").equals("IMPRESION")) {
                        // Impresion
                        StringBuffer bsmensaje = new StringBuffer(254);
                        String SQLCab = "select * from view_nomina_recibos_impcab where ID_Nomina = "
                                + request.getParameter("id") + " and ID_Empleado = '"
                                + request.getParameter("idempleado") + "'";
                        String SQLDet = "select * from view_nomina_recibos_impdet where ID_Nomina = "
                                + request.getParameter("id") + " and ID_Empleado = '"
                                + request.getParameter("idempleado")
                                + "' order by esdeduccion asc, id_movimiento asc";

                        idmensaje = Imprimir(SQLCab, SQLDet, request.getParameter("idformato"), bsmensaje,
                                request, response);

                        if (idmensaje != -1) {
                            getSesion(request).setID_Mensaje(idmensaje, bsmensaje.toString());
                            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                            return;
                        }

                    } else {
                        request.setAttribute("impresion", "CEFNomMovDirDlg");
                        request.setAttribute("tipo_imp", "NOM_NOMINA");
                        request.setAttribute("formato_default", setids.getAbsRow(0).getFmt_Recibo());

                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/impresion_dlg.jsp", request, response);
                        return;
                    }

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

        } else if (request.getParameter("proceso").equals("ENVIAR_RECIBO")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("idempleado") != null) {
                String[] valoresParam = request.getParameterValues("idempleado");
                if (valoresParam.length == 1) {
                    //Solicitud de envio a procesar
                    JCalculoNominaEspSet SetMod = new JCalculoNominaEspSet(request);
                    SetMod.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                            + p(request.getParameter("idempleado")) + "'";
                    SetMod.Open();

                    if (SetMod.getAbsRow(0).getTFD() != 3) {
                        idmensaje = 1;
                        mensaje += "PRECAUCION: Este recibo no est&aacute; sellado completamente, no se puede enviar <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    JMasempSet set = new JMasempSet(request);
                    set.m_Where = "ID_Empleado = '" + p(request.getParameter("idempleado")) + "'";
                    set.Open();
                    if (set.getAbsRow(0).getSMTP() == 0) // Maneja smtp manual o automtico
                    {
                        idmensaje = 1;
                        mensaje += "PRECAUCION: Este empleado no esta confgurado para recibir sus recibos por correo <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;

                    }

                    JFsiSMTPClient smtp = new JFsiSMTPClient();
                    smtp.enviarCFDIMPE(request, "NOM", request.getParameter("id"),
                            request.getParameter("idempleado"), set.getAbsRow(0).getNombre(),
                            set.getAbsRow(0).getEMail());
                    if (smtp.getStatusSMTP() == JFsiSMTPClient.ERROR) {
                        idmensaje = 3;
                        mensaje += "ERROR: " + smtp.getError();
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    getSesion(request).setID_Mensaje((short) 0, "El correo se ha mandado satisfactoriamente");
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

        } else if (request.getParameter("proceso").equals("XML_RECIBO")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("idempleado") != null) {
                String[] valoresParam = request.getParameterValues("idempleado");
                if (valoresParam.length == 1) {
                    //Solicitud de envio a procesar
                    JCalculoNominaEspSet SetMod = new JCalculoNominaEspSet(request);
                    SetMod.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                            + p(request.getParameter("idempleado")) + "'";
                    SetMod.Open();

                    if (SetMod.getAbsRow(0).getTFD() != 3 || SetMod.getAbsRow(0).getID_CFD() == 0) {
                        idmensaje = 1;
                        mensaje += "PRECAUCION: Este recibo no est&aacute; sellado completamente, no hay nada que bajar <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    JCFDCompSet cfd = new JCFDCompSet(request, "NOMINA");
                    cfd.m_Where = "ID_CFD = '" + SetMod.getAbsRow(0).getID_CFD() + "'";
                    cfd.Open();

                    String nombre, destino;

                    if (cfd.getNumRows() > 0)
                        nombre = "/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/nom/TFDs/"
                                + cfd.getAbsRow(0).getUUID() + ".xml";
                    else // Es CFDI generado internamente
                    {
                        nombre = "/usr/local/forseti/emp/" + getSesion(request).getBDCompania()
                                + "/TFDs/SIGN_NOM-" + request.getParameter("id") + "-"
                                + request.getParameter("idempleado") + ".xml";
                    }

                    destino = "NOM-" + SetMod.getAbsRow(0).getID_Nomina() + "-"
                            + SetMod.getAbsRow(0).getRecibo() + ".xml";

                    JBajarArchivo fd = new JBajarArchivo();

                    fd.doDownload(response, getServletConfig().getServletContext(), nombre, destino);

                    idmensaje = 0;
                    mensaje = "El recibo se bajo satisfactoriamente";
                    return;

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

        } else if (request.getParameter("proceso").equals("PDF_RECIBO")) {
            // Revisa si tiene permisos
            if (!getSesion(request).getPermiso("NOM_NOMINA")) {
                idmensaje = 3;
                mensaje += MsjPermisoDenegado(request, "CEF", "NOM_NOMINA");
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(),
                        "NOM_NOMINA", "NNOM||||", mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

            if (request.getParameter("idempleado") != null) {
                String[] valoresParam = request.getParameterValues("idempleado");
                if (valoresParam.length == 1) {
                    //Solicitud de envio a procesar
                    JCalculoNominaEspSet SetMod = new JCalculoNominaEspSet(request);
                    SetMod.m_Where = "ID_Nomina = '" + p(request.getParameter("id")) + "' and ID_Empleado = '"
                            + p(request.getParameter("idempleado")) + "'";
                    SetMod.Open();

                    if (SetMod.getAbsRow(0).getTFD() != 3 || SetMod.getAbsRow(0).getID_CFD() == 0) {
                        idmensaje = 1;
                        mensaje += "PRECAUCION: Este recibo no est&aacute; sellado completamente, no hay nada que bajar <br>";
                        getSesion(request).setID_Mensaje(idmensaje, mensaje);
                        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                        return;
                    }

                    JCFDCompSet cfd = new JCFDCompSet(request, "NOMINA");
                    cfd.m_Where = "ID_CFD = '" + SetMod.getAbsRow(0).getID_CFD() + "'";
                    cfd.Open();

                    String nombre, destino;

                    if (cfd.getNumRows() > 0)
                        nombre = "/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/nom/PDFs/"
                                + cfd.getAbsRow(0).getUUID() + ".pdf";
                    else
                        nombre = "/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/PDFs/NOM-"
                                + request.getParameter("id") + "-" + request.getParameter("idempleado")
                                + ".pdf";

                    destino = "NOM-" + SetMod.getAbsRow(0).getID_Nomina() + "-"
                            + SetMod.getAbsRow(0).getRecibo() + ".pdf";

                    JBajarArchivo fd = new JBajarArchivo();

                    fd.doDownload(response, getServletConfig().getServletContext(), nombre, destino);

                    idmensaje = 0;
                    mensaje = "El recibo se bajo satisfactoriamente";
                    return;

                } else {
                    idmensaje = 1;
                    mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2);
                    getSesion(request).setID_Mensaje(idmensaje, mensaje);
                    irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                    return;
                }
            } else {
                idmensaje = 3;
                mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1);
                getSesion(request).setID_Mensaje(idmensaje, mensaje);
                irApag("/forsetiweb/caja_mensajes.jsp", request, response);
                return;
            }

        } else {
            idmensaje = 3;
            mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 3);
            getSesion(request).setID_Mensaje(idmensaje, mensaje);
            irApag("/forsetiweb/caja_mensajes.jsp", request, response);
            return;
        }

    } else // si no se mandan parametros, manda a error
    {
        idmensaje = 3;
        mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 3);
        getSesion(request).setID_Mensaje(idmensaje, mensaje);
        irApag("/forsetiweb/caja_mensajes.jsp", request, response);
        return;
    }

}

From source file:org.shampoo.goldenembed.parser.GoldenEmbedParserMain.java

private long parseTimeStamp(byte[] timeStamp, GoldenCheetah gc) throws NumberFormatException {

    Calendar cal = new GregorianCalendar();

    try {/*from  w ww . jav  a2  s  .  c  o  m*/

        int year = 0;
        int month = 0;
        int day = 0;

        int hour;
        int min;
        int sec;
        int i = 0;

        if (isGPS) {
            year = new Byte(timeStamp[i++]);
            month = new Byte(timeStamp[i++]);
            day = new Byte(timeStamp[i++]);
        }

        if (year >= 0 && year <= 99 && month >= 0 && month <= 12 && day >= 0 && day <= 31) {
            hour = new Byte(timeStamp[i++]);
            min = new Byte(timeStamp[i++]);
            sec = new Byte(timeStamp[i++]);

            year += 2000;
        } else
            throw new NumberFormatException();

        if (hour <= 24 && hour >= 0 && min <= 60 && min >= 0 && sec <= 60 && sec >= 0) {

            cal.set(year, --month, day, hour, min, sec);
            gc.setCurrentTime(cal);
        } else
            throw new NumberFormatException();

        long totalSecs = cal.getTimeInMillis() / 1000;

        if (firstRecordedTime == 0)
            firstRecordedTime = totalSecs;

        return totalSecs - firstRecordedTime;

    } catch (NumberFormatException e) {
        throw new NumberFormatException();

    }

}

From source file:org.apache.axis2.corba.receivers.CorbaUtil.java

public static Object getEmptyValue(DataType type) {
    switch (type.getTypeCode().kind().value()) {
    case TCKind._tk_long:
        return new Integer(0);
    case TCKind._tk_ulong:
        return new Integer(0);
    case TCKind._tk_longlong:
        return new Long(0);
    case TCKind._tk_ulonglong:
        return new Long(0);
    case TCKind._tk_short:
        return new Short("0");
    case TCKind._tk_ushort:
        return new Short("0");
    case TCKind._tk_float:
        return new Float(0f);
    case TCKind._tk_double:
        return new Double(0d);
    case TCKind._tk_char:
        return new Character('0');
    case TCKind._tk_wchar:
        return new Character('0');
    case TCKind._tk_boolean:
        return Boolean.FALSE;
    case TCKind._tk_octet:
        return new Byte("0");
    case TCKind._tk_string:
        return "";
    case TCKind._tk_wstring:
        return "";
    //case TCKind._tk_any: return new Any();
    case TCKind._tk_value:
        return "";
    //case TCKind._tk_objref: return new org.omg.CORBA.Object();
    case TCKind._tk_struct:
        Struct struct = (Struct) type;
        StructValue value = new StructValue(struct);
        Member[] members = struct.getMembers();
        Object[] memberValues = new Object[members.length];
        for (int i = 0; i < members.length; i++) {
            memberValues[i] = getEmptyValue(members[i].getDataType());
        }/*from  w w w.ja  v  a2 s . c o  m*/
        value.setMemberValues(memberValues);
        return value;
    case TCKind._tk_enum:
        return new EnumValue((EnumType) type);
    case TCKind._tk_union:
        UnionType unionType = (UnionType) type;
        UnionValue unionValue = new UnionValue(unionType);
        members = unionType.getMembers();
        unionValue.setMemberName(members[0].getName());
        unionValue.setMemberType(members[0].getDataType());
        unionValue.setMemberValue(getEmptyValue(members[0].getDataType()));
        return unionValue;
    case TCKind._tk_alias:
        Typedef typedef = (Typedef) type;
        AliasValue aliasValue = new AliasValue(typedef);
        aliasValue.setValue(getEmptyValue(typedef.getDataType()));
        return aliasValue;
    case TCKind._tk_sequence:
        SequenceType sequenceType = (SequenceType) type;
        SequenceValue sequenceValue = new SequenceValue(sequenceType);
        sequenceValue.setValues(new Object[0]);
        return sequenceValue;
    case TCKind._tk_array:
        ArrayType arrayType = (ArrayType) type;
        ArrayValue arrayValue = new ArrayValue(arrayType);
        Object[] objects = new Object[arrayType.getElementCount()];
        DataType arrayDataType = arrayType.getDataType();
        for (int i = 0; i < objects.length; i++) {
            objects[i] = getEmptyValue(arrayDataType);
        }
        arrayValue.setValues(objects);
        return arrayValue;
    default:
        log.error("ERROR! Invalid dataType");
    }
    return null;
}

From source file:org.apache.axis2.databinding.utils.ConverterUtil.java

public static Object convertToObject(byte i) {
    return new Byte(i);
}