private void AlmacenarDatos(RegistroBeneficiarioViewModel registro)
        {
            var aBenericiario = new A_BENEFICIARIO();
            var aPersona      = new A_PERSONA();
            var aUsuario      = new A_USUARIO();

            #region Subida a Base de Datos

            var persona = new TB_PERSONA
            {
                NOMBRES      = registro.InfoPersonal.Nombres,
                APELLIDOS    = registro.InfoPersonal.Apellidos,
                CORREO_E     = registro.InfoCredenciales.Correo,
                DIRECCION    = registro.InfoActividadEconomica.Direccion,
                ID_MUNICIPIO = registro.InfoActividadEconomica.MunicipioId,
                TEL_CEL      = registro.InfoPersonal.Celular,
                TEL_FIJO     = registro.InfoPersonal.Telefono,
            };

            var idUsuario = ((MV_DetalleUsuario)Session["usuario"])?.ID_USUARIO ?? 0;

            var idPersona = registro.InfoCredenciales.PersonaId != 0 ? aPersona.ActualizarPersona(persona, idUsuario) : aPersona.AlmacenarPersona(persona, idUsuario);

            var beneficiario = new TB_BENEFICIARIO
            {
                ID_PERSONA          = Convert.ToInt32(idPersona.IDENTITY),
                ID_SECTOR_ECONOMICO = registro.InfoActividadEconomica.SectorId,
                CODIGO_BENEFICIARIO = "",
                ID_ESTADO_PROCESO   = A_ESTADO_PROCESO.ObtenerPorCodigo("B02").ID_ESTADO_PROCESO,
                DUI          = registro.InfoPersonal.Dui,
                NIT          = registro.InfoPersonal.Nit,
                TIPO_PERSONA = Session["tipoPersona"].ToString() == "personaNatural" ? (short)2 : (short)1
            };

            var usuario = new TB_USUARIO
            {
                CONTRASENA     = registro.InfoCredenciales.Password,
                ID_PERSONA     = Convert.ToInt32(idPersona.IDENTITY),
                ID_ROL         = 2, // no debe ir quemado
                NOMBRE_USUARIO = registro.InfoCredenciales.Correo
            };

            #endregion

            aUsuario.createUsuario(usuario, idUsuario);
            var idBeneficiario = Convert.ToInt32(aBenericiario.GuardarBeneficiario(beneficiario, idUsuario).IDENTITY);

            #region Subida de Archivos al Servidor

            SubirArchivo(lbl_cuerpo, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.CredencialCuerpoFile, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.CredencialCuerpoNombre, idBeneficiario);
            SubirArchivo(lbl_constancia, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.ConstanciaAlcaldiaFile, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.ConstanciaAlcaldiaNombre, idBeneficiario);
            SubirArchivo(lbl_estadoie, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.EstadoIngresosEgresosFile, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.EstadoIngresosEgresosNombre, idBeneficiario);
            SubirArchivo(lbl_estadore, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.EstadoResultadosFile, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.EstadoResultadosNombre, idBeneficiario);
            SubirArchivo(lbl_escritura, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.EscrituraConstitucionFile, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaJuridica.EscrituraConstitucionNombre, idBeneficiario);

            #endregion


            A_NOTIFICACION.GuardarNotificacion(A_USUARIO.obtenerCoordinador().ID_USUARIO, idUsuario, "B02");
        }
        protected void btn_enviar_OnClick(object sender, EventArgs e)
        {
            var aPersona = new A_PERSONA();

            if (aPersona.EsCorreoUnico(correo.Value) == 1)
            {
                lbl_errorCorreo.Text = "Este correo ya fue registrado anteriormente";
                return;
            }

            var persona = new TB_PERSONA
            {
                NOMBRES      = nombre.Value,
                APELLIDOS    = apellido.Value,
                CORREO_E     = correo.Value,
                ID_MUNICIPIO = Convert.ToInt32(ddl_municipio.SelectedValue),
                TEL_FIJO     = tel.Value.Trim(),
                TEL_CEL      = cel.Value.Trim()
            };

            var res = aPersona.AlmacenarPersona(persona, ((MV_DetalleUsuario)Session["usuario"])?.ID_USUARIO ?? 0);

            A_ASIG_CONSULTOR.AsignarConsultorABeneficiario(persona.ID_MUNICIPIO, 0, Convert.ToInt32(res.IDENTITY), 0);

            int idCoordinador = 3;

            A_NOTIFICACION.GuardarNotificacion(idCoordinador, idCoordinador, "B01");

            panel_formulario.Visible = false;
            panel_mensaje.Visible    = true;
        }
