コード例 #1
0
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         DataSet dsUsuario = BRUsuarios.buscarTodos();
         if (dsUsuario.Tables[0].Rows.Count != 0)
         {
             throw new BeanException(new Exception(), BeanException.Critico, "errorAcceso");
         }
         else {// no hay usuarios en la BD asi que cargo la pantalla
               // creo un usuario virtual para que pueda cargar lo que desee
             BeanUsuario usuario = new BeanUsuario();
             usuario.usuarioInicio();
             BRCriticidad.validarIntegridadHorizontal(usuario);
             Session.Add("usuarioActual", usuario);
             Response.Redirect("../Servicio/AdminUsuarios.aspx", false);
         }
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora
         BRLoger.LogError(ex);
         // me voy a mostrar el error
         Session["Error"] = ex;
         Response.Redirect("../Servicio/Errores.aspx", false);
     }
 }
コード例 #2
0
        public Respuesta getReportes()
        {
            try
            {
            Respuesta respuesta = new Respuesta();

                BeanUsuario usuarioActual = new BeanUsuario();
                if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
                {
                    usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
                }
                else {
                    respuesta.idError = "errorUsuarioLogueado";
                    return respuesta;
                }
                List<BRReportes.Reporte> _data = new List<BRReportes.Reporte>();
                _data = BRReportes.traerReportes(usuarioActual.usuario);

                respuesta.reportes = _data;
                return respuesta;
            }
            catch (Exception ex)
            {
                // logueo el error en bitacora y en ELMATH
                BRLoger.LogError(ex);
                throw ex;
            }
        }
コード例 #3
0
 protected void cargarPermisos(BeanUsuario us)
 {
     DataSet dsPermisos = BRPermisos.buscarPorIdUsuario(us.id);
     if (dsPermisos.Tables[0].Rows.Count != 0)
     {
         int nCantColumnas = dsPermisos.Tables[0].Rows.Count - 1;
         for (int i = 0; i <= nCantColumnas; i++)
         {
             BeanPermisos permiso = new BeanPermisos();
             permiso.id = (int)dsPermisos.Tables[0].Rows[i]["idPermiso"];
             permiso.idForm = Convert.ToString(dsPermisos.Tables[0].Rows[i]["idForm"]);
             permiso.descripcion = Convert.ToString(dsPermisos.Tables[0].Rows[i]["descripcion"]);
             permiso.negado = false;
             us.addPermiso(permiso);
         }
     }
     DataSet dsPermisosIndependientes = BRPermisos.buscarIndepPorIdUsuario(us.id);
     if (dsPermisosIndependientes.Tables[0].Rows.Count != 0)
     {
         int nCantColumnas = dsPermisosIndependientes.Tables[0].Rows.Count - 1;
         for (int i = 0; i <= nCantColumnas; i++)
         {
             BeanPermisos permiso = new BeanPermisos();
             permiso.id = (int)dsPermisosIndependientes.Tables[0].Rows[i]["idPermiso"];
             permiso.idForm = Convert.ToString(dsPermisosIndependientes.Tables[0].Rows[i]["idForm"]);
             permiso.descripcion = Convert.ToString(dsPermisosIndependientes.Tables[0].Rows[i]["descripcion"]);
             permiso.negado = (Convert.ToString(dsPermisosIndependientes.Tables[0].Rows[i]["negado"]) != "1") ? false : true;
             us.addPermisoIndependiente(permiso);
         }
     }
 }
コード例 #4
0
        public void solicitarPresupuesto(string fechaSalida, string horaSalida, string domicilioSalida, string latitudSalida, string longitudSalida, string fechaDestino, string horaDestino, string domicilioDestino, string latitudDestino, string longitudDestino, string descripcionServicio, List<int> serviciosExtra, List<obrasArte> obrasArte)
        {
            try
            {

                BeanUsuario usuarioActual = new BeanUsuario();
                if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
                {
                    usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
                }

                int idServicio = BRServicios.solicitarServicio(usuarioActual.id, fechaSalida, horaSalida,  fechaDestino, horaDestino,  descripcionServicio);
                BRServicios_domicilio.agregarDomicilioServicio(usuarioActual.id, idServicio, domicilioSalida, latitudSalida, longitudSalida, true);
                BRServicios_domicilio.agregarDomicilioServicio(usuarioActual.id, idServicio, domicilioDestino, latitudDestino, longitudDestino, false);

                foreach (int _idServicioExtra in serviciosExtra){
                    BRServicio_ServicioExtra.agregarServicioExtra(idServicio, _idServicioExtra);
                }

                // agrego las obras de arte

                foreach (obrasArte _obrasArte in obrasArte)
                {
                    BRObrasDeArte.agregarObraDeArte(idServicio, _obrasArte.nombre, _obrasArte.descripcion, _obrasArte.ancho, _obrasArte.alto, _obrasArte.largo, _obrasArte.peso, _obrasArte.valor);
                }

            }
            catch (Exception ex)
            {
                // logueo el error en bitacora y en ELMATH
                BRLoger.LogError(ex);
                throw ex;
            }
        }
