public ActionResult Index() { ViewBag.Message = "Bienvenido nuevamente"; string correoinstitucional = System.Configuration.ConfigurationManager.AppSettings["CorreoInstitucional"]; string nombreusuario = User.Identity.Name.Split('\\')[1].ToString(); Usuarios usuario = new Usuarios(); if (!usuario.InicioSesion(nombreusuario)) { DirectoryEntry deRoot = new DirectoryEntry(System.Configuration.ConfigurationManager.AppSettings["ActiveDirectoryURL"], System.Configuration.ConfigurationManager.AppSettings["ActiveDirectoryUser"], System.Configuration.ConfigurationManager.AppSettings["ActiveDirectoryPassword"]); DirectorySearcher dsFindUser = new DirectorySearcher(deRoot); dsFindUser.SearchScope = SearchScope.Subtree; dsFindUser.PropertiesToLoad.Add("cn"); // nombre completo //dsFindUser.PropertiesToLoad.Add("givenName"); // first name dsFindUser.PropertiesToLoad.Add("mail"); // correo dsFindUser.Filter = string.Format("(&(objectCategory=Person)(anr={0}))", nombreusuario); SearchResult result = dsFindUser.FindOne(); ViewBag.Nombre = result.Properties["cn"][0].ToString(); string departamento = result.Path.Split(',')[1].Remove(0, 3); string correo = ""; if (result.Properties["mail"].Count != 0) { correo = result.Properties["mail"][0].ToString(); } else { correo = nombreusuario + correoinstitucional; } usuario.NuevoUsuario(nombreusuario, ViewBag.Nombre, departamento, correo); string mensaje = "Bienvenido al Sistema de Mesa de Ayuda del Ministerio de Economia, Planificación y Desarrollo\n Por esta vía se le enviará notificaciones de sus solicitudes."; new Mensajes().EnviarMensaje(correo, "Bienvenido al SiMeAyuda", mensaje); ViewBag.Message = "Bienvenido por primera vez"; } Session.Timeout = 20; Session["nombre"] = usuario.Nombre; Session["nombreusuario"] = usuario.NombreUsuario; Session["correousuario"] = usuario.CorreoElectronico; Session["rol"] = usuario.rol.Nombre; return View(); }
public ActionResult Ver(string id) { if (Session["nombreusuario"] != null) { Solicitudes solicitud = new Solicitudes(); solicitud.ID = Convert.ToInt32(id); solicitud.CargarSolicitud(); ViewBag.Solicitud = solicitud; //Usuarios tecnicos //ViewBag.Tecnicos = new Conexion().GetAllTecnicos(); //Estados dependientes de estado actual ViewBag.estados = new Conexion().GetEstadosByOrigen(solicitud.estado.ID, Session["nombreusuario"].ToString()); List<Comentarios> comentarios = new Comentarios().GetComentariosBySolicitudId(Convert.ToInt32(id)); ViewData["comentarios"] = comentarios; List<Categorias> cat = new Categorias().GetAllCategorias(); ViewData["categorias"] = cat; List<SubCategorias> subc = new SubCategorias().GetSubCategoriasByCategoriaId(solicitud.categoria.ID); ViewData["subcategorias"] = subc; if (Session["rol"].ToString() == "Supervisor") { ViewData["tecnicos"] = new Usuarios().GetAllTecnicos(); } } else { return RedirectToAction("Index", "Home"); } return View(); }
public ActionResult Validado(string id, string id2) { string nombreusuario = User.Identity.Name.Split('\\')[1].ToString(); Usuarios usuario = new Usuarios(); usuario.InicioSesion(nombreusuario); Session["nombre"] = usuario.Nombre; Session["nombreusuario"] = usuario.NombreUsuario; Session["correousuario"] = usuario.CorreoElectronico; Session["rol"] = usuario.rol.Nombre; Solicitudes s = new Solicitudes(); s.ID = int.Parse(id); s.CargarSolicitud(); if (s.estado.ID == 4) { Conexion con = new Conexion(); con.ModificarSolicitud(s.ID, null, "5", null, null, s.UsuarioCreador.NombreUsuario, null, id2, null, null); con.Close(); return View(); } else { return RedirectToAction("Index", "Home"); } }
public ActionResult Reportes() { if (Session["nombreusuario"] != null) { if (Session["rol"].ToString() == "Supervisor") { SqlDataReader categorias = new Conexion().GetAllCategorias(), departamentos = new Conexion().GetAllDepartamentos(), estados = new Conexion().GetAllEstados(); ViewBag.categorias = categorias; ViewBag.departamentos = departamentos; ViewBag.estados = estados; ViewData["Tecnicos"] = new Usuarios().GetAllTecnicos(); ViewData["Solicitantes"] = new Usuarios().GetAllUsuariosSolicitantes(); } else { return RedirectToAction("Index", "Home"); } } else { return RedirectToAction("Index", "Home"); } return View(); }
public ActionResult NoValidado(string id) { string nombreusuario = User.Identity.Name.Split('\\')[1].ToString(); Usuarios usuario = new Usuarios(); usuario.InicioSesion(nombreusuario); Session["nombre"] = usuario.Nombre; Session["nombreusuario"] = usuario.NombreUsuario; Session["correousuario"] = usuario.CorreoElectronico; Session["rol"] = usuario.rol.Nombre; Solicitudes s = new Solicitudes(); s.ID = int.Parse(id); s.CargarSolicitud(); if (s.estado.ID == 4) { Conexion con = new Conexion(); con.ModificarSolicitud(s.ID, null, "8", null, null, s.UsuarioCreador.NombreUsuario, null, "5", null, null); con.Close(); //Enviar mensaje a usuarios supervisores Conexion con2 = new Conexion(); SqlDataReader super = con2.GetAllUsuariosSupervisores(); List<String> supervisores = new List<string>(); while (super.Read()) { supervisores.Add(super["CorreoElectronico"].ToString()); } con2.Close(); string mensaje = String.Format("Se ha registrado la solicitud {0} como No Valida por el usuario solicitante. Favor de resolver situación.", s.ID); foreach (string sup in supervisores) { new Mensajes().EnviarMensaje(sup.ToString(), "Solicitud marcada como No Valida", mensaje); } return View(); } else { return RedirectToAction("Index", "Home"); } }
public ActionResult Index(Solicitudes model) { if (Session["nombreusuario"] != null) { model.categoria = new Categorias(); model.subcategoria = new SubCategorias(); model.estado = new Estados(); model.categoria.ID = Convert.ToInt32(Request["Categoria"].ToString()); model.Prioridad = Request["Prioridad"].ToString(); model.subcategoria.ID = Convert.ToInt32(Request["SubCategoria"].ToString()); model.UsuarioCreador = new Usuarios(); if (Session["rol"].ToString() == "Supervisor" && Request["solicitante"] != "") { Usuarios usuario = new Usuarios(); if (!usuario.InicioSesion(Request["solicitante"])) { string correoinstitucional = System.Configuration.ConfigurationManager.AppSettings["CorreoInstitucional"]; DirectoryEntry deRoot = new DirectoryEntry(System.Configuration.ConfigurationManager.AppSettings["ActiveDirectoryURL"], System.Configuration.ConfigurationManager.AppSettings["ActiveDirectoryUser"], System.Configuration.ConfigurationManager.AppSettings["ActiveDirectoryPassword"]); DirectorySearcher dsFindUser = new DirectorySearcher(deRoot); dsFindUser.SearchScope = SearchScope.Subtree; dsFindUser.PropertiesToLoad.Add("cn"); // nombre completo //dsFindUser.PropertiesToLoad.Add("givenName"); // first name dsFindUser.PropertiesToLoad.Add("mail"); // correo dsFindUser.PropertiesToLoad.Add("sAMAccountName"); // nombre de usuario dsFindUser.Filter = string.Format("(&(objectCategory=Person)(anr={0}))", Request["solicitante"]); SearchResult result = dsFindUser.FindOne(); if (result != null) { string nombre = result.Properties["cn"][0].ToString(); string departamento = result.Path.Split(',')[1].Remove(0, 3); string correo = ""; if (result.Properties["mail"].Count != 0) { correo = result.Properties["mail"][0].ToString(); } else { correo = result.Properties["sAMAccountName"][0].ToString() + correoinstitucional; } usuario.NuevoUsuario(result.Properties["sAMAccountName"][0].ToString(), nombre, departamento, correo); model.UsuarioCreador = usuario; } else { List<Categorias> cat = new Categorias().GetAllCategorias(); ViewData["categorias"] = cat; ViewBag.Message = "Creando solicitud - Nombre de usuario no encontrado"; return View(); } } else { model.UsuarioCreador = usuario; } } else { model.UsuarioCreador.InicioSesion(Session["nombreusuario"].ToString()); } if (model.NuevaSolicitud()) { if (Request["tecnico"] != "") { Usuarios tecnico = new Usuarios(); tecnico.InicioSesion(Request["tecnico"]); model.Asignar(Session["nombreusuario"].ToString(), tecnico.ID); } ViewBag.SolicitudID = model.ID; //Enviar mensaje a usuario solicitante string mensaje = String.Format("Se ha registrado la creación de su solicitud {0}. En lo mas adelante se le estará asistiendo.", model.ID); new Mensajes().EnviarMensaje(model.UsuarioCreador.CorreoElectronico, "Solicitud registrada", mensaje); //Enviar mensaje a usuarios supervisores List<Usuarios> supervisores = new Usuarios().GetAllUsuariosSupervisores(); foreach (Usuarios supervisor in supervisores) { mensaje = String.Format("Se ha registrado la nueva solicitud {0}. Favor asignarlo a un usuario tecnico", model.ID); new Mensajes().EnviarMensaje(supervisor.CorreoElectronico, "Solicitud creada", mensaje); } return View("Creado"); } List<Categorias> cata = new Categorias().GetAllCategorias(); ViewData["categorias"] = cata; return View(); } else { return RedirectToAction("Index", "Home"); } }
// // GET: /Solicitud/ public ActionResult Index() { if (Session["nombreusuario"] != null) { ViewBag.Message = "Creando solicitud"; List<Categorias> cat = new Categorias().GetAllCategorias(); ViewData["categorias"] = cat; ViewData["tecnicos"] = new Usuarios().GetAllTecnicos(); } else { return RedirectToAction("Index", "Home"); } return View(); }
public ActionResult Asignar(string id) { if (Session["nombreusuario"] != null) { if (Session["rol"].ToString() == "Supervisor") { Solicitudes solicitud = new Solicitudes(); solicitud.ID = Convert.ToInt32(id); solicitud.CargarSolicitud(); ViewBag.Solicitud = solicitud; //Usuarios tecnicos ViewData["Tecnicos"] = new Usuarios().GetAllTecnicos(Convert.ToInt32(id)); } else { return RedirectToAction("Index", "Home"); } } else { return RedirectToAction("Index", "Home"); } return View(); }
public List<Usuarios> GetAllUsuariosSupervisores() { Conexion con = new Conexion(); List<Usuarios> usuarios = new List<Usuarios>(); SqlDataReader users = con.GetAllUsuariosSupervisores(); while (users.Read()) { Usuarios usuario = new Usuarios(); usuario.InicioSesion(users["NombreUsuario"].ToString()); usuarios.Add(usuario); } con.Close(); return usuarios; }
public Comentarios() { usuario = new Usuarios(); }
public Adjuntos() { this.usuario = new Usuarios(); }
public bool CargarSolicitud() { Conexion con = new Conexion(); SqlDataReader solicituddata = con.GetSolicitudById(this.ID); solicituddata.Read(); this.UsuarioCreador = new Usuarios(); this.UsuarioTecnico = new Usuarios(); this.UsuarioCreador.InicioSesion(Convert.ToString(solicituddata["NombreUsuario"])); this.UsuarioTecnico.InicioSesion(Convert.ToString(solicituddata["UsuarioTecnico"])); this.categoria.ID = Convert.ToInt32(solicituddata["CategoriaID"]); this.categoria.Nombre = Convert.ToString(solicituddata["Categoria"]); this.subcategoria.ID = Convert.ToInt32(solicituddata["SubCategoriaID"]); this.subcategoria.Nombre = Convert.ToString(solicituddata["SubCategoria"]); this.estado.ID = Convert.ToInt32(solicituddata["EstadoID"]); this.estado.Nombre = Convert.ToString(solicituddata["Estado"]); this.ID = Convert.ToInt32(solicituddata["SolicitudID"]); this.Descripcion = Convert.ToString(solicituddata["Descripcion"]); this.Solucion = Convert.ToString(solicituddata["Solucion"]); this.Prioridad = Convert.ToString(solicituddata["Prioridad"]); this.FechaCreacion = Convert.ToDateTime(solicituddata["FechaCreacion"]); this.UltimaModificacion = Convert.ToDateTime(solicituddata["UltimaModificacion"]); con.Close(); return true; }