Пример #1
0
        /// <summary>
        /// Funcion para Eliminar Logo de la Empresa.
        /// </summary>
        /// <param name="pkempresa"></param>
        /// <returns></returns>
        public ActionResult EliminarLogo(int pkempresa, string ipUsuario)
        {
            var usuarioActual = ObtenerUsuarioEnSesion(System.Web.HttpContext.Current);

            if (usuarioActual == null)
            {
                ViewBag.mensaje = "Debe Registrarse para Ingresar a este Modulo.";
                return(RedirectToAction("Login", "Home"));
            }
            EDInformacionAuditoria edInfoauditoria = new EDInformacionAuditoria()
            {
                IdentificacionUsuario = usuarioActual.Documento,
                NombreUsuario         = usuarioActual.NombreUsuario,
                NitEmpresa            = usuarioActual.NitEmpresa,
                NombreEmpresa         = usuarioActual.RazonSocialEmpresa,
                IpUsuario             = ipUsuario
            };

            using (var Transaction = db.Database.BeginTransaction())
            {
                RegistraLog registraLog = new RegistraLog();
                try
                {
                    var logo = (from el in db.Tbl_Empresa
                                where el.Pk_Id_Empresa == pkempresa
                                select el).SingleOrDefault();
                    var path     = Server.MapPath(logoEmpresa);
                    var file     = logo.Logo_Empresa;
                    var fullPath = Path.Combine(path, file);
                    if (logo.Logo_Empresa != null)
                    {
                        /*inicio auditoria*/
                        if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaEmpresa)
                        {
                            db.Tbl_AuditoriaEmpresaSistema.Add(auditoriaSistema.ObtenerAuditoriaSistemaEmpresa(edInfoauditoria,
                                                                                                               Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                               Enumeraciones.EnumAuditoriaSistema.Modulos.Empresa,
                                                                                                               Enumeraciones.EnumAuditoriaSistema.SubModulos.Datos_generales_de_la_empresa,
                                                                                                               Enumeraciones.EnumAuditoriaSistema.Opciones.Datos_generales_de_la_empresa,
                                                                                                               "Logo_Empresa: " + logo.Logo_Empresa));
                        }
                        /*fin auditoria*/
                        logo.Logo_Empresa = null;
                    }
                    db.SaveChanges();
                    Transaction.Commit();

                    if (System.IO.File.Exists(fullPath))
                    {
                        System.IO.File.Delete(fullPath);
                    }
                }
                catch (Exception ex)
                {
                    registraLog.RegistrarError(typeof(EmpresasController), string.Format("Error al Eliminar el logo de la Empresa  {0}: {1}", DateTime.Now, ex.StackTrace), ex);
                    Transaction.Rollback();
                }
            }
            return(Json(new { Data = 1 }, JsonRequestBehavior.AllowGet));
        }
Пример #2
0
        public ActionResult Create(Sede sede, SedeMunicipio sedePorMunicipio, List <CentroTrabajo> centro, string ipUsuario)
        {
            var usuarioActual = ObtenerUsuarioEnSesion(System.Web.HttpContext.Current);

            if (usuarioActual == null)
            {
                ViewBag.Mensaje = "Debe estar autenticado para poder continuar.";
                return(View());
            }
            EDInformacionAuditoria edInfoauditoria = new EDInformacionAuditoria()
            {
                IdentificacionUsuario = usuarioActual.Documento,
                NombreUsuario         = usuarioActual.NombreUsuario,
                NitEmpresa            = usuarioActual.NitEmpresa,
                NombreEmpresa         = usuarioActual.RazonSocialEmpresa,
                IpUsuario             = ipUsuario
            };

            using (var tx = db.Database.BeginTransaction())
            {
                Empresa empresa = db.Tbl_Empresa.Find(usuarioActual.IdEmpresa);
                sede.Empresa     = empresa;
                sede.Nombre_Sede = sede.Nombre_Sede.ToUpper();

                List <SedeMunicipio> buscarsede = db.Tbl_SedeMunicipio.Where(rs => rs.Sede.Fk_Id_Empresa == usuarioActual.IdEmpresa && rs.id_sedeMunicipio != null).ToList();
                if (buscarsede != null)
                {
                    List <SedeMunicipio> buscarsede1 = db.Tbl_SedeMunicipio.Where(rs => rs.Sede.Fk_Id_Empresa == usuarioActual.IdEmpresa && rs.Sede.Nombre_Sede == sede.Nombre_Sede).ToList();
                    if (buscarsede1.Count > 0)
                    {
                        TempData["shortMessage"] = "Sede Ingresada ya Existe.";
                    }
                    else
                    {
                        List <CentroTrabajo> centros = db.Tbl_Centro_de_Trabajo.Where(ct => ct.Sede.Fk_Id_Empresa == usuarioActual.IdEmpresa).ToList();

                        if (ModelState.IsValid)
                        {
                            sede.SedeMunicipios = new List <SedeMunicipio>();
                            sede.SedeMunicipios.Add(sedePorMunicipio);
                            sede.CentrosTrabajo = centro;
                            /*inicio auditoria*/
                            if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaEmpresa)
                            {
                                db.Tbl_AuditoriaEmpresaSistema.Add(auditoriaSistema.ObtenerAuditoriaSistemaEmpresa(edInfoauditoria,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.Acciones.CREACION,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.Modulos.Empresa,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.SubModulos.Datos_generales_de_la_empresa,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.Opciones.Sedes,
                                                                                                                   sede.ToString()));
                            }
                            /*fin auditoria*/
                            db.Tbl_Sede.Add(sede);
                            db.SaveChanges();
                            tx.Commit();
                            TempData["shortMessage"] = "Sede Almacenada Correctamente.";
                            List <SedeMunicipio> buscarsedes = db.Tbl_SedeMunicipio.Where(rs => rs.Sede.Fk_Id_Empresa == usuarioActual.IdEmpresa && rs.id_sedeMunicipio != null).ToList();
                            ViewBag.mensaje = "La Sede: " + sede.Nombre_Sede + " Registrada con Exito.";
                            return(RedirectToAction("SedesPorMunicipios", buscarsedes));
                        }
                    }
                }
            }
            return(RedirectToAction("SedesPorMunicipios"));
        }
