Exemple #1
0
        public async Task <IActionResult> EditNews(long newsId, [FromBody] NewsFullV2DTO model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            await _newsService.EditNews(newsId, model);

            return(Ok());
        }
Exemple #2
0
        public async Task <IActionResult> CreateNews([FromBody] NewsFullV2DTO model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            await _newsService.AddNews(model);

            return(Ok());
        }
Exemple #3
0
        public async Task AddNews(NewsFullV2DTO model)
        {
            try
            {
                var news = _mapper.Map <News>(model);
                news.Date  = DateTime.Now;
                news.Image = await _common.FileSave(model.ImageFile);

                await _context.News.AddAsync(news);

                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Exemple #4
0
        public async Task EditNews(long id, NewsFullV2DTO model)
        {
            try
            {
                var news = await _context.News
                           .Where(c => c.Id == id)
                           .FirstOrDefaultAsync();

                if (news == null)
                {
                    throw new DllNotFoundException("Не удалось найти такую новость");
                }
                var oldImg    = news.Image;
                var viewCount = news.ViewCount;
                var newsModel = _mapper.Map <News>(model);

                if (model.ImageIsNew)
                {
                    newsModel.Image = await _common.FileSave(model.ImageFile);
                }
                else
                {
                    newsModel.Image = oldImg;
                }
                newsModel.ViewCount = viewCount;
                newsModel.Id        = id;
                newsModel.Date      = news.Date;

                _context.News.Update(newsModel);
                await _context.SaveChangesAsync();
            }
            catch (DllNotFoundException ex)
            {
                throw;
            }
            catch (Exception ex)
            {
                throw;
            }
        }