示例#1
0
 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;
 }
示例#2
0
 public List<Comentarios> GetComentariosBySolicitudId(int solicitud_id)
 {
     Conexion con = new Conexion();
     SqlDataReader datos = con.GetComentariosBySolicitudId(solicitud_id);
     List<Comentarios> comentarios = new List<Comentarios>();
     while (datos.Read())
     {
         Comentarios comentario = new Comentarios();
         comentario.Texto = datos["Texto"].ToString();
         comentario.tiempo = Convert.ToDateTime(datos["Tiempo"]);
         comentario.usuario = new Usuarios();
         comentario.usuario.InicioSesion(datos["NombreUsuario"].ToString());
         comentarios.Add(comentario);
     }
     con.Close();
     return comentarios;
 }
示例#3
0
 public List<Adjuntos> CargarAdjuntos(int solicitud)
 {
     Conexion con = new Conexion();
     List<Adjuntos> adjuntos = new List<Adjuntos>();
     SqlDataReader data = con.GetAdjuntosBySolicitud(solicitud);
     while (data.Read())
     {
         Adjuntos adjunto = new Adjuntos();
         adjunto.ID = Convert.ToInt32(data["ID"].ToString());
         adjunto.solicitudId = solicitud;
         adjunto.usuario = new Usuarios();
         adjunto.usuario.InicioSesion(data["NombreUsuario"].ToString());
         adjunto.Archivo = data["Archivo"].ToString();
         adjunto.fechatiempo = Convert.ToDateTime(data["FechaTiempo"]);
         adjuntos.Add(adjunto);
     }
     con.Close();
     return adjuntos;
 }
 public ActionResult AdjuntosSubidos(HttpPostedFileBase[] archivos)
 {
     if (Session["nombreusuario"] != null && archivos.Length > 0)
     {
         Conexion con = new Conexion();
         if (!System.IO.Directory.Exists(String.Format(@"{0}{1}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"])))
         {
             System.IO.Directory.CreateDirectory(String.Format(@"{0}{1}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"]));
         }
         else
         {
             if (!System.IO.Directory.Exists(String.Format(@"{0}{1}\{2}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"], Session["nombreusuario"].ToString())))
             {
                 System.IO.Directory.CreateDirectory(String.Format(@"{0}{1}\{2}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"], Session["nombreusuario"].ToString()));
             }
         }
         if (!System.IO.Directory.Exists(String.Format(@"{0}{1}\{2}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"], Session["nombreusuario"].ToString())))
         {
             System.IO.Directory.CreateDirectory(String.Format(@"{0}{1}\{2}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"], Session["nombreusuario"].ToString()));
         }
         foreach (HttpPostedFileBase arch in archivos)
         {
             if (arch != null)
             {
                 arch.SaveAs(String.Format(@"{0}\{1}\{2}\{3}", System.Configuration.ConfigurationManager.AppSettings["UbicacionAdjuntos"], Request["solicitudid"], Session["nombreusuario"].ToString(), arch.FileName));
                 con.GuardarArchivos(Session["nombreusuario"].ToString(), Convert.ToInt32(Request["solicitudid"]), String.Format(@"{0}/{1}/{2}", Request["solicitudid"], Session["nombreusuario"].ToString(), arch.FileName));
             }
         }
         con.Close();
         return RedirectToAction("Adjuntos/" + Request["solicitudid"]);
     }
     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 Consultado()
 {
     if (Session["nombreusuario"] != null)
     {
         string categoria = null, prioridad = null, estado = null, departamento = null, creador = null, tecnico = null, fechaDesde = null, fechaHasta = null, fechaModificacionDesde = null, fechaModificacionHasta = null, pagina = null;
         if (Request["Categoria"] != "")
         {
             categoria = Request["Categoria"];
         }
         if (Request["Prioridad"] != "")
         {
             prioridad = Request["Prioridad"];
         }
         if (Request["Estado"] != "")
         {
             estado = Request["Estado"];
         }
         if (Request["Departamento"] != "")
         {
             departamento = Request["Departamento"];
         }
         if (Request["UsuarioCreador"] != "")
         {
             creador = Request["UsuarioCreador"];
         }
         if (Request["UsuarioTecnico"] != "")
         {
             tecnico = Request["UsuarioTecnico"];
         }
         if (Request["FechaDesde"] != "")
         {
             fechaDesde = Request["FechaDesde"];
         }
         if (Request["FechaHasta"] != "")
         {
             fechaHasta = Request["FechaHasta"];
         }
         if (Request["FechaModificacionDesde"] != "")
         {
             fechaModificacionDesde = Request["FechaModificacionDesde"];
         }
         if (Request["FechaModificacionHasta"] != "")
         {
             fechaModificacionHasta = Request["FechaModificacionHasta"];
         }
         if (Request["pagina"] != "" && Request["pagina"] != null)
         {
             pagina = Request["pagina"];
         }
         else
         {
             pagina = "1";
         }
         Conexion con = new Conexion();
         DataSet ds = con.Consulta(categoria, prioridad, estado, departamento, creador, tecnico, fechaDesde, fechaHasta, fechaModificacionDesde, fechaModificacionHasta, pagina);
         DataTableReader paginas = ds.Tables[2].CreateDataReader();
         paginas.Read();
         List<Solicitudes> solicitudesFiltradas = new Solicitudes().GetSolicitudesFiltradas(ds.Tables[1].CreateDataReader());
         ViewData["solicitudesFiltradas"] = solicitudesFiltradas;
         ViewBag.paginas = paginas["Paginas"].ToString();
         ViewBag.campos = Request;
         con.Close();
     }
     else {
         return RedirectToAction("Index", "Home");
     }
     return View();
 }
