public ActionResult NuevaTarea(FormCollection collection)
 {
     try
     {
         InfoTarea nuevo = new InfoTarea {
             Desarrollador = Storage.Instance.name, Titulo = collection["Titulo"], Descripcion = collection["Descripcion"],
             Proyecto      = collection["Proyecto"], Entrega = DateTime.Parse(collection["Entrega"]), Prioridad = int.Parse(collection["Prioridad"])
         };
         if (Storage.Instance.infoTareas.Search(nuevo, tarea => tarea.Titulo) == null && nuevo.Prioridad >= 0)
         {
             Storage.Instance.infoTareas.Add(nuevo, tarea => tarea.Titulo);
             Storage.Instance.tareasUsuario.Add(nuevo.ToTituloTarea(), TituloTarea.CompararPrioridad);
             Sobreescribir();
             return(RedirectToAction("ProximaTarea"));
         }
         else
         {
             return(RedirectToAction("NuevaTarea"));
         }
     }
     catch
     {
         return(RedirectToAction("NuevaTarea"));
     }
 }
Exemplo n.º 2
0
 private Singleton()
 {
     tarea    = new InfoTarea();
     Thash    = new THash <InfoTarea>();
     THeap    = new Arbol <Tarea>();
     HeapSort = new ListaDoble <Tarea>();
     Titulos  = new THash <string>();
 }
Exemplo n.º 3
0
        public IActionResult Developer(string Titulo, string Descripcion, string Proyecto, string Prioridad, string Fecha)
        {
            Arbol <Tarea> HeapTarea;
            InfoTarea     NuevaTarea = new InfoTarea();
            Tarea         PrioridadT = new Tarea();

            //Singleton.Instance.HeapSort;

            if (Verificar(Titulo))
            {
                // Recibe información y la almacena dentro de la tabla hash
                NuevaTarea.Titulo       = Titulo;
                NuevaTarea.Descripcion  = Descripcion;
                NuevaTarea.Proyecto     = Proyecto;
                NuevaTarea.FechaEntrega = Fecha;
                NuevaTarea.Prioridad    = Convert.ToInt32(Prioridad);

                Singleton.Instance.Thash.Insertar(NuevaTarea, NuevaTarea.Titulo);

                //Se agrega información dentro del heap
                PrioridadT.Titulo    = Titulo;
                PrioridadT.Prioridad = Convert.ToInt32(Prioridad);

                Singleton.Instance.THeap.Insertar(PrioridadT);


                //.Instance.HeapSort.Vaciar();
                HeapTarea = new Arbol <Tarea>();
                HeapTarea = Singleton.Instance.THeap;

                Singleton.Instance.HeapSort.InsertarFinal(HeapTarea.Eliminar().valor);

                return(View(Singleton.Instance.HeapSort));
            }
            else
            {
                ViewBag.Mensaje = "Título incorrecto, intente de nuevo";
                return(View());
            }
        }
Exemplo n.º 4
0
        private InfoTarea ObtenerValor(string Titulo)
        {
            THash <InfoTarea> hash = new THash <InfoTarea>();

            hash = Singleton.Instance.Thash;
            int       llave = hash.Llave(Titulo);
            InfoTarea valor = new InfoTarea();

            switch (llave)
            {
            case 0:
                for (int i = 0; i < hash.Lista0.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 1:
                for (int i = 0; i < hash.Lista1.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 2:
                for (int i = 0; i < hash.Lista2.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 3:
                for (int i = 0; i < hash.Lista3.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 4:
                for (int i = 0; i < hash.Lista4.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 5:
                for (int i = 0; i < hash.Lista5.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 6:
                for (int i = 0; i < hash.Lista6.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 7:
                for (int i = 0; i < hash.Lista7.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 8:
                for (int i = 0; i < hash.Lista8.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;

            case 9:
                for (int i = 0; i < hash.Lista9.contador; i++)
                {
                    if (hash.ObtenerValor(i).Titulo == Titulo)
                    {
                        valor = hash.ObtenerValor(i);
                    }
                }
                break;
            }
            return(valor);
        }
 private bool LlenarTablaHash()
 {
     try
     {
         string path  = Server.MapPath("/Tareas.csv");
         string texto = "";
         using (StreamReader lector = new StreamReader(path))
         {
             texto = lector.ReadToEnd();
         }
         string[] text = texto.Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
         for (int i = 1; i < text.Length; i++)
         {
             if (text[i] != "")
             {
                 InfoTarea nuevo = new InfoTarea
                 {
                     Desarrollador = text[i].Substring(0, text[i].IndexOf(","))
                 };
                 text[i] = text[i].Remove(0, text[i].IndexOf(",") + 1);
                 if (text[i].IndexOf('\"') == 0)
                 {
                     text[i]      = text[i].Remove(0, 1);
                     nuevo.Titulo = text[i].Substring(0, text[i].IndexOf('\"'));
                     text[i]      = text[i].Remove(0, text[i].IndexOf('\"') + 2);
                 }
                 else
                 {
                     nuevo.Titulo = text[i].Substring(0, text[i].IndexOf(','));
                     text[i]      = text[i].Substring(text[i].IndexOf(',') + 1);
                 }
                 if (text[i].IndexOf('\"') == 0)
                 {
                     text[i]           = text[i].Remove(0, 1);
                     nuevo.Descripcion = text[i].Substring(0, text[i].IndexOf('\"'));
                     text[i]           = text[i].Remove(0, text[i].IndexOf('\"') + 2);
                 }
                 else
                 {
                     nuevo.Descripcion = text[i].Substring(0, text[i].IndexOf(','));
                     text[i]           = text[i].Substring(text[i].IndexOf(',') + 1);
                 }
                 if (text[i].IndexOf('\"') == 0)
                 {
                     text[i]        = text[i].Remove(0, 1);
                     nuevo.Proyecto = text[i].Substring(0, text[i].IndexOf('\"'));
                     text[i]        = text[i].Remove(0, text[i].IndexOf('\"') + 2);
                 }
                 else
                 {
                     nuevo.Proyecto = text[i].Substring(0, text[i].IndexOf(','));
                     text[i]        = text[i].Substring(text[i].IndexOf(',') + 1);
                 }
                 nuevo.Entrega   = DateTime.Parse(text[i].Substring(0, text[i].IndexOf(',')));
                 text[i]         = text[i].Substring(text[i].IndexOf(',') + 1);
                 nuevo.Prioridad = Int32.Parse(text[i]);
                 Storage.Instance.infoTareas.Add(nuevo, tarea => tarea.Titulo);
             }
         }
         return(true);
     }
     catch
     {
         return(false);
     }
 }