示例#1
0
 public void DeleteRole(Rol rol)
 {
     SqlDataAccess.ExecuteNonQuery(ConfigurationManager.ConnectionStrings["GrouponConnectionString"].ToString(),
         "GRUPO_N.DeleteRole", SqlDataAccessArgs
         .CreateWith("@Rol_ID", rol.ID)
     .Arguments);
 }
 private static Rol rowToDto(RolDS.RolRow row)
 {
     Rol objRol = new Rol();
     objRol.Id = row.Id;
     objRol.NombreRol = row.NombreRol;
     return objRol;
 }
 private static Rol RowToDto(RolDS.RolesRow row)
 {
     Rol objRol = new Rol();
     objRol.ID = row.lRol_Id;
     objRol.NombreRol = row.sNombreRol;
     return objRol;
 }
示例#4
0
 public Baja_Rol(Form padre, Rol rol)
 {
     InitializeComponent();
     this.padre = padre;
     this.rol = rol;
     this.idBox.Text = rol.id.ToString();
 }
示例#5
0
        private void buttonAlta_Click(object sender, EventArgs e)
        {
            if (todosCamposCompletos())
            {
                //Crear Rol
                Rol rol = new Rol();
                rol.Nombre = textRol.Text;
                if ((string)comboEstado.SelectedItem == "Activo")
                    rol.Estado = true;
                else
                    rol.Estado = false;
                Funcionalidad funcionalidad_elegida = funcionalidades[comboFuncionalidades.SelectedIndex];
                //Transaccion
                bool respuesta = Globals.ROL.createRolConFuncionalidad(rol, funcionalidad_elegida.Id_funcionalidad);

                if (!respuesta)
                {
                    MessageBox.Show("Error al conectarse con la DB. No se ha creado el Rol.", "Error al crear Nuevo Rol",
                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                this.Dispose();
            }
            else
                MessageBox.Show("Complete todos los campos", "Error al crear Nuevo Rol",
                    MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
 private void crearButton_Click(object sender, EventArgs e)
 {
     Rol newRol = new Rol();
     CrearOModificarRol view = new CrearOModificarRol(newRol, daoRol, true);
     view.ShowDialog();
     fillDataGridView();
 }
 private void borrarButton_Click(object sender, EventArgs e)
 {
     selectedRol = (Rol)dataGridViewRol.CurrentRow.DataBoundItem;
     System.Windows.Forms.MessageBox.Show("Rol Nombre: " + selectedRol.name + " Rol Id: " + selectedRol.id);
     daoRol.deleteRol((int) selectedRol.id);
     fillDataGridView();
 }
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            RolService rolServv = new RolService();
            if (this.id_rol > 0)
            {
                this.rol.Nombre = this.txtNombre.Text;
                this.rol.Activo = this.chkActivo.Checked;
                this.rol.Funcionalidades = new List<Funcionalidad>();
                foreach (var item in chkLFuncionalidades.CheckedItems)
                {

                    this.rol.Funcionalidades.Add((Funcionalidad)item);
                }
                if (rolServv.modificarRol(this.rol) > 0)
                    MessageBox.Show("Se modifico correctamente", "OK");
                else MessageBox.Show("NO se modifico correctamente", "ERROR");
            }

            else
            {

                Rol rol = new Rol();
                rol.Nombre = txtNombre.Text;
                rol.Activo = chkActivo.Checked;
                rol.Funcionalidades = new List<Funcionalidad>();
                foreach (var item in chkLFuncionalidades.CheckedItems)
                {
                    rol.Funcionalidades.Add((Funcionalidad)item);
                }
                if (rolServv.crearRol(rol) != 0)
                    MessageBox.Show("Se creo correctamente", "OK");
                else MessageBox.Show("NO se creo correctamente", "ERROR");

            }
        }
示例#9
0
 private void button1_Click(object sender, EventArgs e)
 {
     this.Hide();
     Rol r = new Rol();
     r.ShowDialog();
     Close();
 }
示例#10
0
 private void buttonAlta_Click(object sender, EventArgs e)
 {
     if (todosCamposCompletos())
     {
         //Crear Rol
         Rol rol = new Rol();
         rol.Nombre = textRol.Text;
         if ((string)comboEstado.SelectedItem == "Activo")
             rol.Estado = true;
         else
             rol.Estado = false;
         Funcionalidad funcionalidad_elegida = funcionalidades[comboFuncionalidades.SelectedIndex];
         //Transaccion
         bool respuesta = DAORol.insertar(rol);
         if (!respuesta)
         {
             MessageBox.Show("Error al conectarse con la DB. No se ha creado el Rol.", "Error al crear Nuevo Rol",
             MessageBoxButtons.OK, MessageBoxIcon.Error);
             return;
         }
         respuesta = DAOFuncionalidad.agregarFuncionalidad(rol.Nombre, funcionalidad_elegida.Id_funcionalidad);
         if (!respuesta)
         {
             MessageBox.Show("Error al conectarse con la DB. No se han agreado las funcionalidades. Por favor, agreguelas en Modificar Rol.", "Error al crear Carar Funcionalidades",
             MessageBoxButtons.OK, MessageBoxIcon.Error);
             this.Dispose();
         }                //, funcionalidad_elegida.Id_funcionalidad);
         MessageBox.Show("Rol " + textRol.Text + " creado satisfactoriamente.", "Alta Rol",
         MessageBoxButtons.OK);
         ((RolBajaMod)Globals.VentanaAnterior).updateGrid();
         this.Close();
     }
 }
示例#11
0
        public static bool DeleteRol(Rol role)
        {
            string [] users = Roles.GetUsersInRole(role._Rolename);
            if(users != null)
                Roles.RemoveUsersFromRole(users, role._Rolename);

            return Roles.DeleteRole(role._Rolename);
        }
 public CrearOModificarRol(Rol rol, DAORol dao, Boolean create)
     : this()
 {
     this.rol = rol;
     this.daoRol = dao;
     this.create = create;
     nombreRolTextBox.Text = rol.name;
     activoRolCheckBox.Checked = rol.activo == null || !(Boolean)rol.activo ? false : true;
 }
示例#13
0
 private void InsertRole(Rol rol)
 {
     var roleId = SqlDataAccess.ExecuteScalarQuery<int>(ConfigurationManager.ConnectionStrings["GrouponConnectionString"].ToString(),
         "GRUPO_N.InsertRole", SqlDataAccessArgs
         .CreateWith("@Description", rol.Nombre)
     .Arguments);
     rol.ID = roleId;
     UpdateRoleFunctionalities(rol);
 }
示例#14
0
 private void UpdateRoleFunctionalities(Rol rol)
 {
     var manager = new FunctionalitiesManager();
     if(rol.ID > 0)
         manager.DeleteRoleFunctionalities(rol);
     foreach (var functionality in rol.Functionalities)
     {
         manager.InsertRoleFunctionality(rol, functionality);
     }
 }
示例#15
0
        private void UpdateRole(Rol rol)
        {
            SqlDataAccess.ExecuteNonQuery(ConfigurationManager.ConnectionStrings["GrouponConnectionString"].ToString(),
                "GRUPO_N.UpdateRole", SqlDataAccessArgs
                .CreateWith("@Description", rol.Nombre)
                .And("@ID", rol.ID)
            .Arguments);

            UpdateRoleFunctionalities(rol);
        }
        private void btnModificarRol_Click(object sender, EventArgs e)
        {
            Rol oRolModificado = new Rol();
            oRolModificado.Estado = chkHabilitado.Checked;
            oRolModificado.Descripcion = txtNombreRol.Text;
            oRolModificado.Funcionalidades = CargarFuncionalidadesAsignadas();
            oRolModificado.ID = this.oRol.ID;

            RolesUsuarioBusinessRule oRolesBR = new RolesUsuarioBusinessRule();
            oRolesBR.ActualizarRol(oRolModificado);
        }
示例#17
0
 private Rol crearRol(int fila)
 {
     Rol rol = new Rol();
     int index = grillaRoles.Columns["ID Rol"].Index;
     rol.id = Convert.ToInt32(grillaRoles.Rows.SharedRow(fila).Cells[index].Value.ToString());
     index = grillaRoles.Columns["Nombre"].Index;
     rol.nombre = grillaRoles.Rows.SharedRow(fila).Cells[index].Value.ToString();
     index = grillaRoles.Columns["Habilitado"].Index;
     rol.habilitado = Convert.ToBoolean(grillaRoles.Rows.SharedRow(fila).Cells[index].Value.ToString());
     return rol;
 }
示例#18
0
 public Modificar_Rol2(Form padre, Rol rol, PantallaPrincipal pantallaPrincipal)
 {
     InitializeComponent();
     this.pantallaPrincipal = pantallaPrincipal;
     this.padre = padre;
     this.rol = rol;
     validarHabilitado();
     cargarCampos();
     validarCampos();
     if (rol.nombre == "Administrativo" || rol.nombre == "Afiliado" || rol.nombre == "Profesional") textBox1.Enabled = false;
 }
示例#19
0
        private void grdRoles2_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (grdRoles.CurrentRow == null || grdRoles.CurrentRow.DataBoundItem == null) return;
            selectedRol = (Rol)grdRoles.CurrentRow.DataBoundItem;

            using (new WaitCursorHelper(this))
            {
                grdUsers.DataSource = FwkMembership.GetUsersDetailedInRole(selectedRol.RolName, frmAdmin.Provider.Name);
                grdUsers.Refresh();
            }
        }
        public List<Funcionalidad> FuncionalidadesDeRol(Rol rol)
        {
            DataRowCollection dataRows = SQLUtils.EjecutarConsultaSimple(
                String.Format(@"
                    SELECT Funcion_Codigo, Funcion_Nombre
                    FROM LCDTMAB.Funciones_Por_Rol, LCDTMAB.Funciones
                    WHERE FPR_Rol_Codigo = '{0}'
                        AND FPR_Funcion_Codigo = Funcion_Codigo", rol.Id),
                "LCDTMAB.Funciones");

            return ConvertirAFuncionalidades(dataRows);
        }
示例#21
0
        public ModificacionRol(Rol rolSel)
        {
            // TODO: Complete member initialization
            this.rolSel = rolSel;
            InitializeComponent();
            List<String> funcionalidades = JanadianDateDB.Instance.getFuncionalidades();

            foreach (String f in funcionalidades)
            {
                listBoxFuncionalidades.Items.Add(f);
            }
        }
示例#22
0
        public EditRol(Rol p_rol)
        {
            id = p_rol.id;
            nombre = p_rol.nombre;
            habilitado = p_rol.habilitado;
            selectedFuncs = p_rol.funcionalidades;
            selectedUsu = new Usuarios(id);

            nueva = false;

            InitializeComponent();
        }
 public virtual void AgregarFuncionalidades(Rol rol)
 {
     foreach(Funcionalidad funcion in rol.Funcionalidades){
         SQLUtils.EjecutarConsultaConEfectoDeLado(
             String.Format(@"IF NOT EXISTS
                                 (SELECT FPR_Rol_Codigo, FPR_Funcion_Codigo
                                  FROM LCDTMAB.Funciones_Por_Rol
                                  WHERE FPR_Rol_Codigo = '{0}' AND FPR_Funcion_Codigo = '{1}')
                             INSERT INTO LCDTMAB.Funciones_Por_Rol
                                    (FPR_Rol_Codigo, FPR_Funcion_Codigo)
                             VALUES ('{0}', '{1}')", rol.Id, funcion.ToString("D")));
     }
 }
示例#24
0
    protected void acceptButton_Click(object sender, EventArgs e)
    {
        try
        {
            List<string> revokes = new List<string>();
            //bool flag = false;

            foreach (ListItem it in permisos_CBList.Items)
            {
                if (it.Selected == false)
                {
                    revokes.Add(it.Text);
                    //flag = true;
                }
            }

            List<string> grants = new List<string>();

            foreach (ListItem it in otrosPermisos_CBList.Items)
            {
                if (it.Selected == true)
                {
                    grants.Add(it.Text);
                    //flag = true;
                }
            }

            /*if (flag)
            {*/
                BL.Rol rl = new Rol();
                long rolId = rl.getRolID(descripciones_DDList.SelectedItem.Text);
                AdministradordeSistema admin = new AdministradordeSistema();

                Security sec = new Security();
                long centro = sec.getCentroId(centros.Text);
                admin.editarRol(rolId, descripciones_DDList.SelectedItem.Text, grants, revokes, centro);

                Page.ClientScript.RegisterStartupScript(Page.GetType(), "alert", "alert('Rol Editado')", true);
                setCheckBoxes();
            /*}
            else
            {
                Page.ClientScript.RegisterStartupScript(Page.GetType(), "alert", "alert('Rol No Editado')", true);
            }*/
        }
        catch (Exception ex)
        {
            Session["Error_Msg"] = ex.Message;
            Response.Redirect("~/Error.aspx", true);
        }
    }
        public void ActualizarRol(Rol oRol)
        {
            RolDALC oRolDALC = new RolDALC();

            try
            {
                int result = oRolDALC.Actualizar(oRol);

            }
            catch (Exception ex)
            {
                MessageBox.Show("Hubo un error al registrar al Rol");
            }
        }
 public RolWindow(Rol rol, ModoApertura modo)
     : this()
 {
     this.Rol = rol;
     this.ObtenerFuncionalidadesDelRol();
     this.PopularListas();
     this.textNombre.Text = this.Rol.NombreRol;
     this.checkHabilitar.Checked = this.Rol.Habilitado;
     this.ModoApertura = modo;
     if (this.Rol.NombreRol == Rol.ADMIN || this.Rol.NombreRol == Rol.CLIENTE)
     {
         this.checkHabilitar.Enabled = false;
     }
 }
示例#27
0
        /// <summary>
        /// Obtiene todos los Roles
        /// The GetAllRoles method calls the RoleProvider.GetAllRoles method of the  role provider to get a list of all the roles from the data source for an application. 
        /// Only the roles for the application that is specified in the ApplicationName property are retrieved.
        /// </summary>
        /// <param name="providerName">Nombre del proveedor de membership</param>
        /// <returns>RolList con todos los roles</returns>
        public static RolList GetAllRoles(string providerName)
        {
            Rol r;
            RolList wRoleList = new RolList();
            if (string.IsNullOrEmpty(providerName))
                providerName = GetSqlMembershipProvider(providerName).Name;


            try
            {
                foreach (string s in GetRoleProvider(providerName).GetAllRoles())
                {
                    r = new Rol(s);
                    wRoleList.Add(r);
                }

            }
            catch (TechnicalException err)
            {
                throw err;
            }
            catch (System.NullReferenceException)
            {
                TechnicalException te = new TechnicalException(string.Format(Fwk.Security.Properties.Resource.RuleProvider_NotExist, providerName));
                ExceptionHelper.SetTechnicalException<FwkMembership>(te);
                te.ErrorId = "4000";
                throw te;
            }
            catch (System.Configuration.Provider.ProviderException pe)
            {
                TechnicalException te = new TechnicalException(
                    String.Format("El proveedor SqlMembership {0} lanzo el siguiente error: {1}", providerName, pe.Message)
                    );
                ExceptionHelper.SetTechnicalException<FwkMembership>(te);
                te.ErrorId = "4000";
                throw te;
            }
            catch (Exception ex)
            {

                TechnicalException te = new TechnicalException(Fwk.Security.Properties.Resource.MembershipSecurityGenericError, ex);
                ExceptionHelper.SetTechnicalException<FwkMembership>(te);
                te.ErrorId = "4000";
                throw te;
            }

            return wRoleList;

        }
示例#28
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (this.dataGridView1.SelectedRows.Count > 0)
            {
                rol_seleccionado = (Rol)this.dataGridView1.SelectedRows[0].DataBoundItem;
                new ModificarRol(rol_seleccionado).ShowDialog(this);

                this.Close();
            }
            else
            {
                MessageBox.Show("Seleccione una elemente de la grilla", "Alerta", MessageBoxButtons.OK);

            }
        }
示例#29
0
        public FormRolMod(string nombreRol)
        {
            InitializeComponent();
            rolSeleccionado = DAORol.getRol(nombreRol);
            funcionalidadesRol = DAOFuncionalidad.getFuncionalidades(nombreRol);
            funcionalidades = DAOFuncionalidad.getAllFuncionalidades();
            if (rolSeleccionado == null && funcionalidades == null && funcionalidadesRol == null)
            {
                MessageBox.Show("Error al conectarse a la DB", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.Dispose();
            }

            cargarDatos();
            
        }
        public List<Funcionalidad> FuncionalidadesDisponiblesPara(Rol rol)
        {
            DataRowCollection dataRows = SQLUtils.EjecutarConsultaSimple(
                String.Format(@"
                    SELECT *
                    FROM LCDTMAB.Funciones
                    WHERE Funcion_Codigo NOT IN
                            (SELECT FPR_Funcion_Codigo
                             FROM LCDTMAB.Funciones_Por_Rol
                             WHERE FPR_Rol_Codigo='{0}'
                             GROUP BY FPR_Funcion_Codigo)", rol.Id),
                "LCDTMAB.Funciones");

            return ConvertirAFuncionalidades(dataRows);
        }
示例#31
0
        public int guardar(Rol oRol, string CheckEnviado)
        {
            int regAf = 0;

            try
            {
                using (var transaccion = new TransactionScope())
                {
                    var id = oRol.IIDROL;

                    if (id == 0)
                    {
                        //Agregar
                        Rol o = new Rol();
                        o.NOMBRE      = oRol.NOMBRE;
                        o.DESCRIPCION = oRol.DESCRIPCION;
                        o.BHABILITADO = oRol.BHABILITADO;
                        db.Rol.Add(o);
                        db.SaveChanges();

                        string[] checkboxEnabled = CheckEnviado.Split('$');
                        for (int i = 0; i < checkboxEnabled.Length; i++)
                        {
                            RolPagina oRolPag = new RolPagina();
                            oRolPag.IIDROL      = o.IIDROL;
                            oRolPag.IIDPAGINA   = int.Parse(checkboxEnabled[i]);
                            oRolPag.BHABILITADO = 1;
                            db.RolPagina.Add(oRolPag);
                        }

                        regAf = 1;
                        db.SaveChanges();
                        transaccion.Complete();
                    }
                    else
                    {
                        //Editar
                        Rol o = (db.Rol.Where(p => p.IIDROL == id)).FirstOrDefault();
                        o.NOMBRE      = oRol.NOMBRE;
                        o.DESCRIPCION = oRol.DESCRIPCION;

                        //Deshabililitamos todos loc checkbox
                        var list = (db.RolPagina.Where(p => p.IIDROL == id));


                        foreach (RolPagina rp in list)
                        {
                            rp.BHABILITADO = 0;
                        }

                        //Habilitamos
                        string[] checkboxEnabled = CheckEnviado.Split('$');
                        for (int i = 0; i < checkboxEnabled.Length; i++)
                        {
                            var idRolPagina = Convert.ToInt32(checkboxEnabled[i]);

                            //int cantidad = list.Where(p => p.IIDROL == id && p.IIDPAGINA == idRol).Count();

                            var Edit = list.Where(p => p.IIDROL == id && p.IIDPAGINA == idRolPagina).FirstOrDefault();

                            //int cantidad = (from p in db.RolPagina
                            //                where p.IIDROL == id && p.IIDPAGINA == int.Parse(checkboxEnabled[i])
                            //                select p).Count();


                            // Si existe ya el RolPagina entonces actualizamos el BHABILITADO
                            if (Edit != null && Edit.IIDROL > 0)
                            {
                                //RolPagina oRolPag = new RolPagina();
                                //oRolPag.IIDROL = o.IIDROL;
                                //oRolPag.IIDPAGINA = int.Parse(checkboxEnabled[i]);
                                //oRolPag.BHABILITADO = 1;
                                //db.RolPagina.Add(oRolPag);

                                Edit.BHABILITADO = 1;
                                db.RolPagina.Add(Edit);
                                db.Entry(Edit).State = System.Data.Entity.EntityState.Modified;
                                db.SaveChanges();
                            }
                            else
                            {
                                //Si no existe entonces Agregamos rl RolPagina
                                RolPagina oRolPag = new RolPagina();
                                oRolPag.IIDROL      = o.IIDROL;
                                oRolPag.IIDPAGINA   = idRolPagina;
                                oRolPag.BHABILITADO = 1;
                                db.RolPagina.Add(oRolPag);
                                db.SaveChanges();
                            }


                            //else
                            //{
                            //    RolPagina oRolPag = (db.RolPagina.Where(p => p.IIDROL == id && p.IIDPAGINA == idRol )).FirstOrDefault();
                            //    oRol.BHABILITADO = 1;
                            //}
                        }

                        regAf = 1;
                        //db.SaveChanges();
                        transaccion.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                regAf = 0;
            }

            return(regAf);
        }
示例#32
0
        /*
         * Genera datos automáticamente dentro de la base de
         * datos (UsuariosUABC) en caso de encontrarse vacía
         */
        public async Task GeneraDatosSemilla()
        {
            // Checa si las tablas de la base de dato se encuentran vacía
            if (!_context.Roles.Any())
            {
                var rolAmin = new Rol()
                {
                    Nombre = "Administrador"
                };

                var rolUsuario = new Rol()
                {
                    Nombre = "Usuario"
                };

                _context.Roles.Add(rolAmin);
                _context.Roles.Add(rolUsuario);
                await _context.SaveChangesAsync();
            }

            if (!_context.Carreras.Any())
            {
                var Civil = new Carrera()
                {
                    Nombre = "Ingeniería Civil"
                };

                var Electronica = new Carrera()
                {
                    Nombre = "Ingeniería Electrónica"
                };

                var Computacion = new Carrera()
                {
                    Nombre = "Ingeniería en Computación"
                };

                var Industrial = new Carrera()
                {
                    Nombre = "Ingeniería Industrial"
                };

                var Bioingenieria = new Carrera()
                {
                    Nombre = "Bioingeniería"
                };

                var Nanotecnologia = new Carrera()
                {
                    Nombre = "Nanotecnología"
                };

                var Arquitectura = new Carrera()
                {
                    Nombre = "Arquitectura"
                };

                _context.Carreras.Add(Civil);
                _context.Carreras.Add(Electronica);
                _context.Carreras.Add(Computacion);
                _context.Carreras.Add(Industrial);
                _context.Carreras.Add(Bioingenieria);
                _context.Carreras.Add(Nanotecnologia);
                _context.Carreras.Add(Arquitectura);
                await _context.SaveChangesAsync();
            }

            if (!_context.Materias.Any())
            {
                var EstucIso = new Materia()
                {
                    Id      = 11934,
                    Nombre  = "Estructuras Isostáticas",
                    Carrera = "Ingeniería Civil"
                };

                var Dinamica = new Materia()
                {
                    Id      = 11347,
                    Nombre  = "Dinámica",
                    Carrera = "Ingeniería Civil"
                };

                var CircElec = new Materia()
                {
                    Id      = 11675,
                    Nombre  = "Circuitos Electrónicos",
                    Carrera = "Ingeniería Electrónica"
                };

                var Mecanismos = new Materia()
                {
                    Id      = 11896,
                    Nombre  = "Mecanismos",
                    Carrera = "Ingeniería Electrónica"
                };

                var IngSoft = new Materia()
                {
                    Id      = 12119,
                    Nombre  = "Ingeniería de Software",
                    Carrera = "Ingeniería en Computación"
                };

                var AdmRedes = new Materia()
                {
                    Id      = 12117,
                    Nombre  = "Admon. y Seguridad en Redes",
                    Carrera = "Ingeniería en Computación"
                };

                var ApWeb = new Materia()
                {
                    Id      = 12146,
                    Nombre  = "Desarrollo de Aplicaciones Web",
                    Carrera = "Ingeniería en Computación"
                };

                var TermoCienc = new Materia()
                {
                    Id      = 4357,
                    Nombre  = "Termociencia",
                    Carrera = "Ingeniería Industrial"
                };

                var MetodNum = new Materia()
                {
                    Id      = 5311,
                    Nombre  = "Métodos Numéricos",
                    Carrera = "Ingeniería Industrial"
                };

                var CircLineal = new Materia()
                {
                    Id      = 11789,
                    Nombre  = "Circuitos Lineales",
                    Carrera = "Bioingeniería"
                };

                var QuimOrg = new Materia()
                {
                    Id      = 11788,
                    Nombre  = "Química Orgánica",
                    Carrera = "Bioingeniería"
                };

                var TermDin = new Materia()
                {
                    Id      = 13177,
                    Nombre  = "Termodinámica",
                    Carrera = "Nanotecnología"
                };

                var BioGen = new Materia()
                {
                    Id      = 13179,
                    Nombre  = "Biología General",
                    Carrera = "Nanotecnología"
                };

                var MatSis = new Materia()
                {
                    Id      = 9761,
                    Nombre  = "Materiales y Sistemas Constructivos",
                    Carrera = "Arquitectura"
                };

                var Estructuras = new Materia()
                {
                    Id      = 9757,
                    Nombre  = "Estructuras",
                    Carrera = "Arquitectura"
                };

                _context.Materias.Add(EstucIso);
                _context.Materias.Add(Dinamica);
                _context.Materias.Add(CircElec);
                _context.Materias.Add(Mecanismos);
                _context.Materias.Add(IngSoft);
                _context.Materias.Add(AdmRedes);
                _context.Materias.Add(ApWeb);
                _context.Materias.Add(TermoCienc);
                _context.Materias.Add(MetodNum);
                _context.Materias.Add(CircLineal);
                _context.Materias.Add(QuimOrg);
                _context.Materias.Add(TermDin);
                _context.Materias.Add(BioGen);
                _context.Materias.Add(MatSis);
                _context.Materias.Add(Estructuras);
                await _context.SaveChangesAsync();
            }

            if (!_context.SubtiposExamen.Any())
            {
                var Complementaria = new SubtipoExamen()
                {
                    Nombre = "Complementaria"
                };

                var Equivalencia = new SubtipoExamen()
                {
                    Nombre = "Equivalencia"
                };

                var Correccion = new SubtipoExamen()
                {
                    Nombre = "Corrección"
                };

                _context.SubtiposExamen.Add(Complementaria);
                _context.SubtiposExamen.Add(Equivalencia);
                _context.SubtiposExamen.Add(Correccion);
                await _context.SaveChangesAsync();
            }

            if (!_context.TiposExamen.Any())
            {
                var Ordinario = new TipoExamen()
                {
                    Nombre = "Ordinario"
                };

                var Extraordinario = new TipoExamen()
                {
                    Nombre = "Extraordinario"
                };

                var Regularizacion = new TipoExamen()
                {
                    Nombre = "Regularizacion"
                };

                var OrdinarioInter = new TipoExamen()
                {
                    Nombre = "Ordinario Intersemestral"
                };

                var ExtraInter = new TipoExamen()
                {
                    Nombre = "Extraordinario intersemestral"
                };

                var RegInter = new TipoExamen()
                {
                    Nombre = "Regularización Intersemestral"
                };

                var EvalPerm = new TipoExamen()
                {
                    Nombre = "Evaluación Permanente"
                };

                _context.TiposExamen.Add(Ordinario);
                _context.TiposExamen.Add(Extraordinario);
                _context.TiposExamen.Add(Regularizacion);
                _context.TiposExamen.Add(OrdinarioInter);
                _context.TiposExamen.Add(ExtraInter);
                _context.TiposExamen.Add(RegInter);
                _context.TiposExamen.Add(EvalPerm);
                await _context.SaveChangesAsync();
            }

            if (!_context.Estados.Any())
            {
                var Pendiente = new Estado()
                {
                    FechaModificacion = DateTime.Now,
                    Nombre            = "Pendiente"
                };

                var Aceptado = new Estado()
                {
                    FechaModificacion = DateTime.Now,
                    Nombre            = "Aceptado"
                };

                var Rechazado = new Estado()
                {
                    FechaModificacion = DateTime.Now,
                    Nombre            = "Rechazado"
                };

                _context.Estados.Add(Pendiente);
                _context.Estados.Add(Aceptado);
                _context.Estados.Add(Rechazado);
                await _context.SaveChangesAsync();
            }

            if (!_context.Usuarios.Any())
            {
                var usuarioA = new Usuario()
                {
                    Id        = 338323,
                    Nombre    = "José Ramón",
                    ApellidoP = "López",
                    ApellidoM = "Madueño",
                    Correo    = "*****@*****.**",
                    RolId     = 1
                };

                var usuarioB = new Usuario()
                {
                    Id        = 335127,
                    Nombre    = "César Samuel",
                    ApellidoP = "Parra",
                    ApellidoM = "Salas",
                    Correo    = "*****@*****.**",
                    RolId     = 1
                };

                var usuarioC = new Usuario()
                {
                    Id        = 331364,
                    Nombre    = "Celso",
                    ApellidoP = "Figueroa",
                    ApellidoM = "Jacinto",
                    Correo    = "*****@*****.**",
                    RolId     = 1
                };

                _context.Usuarios.Add(usuarioA);
                _context.Usuarios.Add(usuarioB);
                _context.Usuarios.Add(usuarioC);
                await _context.SaveChangesAsync();
            }
        }
 public RolUsuarioTR(string nombreStore)
 {
     this.conf       = new Conexion();
     this.nombre_stp = nombreStore;
     this.rol        = new Rol();
 }
示例#34
0
 internal static void updateRol(Rol rol, List <Funcionalidad> listaFuncionalidadesNuevas)
 {
     updateNombreRol(rol);
     deleteFuncionalidades(rol);
     darAltaFuncionalidadesDeRol(rol, listaFuncionalidadesNuevas);
 }
示例#35
0
 internal static void darAltaRol(Rol rol, List <Funcionalidad> funcionalidades)
 {
     rol.id = darAltaRol(rol);
     darAltaFuncionalidadesDeRol(rol, funcionalidades);
 }
示例#36
0
 public List <Permiso> GetListPermiso(Rol rol)
 {
     return(bd.GetList(rol));
 }
示例#37
0
 private static int buscarRol(Rol rol)
 {
     return(ejecutarProcedureWithReturnValue("getIdRol", rol.nombre));
 }
 public ActionResult Post([FromBody] TareaEdit model)
 {
     #region Estados
     List <EstadoList> LstEL = new List <EstadoList>();
     EstadoList        EL    = new EstadoList();
     LstEL.Add(EL = new EstadoList()
     {
         Id = 0, Estado = "Pendiente"
     });
     LstEL.Add(EL = new EstadoList()
     {
         Id = 1, Estado = "Realizada"
     });
     #endregion
     int    Id_Usuario;
     int    Id_Rol;
     string result;
     using (var transaction = Context.Database.BeginTransaction())
     {
         try
         {
             if (HttpContext.Request.Headers.TryGetValue("Authorization", out var token))
             {
                 result = DecodeTokenAwt(token.ToString().Replace("Bearer ", ""));
                 if (!string.IsNullOrEmpty(result))
                 {
                     Id_Usuario = int.Parse(result.Split('|')[0]);
                     Id_Rol     = int.Parse(result.Split('|')[2]);
                     Rol      R = Context.Rol.Where(x => x.Id == Id_Rol && x.RolName.ToUpper().Equals("OPERARIO")).FirstOrDefault();
                     Proyecto P = Context.Proyecto.Where(x => x.Id == model.Id_Proyecto).FirstOrDefault();
                     if (R != null && P != null)
                     {
                         if (model.Id == 0)
                         {
                             Tarea T = Context.Tarea.Where(x => x.Nombre.ToUpper().Equals(model.Nombre.ToUpper()) && x.Descripcion.ToUpper().Equals(model.Descripcion.ToUpper()) && x.Id_Proyecto == model.Id_Proyecto).FirstOrDefault();
                             if (T == null && LstEL.Where(x => x.Id == model.Estado).FirstOrDefault() != null && (P.Fecha_Fin >= model.Fecha_Ejecucion && P.Fecha_Inicio <= model.Fecha_Ejecucion))
                             {
                                 T = new Tarea()
                                 {
                                     Nombre          = model.Nombre,
                                     Descripcion     = model.Descripcion,
                                     Fecha_Ejecucion = model.Fecha_Ejecucion,
                                     Id_Proyecto     = model.Id_Proyecto,
                                     Estado          = model.Estado == 0 ? false : true
                                 };
                                 Context.Tarea.Add(T);
                                 Context.SaveChanges();
                                 transaction.Commit();
                                 return(Ok());
                             }
                             else
                             {
                                 return(BadRequest("Hay problemas con la informacion dada, revise que la tarea no exista con el mismo nombre y la misma descripcion y que la fecha de ejecucion no sea mayor que el fin del proyecto."));
                             }
                         }
                         else
                         {
                             Tarea    TR = Context.Tarea.Where(x => x.Id == model.Id).FirstOrDefault();
                             Proyecto PR = Context.Proyecto.Where(x => x.Id == TR.Id_Proyecto).FirstOrDefault();
                             if (TR != null && (PR.Fecha_Fin >= model.Fecha_Ejecucion))
                             {
                                 TR.Nombre               = model.Nombre;
                                 TR.Descripcion          = model.Descripcion;
                                 TR.Fecha_Ejecucion      = model.Fecha_Ejecucion;
                                 Context.Entry(TR).State = EntityState.Modified;
                                 Context.SaveChanges();
                                 transaction.Commit();
                                 return(Ok());
                             }
                             else
                             {
                                 //Tarea no existe o la fecha es mayor a la finalizacion del proyecto
                                 return(BadRequest("No se logro validar la tarea a actualizar o la fecha de ejecucion de la tarea es mayor que la de finalizacion del proyecto."));
                             }
                         }
                     }
                     else
                     {
                         //Solo operarios pueden crear Tareas
                         return(BadRequest("Recuerde que solo usuarios con rol Operario pueden realizar esta acción."));
                     }
                 }
                 else
                 {
                     //no se pudo verificar el token
                     return(BadRequest("No se pudo verificar la autenticidad del token enviado."));
                 }
             }
             else
             {
                 //No se verifico el token
                 return(BadRequest("No se pudo verificar la autenticidad del token enviado."));
             }
         }
         catch (Exception Exc)
         {
             transaction.Rollback();
             return(BadRequest("Error al Crear/Actualizar la tarea, error: " + Exc.Message.ToString()));
         }
     }
 }
示例#39
0
        private void CrearPermisos(Session LocalSesion, ICollection TodasLasClasesPersistentes, Rol rol, bool BorrarPermisos)
        {
            RolParametros parametros = (RolParametros)_VistaPopup.CurrentObject;

            if (BorrarPermisos)
            {
                QuitarPermisos(rol);
            }
            ReflectionClassInfo RefInfo = null;

            foreach (System.Object item in TodasLasClasesPersistentes)
            {
                RefInfo = item as ReflectionClassInfo;
                if (ReferenceEquals(null, RefInfo))
                {
                    continue;
                }
                if (!(RefInfo.FullName.StartsWith("DevExpress") || RefInfo.ClassType.Name.StartsWith("RolParametros") || RefInfo.FullName.EndsWith("TextMessage") ||
                      RefInfo.ClassType.Name.StartsWith("Entidad") || RefInfo.FullName.EndsWith("Parameters")))
                {
                    Boolean faltante = true;
                    foreach (SecuritySystemTypePermissionObject p in rol.TypePermissions)
                    {
                        if (p.TargetType.Name == RefInfo.ClassType.Name)
                        {
                            faltante = false;
                            break;
                        }
                    }
                    if (faltante)
                    {
                        if (RefInfo.ClassType.Name.StartsWith("Usuario"))
                        {
                            rol.AddObjectAccessPermission <Usuario>("[Oid] = CurrentUserId()", SecurityOperations.ReadOnlyAccess);
                            rol.AddMemberAccessPermission <Usuario>("ChangePasswordOnFirstLogon", SecurityOperations.Write);
                            rol.AddMemberAccessPermission <Usuario>("StoredPassword", SecurityOperations.Write);
                        }
                        else if (RefInfo.ClassType.Name.StartsWith("Rol"))
                        {
                            rol.SetTypePermissionsRecursively <Rol>(SecurityOperations.Read, SecuritySystemModifier.Allow);
                        }
                        else
                        if (!parametros.RolVacio)
                        {
                            AgregarPermiso(rol, parametros, RefInfo);
                        }
                    }
                }
            }
        }
示例#40
0
 public bool Save(Rol entity)
 {
     return(rolRepository.Save(entity));
 }
示例#41
0
 public bool Update(Rol entity)
 {
     return(rolRepository.Update(entity));
 }
        public int guardarDatos(Rol oRolCLS, String dataAEnviar)
        {
            int respuesta = 0;

            try
            {
                using (PruebaDataContext db = new PruebaDataContext())
                {
                    using (var transaccion = new TransactionScope())
                    {
                        if (oRolCLS.IIDROL == 0)
                        {
                            Rol rol = new Rol();
                            rol.NOMBRE      = oRolCLS.NOMBRE;
                            rol.DESCRIPCION = oRolCLS.DESCRIPCION;
                            rol.BHABILITADO = oRolCLS.BHABILITADO;
                            db.Rol.InsertOnSubmit(rol);
                            db.SubmitChanges();

                            String[] codigo = dataAEnviar.Split('$');
                            for (int i = 0; i < codigo.Length; i++)
                            {
                                RolPagina rolPagina = new RolPagina();
                                rolPagina.IIDROL      = rol.IIDROL;
                                rolPagina.IIDPAGINA   = int.Parse(codigo[i]);
                                rolPagina.BHABILITADO = 1;
                                db.RolPagina.InsertOnSubmit(rolPagina);
                            }
                            respuesta = 1;
                            db.SubmitChanges();
                            transaccion.Complete();
                        }
                        else
                        {
                            //Modificamos
                            Rol rol = db.Rol.Where(p => p.IIDROL == oRolCLS.IIDROL).First();
                            rol.NOMBRE      = oRolCLS.NOMBRE;
                            rol.DESCRIPCION = oRolCLS.DESCRIPCION;
                            //Deshabilitar todo
                            var lista = db.RolPagina.Where(p => p.IIDROL == oRolCLS.IIDROL);
                            foreach (RolPagina oRolPagina in lista)
                            {
                                oRolPagina.BHABILITADO = 0;
                            }
                            String[] codigo = dataAEnviar.Split('$');
                            for (int i = 0; i < codigo.Length; i++)
                            {
                                int cantidad = db.RolPagina.Where(p => p.IIDROL == oRolCLS.IIDROL && p.IIDPAGINA == int.Parse(codigo[i])).Count();
                                if (cantidad == 0)
                                {
                                    RolPagina rolPagina = new RolPagina();
                                    rolPagina.IIDROL      = rol.IIDROL;
                                    rolPagina.IIDPAGINA   = int.Parse(codigo[i]);
                                    rolPagina.BHABILITADO = 1;
                                    db.RolPagina.InsertOnSubmit(rolPagina);
                                }
                                else
                                {
                                    RolPagina rolPagina = db.RolPagina.Where(p => p.IIDROL == oRolCLS.IIDROL &&
                                                                             p.IIDPAGINA == int.Parse(codigo[i])).First();
                                    rolPagina.BHABILITADO = 1;
                                }
                            }
                            respuesta = 1;
                            db.SubmitChanges();
                            transaccion.Complete();
                        }
                    }
                }
            }
            catch
            {
                respuesta = 0;
            }
            return(respuesta);
        }
        public IActionResult GetUserLogin([FromBody] Login login)
        {
            dynamic result = usuarioRepository.GetUserLogin(login);

            //Se crea una instancia de la clase ro
            if (result != null)
            {
                Usuario u = new Usuario
                {
                    usuario_username = result.USUARIO_USERNAME,
                    usuario_id       = Convert.ToInt32(result.USUARIO_ID),
                    usuario_activo   = Convert.ToInt32(result.USUARIO_ACTIVO),
                    cliente_id       = Convert.ToInt32(result.CLIENTE_ID),
                    profesional_id   = Convert.ToInt32(result.PROFESIONAL_ID),
                    rol_id           = Convert.ToInt32(result.ROL_ID)
                };

                if (result.PROFESIONAL_TS_CREACION != null)
                {
                    Profesional p = new Profesional
                    {
                        profesional_id          = Convert.ToInt32(result.PROFESIONAL_ID),
                        profesional_nombre      = result.PROFESIONAL_NOMBRE,
                        profesional_apellido    = result.PROFESIONAL_APELLIDO,
                        profesional_rut         = result.PROFESIONAL_RUT,
                        profesional_ts_creacion = result.PROFESIONAL_TS_CREACION,
                    };
                    u.profesional = p;
                }



                if (result.CLIENTE_RUT != null)
                {
                    Rubro rubro = new Rubro
                    {
                        rubro_id     = Convert.ToInt32(result.RUBRO_ID),
                        rubro_nombre = result.RUBRO_NOMBRE,
                        rubro_activo = Convert.ToInt32(result.RUBRO_ACTIVO)
                    };

                    Cliente c = new Cliente
                    {
                        cliente_id        = Convert.ToInt32(result.CLIENTE_ID),
                        cliente_nombre    = result.CLIENTE_NOMBRE,
                        cliente_rut       = result.CLIENTE_RUT,
                        cliente_direccion = result.CLIENTE_DIRECCION,
                        rubro             = rubro
                    };
                    u.cliente = c;
                }


                Contrato contrato = new Contrato
                {
                    contrato_activo = Convert.ToInt32(result.CONTRATO_ACTIVO),
                    contrato_id     = Convert.ToInt32(result.CONTRATO_ID)
                };

                u.contrato = contrato;

                Rol r = new Rol
                {
                    rol_id     = Convert.ToInt32(result.ROL_ID),
                    rol_nombre = result.ROL_NOMBRE,
                    rol_activo = Convert.ToInt32(result.ROL_ACTIVO)
                };

                u.rol = r;

                return(Ok(new { StatusCode = 200, data = u }));
            }



            if (result == null)
            {
                return(NotFound(new { StatusCode = 204, data = "Usuario Incorrecto" }));
            }

            return(null);
        }
        private void Elegir_Rol_Load(object sender, EventArgs e)
        {
            List <Rol> roles = Rol.rolesDeUsuario(id_usuario);

            cb_rol.DataSource = roles;
        }
示例#45
0
 ///<summary>
 ///Metodo que ejecuta el comando
 ///</summary>
 public M13_COEliminarRol(Entidad rol, int id)
 {
     this._rol        = (Rol)rol;
     this._rol._idRol = id;
 }
        public int Actualizar(Rol Rol)
        {
            DAORol daRol = new DAORol();

            return(daRol.Actualizar(Rol));
        }
示例#47
0
        public ActionResult Create(Proyecto proyecto)
        {
            Usuario usuario = (Usuario)Session["Usuario"];

            if (!usuario.Administrador.Equals("S"))
            {
                Proyecto tmp = (Proyecto)Session["Proyecto"];
                return(RedirectToAction("Edit", new { id = tmp.ID }));
            }

            try
            {
                if (ModelState.IsValid)
                {
                    // Ingreso dirección
                    Direccion direccion = proyecto.Direccion;
                    direccion.Mostrar  = 1;
                    direccion.ComunaID = Int32.Parse(Request.Form["ComunaID"].ToString());
                    db.Direccion.Add(direccion);
                    db.SaveChanges();

                    // Ingreso convenio
                    Convenio convenio = proyecto.Convenio;
                    if (Request.Form["FechaInicio"] != null && Request.Form["FechaTermino"] != null && !Request.Form["FechaTermino"].ToString().Equals("") && !Request.Form["FechaInicio"].ToString().Equals(""))
                    {
                        convenio.FechaInicio  = DateTime.Parse(Request.Form["FechaInicio"].ToString());
                        convenio.FechaTermino = DateTime.Parse(Request.Form["FechaTermino"].ToString());
                    }
                    else
                    {
                        convenio.FechaInicio  = null;
                        convenio.FechaTermino = null;
                    }

                    // Se define periodo de inicio del proyecto
                    int?periodo_inicio = Int32.Parse(Request.Form["PeriodoInicio"].ToString());
                    int?mes_inicio     = Int32.Parse(Request.Form["MesInicio"].ToString());

                    convenio.Periodo = periodo_inicio;
                    convenio.Mes     = mes_inicio;

                    db.Convenio.Add(convenio);
                    db.SaveChanges();

                    db.Proyecto.Add(proyecto);
                    db.SaveChanges();

                    convenio.ProyectoID      = proyecto.ID;
                    db.Entry(convenio).State = EntityState.Modified;
                    db.SaveChanges();

                    if (Request.Form["Numero"] != null && Request.Form["BancoID"] != null && !Request.Form["Numero"].ToString().Equals("") && !Request.Form["BancoID"].ToString().Equals(""))
                    {
                        Direccion direccionCtaCte = new Direccion();
                        direccionCtaCte.Mostrar  = 1;
                        direccionCtaCte.ComunaID = Int32.Parse(Request.Form["ComunaID"].ToString());
                        db.Direccion.Add(direccionCtaCte);
                        db.SaveChanges();

                        // Se ingresa cuenta corriente
                        CuentaCorriente cuentaCorriente = new CuentaCorriente();
                        cuentaCorriente.ProyectoID   = proyecto.ID;
                        cuentaCorriente.BancoID      = Int32.Parse(Request.Form["BancoID"].ToString());
                        cuentaCorriente.Numero       = Request.Form["Numero"].ToString();
                        cuentaCorriente.Desactiva    = 0;
                        cuentaCorriente.LineaCredito = 0;
                        cuentaCorriente.DireccionID  = direccionCtaCte.ID;
                        db.CuentaCorriente.Add(cuentaCorriente);
                        db.SaveChanges();

                        proyecto.MesInicio     = mes_inicio;
                        proyecto.PeriodoInicio = periodo_inicio;

                        db.Entry(proyecto).State = EntityState.Modified;
                        db.SaveChanges();

                        // Se define saldo inicial para periodo
                        Saldo saldo = new Saldo();
                        saldo.CuentaCorrienteID = cuentaCorriente.ID;
                        saldo.Mes     = (int)mes_inicio;
                        saldo.Periodo = (int)periodo_inicio;

                        if (Request.Form["SaldoInicial"] != null && !Request.Form["SaldoInicial"].ToString().Equals("") && !Request.Form["SaldoInicial"].ToString().Equals("0"))
                        {
                            saldo.SaldoInicialCartola = Int32.Parse(Request.Form["SaldoInicial"].ToString());
                            saldo.SaldoFinal          = saldo.SaldoInicialCartola;
                            //saldo.SaldoFinalCartola = saldo.SaldoInicialCartola;
                        }
                        else
                        {
                            saldo.SaldoInicialCartola = 0;
                            saldo.SaldoFinal          = 0;
                            // saldo.SaldoFinalCartola = 0;
                        }

                        db.Saldo.Add(saldo);
                        db.SaveChanges();
                    }

                    // Si se selecciona Supervisor, le asignamos Rol y verificamos que tenga cuenta de Usuario activa.
                    if (Request.Form["PersonaID"] != null && !Request.Form["PersonaID"].ToString().Equals(""))
                    {
                        int tipoRolID = 4;
                        int personaID = Int32.Parse(Request.Form["PersonaID"].ToString());

                        try
                        {
                            Usuario usuario_tmp = db.Usuario.Where(u => u.PersonaID == personaID).Single();
                        }
                        catch (Exception)
                        {
                            // El usuario no tiene cuenta y por lo tanto se le crea una de nivel supervisor
                            Persona persona = db.Persona.Find(personaID);
                            string  nombre  = (persona.Nombres.Substring(0, 1) + "" + persona.ApellidoParterno).Replace(" ", "").ToLower().ToString();

                            Usuario tmp = new Usuario();
                            tmp.PersonaID     = personaID;
                            tmp.Nombre        = nombre;
                            tmp.Estado        = "A";
                            tmp.Administrador = "N";
                            tmp.Supervisor    = "S";
                            tmp.Password      = utils.md5(persona.Rut.Trim());

                            db.Usuario.Add(tmp);
                            db.SaveChanges();
                        }

                        try
                        {
                            Rol rol_tmp = db.Rol.Where(r => r.PersonaID == personaID).Where(r => r.TipoRolID == tipoRolID).Where(r => r.ProyectoID == proyecto.ID).Single();
                        }
                        catch (Exception)
                        {
                            // El usuario no tiene rol, se le asigna rol supervisor sobre el proyecto
                            Rol tmp = new Rol();
                            tmp.PersonaID  = personaID;
                            tmp.ProyectoID = proyecto.ID;
                            tmp.TipoRolID  = tipoRolID;

                            db.Rol.Add(tmp);
                            db.SaveChanges();
                        }
                    }

                    return(RedirectToAction("Create"));
                }
            }
            catch (Exception e)
            {
                ViewBag.Mensaje = utils.mensajeError(e.Message + " " + e.StackTrace);
                if (e.InnerException != null)
                {
                    ViewBag.Mensaje = utils.mensajeError(e.InnerException.Message + " " + e.StackTrace);
                    if (e.InnerException.InnerException != null)
                    {
                        ViewBag.Mensaje = utils.mensajeError(e.InnerException.InnerException.Message + " " + e.StackTrace);
                    }
                }
            }

            ViewBag.PersonaID            = new SelectList(db.Persona.OrderBy(p => p.Nombres).ThenBy(p => p.ApellidoParterno).ThenBy(p => p.ApellidoMaterno), "ID", "NombreLista");
            ViewBag.SistemaAsistencialID = new SelectList(db.SistemaAsistencial, "ID", "NombreLista", proyecto.SistemaAsistencialID);
            ViewBag.TipoProyectoID       = new SelectList(db.TipoProyecto, "ID", "NombreLista", proyecto.TipoProyectoID);
            ViewBag.RegionID             = new SelectList(db.Region.OrderBy(a => a.Nombre), "ID", "Nombre");
            ViewBag.BancoID = new SelectList(db.Banco, "ID", "Nombre");
            return(View(proyecto));
        }
        public IActionResult Index()
        {
            //CARGAR LAS ORDENES DEL MAIN   async-Nombre
            Electron.IpcMain.On("async-receta", (args) =>
            {
                var mainWindow = Electron.WindowManager.BrowserWindows.First();

                CocinaService cocinaService = new CocinaService();

                try
                {
                    List <OrdenCocina> ordenesCocina = cocinaService.getOrdenesByEstadoEnCocina();

                    cocinaService = null;

                    cocinaService = new CocinaService();


                    Electron.IpcMain.Send(mainWindow, "asynchronous-reply-receta", cocinaService.completarOrden(ordenesCocina));
                }
                catch (Exception ex)
                {
                    Electron.IpcMain.Send(mainWindow, "asynchronous-reply-receta", ex.Message);
                }
            });


            //CARGAR LAS ORDENES DEL MAIN   async-Nombre
            Electron.IpcMain.On("async-receta-cantidad", (args) =>
            {
                var mainWindow = Electron.WindowManager.BrowserWindows.First();

                CocinaService cocinaService = new CocinaService();

                try
                {
                    List <OrdenCocina> ordenesCocina = cocinaService.getOrdenesByEstadoEnCocina();

                    cocinaService = null;

                    cocinaService = new CocinaService();

                    List <OrdenCocina> ordenes = cocinaService.completarOrden(ordenesCocina);

                    List <RecetaCantidad> recetaCantidad = cocinaService.obtenerRecetasWithCantidad(ordenes);

                    Electron.IpcMain.Send(mainWindow, "asynchronous-reply-receta-cantidad", recetaCantidad);
                }
                catch (Exception ex)
                {
                    Electron.IpcMain.Send(mainWindow, "asynchronous-reply-receta-cantidad", ex.Message);
                }
            });

            //completar la orden
            Electron.IpcMain.On("async-receta-completarOrden", (args) =>
            {
                var mainWindow = Electron.WindowManager.BrowserWindows.First();

                CocinaService cocinaService = new CocinaService();

                try
                {
                    int idOrden = int.Parse(args.ToString());

                    int result = cocinaService.completarOrden(idOrden);

                    if (result == 1)
                    {
                        cocinaService = null;

                        cocinaService = new CocinaService();

                        Notificacion notificacion = new Notificacion();

                        notificacion.Descripcion = $"La orden Número: {args.ToString()} esta lista para llevar a mesa.";

                        notificacion.Asunto = "Cocina: Orden Lista Para Servir";

                        Rol rol = new Rol();

                        rol.Id_rol = 4;

                        notificacion.Rol = rol;

                        int resultNotificacion = cocinaService.insertarNotificacion(notificacion);

                        if (resultNotificacion == 1)
                        {
                            //carga una notificacion
                            var options = new NotificationOptions("Orden Completa", "La orden Número: " + args + " fue notificada a garzón para llevar a mesa.")
                            {
                                OnClick = async() => await Electron.Dialog.ShowMessageBoxAsync("La orden Número: " + args + " fue notificada a garzón para llevar a mesa, Puedes ver los detalles en la opción de notificaciones"),
                                Icon    = "~/images/clienteCerdos.png"
                            };

                            Electron.Notification.Show(options);
                            //termina de cargar una notificacion
                        }
                    }
                    else
                    {
                        throw new Exception();
                    }

                    Electron.IpcMain.Send(mainWindow, "asynchronous-reply-receta-completarOrden", "listo");
                }
                catch (Exception ex)
                {
                    //carga una notificacion
                    var options = new NotificationOptions("Error", "Algo mal ocurrio")
                    {
                        OnClick = async() => await Electron.Dialog.ShowMessageBoxAsync("Sorry"),
                        Icon    = "/images/cerdito.png"
                    };

                    Electron.Notification.Show(options);
                    //termina de cargar una notificacion

                    Electron.IpcMain.Send(mainWindow, "asynchronous-reply-receta-completarOrden", ex.Message);
                }
            });
            //fin completar la orden



            //cargar el modal
            Electron.IpcMain.On("modalReceta-window", async(argument) =>
            {
                //carga el puerto disponible
                string viewPath = $"http://localhost:{BridgeSettings.WebPort}/cocina/modalreceta?idReceta={argument}";

                var optionsWindows = new BrowserWindowOptions
                {
                    Frame = false
                };
                await Electron.WindowManager.CreateWindowAsync(optionsWindows, viewPath);
            });
            //cargar un modal



            return(View());
        }
示例#49
0
        public IActionResult Ingresar(string username, string password, Rol rol)
        {
            string returnUrl = TempData[_Return_Url] as string;

            if (!string.IsNullOrWhiteSpace(username) && !string.IsNullOrWhiteSpace(password))
            {
                Usuario usuario = null;

                if (rol == Rol.Cliente)
                {
                    usuario = _context.Clientes.FirstOrDefault(cliente => cliente.Username == username);
                }
                else if (rol == Rol.Administrador)
                {
                    usuario = _context.Administradores.FirstOrDefault(administrador => administrador.Username == username);
                }

                if (usuario != null)
                {
                    var passwordEncriptada = password.Encriptar();

                    if (usuario.Password.SequenceEqual(passwordEncriptada))
                    {
                        // Se crean las credenciales del usuario que serán incorporadas al contexto
                        ClaimsIdentity identity = new ClaimsIdentity(CookieAuthenticationDefaults.AuthenticationScheme);

                        // El lo que luego obtendré al acceder a User.Identity.Name
                        identity.AddClaim(new Claim(ClaimTypes.Name, username));

                        // Se utilizará para la autorización por roles
                        identity.AddClaim(new Claim(ClaimTypes.Role, usuario.Rol.ToString()));

                        // Lo utilizaremos para acceder al Id del usuario que se encuentra en el sistema.
                        identity.AddClaim(new Claim(ClaimTypes.NameIdentifier, usuario.Id.ToString()));

                        // Lo utilizaremos cuando querramos mostrar el nombre del usuario logueado en el sistema.
                        identity.AddClaim(new Claim(ClaimTypes.GivenName, usuario.Nombre));

                        identity.AddClaim(new Claim(nameof(Usuario.Foto), usuario.Foto ?? string.Empty));

                        ClaimsPrincipal principal = new ClaimsPrincipal(identity);

                        // En este paso se hace el login del usuario al sistema
                        HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal).Wait();

                        TempData["LoggedIn"] = true;

                        if (!string.IsNullOrWhiteSpace(returnUrl))
                        {
                            return(Redirect(returnUrl));
                        }

                        return(RedirectToAction(nameof(HomeController.Index), "Home"));
                    }
                }
            }

            // Completo estos dos campos para poder retornar a la vista en caso de errores.
            ViewBag.Error         = "Usuario o contraseña incorrectos";
            ViewBag.UserName      = username;
            TempData[_Return_Url] = returnUrl;

            return(View());
        }
示例#50
0
 //public Hotel Hotel;
 public logueo(Usuario a, Rol b)
 {
     User = a;
     Rol  = b;
 }
示例#51
0
 public static void habilitarRol(Rol rol) //para dar de baja
 {
     ejecutarProcedure("habilitarRol", rol.id);
 }
示例#52
0
 public void Modificacion(Rol entity)
 {
     throw new System.NotImplementedException();
 }
示例#53
0
 private static void deleteFuncionalidades(Rol rol)
 {
     ejecutarProcedure("sacarTodaFuncionalidadARol", rol.id);
 }
示例#54
0
 public void Alta(Rol entity)
 {
     throw new System.NotImplementedException();
 }
        public int Insertar(Rol Rol)
        {
            DAORol daRol = new DAORol();

            return(daRol.Insertar(Rol));
        }
示例#56
0
 //pasando enumeraciones como variables
 public static void ValidarUsuario(Rol rol)
 {
     Console.WriteLine(rol);
 }
        public ActionResult ChangeEst(int id)
        {
            int    Id_Usuario;
            int    Id_Rol;
            bool   TComplete = true;
            string result;

            using (var transaction = Context.Database.BeginTransaction())
            {
                try
                {
                    if (HttpContext.Request.Headers.TryGetValue("Authorization", out var token))
                    {
                        result = DecodeTokenAwt(token.ToString().Replace("Bearer ", ""));
                        if (!string.IsNullOrEmpty(result))
                        {
                            Id_Usuario = int.Parse(result.Split('|')[0]);
                            Id_Rol     = int.Parse(result.Split('|')[2]);
                            Rol R = Context.Rol.Where(x => x.Id == Id_Rol && x.RolName.ToUpper().Equals("OPERARIO")).FirstOrDefault();
                            if (R != null)
                            {
                                Tarea TR = Context.Tarea.Where(x => x.Id == id).FirstOrDefault();
                                if (TR != null)
                                {
                                    if (TR.Estado == false)
                                    {
                                        TR.Estado = true;
                                        Context.Entry(TR).State = EntityState.Modified;
                                        Context.SaveChanges();
                                        transaction.Commit();
                                        return(Ok());
                                    }
                                    else
                                    {
                                        return(BadRequest("El proyecto ya esta finalizado."));
                                    }
                                }
                                else
                                {
                                    return(BadRequest("No se logró validar el Proyecto."));
                                }
                            }
                            else
                            {
                                //Solo operador puede realizar el cambio
                                return(BadRequest("Recuerde que solo usuarios con rol Operario pueden realizar esta acción."));
                            }
                        }
                        else
                        {
                            //No se valido el token
                            return(BadRequest("No se pudo verificar la autenticidad del token enviado."));
                        }
                    }
                    else
                    {
                        //No se valido el token
                        return(BadRequest("No se pudo verificar la autenticidad del token enviado."));
                    }
                }
                catch (Exception ex)
                {
                    return(BadRequest("Error al actualizar el estado de la tarea, error: " + ex.Message.ToString()));
                }
            }
        }
示例#58
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                //---------------------------------------\\
                // ACTUALIZAR O CREAR ROLES O CATEGORÍAS \\
                //---------------------------------------\\

                ////// ROLES //////
                if (cmbTipo.SelectedIndex == 2)
                {
                    RolLogica logicaRol = new RolLogica();
                    // Nuevo Rol
                    Rol rol = new Rol();
                    rol.nombre = txtNombre.Text;

                    // Actualizar o Crear Rol
                    Rol r = logicaRol.SeleccionarPorId(Convert.ToInt32(txtId.Text));
                    if (r != null)
                    {
                        rol.id = Convert.ToInt32(txtId.Text);
                        logicaRol.Actualizar(rol);
                        dgvRoles.DataSource = logicaRol.SeleccionarTodos();
                    }
                    else
                    {
                        logicaRol.Crear(rol);
                        dgvRoles.DataSource = logicaRol.SeleccionarTodos();
                    }
                }
                else
                {
                    ////// CATEGORÍAS //////
                    if (cmbTipo.SelectedIndex == 1)
                    {
                        CategoriaLogica logicaCategoria = new CategoriaLogica();
                        // Nueva Categoría
                        Categoria categoria = new Categoria();
                        categoria.nombre = txtNombre.Text;

                        // Actualizar o Crear Categoría
                        Categoria c = logicaCategoria.SeleccionarPorId(Convert.ToInt32(txtId.Text));


                        if (c != null)
                        {
                            categoria.id = Convert.ToInt32(txtId.Text);
                            logicaCategoria.Actualizar(categoria);
                            dgvCategorias.DataSource = logicaCategoria.SeleccionarTodos();
                        }
                        else
                        {
                            logicaCategoria.Crear(categoria);
                            dgvCategorias.DataSource = logicaCategoria.SeleccionarTodos();
                        }
                    }
                    else
                    {
                        MessageTimer.Start();
                        lblError.Text    = "*Debe seleccionar un tipo";
                        lblError.Visible = true;
                    }
                }

                cmbTipo.Enabled = true;
                MessageTimer.Start();
                lblSuccess.Text                   = "*Guardado con éxito";
                lblSuccess.Visible                = true;
                txtId.Text                        = "0";
                cmbTipo.Enabled                   = true;
                txtNombre.Text                    = "";
                cmbTipo.SelectedIndex             = 0;
                dgvRoles.CurrentRow.Selected      = false;
                dgvCategorias.CurrentRow.Selected = false;
            }
            catch (Exception ex)
            {
                lblError.Text    = "*" + ex.Message;
                lblError.Visible = true;
                MessageTimer.Start();
            }
        }
 ///<summary>
 ///Constructor
 ///</summary>
 public M13_COConsultarPermisosAsociados(Entidad rol, int id)
 {
     this._rol        = (Rol)rol;
     this._rol._idRol = id;
 }
示例#60
0
        /// <summary>
        /// Autentificar usuario
        /// </summary>
        /// <param name="usuario"></param>
        /// <param name="ipClient"></param>
        /// <param name="codigoRol"></param>
        /// <returns></returns>
        private JsonResult AutentificarUsuario(Usuario usuario, string ipClient, string codigoRol)
        {
            try
            {
                //TODO. JSA. Revisar el flujo si al momento de seleccionar un rol, este es externo, Por lo tanto no lo va tener asociado
                //al usuario.  (Fallas Seguridad)
                //opcion 1. Sincrionizar rol_usuario, (externoas y internos)
                //opcion 2. Pasar informacion en el model de la vista tipo (externo y interno), si es un rol externo pasar si verificacion o
                //recuperar de una sesion los roles externos del usuario

                JsonResult result;

                Rol rol = _rolService.GetList().Where(c => c.Codigo == codigoRol).FirstOrDefault();

                if (rol == null)
                {
                    string error = string.Format("No existe el rol con el codigo {0}", codigoRol);
                    result = StatusResponseHelper.JsonNoAutenticado(error, false);
                    return(result);
                }

                if (!rol.EsExterno)
                {
                    rol = usuario.Roles.Where(c => c.Codigo == codigoRol).SingleOrDefault();

                    if (rol == null)
                    {
                        string error = string.Format("El usuario {0}, no tiene asociado el rol con el codigo {1}", usuario.Cuenta, codigoRol);
                        result = StatusResponseHelper.JsonNoAutenticado(error, false);
                        return(result);
                    }
                }


                //Autentificar usuario
                //Obtener la direccion IP del cliente
                string ipAddress = ipClient;
                if (string.IsNullOrWhiteSpace(ipAddress))
                {
                    ipAddress = RequestHelpers.GetClientIpAddress(this.HttpContext.Request);
                }

                var claveEncriptar         = AppSettings.Get <string>(ConstantesWebConfig.CLAVE_ENCRYPTACION);
                var minutosExpiracionToken = Convert.ToInt32(AppSettings.Get <string>(ConstantesWebConfig.TOKEN_TIEMPOSESION));

                InitializeUserAccessServiciosWeb initializeUserAccessServiciosWeb = new InitializeUserAccessServiciosWeb();

                initializeUserAccessServiciosWeb.usuario   = usuario;
                initializeUserAccessServiciosWeb.rol       = rol;
                initializeUserAccessServiciosWeb.ipAddress = ipAddress;

                _accessService.InitializeUserAccess(initializeUserAccessServiciosWeb);

                var sesion = _application.GetCurrentSession();

                var token = Token.GenerateToken(Base64.Encode(claveEncriptar), usuario.Id, rol.Id, sesion.Id, minutosExpiracionToken);

                //FormsAuthentication.SetAuthCookie(usuario.Cuenta, false);

                var mensaje =
                    string.Format("El usuario {0}, ingresa de forma exitosa al sistema", usuario);
                //Registro Auditoria - Hora de inicio de sesión en el sistema.
                logAuditoria.Write(FUNCIONALIDAD_GESTION_USUARIOS.ACCION_LOGIN, mensaje);

                //Direccionar a la URL segun la configuración del ROL, o direccionar a URL Default
                //string URL = FormsAuthentication.DefaultUrl;
                //if (!string.IsNullOrWhiteSpace(rol.Url))
                //{
                //    URL = rol.Url;
                //}

                /*var miFarmacia = _iFarmaciaService.GetMisFarmacias().Select(mf => mf.Farmacia).FirstOrDefault();
                 * String fileBase64 = miFarmacia == null || miFarmacia.Logo == null
                 || (!rol.Codigo.Equals(ConstantesRoles.ROL_FARMACEUTICO_PROPIETARIO) && !rol.Codigo.Equals(ConstantesRoles.ROL_FARMACEUTICO2)) ?
                 || null : DataUrl.FromFileTypeAndBytes(miFarmacia.FileTypeLogo, miFarmacia.Logo);*/

                var rolView     = new { codigoRol = rol.Codigo, rolNombre = rol.Nombre, rolEsadministrador = rol.EsAdministrador };
                var usuarioView = new
                {
                    usuId             = usuario.Id,
                    version           = usuario.VersionRegistro,
                    usuNombres        = usuario.Nombres,
                    usuApellidos      = usuario.Apellidos,
                    usuIdentificacion = usuario.PersonaId,
                    usuDireccion      = "",
                    usuUsuario        = usuario.Cuenta,
                    usuClave          = "",
                    usuCorreo         = usuario.Correo,
                    usuEstado         = usuario.Estado,
                    //ImagenPerfil = fileBase64
                };

                result = new JsonResult
                {
                    Data = new
                    {
                        mensaje,
                        rol         = rolView,
                        usuario     = usuarioView,
                        miToken     = token,
                        autenticado = true
                    },
                    //ContentType = contentType,
                    //ContentEncoding = contentEncoding,
                    JsonRequestBehavior = JsonRequestBehavior.AllowGet
                };
                return(result);
            }
            catch (Exception ex)
            {
                var result = ManejadorExcepciones.HandleException(ex);

                //TODO: DEPENDENCIAS DE REINICIAR. MEJOR GUARDAR EN SESSION LA IDENTIDAD
                FormsAuthentication.SignOut();

                Session.Clear();

                var result1 = StatusResponseHelper.JsonErrorServidor(result.Message, true);
                return(result1);
            }
        }