示例#3
0
        protected void GuardarConsultor_Click(object sender, EventArgs e)
        {
            var        usuario   = (MV_DetalleUsuario)Session["usuario"];
            TB_PERSONA consultor = new TB_PERSONA();

            consultor.CORREO_E        = correoConsultor.Text;
            consultor.APELLIDOS       = apellidoConsultor.Text;
            consultor.DIRECCION       = direccionConsultor.Text;
            consultor.NOMBRES         = nombreConsultor.Text;
            consultor.TEL_CEL         = celularConsultor.Text;
            consultor.TEL_FIJO        = telFijoConsultor.Text;
            consultor.ID_DEPARTAMENTO = Convert.ToInt32(ddl_depto.SelectedValue);
            consultor.ID_MUNICIPIO    = Convert.ToInt32(ddl_municipio.SelectedValue);
            MV_Exception res = new A_PERSONA().AlmacenarPersona(consultor, ((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO);

            if (res.IDENTITY == null)
            {
                throw new Exception(res.ERROR_MESSAGE);
            }

            consultor.ID_PERSONA = int.Parse(res.IDENTITY.ToString());

            TB_USUARIO usuarioConsultor = new TB_USUARIO();

            usuarioConsultor.NOMBRE_USUARIO = "consultor_" + consultor.ID_PERSONA;
            usuarioConsultor.CONTRASENA     = passwordConsultor.Text;
            usuarioConsultor.ID_ROL         = 3;
            usuarioConsultor.ID_PERSONA     = consultor.ID_PERSONA;

            res = new A_USUARIO().createUsuario(usuarioConsultor, ((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO);
            Response.RedirectToRoute("AsignacionConsultor");
        }
示例#4
0
        /// <summary>
        /// Método que autentica al usuario con las credenciales ingresadas. Si se comprueban correctas, lo redirige a su pantalla de inicio (según su rol); sino, le permite un nuevo intento de corregir sus credenciales
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btn_login_Click(object sender, EventArgs e)
        {
            A_USUARIO u = new A_USUARIO();
            A_PERSONA p = new A_PERSONA();

            TB_PERSONA persona = p.getPersonaByCorreoE(txt_email.Text);     //Si las credenciales son correctas, se busca la información de la persona

            if (persona == null)
            {
                lbl_errors.Attributes.Remove("hidden");
                lbl_errors.Text = "Usuario o contraseña incorrectos";
                return;
            }

            TB_USUARIO usuario = u.getUsuarioByPersona(persona.ID_PERSONA);               //A partir de la persona se extrae el resto de la información del usuario

            //Verificando las credenciales
            if (!u.Autenticar(txt_email.Text, txt_password.Text))
            {
                lbl_errors.Attributes.Remove("hidden");
                lbl_errors.Text = "Usuario o contraseña incorrectos";
                return;
            }

            //Verificando el estado de la sesion
            int estado_sesion = u.getEstadoSesion(usuario.ID_USUARIO, Session.SessionID);

            //Tomando acciones segun resultado de la comprobacion:
            switch (estado_sesion)
            {
            case A_USUARIO.SESION_EXISTENTE_NO_EQUIVALENTE:
                //Sesion abierta, del que no es propietario. Preguntar si cerrar
                btn_restart_sesion.Visible = true;
                //btn_login.Visible = false;
                txt_password.Attributes.Remove("required");
                Session["old_email"] = txt_email.Text;
                return;

            case A_USUARIO.SESION_NO_EXISTENTE:
                //Sesion nueva
                u.updateUsuarioAsAutenticado(usuario.ID_USUARIO, Session.SessionID, true);
                redirigir(usuario.ID_USUARIO, usuario.ID_ROL);
                break;

            case A_USUARIO.SESION_EXISTENTE:
                //Sesion abierta, pero del que es propietario
                redirigir(usuario.ID_USUARIO, usuario.ID_ROL);
                break;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["usuario"] == null)
            {
                Response.RedirectToRoute("Login");
                return;
            }

            rol = ((MV_DetalleUsuario)Session["usuario"]).NOMBRE_ROL.ToUpper();

            string param = (string)Page.RouteData.Values["idProblema"];

            int id_problema;

            if (!int.TryParse(param, out id_problema))
            {
                Response.Clear();
                Response.End();
                return;
            }

            problema = A_PROBLEMA.getByIdProblema(id_problema);

            if (problema == null)
            {
                Response.End();
                return;
            }

            beneficiario = A_BENEFICIARIO.getDetalleBeneficiarioById(problema.ID_BENEFICIARIO);
            consultor    = A_ASIGNACION.geConsultorByIdBeneficiario((int)problema.ID_BENEFICIARIO);

            if (Request.Form.Count > 0)
            {
                switch (Request.Form["act"])
                {
                case "app":             //Aprobar
                    aprobar();
                    break;

                case "obs":             //Añadir una observacion
                    editObservacion();
                    break;

                case "desc":            //Descartar la notificación

                    break;
                }
            }
        }
        public void editarUsuario()
        {
            try
            {
                //Construyendo a la persona
                TB_PERSONA persona = new TB_PERSONA();

                persona.ID_PERSONA   = int.Parse(Request.Form["txt_id_persona"]);
                persona.NOMBRES      = Request.Form["txt_nombres"];
                persona.APELLIDOS    = Request.Form["txt_apellidos"];
                persona.CORREO_E     = Request.Form["txt_correo"];
                persona.TEL_FIJO     = Request.Form["txt_telefono_fijo"];
                persona.TEL_CEL      = Request.Form["txt_telefono_cel"];
                persona.ID_MUNICIPIO = int.Parse(Request.Form["sel_id_municipio"]);

                new A_PERSONA().editarPersona(persona, ((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO);

                //Construyendo al usuario
                TB_USUARIO usuario = new TB_USUARIO();

                usuario.ID_USUARIO     = int.Parse(Request.Form["txt_id_usuario"]);
                usuario.NOMBRE_USUARIO = Request.Form["txt_nombre_usuario"];
                usuario.ID_ROL         = int.Parse(Request.Form["sel_id_rol"]);
                usuario.ID_PERSONA     = new A_PERSONA().getPersonaByCorreoE(persona.CORREO_E).ID_PERSONA;

                //Controlando si se cambia o no la contraseña
                string contrasena = Request.Form["txt_contrasena1"];

                if (!string.IsNullOrWhiteSpace(contrasena))  //Si la contraseña NO está en blanco es porque QUIERE cambiarla
                {
                    usuario.CONTRASENA = contrasena;
                }
                else
                {
                    usuario.CONTRASENA = null;
                }

                new A_USUARIO().updateUsuario(usuario, ((BLL.Modelos.ModelosVistas.MV_DetalleUsuario)Session["usuario"]).ID_USUARIO);

                info = "Usuario editado correctamente";
            }
            catch (Exception e)
            {
                errores = e.Message;
                H_LogErrorEXC.GuardarRegistroLogError(e);
            }
        }
示例#7
0
        protected void btn_restart_sesion_Click(object sender, EventArgs e)
        {
            A_USUARIO u = new A_USUARIO();
            A_PERSONA p = new A_PERSONA();

            //Evitando el robo de sesion
            string email = txt_email.Text;

            //Si se ha habilitado el boton para cerrar la sesion anterior, la contrasena no sera requerida,
            //Pero si intenta iniciar sesion con otro usuario, la contrasena sera requerida
            if (!email.Equals(Session["old_email"]))
            {
                //Ocultando boton de cerrar sesion activa
                btn_restart_sesion.Visible = true;

                //Haciendo obligatoria la contrasena
                txt_password.Attributes.Add("required", "true");

                //Mostrando errores
                lbl_errors.Attributes.Remove("hidden");
                lbl_errors.Text = "Usuario o contraseña incorrectos";

                //Ocultando boton magico
                btn_restart_sesion.Visible = false;

                //Borrando la información de la Sesión
                Session.Remove("old_email");

                return;
            }

            //Borrando la información de la Sesión
            Session.Remove("old_email");

            TB_PERSONA persona = p.getPersonaByCorreoE(txt_email.Text);     //Si las credenciales son correctas, se busca la información de la persona

            TB_USUARIO usuario = u.getUsuarioByPersona(persona.ID_PERSONA); //A partir de la persona se extrae el resto de la información del usuario

            //Escribiendo en BD que se actualizara el ID de la sesion que usara el usuario
            u.updateUsuarioAsAutenticado(usuario.ID_USUARIO, Session.SessionID, true);

            //Redirigiendo hacia la pagina correspondiente del rol
            redirigir(usuario.ID_USUARIO, usuario.ID_ROL);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            var usuario = (MV_DetalleUsuario)Session["usuario"];

            if (IsPostBack)
            {
                return;
            }

            switch (usuario.NOMBRE_ROL.ToUpper())
            {
            case "BENEFICIARIO":

                h_beneficiario.Visible = true;

                var aBeneficiario = new A_BENEFICIARIO();

                var idBeneficiario = A_BENEFICIARIO.ObtenerBeneficiario(usuario.ID_USUARIO).ID_BENEFICIARIO;

                gv_propuestas.DataSource = A_PROPUESTA.ObtenerPropuestasByIdBeneficiario(idBeneficiario);



                miConsultor = A_ASIGNACION.getPersonaByIdBeneficiario(Convert.ToInt32(usuario.ID_PERSONA.ToString()));

                pnl_beneficiario.Visible = true;


                break;

            case "FORMULADOR":
                gv_propuestas.DataSource = A_PROPUESTA.ObtenerPropuestasRechazadasOPendientesPorIdUsuarioFormulador(usuario.ID_USUARIO);
                break;
            }

            gv_propuestas.DataBind();
            i = gv_propuestas.Rows.Count;
        }
示例#9
0
        protected void RegistrarFormuladorClick(object sender, EventArgs e)
        {
            var aUsuario = new A_USUARIO();
            var aPersona = new A_PERSONA();
            var aRol     = new A_ROL();

            var aFormulador = new A_FORMULADOR();

            lbl_error_password2.Text = "";
            lbl_errorCorreo.Text     = "";

            if (txt_pass1.Text != txt_pass2.Text)
            {
                lbl_error_password2.Text      = "Las contraseñas deben coincidir";
                lbl_error_password2.ForeColor = System.Drawing.Color.Red;
                return;
            }
            else
            {
                if (aPersona.EsCorreoUnico(txt_correo.Text) == 1)
                {
                    lbl_errorCorreo.Text = "Este correo ya fue registrado anteriormente";
                    return;
                }
            }



            var persona = new TB_PERSONA
            {
                NOMBRES   = txt_nombre.Text,
                APELLIDOS = txt_apellido.Text,
                CORREO_E  = txt_correo.Text,
                DIRECCION = txt_dir.Text,
                TEL_FIJO  = txt_tel.Text,
                TEL_CEL   = txt_cel.Text
            };

            var idRol = aRol.getRolByNombre("Formulador").ID_ROL;
            var res   = new MV_Exception();

            res = aPersona.AlmacenarPersona(persona, 0);

            if (res.IDENTITY != null)
            {
                int idPersona = Convert.ToInt32(res.IDENTITY);

                var usuario = new TB_USUARIO
                {
                    NOMBRE_USUARIO = txt_correo.Text,
                    ID_PERSONA     = idPersona,
                    ID_ROL         = idRol,
                    CONTRASENA     = txt_pass1.Text
                };

                res = aUsuario.createUsuario(usuario, 0);

                int idUsuario = Convert.ToInt32(res.IDENTITY);

                var formulador = new TB_FORMULADOR
                {
                    ID_PERSONA        = idPersona,
                    GRADO_ACADEMICO   = txt_grado.Text,
                    ANIOS_EXPERIENCIA = Convert.ToInt16(txt_experiencia.Text),
                    ACTIVO            = false
                };

                res = aFormulador.insertFormulador(formulador, idUsuario);
                formulador.ID_FORMULADOR = Convert.ToInt32(res.IDENTITY);
                A_NOTIFICACION.GuardarNotificacion(A_USUARIO.obtenerCoordinador().ID_USUARIO, 0, "IF02");
                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", "ShowMessage('Registro de formulador exitoso, ahora debera agregar su experiencia al momento de loguearse', 'success');", true);
                btn.Visible = false;
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", "ShowMessage('Error al guardar el registro de datos personales</strong>', 'error');", true);
            }
        }
        private void AlmacenarDatos(RegistroBeneficiarioViewModel registro)
        {
            var aBenericiario = new A_BENEFICIARIO();
            var aPersona      = new A_PERSONA();
            var aUsuario      = new A_USUARIO();

            #region Subida a Base de Datos

            var persona = new TB_PERSONA
            {
                NOMBRES      = registro.InfoPersonal.Nombres,
                APELLIDOS    = registro.InfoPersonal.Apellidos,
                CORREO_E     = registro.InfoCredenciales.Correo,
                DIRECCION    = registro.InfoActividadEconomica.Direccion,
                ID_MUNICIPIO = registro.InfoActividadEconomica.MunicipioId,
                TEL_CEL      = registro.InfoPersonal.Celular,
                TEL_FIJO     = registro.InfoPersonal.Telefono,
                ID_PERSONA   = registro.InfoCredenciales.PersonaId
            };

            var idUsuario = ((MV_DetalleUsuario)Session["usuario"])?.ID_USUARIO ?? 0;

            var idPersona = registro.InfoCredenciales.PersonaId != 0 ? aPersona.ActualizarPersona(persona, idUsuario) : aPersona.AlmacenarPersona(persona, idUsuario);

            var beneficiario = new TB_BENEFICIARIO
            {
                ID_PERSONA          = Convert.ToInt32(idPersona.IDENTITY),
                ID_SECTOR_ECONOMICO = registro.InfoActividadEconomica.SectorId,
                CODIGO_BENEFICIARIO = "",
                ID_ESTADO_PROCESO   = A_ESTADO_PROCESO.ObtenerPorCodigo("B02").ID_ESTADO_PROCESO,
                DUI          = registro.InfoPersonal.Dui,
                NIT          = registro.InfoPersonal.Nit,
                TIPO_PERSONA = Session["tipoPersona"].ToString() == "personaNatural" ? (short)2 : (short)1
            };

            var usuario = new TB_USUARIO
            {
                CONTRASENA     = registro.InfoCredenciales.Password,
                ID_PERSONA     = Convert.ToInt32(idPersona.IDENTITY),
                ID_ROL         = 2, //no debe ir quemado
                NOMBRE_USUARIO = registro.InfoCredenciales.Correo
            };

            #endregion

            aUsuario.createUsuario(usuario, idUsuario);
            var idBeneficiario = Convert.ToInt32(aBenericiario.GuardarBeneficiario(beneficiario, idUsuario).IDENTITY);

            #region Subida de Archivos al Servidor

            if (_registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaNatural.ConstanciaAlcaldia != null)
            {
                SubirArchivo(lbl_constancia, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaNatural.ConstanciaAlcaldia, "constanciaAlcaldia", idBeneficiario);
            }

            if (_registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaNatural.Otro != null)
            {
                SubirArchivo(lbl_otro, _registroViewModel.InfoDocumentacion.InfoDocumentacionPersonaNatural.Otro, "otro", idBeneficiario);
            }

            #endregion
            TB_PERSONA con = A_ASIG_CONSULTOR.ObtenerConsultor((int)persona.ID_MUNICIPIO, (int)beneficiario.ID_SECTOR_ECONOMICO);
            var        p   = new A_PERSONA().getPersonaByCorreoE(registro.InfoCredenciales.Correo);
            if (con.ID_PERSONA != 0)
            {
                A_ASIGNACION.Asignar(p.ID_PERSONA, con.ID_PERSONA);
            }
            A_NOTIFICACION.GuardarNotificacion(A_USUARIO.obtenerCoordinador().ID_USUARIO, idUsuario, "B02");
        }
        public void agregarUsuario()
        {
            try
            {
                A_USUARIO u = new A_USUARIO();
                A_PERSONA p = new A_PERSONA();

                var contrasena1 = Request.Form["txt_contrasena1"];
                var contrasena2 = Request.Form["txt_contrasena2"];

                if (string.IsNullOrWhiteSpace(contrasena1) || string.IsNullOrWhiteSpace(contrasena2) || !u.testContraseñas(contrasena1, contrasena2))
                {
                    errores = "Usuario no guardado. La contraseña no puede estar vacía ni contener solo espacios";
                    return;
                }

                if (contrasena1.Length < A_USUARIO.MAX_CARACTERES_CONTRASEÑA)
                {
                    errores = "La contraseña debe contener " + A_USUARIO.MAX_CARACTERES_CONTRASEÑA + " caractes o mas";
                    return;
                }

                //Construyendo a la persona
                TB_PERSONA persona = new TB_PERSONA();

                persona.NOMBRES   = Request.Form["txt_nombres"];
                persona.APELLIDOS = Request.Form["txt_apellidos"];
                persona.CORREO_E  = Request.Form["txt_correo"];
                persona.TEL_FIJO  = Request.Form["txt_telefono_fijo"];
                persona.TEL_FIJO  = Request.Form["txt_telefono_cel"];

                string municipio = Request.Form["sel_id_municipio"];

                persona.ID_MUNICIPIO = int.Parse(municipio);

                //Probando si el correo no fue registrado para otra persona antes:
                TB_PERSONA p_prueba = p.getPersonaByCorreoE(persona.CORREO_E);

                if (p_prueba != null)
                {
                    errores = "El correo electrónico ya está registrado";
                    return;
                }

                MV_Exception res = p.AlmacenarPersona(persona, ((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO);

                if (res.IDENTITY == null)
                {
                    throw new Exception(res.ERROR_MESSAGE);
                }

                persona.ID_PERSONA = int.Parse(res.IDENTITY.ToString());

                //Construyendo al usuario
                TB_USUARIO usuario = new TB_USUARIO();

                usuario.NOMBRE_USUARIO = Request.Form["txt_nombre_usuario"];
                usuario.CONTRASENA     = Request.Form["txt_contrasena1"];
                usuario.ID_ROL         = int.Parse(Request.Form["sel_id_rol"]);
                usuario.NOMBRE_USUARIO = Request.Form["txt_nombre_usuario"];
                usuario.ID_PERSONA     = persona.ID_PERSONA;

                res = u.createUsuario(usuario, ((MV_DetalleUsuario)Session["usuario"]).ID_USUARIO);

                info = "Usuario agregado correctamente";
            }
            catch (Exception e)
            {
                errores = e.Message;
                H_LogErrorEXC.GuardarRegistroLogError(e);
            }
        }