コード例 #5
0
        static string saltValue = "s@1tValue"; // can be any string

        #endregion Fields

        #region Methods

        public static void corregirIntegridadCompleta(BeanUsuario usuario)
        {
            BRBitacora.corregirIntegridad();
            //BRCodPostal.corregirIntegridad();
            BRCriticidad.corregirIntegridad();
            BRDetalleFactura.corregirIntegridad();
            BRDomicilio.corregirIntegridad();
            BRDVVertical.corregirIntegridad();
            BREncabezadoFactura.corregirIntegridad();
            BREstadoServicio.corregirIntegridad();
            BRGrupos.corregirIntegridad();
            BRGruposPermisos.corregirIntegridad();
            BRHojaDeRuta.corregirIntegridad();
            BRMantenimientos.corregirIntegridad();
            BRObrasDeArte.corregirIntegridad();
            BRPermisos.corregirIntegridad();
            BRServicio_ServicioExtra.corregirIntegridad();
            BRServicios.corregirIntegridad();
            BRServicios_domicilio.corregirIntegridad();
            BRServiciosExtra.corregirIntegridad();
            BRTelefonos.corregirIntegridad();
            BRTipoFactura.corregirIntegridad();
            BRUsuarios.corregirIntegridad();
            BRUsuarios_Grupos.corregirIntegridad();
            BRUsuariosPermisos.corregirIntegridad();
            BRVehiculos.corregirIntegridad();
            BRVehiculos_Servicios.corregirIntegridad();
        }
