public async Task <IActionResult> Upload(IFormFile file)
        {
            ReceiptImage receiptImage;

            using (var stream = new MemoryStream())
            {
                await file.OpenReadStream().CopyToAsync(stream);

                var image = stream.ToArray();

                /* This code only for Ivan Freyuk
                 * var response = GetScannedReceipt(image, file.FileName).Result;
                 * ByteArrayToImage(response.ScannedFile);
                 */

                /*Comment next variable if you uncomment code above*/
                var response = new DocumentScannResponse
                {
                    FileExtension = ".png",
                    ScannedFile   = image
                };

                receiptImage = new ReceiptImage
                {
                    OriginalImageName = file.FileName,
                    OriginalImage     = image,
                    ScannedImageName  = string.Concat(Guid.NewGuid().ToString("N").Substring(0, 5), response.FileExtension),
                    ScannedImage      = response.ScannedFile
                };
                var id = _receiptImageService.Add(receiptImage);
                return(RedirectToAction("Index", "JsonFile", new { id }));
            }
        }
Esempio n. 2
0
        public int Add(ReceiptImage receiptImage)
        {
            var result = _context.Set <ReceiptImage>().Add(receiptImage);

            _context.SaveChanges();
            return(result.Entity.Id);
        }
        public async Task <ReceiptImage> AddReceiptImage([FromBody] Receipt receiptImage)
        {
            ReceiptImage currentReceiptImage = new ReceiptImage()
            {
                Id         = Guid.NewGuid().ToString(),
                Name       = receiptImage.Name,
                CreatedBy  = await _context.Users.FirstOrDefaultAsync(),
                ModifiedBy = await _context.Users.FirstOrDefaultAsync(),
                CreatedOn  = DateTime.Now,
                ModifiedOn = DateTime.Now,
            };

            await _context.ReceiptImages.AddAsync(currentReceiptImage);

            await _context.SaveChangesAsync();

            return(currentReceiptImage);
        }
        public async Task <ReceiptImage> UpdateReceiptImage(string id, [FromBody] ReceiptImage receiptImage)
        {
            ReceiptImage receiptImageReceipt = await _context.ReceiptImages.
                                               Include(x => x.ModifiedBy).
                                               Include(x => x.CreatedBy).
                                               FirstOrDefaultAsync(x => x.Id == id);

            if (receiptImageReceipt != null)
            {
                if (!string.IsNullOrEmpty(receiptImage.Name))
                {
                    receiptImageReceipt.Name = receiptImage.Name;
                }

                receiptImageReceipt.ModifiedBy = await _context.Users.FirstOrDefaultAsync();

                receiptImageReceipt.ModifiedOn = DateTime.Now;

                _context.Update(receiptImageReceipt);
                await _context.SaveChangesAsync();
            }

            return(receiptImageReceipt);
        }
 public IActionResult NewReceipt(ReceiptImage model)
 {
     return(View(model));
 }