Example #1
0
        public async Task <IActionResult> Post(FileUpload upload)
        {
            long size     = upload.File.Length;
            var  error    = "";
            var  dir      = Path.Combine(_hostingEnvironment.WebRootPath, $"uploads\\images\\{upload.Type}\\{DateTime.Now.Year}\\");
            var  filePath = $"{dir}{RefGenerator.GetGuid()}.{upload.File.FileName?.Split(".")[1] ?? "jpg"}";

            try
            {
                CreateDirectory(dir);
                if (size > 0)
                {
                    using (var stream = new FileStream(filePath, FileMode.Create))
                    {
                        await upload.File.CopyToAsync(stream);
                    }
                }
            } catch (Exception e) {
                error = e.ToString();
            }

            var relativePath = filePath.Split("wwwroot")[1].Replace("\\", "/");

            return(Ok(new { size, relativePath, error }));
        }
Example #2
0
 private static Booking CreateBooking(PaymentRequest request, User user, Activity activity, decimal totalAmount)
 {
     return(new Booking
     {
         ActivityID = request.ActivityID,
         NoOfSpaces = request.NoOfSpaces,
         Amount = totalAmount,
         PaymentStatus = PaymentStatus.Pending,
         UserID = user.Id,
         PaymentType = request.PaymentType,
         TransactionRef = RefGenerator.GenerateRef(),
         User = user,
         Activity = activity
     });
 }
Example #3
0
        public IActionResult Donate([FromBody] DonationRequest request)
        {
            if (ModelState.IsValid)
            {
                if (request.Amount < 1)
                {
                    return(Json(new Response {
                        Code = "XX", Description = "You need to enter a valid amount."
                    }));
                }

                if (string.IsNullOrWhiteSpace(request.Email))
                {
                    request.Email = "*****@*****.**";
                }

                var donation = new Donation {
                    Name           = request.Name,
                    Email          = request.Email,
                    Phone          = request.PhoneNumber,
                    Amount         = request.Amount,
                    PaymentStatus  = PaymentStatus.Pending,
                    TransactionRef = RefGenerator.GenerateRef()
                };
                _context.Donations.Add(donation);
                _context.SaveChanges();

                return(Json(new Response
                {
                    Code = "00",
                    Description = "Successful",
                    Amount = (donation.Amount * 100),
                    Email = donation.Email,
                    Ref = donation.TransactionRef,
                    PaymentType = PaymentType.Online
                }));
            }

            return(Json(null));
        }