예제 #1
0
        public ActionResult Delete(AnimeCLS oAnimeCLS)
        {
            try
            {
                client.animeBorrar(oAnimeCLS.ID);

                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                AnimeCLS tAnimeCLS = new AnimeCLS();

                var datos = client.animeDatos(oAnimeCLS.ID);

                tAnimeCLS.ID           = datos.ID;
                tAnimeCLS.Nombre       = datos.Nombre;
                tAnimeCLS.FechaEstreno = datos.FechaEstreno != null?datos.FechaEstreno.Value.ToString("dd/MM/yyyy") : " ";

                tAnimeCLS.SecuelaID   = datos.SecuelaID;
                tAnimeCLS.Secuela     = datos.Secuela;
                tAnimeCLS.PrecuelaID  = datos.PrecuelaID;
                tAnimeCLS.Precuela    = datos.Precuela;
                tAnimeCLS.Sinopsis    = datos.Sinopsis;
                tAnimeCLS.Puntuacion  = datos.Puntuacion;
                tAnimeCLS.Popularidad = datos.Popularidad;
                tAnimeCLS.EstadoID    = (int)datos.EstadoID;
                tAnimeCLS.Estado      = datos.Estado;
                ViewBag.error         = "Este anime es referenciado en otros registros. Por favor remover relación antes de eliminar.";
                return(View(tAnimeCLS));
            }
        }
예제 #2
0
        public ActionResult Edit(AnimeCLS tAnimeCLS)
        {
            DateTime fecha = DateTime.ParseExact(tAnimeCLS.FechaEstreno, "dd/MM/yyyy", null);

            client.animeEditar(tAnimeCLS.ID, tAnimeCLS.Nombre, fecha, tAnimeCLS.SecuelaID,
                               tAnimeCLS.PrecuelaID, tAnimeCLS.Sinopsis,
                               tAnimeCLS.Puntuacion, tAnimeCLS.Popularidad, tAnimeCLS.EstadoID);

            return(RedirectToAction("Index"));
        }
예제 #3
0
        public ActionResult Edit(int ID)
        {
            AnimeViewCLS tAnimeCLS = new AnimeViewCLS();

            var datos = client.animeDatos(ID);

            STPR_ESTADO_LISTA_Result[] estadoLista = client.estadoLista();
            List <EstadoCLS>           ListaEstado = new List <EstadoCLS>();


            int estadoListaLength = estadoLista.Length;

            for (int i = 0; i < estadoListaLength; i++)
            {
                EstadoCLS estado = new EstadoCLS();
                estado.ID     = estadoLista[i].ID;
                estado.nombre = estadoLista[i].nombre;
                ListaEstado.Add(estado);
            }

            tAnimeCLS.ListaEstado = ListaEstado;

            STPR_ANIME_LISTA_Result[] animeLista = client.animeLista();
            List <AnimeCLS>           ListaAnime = new List <AnimeCLS>();


            int animeListaLength = animeLista.Length;

            for (int i = 0; i < animeListaLength; i++)
            {
                AnimeCLS anime = new AnimeCLS();
                anime.ID     = animeLista[i].ID;
                anime.Nombre = animeLista[i].Nombre;
                ListaAnime.Add(anime);
            }

            tAnimeCLS.ListaAnime = ListaAnime;

            tAnimeCLS.ID           = datos.ID;
            tAnimeCLS.Nombre       = datos.Nombre;
            tAnimeCLS.FechaEstreno = datos.FechaEstreno != null?datos.FechaEstreno.Value.ToString("dd/MM/yyyy") : " ";

            tAnimeCLS.SecuelaID   = datos.SecuelaID;
            tAnimeCLS.Secuela     = datos.Secuela;
            tAnimeCLS.PrecuelaID  = datos.PrecuelaID;
            tAnimeCLS.Precuela    = datos.Precuela;
            tAnimeCLS.Sinopsis    = datos.Sinopsis;
            tAnimeCLS.Puntuacion  = datos.Puntuacion;
            tAnimeCLS.Popularidad = datos.Popularidad;
            tAnimeCLS.EstadoID    = (int)datos.EstadoID;
            tAnimeCLS.Estado      = datos.Estado;

            return(View(tAnimeCLS));
        }
예제 #4
0
        public ActionResult Create(AnimeCLS oAnimeCLS)
        {
            try
            {
                DateTime fecha = DateTime.ParseExact(oAnimeCLS.FechaEstreno, "dd/MM/yyyy", null);

                client.animeGuardar(oAnimeCLS.Nombre, fecha, oAnimeCLS.SecuelaID,
                                    oAnimeCLS.PrecuelaID, oAnimeCLS.Sinopsis,
                                    oAnimeCLS.Puntuacion, oAnimeCLS.Popularidad, oAnimeCLS.EstadoID);
            }
            catch {
                client.animeGuardar(oAnimeCLS.Nombre, null, oAnimeCLS.SecuelaID,
                                    oAnimeCLS.PrecuelaID, oAnimeCLS.Sinopsis,
                                    oAnimeCLS.Puntuacion, oAnimeCLS.Popularidad, oAnimeCLS.EstadoID);
            }


            return(RedirectToAction("Index"));
        }