コード例 #6
0
 public void AltaTelefono(string telefono)
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         BRTelefonos.agregarTelefonoUsuario(usuarioActual.id, telefono);
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }
コード例 #7
0
 public void altaDomicilio(string domicilio, string idLocalidad, string latitud, string longitud, string idCodPostal)
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         BRDomicilio.agregarDomicilioUsuario(usuarioActual.id, domicilio, idLocalidad,  latitud,  longitud, idCodPostal);
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }
コード例 #8
0
        public Respuesta modiUsuario(int idUsuario, string usuario, string contrasena, string email, List<int> grupos, List<Permiso> permisos, bool bloqueado, bool baja, string motivo)
        {
            try
            {
            Respuesta _respuesta = new Respuesta();
            // verifico que el usuario LEGUEADO no sea el que se quiere modifciar los permisos
            BeanUsuario usuarioActual = new BeanUsuario();
            if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
            {
                usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
                if (usuarioActual.id == idUsuario)
                {
                    _respuesta.errorMismoUsuario = true;
                    return _respuesta;
                }
            }
            // verifico que el nombre de usuario no este guardado anteriormente
            DataSet ds = BRUsuarios.buscarPorId(idUsuario);
            Boolean cambieNombreUsuario = false;
            if (ds.Tables[0].Rows.Count != 0)
            {
                int nCantColumnas = ds.Tables[0].Rows.Count - 1;
                for (int j = 0; j <= nCantColumnas; j++)
                {
                    string nombreUsuario = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[j]["usuario"]));
                    if (nombreUsuario != usuario)
                    {
                        ds = BRUsuarios.buscarPorUsuario(usuario);
                        if (ds.Tables[0].Rows.Count != 0)
                        {
                            //descError = "El nombre del usuario ya existe en la BD";//
                            _respuesta.errorNombreUsuario = true;
                            return _respuesta;
                        }
                        cambieNombreUsuario = true;
                    }
                }
            }
            // verifico que si cambio el PSW de usuario le envio el mail
            if (contrasena != "" ){
                if (!BRUsuarios.enviarMailModificar(usuario, contrasena, email)) {  // envio mail al usuario con la contraseña
                    _respuesta.errorEnviarMail = true;
                    return _respuesta;
                }
            }
            // verifico que si cambio del nombre del usuario y envio el mail
            if (cambieNombreUsuario)
            {
                if (!BRUsuarios.enviarMailModificar(usuario, contrasena, email))
                {  // envio mail al usuario con la contraseña
                    _respuesta.errorEnviarMail = true;
                    return _respuesta;
                }
            }

            BRUsuarios.modiUsuario(idUsuario, usuario, contrasena, email, bloqueado, baja, motivo); // modifico los datos del usuario

            // modifico los permisos independientes al usuario
            // primero traigo todos los permisos independientes

            DataSet dsPermisosIndBD = BRUsuariosPermisos.buscarPorUsuario(idUsuario);
            DataRowCollection drPermisosIndBD = dsPermisosIndBD.Tables[0].Rows;
            foreach (Permiso _permiso in permisos)
            {
                if (_permiso.individual)
                {
                    Boolean existePermiso = false;
                    if (drPermisosIndBD.Count != 0)
                    { // hay permisos asignados en la BD
                        for (int i = 0; i <= drPermisosIndBD.Count - 1; i++)
                        {
                            int idUsuarioPermiso = Convert.ToInt32(drPermisosIndBD[i]["id"]);
                            int idPermisoBD = Convert.ToInt32(drPermisosIndBD[i]["idPermiso"]);
                            bool _perBloqueado = (Convert.ToInt32(drPermisosIndBD[i]["negado"]) == 1 ? true : false);
                            if (idPermisoBD == _permiso.idPermiso)
                            { // comparo por id
                                existePermiso = true;
                                // lo saco de la coleccion para no evaluarlo de nuevo y dejo la BD como esta
                                if (_perBloqueado != _permiso.bloqueado)
                                { // determina que SOLO TIENE MODIFICADO EL BLOQUEO
                                    BRUsuariosPermisos.modificarBloqueo(idUsuarioPermiso, _permiso.bloqueado);
                                }
                                drPermisosIndBD.Remove(drPermisosIndBD[i]);
                            }
                        }
                    }
                    if (!existePermiso)
                    { //es un permiso independiente es NUEVO, lo agrego en la BD
                        BRUsuariosPermisos.agregarPermisoAlUsuario(idUsuario, _permiso.idPermiso, _permiso.bloqueado);
                    }
                }
            }

            if (drPermisosIndBD.Count != 0)
            {// tiene elementos en la BD asi q lo tengo q borrar
                for (int i = 0; i <= drPermisosIndBD.Count - 1; i++)
                {
                    int idUsuarioPermiso = Convert.ToInt32(drPermisosIndBD[i]["id"]);
                    int idPermisoBD = Convert.ToInt32(drPermisosIndBD[i]["idPermiso"]);
                    if (idPermisoBD == 13)
                    {
                        if (BRPermisos.esUltimoPermiso(idPermisoBD))
                        {
                            _respuesta.errorABMUsuario = true;
                        }
                        else
                        {
                            BRUsuariosPermisos.eliminarPermisoIndependiente(idUsuarioPermiso);// lo borro de la BD
                        }
                    }
                    else if (idPermisoBD == 15)
                    {
                        if (BRPermisos.esUltimoPermiso(idPermisoBD))
                        {
                            _respuesta.errorBackUp = true;
                        }
                        else
                        {
                            BRUsuariosPermisos.eliminarPermisoIndependiente(idUsuarioPermiso);// lo borro de la BD
                        }
                    }
                    else if (idPermisoBD == 16)
                    {
                        if (BRPermisos.esUltimoPermiso(idPermisoBD))
                        {
                            _respuesta.errorRestore = true;
                        }
                        else
                        {
                            BRUsuariosPermisos.eliminarPermisoIndependiente(idUsuarioPermiso);// lo borro de la BD
                        }
                    }
                    else if (idPermisoBD == 17)
                    {
                        if (BRPermisos.esUltimoPermiso(idPermisoBD))
                        {
                            _respuesta.errorBitacora = true;
                        }
                        else
                        {
                            BRUsuariosPermisos.eliminarPermisoIndependiente(idUsuarioPermiso);// lo borro de la BD
                        }
                    }
                    else
                    {
                        BRUsuariosPermisos.eliminarPermisoIndependiente(idUsuarioPermiso);// lo borro de la BD
                    }
                }
            }

            // ahora voy por los grupos
            DataSet dsGruposBD = BRGrupos.getGruposPorIdusuario(idUsuario);
            DataRowCollection drGruposBD = dsGruposBD.Tables[0].Rows;
            foreach (int _idGrupo in grupos)
            {
                Boolean existeGrupo = false;
                if (drGruposBD.Count != 0)
                { // hay grupos asignados en la BD
                    for (int i = 0; i <= drGruposBD.Count - 1; i++)
                    {
                        int idGrupo = Convert.ToInt32(drGruposBD[i]["id"]);
                        if (idGrupo == _idGrupo)
                        { // comparo por id
                            existeGrupo = true;
                            // lo saco de la coleccion para no evaluarlo de nuevo y dejo la BD como esta
                            drGruposBD.Remove(drGruposBD[i]);
                        }
                    }
                }
                if (!existeGrupo)
                { //es un grupo es NUEVO, lo agrego en la BD
                    BRUsuarios_Grupos.agregarGrupoAlUsuario(idUsuario, _idGrupo);
                }
            }
            // ahora voy por la ELIMINACION DE GRUPOS
            if (drGruposBD.Count != 0)
            {// tiene elementos en la BD asi q lo tengo q borrar
                for (int i = 0; i <= drGruposBD.Count - 1; i++)
                {
                    int idGrupo = Convert.ToInt32(drGruposBD[i]["id"]);
                    int idUsuarioGrupo = Convert.ToInt32(drGruposBD[i]["idUsuarioGrupo"]);
                    DataSet dsPermGrupoBD = BRPermisos.buscarPorIdGrupo(idGrupo);
                    DataRowCollection drPermGrupoBD = dsPermGrupoBD.Tables[0].Rows;
                    if (drPermGrupoBD.Count != 0)
                    { // hay permisos asignados al grupo
                        Boolean tieneUltimoPermiso = false;
                        for (int z = 0; z <= drPermGrupoBD.Count - 1; z++)
                        {
                            // consulto que no sea el ULTIMO
                            int idPermisoBD = Convert.ToInt32(drPermGrupoBD[z]["id"]);// id del permiso
                            if (idPermisoBD == 13)
                            {
                                if (BRPermisos.esUltimoPermiso(idPermisoBD))
                                {
                                    _respuesta.errorABMUsuario = true;
                                    tieneUltimoPermiso = true;
                                }
                            }
                            else if (idPermisoBD == 15)
                            {
                                if (BRPermisos.esUltimoPermiso(idPermisoBD))
                                {
                                    _respuesta.errorRestore = true;
                                    tieneUltimoPermiso = true;
                                }
                            }
                            else if (idPermisoBD == 16)
                            {
                                if (BRPermisos.esUltimoPermiso(idPermisoBD))
                                {
                                    _respuesta.errorRestore = true;
                                    tieneUltimoPermiso = true;
                                }
                            }
                            else if (idPermisoBD == 17)
                            {
                                if (BRPermisos.esUltimoPermiso(idPermisoBD))
                                {
                                    _respuesta.errorBitacora = true;
                                    tieneUltimoPermiso = true;
                                }
                            }
                        }
                        if (!tieneUltimoPermiso)
                        { // Saco al grupo de la BD ya q NO contiene ULTIMOS permisos
                            BRUsuarios_Grupos.eliminarUsuarios_Grupos(idUsuarioGrupo);
                        }
                    }
                    else
                    {// es un grupo q no tiene permisos asi q lo saco
                        BRUsuarios_Grupos.eliminarUsuarios_Grupos(idUsuarioGrupo);
                    }
                }
            }

            return _respuesta;
            }
            catch (Exception ex)
            {
            // logueo el error en bitacora y en ELMATH
            BRLoger.LogError(ex);
            // me voy a mostrar el error
            return new Respuesta() { error = ex.Message };
            }
        }