示例#8
0
 public bool NuevoUsuario(string nombreusuario, string nombre, string departamento, string correo)
 {
     Conexion con = new Conexion();
     SqlDataReader userdata = con.NuevoUsuario(nombre, nombreusuario, correo, departamento);
     if (userdata.Read())
     {
         this.ID = Convert.ToInt32(userdata["UsuarioID"]);
         this.Nombre = Convert.ToString(userdata["Nombre"]);
         this.NombreUsuario = Convert.ToString(userdata["NombreUsuario"]);
         this.CorreoElectronico = Convert.ToString(userdata["Correo"]);
         this.rol.ID = Convert.ToInt32(userdata["RolID"]);
         this.rol.Nombre = Convert.ToString(userdata["Rol"]);
         this.departamento.ID = Convert.ToInt32(userdata["DepartamentoID"]);
         this.departamento.Nombre = Convert.ToString(userdata["Departamento"]);
         con.Close();
         return true;
     }
     else
     {
         con.Close();
         return false;
     }
 }
示例#9
0
 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;
 }
示例#10
0
 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;
 }
示例#11
0
 public List<SubCategorias> GetSubCategoriasByCategoriaId(int id)
 {
     Conexion con = new Conexion();
     List<SubCategorias> subcats = new List<SubCategorias>();
     SqlDataReader subcategorias = con.GetSubCategoriasByCategoriaId(id);
     while (subcategorias.Read())
     {
         SubCategorias cat = new SubCategorias();
         cat.ID = Convert.ToInt32(subcategorias["ID"]);
         cat.Nombre = subcategorias["Nombre"].ToString();
         subcats.Add(cat);
     }
     con.Close();
     return subcats;
 }
示例#12
0
 public bool NuevaSolicitud()
 {
     Conexion con = new Conexion();
     SqlDataReader solicituddata = con.NuevaSolicitud(UsuarioCreador.NombreUsuario, Descripcion, categoria.ID, Prioridad, subcategoria.ID);
     solicituddata.Read();
     this.UsuarioCreador.InicioSesion(this.UsuarioCreador.NombreUsuario);
     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.Prioridad = Convert.ToString(solicituddata["Prioridad"]);
     this.FechaCreacion = Convert.ToDateTime(solicituddata["FechaCreacion"]);
     this.UltimaModificacion = Convert.ToDateTime(solicituddata["UltimaModificacion"]);
     con.Close();
     return true;
 }
示例#13
0
 public List<Solicitudes> GetSolicitudesNoAsignadas()
 {
     Conexion con = new Conexion();
     SqlDataReader data = con.GetSolicitudesNoAsignadas();
     List<Solicitudes> solicitudes = new List<Solicitudes>();
     while (data.Read())
     {
         Solicitudes solicitud = new Solicitudes();
         solicitud.ID = Convert.ToInt32(data["ID"].ToString());
         solicitud.CargarSolicitud();
         solicitudes.Add(solicitud);
     }
     con.Close();
     return solicitudes;
 }
示例#14
0
 public List<Solicitudes> GetHistorialSolicitudes(int solicitudid)
 {
     Conexion con = new Conexion();
     SqlDataReader data = con.GetHistorialSolicitud(solicitudid);
     List<Solicitudes> solicitudes = new List<Solicitudes>();
     while (data.Read())
     {
         Solicitudes solicitud = new Solicitudes();
         solicitud.FechaCreacion = Convert.ToDateTime(data["FechaTiempo"]);
         solicitud.UsuarioCreador = new Usuarios();
         solicitud.UsuarioCreador.Nombre = data["Usuario"].ToString();
         solicitud.UsuarioTecnico = new Usuarios();
         solicitud.UsuarioTecnico.Nombre = data["Tecnico"].ToString();
         solicitud.estado.Nombre = data["Estado"].ToString();
         solicitud.Descripcion = data["Descripcion"].ToString();
         solicitud.Solucion = data["Solucion"].ToString();
         solicitud.Prioridad = data["Prioridad"].ToString();
         solicitudes.Add(solicitud);
     }
     con.Close();
     return solicitudes;
 }
 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");
     }
 }
