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 })); }
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 }); }
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)); }