コード例 #9
0
    protected void btnIngresar_Click(object sender, EventArgs e)
    {
        BeanUsuario usuario = new BeanUsuario();
        /*
            verifico intrgridad
            error
                busco usuario
             * No existe
             *
             * error con integridad
             *
             * existe
             *  fehca baja// error
             *  bloqueado // error
             *  ok muestro menu si es q puede
            sin error
             * busco usuario
             * no existe
             *
             * contador de bloqueos
             *
             * existe
             *
             *  fehca baja a error
             *  bloqueado a desbloqueo
             * ok = nuestro menu
             *
            */
        try
        {

            Session["Error"] = null;
            this.lblBloqueado.Visible = false;
            this.lblBloqueado2.Visible = false;
            this.btnResetPass.Visible = false;

            BRSeguridad.VerificarIntegridadCompleta(usuario);
            if (usuario.integridad.Count != 0)
            {  // Hay problemas de integridad

                //String sPass = getMD5(txtLoginPassword.Text);
                String sPass = txtLoginPassword.Text;
                BRUsuarios.autenticarUsuario(usuario, txtLoginUsuario.Text, sPass);

                if (!usuario.existe)
                {// No existe el usuario username y pass INVALIDOS
                    // Contador de veces de inicio de sesión inválido
                    this.lblInvalido.Visible = true;
                    if (Session["InvalidUser"] != null)
                    {
                        Session["InvalidUser"] = Convert.ToInt32(Session["InvalidUser"]) + 1;
                        if (Session["InvalidUser"].ToString() == "3")
                        {// Bloqueo del usuario
                            BRUsuarios.bloquearPorUsuario(txtLoginUsuario.Text, "Tuvo 3 errores de logueo");
                            Session["InvalidUser"] = 0;
                        }
                    }
                    else
                    {// primera vez q el usuario es invalido
                        Session["InvalidUser"] = 0;
                    }
                    throw new BeanException(new Exception("Error de integridad en la BD"), BeanException.Moderado, "errorIntegridad");
                }
                else
                {// Existe el usuario username y pass Validos
                    if (usuario.fechaBaja != null && usuario.fechaBaja != "")
                    {
                        usuario.permisos.Clear();
                        throw new BeanException(new Exception("Error de usuario " + usuario.usuario + " id = " + +usuario.id + " esta dado de baja.-"), BeanException.Moderado, "errorBajaDeUsuario");
                    }
                    if (usuario.bloqueado)
                    {
                        usuario.permisos.Clear();
                    }
                }
                Session.Add("usuarioActual", usuario);
                BRBitacora.registrarEvento("Sesión Iniciada por usuario = " + usuario.usuario + " id = " + usuario.id, BeanException.Leve);
                throw new BeanException(new Exception("Error de integridad en la BD"), BeanException.Moderado, "errorIntegridad");
            }
            else
            {// es un usuario sin problemas de intregridad

                //String sPass = getMD5(txtLoginPassword.Text);
                String sPass = txtLoginPassword.Text;
                BRUsuarios.autenticarUsuario(usuario, txtLoginUsuario.Text, sPass);

                if (!usuario.existe)
                {// No existe el usuario username y pass INVALIDOS
                    // Contador de veces de inicio de sesión inválido
                    this.lblInvalido.Visible = true;
                    if (Session["InvalidUser"] != null)
                    {
                        Session["InvalidUser"] = Convert.ToInt32(Session["InvalidUser"]) + 1;
                        if (Session["InvalidUser"].ToString() == "3")
                        {// Bloqueo del usuario
                            BRUsuarios.bloquearPorUsuario(txtLoginUsuario.Text, "Tuvo 3 errores de logueo");
                            Session["InvalidUser"] = 0;
                            this.lblBloqueado.Visible = true;
                            this.lblBloqueado2.Visible = true;
                            this.btnResetPass.Visible = true;
                            return;
                        }
                        return;
                    }
                    else
                    {// primera vez q el usuario es invalido
                        Session["InvalidUser"] = 0;
                        return;
                    }
                }
                else
                {// Existe el usuario username y pass Validos
                    if (usuario.fechaBaja != null && usuario.fechaBaja != "")
                    {
                        usuario.permisos.Clear();
                        throw new BeanException(new Exception("Error de usuario " + usuario.usuario + " id = " + +usuario.id + " esta dado de baja.-"), BeanException.Moderado, "errorBajaDeUsuario");
                    }
                    if (usuario.bloqueado)
                    {
                        usuario.permisos.Clear();
                        this.lblBloqueado.Visible = true;
                        this.lblBloqueado2.Visible = true;
                        this.btnResetPass.Visible = true;
                        return;
                    }
                }
                Session.Add("usuarioActual", usuario);
                BRBitacora.registrarEvento("Sesión Iniciada por usuario = " + usuario.usuario + " id = " + usuario.id, BeanException.Leve);
                Response.Redirect("../Servicio/Inicio.aspx", false);
            }
        }
        catch (Exception ex)
        {
            // logueo el error en bitacora y en ELMATH
            BRLoger.LogError(ex);
            // me voy a mostrar el error
            Session["Error"] = ex;
            Response.Redirect("../Servicio/Errores.aspx", false);
        }
    }
