public List<Categorias> GetAllCategorias() { Conexion con = new Conexion(); List<Categorias> cats = new List<Categorias>(); SqlDataReader categorias = con.GetAllCategorias(); while (categorias.Read()) { Categorias cat = new Categorias(); cat.ID = Convert.ToInt32(categorias["ID"]); cat.Nombre = categorias["Nombre"].ToString(); cats.Add(cat); } con.Close(); return cats; }
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 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 Solicitudes() { categoria = new Categorias(); subcategoria = new SubCategorias(); estado = new Estados(); }