示例#16
0
 public bool NuevoComentario()
 {
     Conexion con = new Conexion();
     this.ID = con.NuevoComentario(this.Texto, usuario.ID, solicitudid);
     con.Close();
     return true;
 }
 public ActionResult Ver()
 {
     if (Session["nombreusuario"] != null)
     {
         Solicitudes solicitud = new Solicitudes();
         solicitud.ID = Convert.ToInt32(Request["solicitudid"]);
         solicitud.CargarSolicitud();
         string PrioridadFinal = null, DescripcionFinal = null, SolucionFinal = null, EstadoFinal = null, usuarioTecnico = null, categoria = null, subcategoria = null;
         bool estadocambiado = false;
         if (solicitud.Prioridad != Request["Prioridad"])
         {
             PrioridadFinal = Request["Prioridad"].ToString();
         }
         if (solicitud.estado.ID.ToString() != Request["Estado"])
         {
             EstadoFinal = Request["Estado"].ToString();
             estadocambiado = true;
         }
         if (solicitud.Descripcion != Request["Descripcion"] && Request["Descripcion"] != "")
         {
             DescripcionFinal = Request["Descripcion"].ToString();
         }
         if (solicitud.Solucion != Request["Solucion"] && Request["Solucion"] != "")
         {
             SolucionFinal = Request["Solucion"].ToString();
         }
         if (solicitud.UsuarioTecnico.ID.ToString() != Request["usuarioTecnico"] && Request["usuarioTecnico"] != "")
         {
             usuarioTecnico = Request["usuarioTecnico"];
         }
         if (solicitud.categoria.ID.ToString() != Request["categoria"] && Request["categoria"] != null)
         {
             categoria = Request["categoria"];
         }
         if (solicitud.subcategoria.ID.ToString() != Request["subcategoria"] && Request["subcategoria"] != null)
         {
             subcategoria = Request["subcategoria"];
         }
         Conexion con = new Conexion();
         con.ModificarSolicitud(solicitud.ID, PrioridadFinal, EstadoFinal, DescripcionFinal, SolucionFinal, Session["nombreusuario"].ToString(), usuarioTecnico, Request["satisfaccion"], categoria, subcategoria);
         con.Close();
         if (estadocambiado)
         {
             if (Request["Estado"] == "4")
             {
                 //Enviar mensaje a usuario solicitante
                 string mensaje = String.Format("Se ha registrado su solicitud <b>{0}</b> como <b>resuelta</b> con el asunto de {1}. En caso de que su solicitud haya sido resuelta favor especificar su nivel de satisfaccion haciendo click:<br/><a href='http://dtic017/MesaDeAyuda/Solicitud/Validado/{0}/5'>Muy satisfecho</a>, <a href='http://dtic017/MesaDeAyuda/Solicitud/Validado/{0}/4'> Satisfecho</a>, <a href='http://dtic017/MesaDeAyuda/Solicitud/Validado/{0}/3'> Indiferente</a>, <a href='http://dtic017/MesaDeAyuda/Solicitud/Validado/{0}/2'> Insatisfecho</a>, <a href='http://dtic017/MesaDeAyuda/Solicitud/Validado/{0}/1'> Muy Insatisfecho</a><br />En caso de que su solicitud no se haya resuelto <a href='http://dtic017/MesaDeAyuda/Solicitud/NoValido/{0}'>click aqui</a><br />Nota: Para ingresar al sistema debe de estar dentro de la red alambrica de MEPYD. No podrá ingresar a traves de Wi-Fi", solicitud.ID, solicitud.Descripcion);
                 new Mensajes().EnviarMensaje(solicitud.UsuarioCreador.CorreoElectronico, "Solicitud marcada como resuelta", mensaje);
             }
             else if (Request["Estado"] == "8")
             {
                 //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.", solicitud.ID);
                 foreach (string sup in supervisores)
                 {
                     new Mensajes().EnviarMensaje(sup.ToString(), "Solicitud marcada como No Valida", mensaje);
                 }
             }
         }
         return RedirectToAction("Ver", "Solicitud", solicitud.ID.ToString());
     }
     else
     {
         return RedirectToAction("Index", "Home");
     }
 }
示例#18
0
 public bool Asignar(string supervisor, int tecnico)
 {
     Conexion con = new Conexion();
     con.AsignarTecnico(this.ID, tecnico, supervisor);
     //Enviar mensaje a usuario tecnico
     SqlDataReader usuario = con.GetUsuarioById(tecnico);
     usuario.Read();
     string mensaje = String.Format("Se le ha asignado la nueva solicitud {0}. Favor trabajarla lo mas breve posible", this.ID);
     new Mensajes().EnviarMensaje(usuario["CorreoElectronico"].ToString(), "Solicitud asignada", mensaje);
     con.Close();
     return true;
 }