コード例 #10
0
 public void recargarUsuario()
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         BeanUsuario usuarioRecargado = BRUsuarios.recargarUsuario(usuarioActual);
         Session.Add("usuarioActual", usuarioRecargado);
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }
コード例 #11
0
        public void generarReporte(string fechaDesde, string fechaHasta, string usuarioFiltro, string criticidadFiltro, string descEvento, List<regBitacora> registrosGrilla)
        {
            try
            {
                BeanUsuario usuarioActual = new BeanUsuario();
                if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
                {
                    usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
                }

                DataSet dsBitacora = new DataSet();
                DataTable dsBitacoraTable = dsBitacora.Tables.Add();
                dsBitacoraTable.Columns.Add("id", System.Type.GetType("System.Int32"));
                dsBitacoraTable.Columns.Add("accion", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("usuario", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("desCriticidad", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("fecha", System.Type.GetType("System.String"));

                dsBitacoraTable.Columns.Add("UsuarioFiltro", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("FechaDesdeFiltro", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("FechaHastaFiltro", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("CriticidadFiltro", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("LogoCriticidad", System.Type.GetType("System.Byte[]"));
                dsBitacoraTable.Columns.Add("DescripcionFiltro", System.Type.GetType("System.String"));
                byte[] logoCriticidad;
                foreach (regBitacora _regBitacora in registrosGrilla)
                {
                    if (_regBitacora.idCriticidad == 1) {
                        logoCriticidad = CargarImagen("C:\\TransArte\\Website\\images\\leve.png");
                    }
                    else if (_regBitacora.idCriticidad == 2)
                    {
                        logoCriticidad = CargarImagen("C:\\TransArte\\Website\\images\\moderada.png");
                    }
                    else {// 3
                        logoCriticidad = CargarImagen("C:\\TransArte\\Website\\images\\critica.png");
                    }
                    dsBitacoraTable.Rows.Add(_regBitacora.id, _regBitacora.accion, _regBitacora.usuario, _regBitacora.descCriticidad, _regBitacora.fecha, usuarioFiltro, fechaDesde, fechaHasta, criticidadFiltro, logoCriticidad, descEvento);
                }
                // encabezados
                dsBitacoraTable.Columns.Add("Logo", System.Type.GetType("System.Byte[]"));//Agrego la columna con el tipo de dato "System.Byte[]",donde guardare mi imagen.
                dsBitacoraTable.Columns.Add("UsuarioLog", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("NombreUsuario", System.Type.GetType("System.String"));
                dsBitacoraTable.Columns.Add("ApellidoUsuario", System.Type.GetType("System.String"));

                if (registrosGrilla.Count > 0)
                {
                    dsBitacoraTable.Rows[0]["Logo"] = CargarImagen("C:\\TransArte\\Website\\images\\logoMini.PNG");
                    dsBitacoraTable.Rows[0]["UsuarioLog"] = usuarioActual.usuario;
                    dsBitacoraTable.Rows[0]["NombreUsuario"] = usuarioActual.nombre;
                    dsBitacoraTable.Rows[0]["ApellidoUsuario"] = usuarioActual.apellido;

                }
                else {
                    dsBitacoraTable.Rows.Add(null, "", "", "", "", usuarioFiltro, fechaDesde, fechaHasta, criticidadFiltro, descEvento, CargarImagen("C:\\TransArte\\Website\\images\\logoMini.PNG"), usuarioActual.usuario, usuarioActual.nombre, usuarioActual.apellido);
                }

                ReportDocument rpt = new ReportDocument();
                String szFileName = "";
                String strServerPath = "";
                rpt.PrintOptions.PaperOrientation = PaperOrientation.DefaultPaperOrientation;
                rpt.PrintOptions.PaperSize = PaperSize.DefaultPaperSize;
                rpt.PrintOptions.PaperSource = PaperSource.Upper;
                rpt.PrintOptions.PrinterDuplex = PrinterDuplex.Default;

                rpt.Load(Server.MapPath("../Reportes/ReportBitacora.rpt"));
                rpt.SetDataSource(dsBitacoraTable);

                strServerPath = Server.MapPath("~") + "\\Reportes\\" + usuarioActual.usuario + "\\";
                DirectoryInfo dirReport = new DirectoryInfo(strServerPath);
                if (!dirReport.Exists)
                { // crea la carpeta si no existe
                    dirReport.Create();
                }

                szFileName += "\\" + "BITACORA_";
                szFileName += DateTime.Now.Year + "_" + (DateTime.Now.Month.ToString().Length > 1 ? "" + DateTime.Now.Month : "0" + DateTime.Now.Month) + "_" + (DateTime.Now.Day.ToString().Length > 1 ? "" + DateTime.Now.Day : "0" + DateTime.Now.Day) + "_" + (DateTime.Now.Hour.ToString().Length > 1 ? "" + DateTime.Now.Hour : "0" + DateTime.Now.Hour) + "_" + (DateTime.Now.Minute.ToString().Length > 1 ? "" + DateTime.Now.Minute : "0" + DateTime.Now.Minute) + "_" + (DateTime.Now.Second.ToString().Length > 1 ? "" + DateTime.Now.Second : "0" + DateTime.Now.Second);
                szFileName += ".PDF";

                DiskFileDestinationOptions dfdoFile = new DiskFileDestinationOptions();
                dfdoFile.DiskFileName = strServerPath + szFileName;

                rpt.ExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
                rpt.ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
                rpt.ExportOptions.DestinationOptions = dfdoFile;
                rpt.Export();

            }
            catch (Exception ex)
            {
                // logueo el error en bitacora y en ELMATH
                BRLoger.LogError(ex);
                throw ex;
            }
        }
コード例 #12
0
 public List<Telefono> getTelefonos()
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         DataSet dsTelefonos = BRTelefonos.buscarPorIdUsuario(usuarioActual.id);
         List<Telefono> dataTelefono = new List<Telefono>();
         if (dsTelefonos.Tables[0].Rows.Count != 0)
         {
             int nCantColumnas = dsTelefonos.Tables[0].Rows.Count - 1;
             for (int i = 0; i <= nCantColumnas; i++)
             {
                 dataTelefono.Add(new Telefono()
                 {
                     id = i + 1,
                     idTelefono = Convert.ToInt32(dsTelefonos.Tables[0].Rows[i]["id"]),
                     telefono = BRSeguridad.desencriptar(Convert.ToString(dsTelefonos.Tables[0].Rows[i]["telefono"]))
                 });
             }
         }
         return dataTelefono;
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }
コード例 #13
0
        public List<Domicilio> getDomicilios()
        {
            try
            {
                BeanUsuario usuarioActual = new BeanUsuario();
                if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
                {
                    usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
                }
                DataSet dsDomicilio = BRDomicilio.buscarPorIdusuario(usuarioActual.id);
                List<Domicilio> dataDomicilio = new List<Domicilio>();
                if (dsDomicilio.Tables[0].Rows.Count != 0)
                {

                    int nCantColumnas = dsDomicilio.Tables[0].Rows.Count - 1;
                    for (int i = 0; i <= nCantColumnas; i++)
                    {
                        dataDomicilio.Add(new Domicilio()
                        {
                            id = Convert.ToInt32(dsDomicilio.Tables[0].Rows[i]["id"]),
                            idUsuario = Convert.ToInt32(dsDomicilio.Tables[0].Rows[i]["idUsuario"]),
                            descripcion = BRSeguridad.desencriptar(Convert.ToString(dsDomicilio.Tables[0].Rows[i]["descripcion"])),
                            idLocalidad = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["idLocalidad"]),
                            idDepartamento = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["idDepartamento"]),
                            idProvincia = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["idProvincia"]),
                            latitud = BRSeguridad.desencriptar(Convert.ToString(dsDomicilio.Tables[0].Rows[i]["latitud"])),
                            longitud = BRSeguridad.desencriptar(Convert.ToString(dsDomicilio.Tables[0].Rows[i]["longitud"])),
                            ubicacionZoom = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["ubicacionZoom"]),
                            idCodPostal = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["idCodPostal"]),
                            codigoPostal = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["codigoPostal"]),
                            provincia = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["provincia"]),
                            departamento = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["departamento"]),
                            localidad = Convert.ToString(dsDomicilio.Tables[0].Rows[i]["localidad"])
                        });
                    }
                }

                return dataDomicilio;
            }
            catch (Exception ex)
            {
                // logueo el error en bitacora y en ELMATH
                BRLoger.LogError(ex);
                throw ex;
            }
        }
