Beispiel #1
0
        public async Task <BlobFileDto> AddItemPic(int id, BlobFileDto fileDto)
        {
            _ = await Repository.GetAsync(id) ?? throw new EntityNotFoundException();

            var fileName = await ItemPictureManager.SaveAsync(id, fileDto.Base64DataUri, true);

            return(new BlobFileDto(fileName, ""));
        }
Beispiel #2
0
        public async Task <string> AddPicture(int id, string base64Image)
        {
            _ = await Repository.GetAsync(id) ?? throw new EntityNotFoundException();

            var fileName = await ItemPictureManager.SaveAsync(id, base64Image, true);

            return(fileName);
        }
Beispiel #3
0
        public async Task RemoveItemPic(string fileName)
        {
            if (string.IsNullOrEmpty(fileName))
            {
                throw new ArgumentException();
            }

            await ItemPictureManager.DeleteAsync(fileName);
        }
Beispiel #4
0
        public async Task <ThumbnailDto> GetThumbnail(string thumbnailName)
        {
            var dto = new ThumbnailDto
            {
                Base64DataUrl = await ItemPictureManager.GetAsync(thumbnailName)
            };

            return(dto);
        }
Beispiel #5
0
        public async Task <string> UpdateThumbnail(int id, string base64Thumbnail)
        {
            var itemE = await Repository.GetAsync(id) ?? throw new EntityNotFoundException();

            var fileName = await ItemPictureManager.SaveThumbnailAsync(base64Thumbnail);

            // await ItemPictureManager.DeleteAsync(itemE.ItemThumbnail);

            itemE.ItemThumbnail = fileName;

            await Repository.UpdateAsync(itemE);

            return(fileName);
        }
Beispiel #6
0
        public override async Task <ItemDto> CreateAsync(ItemCreateDto input)
        {
            var itemE = ObjectMapper.Map <ItemCreateDto, ItemEntity>(input);

            itemE.ItemThumbnail = "";

            await Repository.InsertAsync(itemE, autoSave : true);

            itemE.ItemThumbnail = await ItemPictureManager.SaveAsync(itemE.Id, input.ThumbnailBase64);

            await Repository.UpdateAsync(itemE);

            return(ObjectMapper.Map <ItemEntity, ItemDto>(itemE));
        }
Beispiel #7
0
        public async Task <BlobFileDto[]> GetAllItemPic(int id)
        {
            _ = (await Repository.FindAsync(id)) ?? throw new EntityNotFoundException();
            var blobFileList = await ItemPictureManager.GetBlobFileListAsync(id);

            var dtoList = new List <BlobFileDto>();

            foreach (var bf in blobFileList)
            {
                var b64Str = string.Concat("data:image/jpg;base64,", Convert.ToBase64String(bf.Blob));
                dtoList.Add(new BlobFileDto(bf.FileName, b64Str));
            }

            return(dtoList.ToArray());
        }