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); } }
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); } }