示例#1
0
        public async Task <WrapperSimpleTypesDTO> EliminarAnuncio(Anuncios anuncioParaEliminar)
        {
            using (SportsGoEntities context = new SportsGoEntities(false))
            {
                AnunciantesRepository anuncianteRepo             = new AnunciantesRepository(context);
                AnunciosContenidos    anuncioContenidoParaBorrar = new AnunciosContenidos
                {
                    CodigoAnuncio = anuncioParaEliminar.Consecutivo
                };
                anuncianteRepo.EliminarMultiplesContenidosAnuncios(anuncioContenidoParaBorrar);

                AnunciosPaises anuncioPaisesParaBorrar = new AnunciosPaises
                {
                    CodigoAnuncio = anuncioParaEliminar.Consecutivo
                };
                anuncianteRepo.EliminarMultiplesAnuncioPais(anuncioPaisesParaBorrar);

                CategoriasRepository categoriasRepo = new CategoriasRepository(context);
                CategoriasAnuncios   categoriasAnunciosParaBorrar = new CategoriasAnuncios
                {
                    CodigoAnuncio = anuncioParaEliminar.Consecutivo
                };
                categoriasRepo.EliminarMultiplesCategoriasAnuncios(categoriasAnunciosParaBorrar);

                int?codigoArchivoDeAnuncio = await anuncianteRepo.BuscarArchivoDeUnAnuncio(anuncioParaEliminar);

                anuncianteRepo.EliminarAnuncio(anuncioParaEliminar);

                WrapperSimpleTypesDTO wrapperEliminarAnuncio = new WrapperSimpleTypesDTO();

                wrapperEliminarAnuncio.NumeroRegistrosAfectados = await context.SaveChangesAsync();

                if (codigoArchivoDeAnuncio.HasValue)
                {
                    ArchivosRepository archivoRepo         = new ArchivosRepository(context);
                    Archivos           archivoParaEliminar = new Archivos
                    {
                        Consecutivo = codigoArchivoDeAnuncio.Value,
                    };
                    archivoRepo.EliminarArchivo(archivoParaEliminar);
                }

                wrapperEliminarAnuncio.NumeroRegistrosAfectados += await context.SaveChangesAsync();

                if (wrapperEliminarAnuncio.NumeroRegistrosAfectados > 0)
                {
                    wrapperEliminarAnuncio.Exitoso = true;
                }

                return(wrapperEliminarAnuncio);
            }
        }
示例#2
0
        public async Task <WrapperSimpleTypesDTO> ModificarAnuncio(Anuncios anuncioParaModificar)
        {
            using (SportsGoEntities context = new SportsGoEntities(false))
            {
                AnunciantesRepository anuncianteRepo = new AnunciantesRepository(context);
                Anuncios anuncioExistente            = await anuncianteRepo.ModificarAnuncio(anuncioParaModificar);

                if (anuncioParaModificar.AnunciosContenidos != null && anuncioParaModificar.AnunciosContenidos.Count > 0)
                {
                    foreach (AnunciosContenidos anuncioContenido in anuncioParaModificar.AnunciosContenidos)
                    {
                        AnunciosContenidos anuncioContenidoExistente = await anuncianteRepo.ModificarAnuncioContenido(anuncioContenido);
                    }
                }

                if (anuncioParaModificar.AnunciosPaises != null && anuncioParaModificar.AnunciosPaises.Count > 0)
                {
                    AnunciosPaises anuncioPaisParaBorrar = new AnunciosPaises
                    {
                        CodigoAnuncio = anuncioParaModificar.Consecutivo
                    };

                    anuncianteRepo.EliminarMultiplesAnuncioPais(anuncioPaisParaBorrar);
                    anuncianteRepo.CrearAnunciosPaises(anuncioParaModificar.AnunciosPaises);
                }

                if (anuncioParaModificar.CategoriasAnuncios != null && anuncioParaModificar.CategoriasAnuncios.Count > 0)
                {
                    CategoriasRepository categoriasRepo             = new CategoriasRepository(context);
                    CategoriasAnuncios   categoriaAnuncioParaBorrar = new CategoriasAnuncios
                    {
                        CodigoAnuncio = anuncioParaModificar.Consecutivo
                    };

                    categoriasRepo.EliminarMultiplesCategoriasAnuncios(categoriaAnuncioParaBorrar);
                    categoriasRepo.CrearListaCategoriaAnuncios(anuncioParaModificar.CategoriasAnuncios);
                }

                WrapperSimpleTypesDTO wrapperModificarAnuncio = new WrapperSimpleTypesDTO();

                wrapperModificarAnuncio.NumeroRegistrosAfectados = await context.SaveChangesAsync();

                if (wrapperModificarAnuncio.NumeroRegistrosAfectados > 0)
                {
                    wrapperModificarAnuncio.Exitoso = true;
                }

                return(wrapperModificarAnuncio);
            }
        }