コード例 #14
0
        public List<regIntegridad> verificarIntegridad()
        {
            try
            {
                Session["Error"] = null;
                BeanUsuario usuarioActual = new BeanUsuario();
                if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
                {
                    usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
                }

                if (usuarioActual.integridad.Count ==  0) {// significa q se acaba de logear asi q ya sabe lo que esta mal en la BD
                    BRSeguridad.VerificarIntegridadCompleta(usuarioActual);
                }

                List<regIntegridad> data = new List<regIntegridad>();
                if (usuarioActual.integridad.Count > 0)
                { // hay problemas de integridad los muestro
                    IEnumerator _oIntegridad = usuarioActual.integridad.GetEnumerator();
                    while (_oIntegridad.MoveNext())// utilizo el patron iterator para recorrer la lista
                    {
                        BeanIntegridad _integridad = (BeanIntegridad)_oIntegridad.Current;
                        data.Add(new regIntegridad()
                        {
                            id = Convert.ToString(_integridad.identificador),
                            inconsistencia = (_integridad.identificador == "" ? "Vertical" : "Horizontal"),
                            tabla = Convert.ToString(_integridad.Tabla)
                        });
                    }
                }
                return data;
            }
            catch (Exception ex)
            {
                // logueo el error en bitacora y en ELMATH
                BRLoger.LogError(ex);
                throw ex;
            }
        }