예제 #5
0
        public ActionResult Delete(int ID)
        {
            AnimeCLS tAnimeCLS = new AnimeCLS();

            var datos = client.animeDatos(ID);

            tAnimeCLS.ID           = datos.ID;
            tAnimeCLS.Nombre       = datos.Nombre;
            tAnimeCLS.FechaEstreno = datos.FechaEstreno != null?datos.FechaEstreno.Value.ToString("dd/MM/yyyy") : " ";

            tAnimeCLS.SecuelaID   = datos.SecuelaID;
            tAnimeCLS.Secuela     = datos.Secuela;
            tAnimeCLS.PrecuelaID  = datos.PrecuelaID;
            tAnimeCLS.Precuela    = datos.Precuela;
            tAnimeCLS.Sinopsis    = datos.Sinopsis;
            tAnimeCLS.Puntuacion  = datos.Puntuacion;
            tAnimeCLS.Popularidad = datos.Popularidad;
            tAnimeCLS.EstadoID    = (int)datos.EstadoID;
            tAnimeCLS.Estado      = datos.Estado;

            return(View(tAnimeCLS));
        }
예제 #6
0
        public ActionResult Create()
        {
            AnimeViewCLS animeView = new AnimeViewCLS();

            STPR_ESTADO_LISTA_Result[] estadoLista = client.estadoLista();
            List <EstadoCLS>           ListaEstado = new List <EstadoCLS>();


            int estadoListaLength = estadoLista.Length;

            for (int i = 0; i < estadoListaLength; i++)
            {
                EstadoCLS estado = new EstadoCLS();
                estado.ID     = estadoLista[i].ID;
                estado.nombre = estadoLista[i].nombre;
                ListaEstado.Add(estado);
            }

            animeView.ListaEstado = ListaEstado;

            STPR_ANIME_LISTA_Result[] animeLista = client.animeLista();
            List <AnimeCLS>           ListaAnime = new List <AnimeCLS>();


            int animeListaLength = animeLista.Length;

            for (int i = 0; i < animeListaLength; i++)
            {
                AnimeCLS anime = new AnimeCLS();
                anime.ID     = animeLista[i].ID;
                anime.Nombre = animeLista[i].Nombre;
                ListaAnime.Add(anime);
            }

            animeView.ListaAnime = ListaAnime;

            return(View(animeView));
        }
예제 #7
0
        public ActionResult Guardar(AnimeCLS anime, List <int> generos, List <int> estudios, List <PersonajeCLS> personajes, List <string> nombresAlternativos)
        {
            Token token = HttpContext.Session["token"] as Token;

            if (token == null || token.ExpiresAt < DateTime.Now)
            {
                return(RedirectToAction("Index", "Authentication"));
            }

            try
            {
                int ID = anime.ID ?? 0;

                AnimeWrapper req = new AnimeWrapper();
                req.Anime               = anime;
                req.Generos             = generos ?? new List <int>();
                req.Estudios            = estudios ?? new List <int>();
                req.Personajes          = personajes ?? new List <PersonajeCLS>();
                req.NombresAlternativos = nombresAlternativos ?? new List <string>();

                HttpClient httpClient = new HttpClient();
                httpClient.BaseAddress = new Uri(baseURL);
                httpClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);

                string      reqJson = JsonConvert.SerializeObject(req);
                HttpContent body    = new StringContent(reqJson, Encoding.UTF8, "application/json");

                if (ID == 0)
                {
                    HttpResponseMessage response = httpClient.PostAsync(basePath + "api/Animes", body).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        return(Json(
                                   new
                        {
                            success = true,
                            message = "Anime creado satisfactoriamente"
                        }, JsonRequestBehavior.AllowGet));
                    }
                    else if (response.StatusCode == System.Net.HttpStatusCode.Unauthorized)
                    {
                        return(RedirectToAction("Index", "Authentication"));
                    }
                }
                else
                {
                    HttpResponseMessage response = httpClient.PutAsync($"{basePath}api/Animes/{ID}", body).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        return(Json(
                                   new
                        {
                            success = true,
                            message = "Anime modificado satisfactoriamente"
                        }, JsonRequestBehavior.AllowGet));
                    }
                }
                throw new Exception("Error desconocido al guardar anime");
            }
            catch (Exception e)
            {
                return(Json(
                           new
                {
                    success = false,
                    message = e.InnerException
                }, JsonRequestBehavior.AllowGet));
            }
        }