Ejemplo n.º 1
0
        public ResultMessage Update(BannerDto banner, int id)
        {
            try
            {
                var oldBanner = _unitOfWork.BannersRepository.GetById(id);

                if (oldBanner != null)
                {
                    if (banner.ImageFile != null)
                    {
                        _attachmentsManager.Delete(banner.ImagePath);
                        banner.ImagePath = _attachmentsManager.Save(new SavedFileDto
                        {
                            attachmentType = AttachmentTypesEnum.Banners,
                            CanChangeName  = true,
                            File           = banner.ImageFile
                        });
                    }
                    banner.Adapt(oldBanner, typeof(BannerDto), typeof(Shared.Core.Models.Banner));
                    _unitOfWork.BannersRepository.Update(oldBanner);
                    _unitOfWork.Commit();

                    return(new ResultMessage
                    {
                        Status = HttpStatusCode.OK,
                        Data = oldBanner.Adapt <BannerDto>()
                    });
                }
                else
                {
                    return(new ResultMessage
                    {
                        Status = HttpStatusCode.NotFound,
                        ErrorCode = (int)BannersErrorsCodeEnum.NotFoundError
                    });
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, string.Empty);
                return(new ResultMessage
                {
                    Status = HttpStatusCode.InternalServerError,
                    ErrorCode = (int)BannersErrorsCodeEnum.UpdateError
                });
            }
        }
Ejemplo n.º 2
0
        public ResultMessage Add(BannerDto banner)
        {
            var validationResult = _validator.Validate(banner);

            if (!validationResult.IsValid)
            {
                return new ResultMessage
                       {
                           Status             = HttpStatusCode.BadRequest,
                           ValidationMessages = validationResult.GetErrorsList()
                       }
            }
            ;

            try
            {
                var newBanner = banner.Adapt <Shared.Core.Models.Banner>();

                newBanner.CreatedAt = DateTime.Now;
                newBanner.ImagePath = _attachmentsManager.Save(new SavedFileDto
                {
                    File           = banner.ImageFile,
                    attachmentType = AttachmentTypesEnum.Banners,
                    CanChangeName  = true
                });

                _unitOfWork.BannersRepository.Insert(newBanner);
                _unitOfWork.Commit();
                return(new ResultMessage()
                {
                    Status = HttpStatusCode.OK
                });
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, string.Empty);
                return(new ResultMessage()
                {
                    ErrorCode = (int)ProductsErrorsCodeEnum.ProductsCategoriesInsertError,
                    Status = HttpStatusCode.InternalServerError
                });
            }
        }