コード例 #15
0
 public void recargarMenu()
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         usuarioActual.permisos.Clear();
         usuarioActual.integridad.Clear();
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }
コード例 #16
0
        public Usuario getUsuario()
        {
            try{

                BeanUsuario usuarioActual = new BeanUsuario();
                if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
                {
                    usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];

                }
                Usuario user = new Usuario();
                DataSet dsUsuario = BRUsuarios.buscarPorId(usuarioActual.id);
                if (dsUsuario.Tables[0].Rows.Count != 0){
                    int nCantColumnas = dsUsuario.Tables[0].Rows.Count - 1;
                    for (int i = 0; i <= nCantColumnas; i++)
                    {
                        user.id = Convert.ToInt32(dsUsuario.Tables[0].Rows[i]["id"]);
                        user.usuario = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["usuario"]));
                        user.pass = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["pass"]));
                        user.nombre = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["nombre"]));
                        user.apellido = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["apellido"]));
                        user.email = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["email"]));
                        user.esCuit = Convert.ToString(dsUsuario.Tables[0].Rows[i]["esCuit"]);
                        user.cuit_cuil = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["cuit_cuil"]));
                        user.razonSocial = BRSeguridad.desencriptar(Convert.ToString(dsUsuario.Tables[0].Rows[i]["razonSocial"]));
                    }
                }
                return user;
            }
            catch (Exception ex)
            {
                // logueo el error en bitacora y en ELMATH
                BRLoger.LogError(ex);
                throw ex;
            }
        }
コード例 #17
0
        public static BeanUsuario recargarUsuario(BeanUsuario us)
        {
            try
            {

                DataSet ds = BRUsuarios.buscarPorId(us.id);
                if (ds.Tables[0].Rows.Count == 0)
                    us.existe = false;
                else
                {
                    us = new BeanUsuario();
                    us.id = (int)ds.Tables[0].Rows[0]["id"];
                    us.usuario = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["usuario"]));
                    us.apellido = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["apellido"]));
                    us.nombre = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["nombre"]));
                    us.email = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["email"]));
                    us.esCuil = (int)(ds.Tables[0].Rows[0]["esCuit"].ToString() != "" ? ds.Tables[0].Rows[0]["esCuit"] : 0) == 1 ? true : false;
                    us.cuit_cuil = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["cuit_cuil"]));
                    us.razonSocial = BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["razonSocial"]));
                    DataSet dsTelefonos = BRTelefonos.buscarPorIdUsuario(us.id);

                    if (dsTelefonos.Tables[0].Rows.Count != 0)
                    {
                        int nCantColumnas = dsTelefonos.Tables[0].Rows.Count - 1;
                        for (int i = 0; i <= nCantColumnas; i++)
                        {
                            BeanTelefono tel = new BeanTelefono();
                            tel.id = (int)dsTelefonos.Tables[0].Rows[i]["id"];
                            tel.telefono = BRSeguridad.desencriptar(Convert.ToString(dsTelefonos.Tables[0].Rows[i]["telefono"]));
                            us.addTelefono(tel);

                        }
                    }
                    us.bloqueado = (int)(ds.Tables[0].Rows[0]["bloqueado"].ToString() != "" ? ds.Tables[0].Rows[0]["bloqueado"] : 0) == 1 ? true : false;
                    us.fechaBaja = Convert.ToString((Convert.ToString(ds.Tables[0].Rows[0]["fechaBaja"]) != "") ? ds.Tables[0].Rows[0]["fechaBaja"] : "");
                    us.motivo =  BRSeguridad.desencriptar(Convert.ToString(ds.Tables[0].Rows[0]["motivo"]));
                    us.existe = true;
                    DataSet dsPermisos = BRPermisos.buscarPorIdUsuario(us.id);
                    if (dsPermisos.Tables[0].Rows.Count != 0)
                    {
                        int nCantColumnas = dsPermisos.Tables[0].Rows.Count - 1;
                        for (int i = 0; i <= nCantColumnas; i++)
                        {
                            BeanPermisos permiso = new BeanPermisos();
                            permiso.id = (int)dsPermisos.Tables[0].Rows[i]["idPermiso"];
                            permiso.idForm = Convert.ToString(dsPermisos.Tables[0].Rows[i]["idForm"]);
                            permiso.descripcion = Convert.ToString(dsPermisos.Tables[0].Rows[i]["descripcion"]);
                            permiso.negado = false;
                            us.addPermiso(permiso);
                        }
                    }
                    DataSet dsPermisosIndependientes = BRPermisos.buscarIndepPorIdUsuario(us.id);
                    if (dsPermisosIndependientes.Tables[0].Rows.Count != 0)
                    {
                        int nCantColumnas = dsPermisosIndependientes.Tables[0].Rows.Count - 1;
                        for (int i = 0; i <= nCantColumnas; i++)
                        {
                            BeanPermisos permiso = new BeanPermisos();
                            permiso.id = (int)dsPermisosIndependientes.Tables[0].Rows[i]["idPermiso"];
                            permiso.idForm = Convert.ToString(dsPermisosIndependientes.Tables[0].Rows[i]["idForm"]);
                            permiso.descripcion = Convert.ToString(dsPermisosIndependientes.Tables[0].Rows[i]["descripcion"]);
                            permiso.negado = (Convert.ToString(dsPermisosIndependientes.Tables[0].Rows[i]["negado"]) != "1") ? false : true;
                            us.addPermisoIndependiente(permiso);
                        }
                    }
                    if (us.bloqueado)
                    {
                        BRBitacora.registrarEvento("Intento de ingreso del usuario = " + us.id + " BLOQUEADO ", BeanException.Moderado);
                    }

                }
                return us;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #18
