Exemplo n.º 1
0
        public E_RESULTADO generaClaves(string clCliente, string usuario, string programa)
        {
            LicenciaNegocio licNeg = new LicenciaNegocio();
            SPE_OBTIENE_CONFIGURACION_LICENCIA_Result resultPass = licNeg.obtieneConfiguracion(CL_CONFIGURACION: "CL_PASS_WS");

            if (resultPass != null)
            {
                clPassword = resultPass.NO_CONFIGURACION;
                if (generaXmlIdentificacion(clCliente, clPassword, usuario, programa) && generaXmlLicencias(clCliente, clPassword, usuario, programa))
                {
                    List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                    vLstMensaje.Add(new E_MENSAJE {
                        DS_MENSAJE = "Se ha actualizado la información de la licencia."
                    });
                    vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.SUCCESSFUL;
                    vMensaje.MENSAJE       = vLstMensaje;
                }
                else
                {
                    List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                    vLstMensaje.Add(new E_MENSAJE {
                        DS_MENSAJE = "Ocurrio un error al actualizar la información de la licencia."
                    });
                    vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                    vMensaje.MENSAJE       = vLstMensaje;
                }
            }
            else
            {
                List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                vLstMensaje.Add(new E_MENSAJE {
                    DS_MENSAJE = "No se encontro la contraseña del web service."
                });
                vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                vMensaje.MENSAJE       = vLstMensaje;
            }
            return(vMensaje);
        }
Exemplo n.º 2
0
        public void generaDatosContexto(string clCliente, string clSistema, string clModulo, string usuario, string programa)
        {
            LicenciaNegocio licNeg      = new LicenciaNegocio();
            Crypto          desencripta = new Crypto();

            SPE_OBTIENE_CONFIGURACION_LICENCIA_Result resultado  = licNeg.obtieneConfiguracion(CL_CONFIGURACION: clConfiguracion);
            SPE_OBTIENE_CONFIGURACION_LICENCIA_Result resultPass = licNeg.obtieneConfiguracion(CL_CONFIGURACION: "CL_PASS_WS");

            if (resultPass != null && resultado != null)
            {
                clPassword = resultPass.NO_CONFIGURACION;
                generaXmlIdentificacion(clCliente, clPassword, usuario, programa);
                resultado = licNeg.obtieneConfiguracion(CL_CONFIGURACION: clConfiguracion);

                if (!string.IsNullOrEmpty(resultado.NO_CONFIGURACION))
                {
                    keyFeCreacion = licNeg.obtieneConfiguracion("FE_CREACION").NO_CONFIGURACION;
                    string keyPassword = clPassword.Substring(0, 16);
                    cadenaDesencriptada = desencripta.descifrarTextoAES(resultado.NO_CONFIGURACION, clCliente, keyFeCreacion, "SHA1", 22, keyPassword, 256);
                    XElement vXmlConfiguracion = XElement.Parse(cadenaDesencriptada);

                    if (existeCliente(vXmlConfiguracion, clCliente) && ExisteSistema(vXmlConfiguracion, clSistema) && ExisteModulo(vXmlConfiguracion, clModulo))
                    {
                        generaXmlLicencias(clCliente, clPassword, usuario, programa);
                        List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                        vLstMensaje.Add(new E_MENSAJE {
                            DS_MENSAJE = "No existen datos en el contexto."
                        });
                        vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.WARNING;
                        vMensaje.MENSAJE       = vLstMensaje;
                    }
                    else
                    {
                        List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                        vLstMensaje.Add(new E_MENSAJE {
                            DS_MENSAJE = "No existe licencia para el módulo actual."
                        });
                        vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                        vMensaje.MENSAJE       = vLstMensaje;
                    }
                }
                else
                {
                    List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                    vLstMensaje.Add(new E_MENSAJE {
                        DS_MENSAJE = "El cliente actual no cuenta con licencias."
                    });
                    vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                    vMensaje.MENSAJE       = vLstMensaje;
                }
            }
            else
            {//ir al web service
             //actualizar bd
             //set valores contexto
             //validar licencia

                if (resultado == null)
                {
                    clPassword = resultPass.NO_CONFIGURACION;
                    if (insertaXmlIdentificacion(clCliente, clPassword, usuario, programa) && generaXmlLicencias(clCliente, clPassword, usuario, programa))
                    {
                        List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                        vLstMensaje.Add(new E_MENSAJE {
                            DS_MENSAJE = "No existen datos en el contexto"
                        });
                        vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.WARNING;
                        vMensaje.MENSAJE       = vLstMensaje;
                    }
                    else
                    {
                        List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                        vLstMensaje.Add(new E_MENSAJE {
                            DS_MENSAJE = "El cliente actual no cuenta con licencias."
                        });
                        vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                        vMensaje.MENSAJE       = vLstMensaje;
                    }
                }
                else
                {
                    List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                    vLstMensaje.Add(new E_MENSAJE {
                        DS_MENSAJE = "No se encontro la contraseña del web service."
                    });
                    vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                    vMensaje.MENSAJE       = vLstMensaje;
                }
            }
        }