Пример #3
0
        //   [ValidateAntiForgeryToken]
        public ActionResult Create(Usuario usuario, HttpPostedFileBase Firma, List <int> Fk_Id_Rol, string ipUsuario)
        {
            var usuarioActual = ObtenerUsuarioEnSesion(System.Web.HttpContext.Current);

            if (usuarioActual == null)
            {
                ViewBag.mensaje1 = "Debe Registrarse para Ingresar a este Modulo.";
                return(RedirectToAction("Login", "Home"));
            }
            EDInformacionAuditoria edInfoauditoria = new EDInformacionAuditoria()
            {
                IdentificacionUsuario = usuarioActual.Documento,
                NombreUsuario         = usuarioActual.NombreUsuario,
                NitEmpresa            = usuarioActual.NitEmpresa,
                NombreEmpresa         = usuarioActual.RazonSocialEmpresa,
                IpUsuario             = ipUsuario
            };

            try
            {
                usuario.Nombre_Usuario = usuario.Nombre_Usuario.ToUpper();
                List <Usuario> usuarios = db.Tbl_Usuario.Where(u => u.Pk_Id_Usuario > 0).ToList();
                if (usuarios.Count > 0)
                {
                    foreach (var sct in usuarios)
                    {
                        if (sct.Nombre_Usuario == usuario.Nombre_Usuario & sct.Numero_Documento == usuario.Numero_Documento & sct.Fk_Id_Empresa == usuarioActual.IdEmpresa)
                        {
                            ViewBag.mensaje = "Usuario: " + usuario.Nombre_Usuario + "  Ya Existe.";
                            var usuariosL = db.Tbl_Usuario
                                            .Include(u => u.UsuarioRoles)
                                            .Include(u => u.TipoDocumentos)
                                            .Where(y => y.Fk_Id_Empresa == usuarioActual.IdEmpresa).ToList();
                            return(View("index", usuariosL));
                        }
                    }
                }

                var path = "";
                List <UsuarioRol> listUsuarioRol = new List <UsuarioRol>();
                foreach (int cc in Fk_Id_Rol)
                {
                    UsuarioRol userRol = new UsuarioRol();
                    userRol.Fk_Id_Rol = cc;
                    listUsuarioRol.Add(userRol);
                }
                if (Firma != null)
                {
                    if (Firma.ContentLength > 0)
                    {
                        if (Path.GetExtension(Firma.FileName).ToLower() == ".jpg"

                            || Path.GetExtension(Firma.FileName).ToLower() == ".png")
                        {
                            path = Path.Combine(Server.MapPath("~/Content/Images"), usuario.Numero_Documento + Firma.FileName);
                            Image img = RedimensionarImagen(Firma.InputStream);
                            img.Save(path);
                            ViewBag.UploadSuccess = true;
                            usuario.Imagen_Firma  = usuario.Numero_Documento + Firma.FileName;
                        }
                    }
                }
                usuario.Nombre_Usuario = usuario.Nombre_Usuario.ToUpper();
                usuario.nit_Empresa    = usuarioActual.NitEmpresa;
                usuario.Fk_Id_Empresa  = usuarioActual.IdEmpresa;
                usuario.UsuarioRoles   = listUsuarioRol;
                if (ModelState.IsValid)
                {
                    db.Tbl_Usuario.Add(usuario);
                }
                /*inicio auditoria*/
                if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaEmpresa)
                {
                    db.Tbl_AuditoriaEmpresaSistema.Add(auditoriaSistema.ObtenerAuditoriaSistemaEmpresa(edInfoauditoria,
                                                                                                       Enumeraciones.EnumAuditoriaSistema.Acciones.CREACION,
                                                                                                       Enumeraciones.EnumAuditoriaSistema.Modulos.Empresa,
                                                                                                       Enumeraciones.EnumAuditoriaSistema.SubModulos.Datos_generales_de_la_empresa,
                                                                                                       Enumeraciones.EnumAuditoriaSistema.Opciones.Roles_SGSST,
                                                                                                       usuario.ToString()));
                }
                /*fin auditoria*/
                db.SaveChanges();
                TempData["shortMessage"] = "Usuario Creado Satisfactoriamente.";
                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                return(View("Index"));
            }

            ViewBag.Fk_Id_Rol         = new SelectList(db.Tbl_Rol.Where(r => r.Fk_Id_Empresa == usuarioActual.IdUsuario && r.Descripcion == "REPRESENTANTE LEGAL" || r.Descripcion == "RESPONSABLE DE SGSST" || r.Descripcion == "PROFESIONAL SST"), "Pk_Id_Rol", "Descripcion", usuario.UsuarioRoles);
            ViewBag.Fk_Tipo_Documento = new SelectList(db.Tbl_TipoDocumentos, "PK_IDTipo_Documento", "Descripcion", usuario.Fk_Tipo_Documento);
            return(View(usuario));
        }