0
 public void modificarUsuario(string contrasena, string email, string nombre, string apellido, string razonSocial, string esCuit, string cuit_cuil)
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         BRUsuarios.modificarByIdUsuario(usuarioActual.id, contrasena, email, nombre, apellido, razonSocial, esCuit, cuit_cuil);
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }
コード例 #19
0
        public static Boolean validarIntegridadHorizontal(BeanUsuario usuario)
        {
            try
            {
                BODomicilios bo = new BODomicilios();
                DataSet ds = bo.GetByN("Consistencia", "");
                String identificador = "";
                if (ds.Tables[0].Rows.Count == 0)
                    return true; // la tabla de bitacora está vacía.

                Int32 nVerificacion = 0;
                Int32 nSuma = 0;
                string sCadena = "";
                int j, y;
                j = 0;

                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    nVerificacion = 0;
                    sCadena = "";
                    for (int i = 0; i <= ds.Tables[0].Columns.Count - 2; i++)
                    {   // Armo un string largo con todos los campos de la tabla.
                        if (i == 0)
                        {
                            identificador = String.Concat(sCadena, Convert.ToString(dr[i]));
                        }
                        if (typeof(DateTime) == dr[i].GetType())
                        {
                            sCadena = String.Concat(sCadena, Convert.ToDateTime(dr[i]).Ticks);
                        }
                        else
                        {
                            sCadena = String.Concat(sCadena, Convert.ToString(dr[i]));
                        }
                    }

                    for (int i2 = 0; i2 <= sCadena.Length - 1; i2++)
                    {   // Obtengo el valor en int de cada caracter del string largo
                        char sPos = Convert.ToChar(sCadena.Substring(i2, 1));
                        nVerificacion = nVerificacion + Convert.ToInt32(sPos);
                    }

                    y = Convert.ToInt32(ds.Tables[0].Rows[j]["Verificacion"]);
                    if (nVerificacion != y)
                    {   //La suma de verificación Horizontal no corresponde.
                        BRBitacora.registrarEvento("Consist. Horizontal incorrecta en Tabla: Domicilios id = " + ds.Tables[0].Rows[j]["id"], BeanException.Critico);
                        usuario.addIntegridad(new BeanIntegridad(identificador, "TransArte_Domicilios "));
                    }
                    nSuma = nSuma + nVerificacion;
                    j = j + 1;

                } // Fin Recorro todas las filas de la tabla
                Int32 nIntVertical = BRDVVertical.consistenciaVertical("TransArte_Domicilios");
                if (!nIntVertical.Equals(nSuma))
                {
                    BRBitacora.registrarEvento("Consist. Vertical incorrecta en Tabla: TransArte_Domicilios ", BeanException.Critico);
                    usuario.addIntegridad(new BeanIntegridad("", "TransArte_Domicilios"));
                    return false;
                }
                else
                    return true;
            }
            catch (Exception ex)
            {
                throw;
            }
        }
コード例 #20
0
 public Boolean corregirIntegridad()
 {
     try
     {
         BeanUsuario usuarioActual = new BeanUsuario();
         if (HttpContext.Current.Session != null && HttpContext.Current.Session["usuarioActual"] != null)
         {
             usuarioActual = (BeanUsuario)HttpContext.Current.Session["usuarioActual"];
         }
         BRSeguridad.corregirIntegridadCompleta(usuarioActual);
         return true;
     }
     catch (Exception ex)
     {
         // logueo el error en bitacora y en ELMATH
         BRLoger.LogError(ex);
         throw ex;
     }
 }