Exemplo n.º 3
0
        public E_RESULTADO validaLicencia(string clCliente = null, string clSistema = null, string clEmpresa = null, string clModulo = null, string noVersion = null, string usuario = null, string programa = null, XElement confCliente = null, XElement clienteLicencias = null)
        {
            if (confCliente != null && clienteLicencias != null)
            {
                LicenciaNegocio licNeg = new LicenciaNegocio();
                SPE_OBTIENE_CONFIGURACION_LICENCIA_Result resultPass = licNeg.obtieneConfiguracion(CL_CONFIGURACION: "CL_PASS_WS");
                if (resultPass != null)
                {
                    clPassword = resultPass.NO_CONFIGURACION;
                    string keyPassword = clPassword.Substring(0, 16);

                    if (!existeCliente(confCliente, clCliente) || !ExisteSistema(confCliente, clSistema) || !ExisteModulo(confCliente, clModulo))
                    {
                        generaXmlIdentificacion(clCliente, clPassword, usuario, programa);
                        generaXmlLicencias(clCliente, clPassword, usuario, programa);
                    }

                    if (existeCliente(confCliente, clCliente) && ExisteSistema(confCliente, clSistema) && ExisteModulo(confCliente, clModulo))
                    {
                        if (!ExisteLicencia(clienteLicencias, clCliente, clSistema, clEmpresa, clModulo, noVersion))
                        {
                            generaXmlLicencias(clCliente, clPassword, usuario, programa);
                        }

                        if (ExisteLicencia(clienteLicencias, clCliente, clSistema, clEmpresa, clModulo, noVersion))
                        {
                            if (!validaLicencia(vLic))
                            {
                                generaXmlLicencias(clCliente, clPassword, usuario, programa);
                                ExisteLicencia(clienteLicencias, clCliente, clSistema, clEmpresa, clModulo, noVersion);
                            }

                            if (validaLicencia(vLic))
                            {
                                List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                                vLstMensaje.Add(new E_MENSAJE {
                                    DS_MENSAJE = "1"
                                });
                                vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.SUCCESSFUL;
                                vMensaje.MENSAJE       = vLstMensaje;
                                return(vMensaje);
                            }
                            else
                            {
                                return(vMensaje);
                            }
                        }
                        else
                        {
                            return(vMensaje);
                        }
                    }
                    else
                    {
                        List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                        vLstMensaje.Add(new E_MENSAJE {
                            DS_MENSAJE = "No existe licencia para el módulo actual."
                        });
                        vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                        vMensaje.MENSAJE       = vLstMensaje;
                        return(vMensaje);
                    }
                }
                else
                {
                    List <E_MENSAJE> vLstMensaje = new List <E_MENSAJE>();
                    vLstMensaje.Add(new E_MENSAJE {
                        DS_MENSAJE = "No se encontro la contraseña del web service"
                    });
                    vMensaje.CL_TIPO_ERROR = E_TIPO_RESPUESTA_DB.ERROR;
                    vMensaje.MENSAJE       = vLstMensaje;
                    return(vMensaje);
                }
            }
            else
            {
                generaDatosContexto(clCliente, clSistema, clModulo, usuario, programa);
                return(vMensaje);
            }
        }