public IHttpActionResult PutCurrentPawzeUser(PawzeUsersModel user) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } PawzeUser dbPawzeUser = _pawzeUserRepository.GetFirstOrDefault(u => u.UserName == User.Identity.Name); dbPawzeUser.Update(user); _pawzeUserRepository.Update(dbPawzeUser); try { _unitOfWork.Commit(); } catch (Exception) { if (!PawzeUserExists(user.Id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public void Cancel(PawzeUser pawzeUser, Subscription pawzeSubscription) { var subscriptionService = new Stripe.StripeSubscriptionService(APIKey); StripeSubscription subscription = subscriptionService.Cancel(pawzeUser.StripeCustomerId, pawzeSubscription.StripeSubscriptionId); pawzeSubscription.StripeSubscriptionId = null; _subscriptionRepository.Update(pawzeSubscription); _unitOfWork.Commit(); }
public IHttpActionResult GetPawzeUser(int id) { PawzeUser dbPawzeUser = _pawzeUserRepository.GetById(id); if (dbPawzeUser == null) { return(NotFound()); } return(Ok(Mapper.Map <PawzeUsersModel>(dbPawzeUser))); }
public IHttpActionResult DeletePawzeUser(int id) { PawzeUser user = _pawzeUserRepository.GetById(id); if (user == null) { return(NotFound()); } _pawzeUserRepository.Delete(user); _unitOfWork.Commit(); return(Ok(Mapper.Map <PawzeUsersModel>(user))); }
// Assigned staff role public async Task <IdentityResult> RegisterStaff(RegistrationModel model) { // create a user var pawzeUser = new PawzeUser { UserName = model.EmailAddress, Email = model.EmailAddress }; // save the user var result = await _userManager.CreateAsync(pawzeUser, model.Password); await _userManager.AddToRoleAsync(pawzeUser.Id, "Staff"); return(result); }
public IHttpActionResult PostPawzeUser(PawzeUsersModel user) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var dbPawzeUser = new PawzeUser(); _pawzeUserRepository.Add(dbPawzeUser); _unitOfWork.Commit(); user.Id = dbPawzeUser.Id; return(CreatedAtRoute("DefaultApi", new { id = user.Id }, user)); }
public async Task <IdentityResult> RegisterCustomer(RegistrationModel model) { // create a user var pawzeUser = new PawzeUser { UserName = model.EmailAddress, Email = model.EmailAddress, FirstName = model.FirstName, LastName = model.LastName, Address1 = model.Address1, Address2 = model.Address2, City = model.City, State = model.State, PostCode = model.PostCode }; // save the user var result = await _userManager.CreateAsync(pawzeUser, model.Password); await _userManager.AddToRoleAsync(pawzeUser.Id, "Customer"); return(result); }
/// <summary> /// Before calling this method - make sure you have saved the box to the database /// </summary> public void Create(PawzeUser pawzeUser, Box box, string token) { if (string.IsNullOrEmpty(pawzeUser.StripeCustomerId)) { var customerService = new StripeCustomerService(APIKey); var customer = customerService.Create(new StripeCustomerCreateOptions { Email = pawzeUser.Email }); pawzeUser.StripeCustomerId = customer.Id; } var subscriptionService = new Stripe.StripeSubscriptionService(APIKey); StripeSubscription subscription = subscriptionService.Create(pawzeUser.StripeCustomerId, "box", new StripeSubscriptionCreateOptions { Card = new StripeCreditCardOptions { TokenId = token } }); var pawzeSubscription = new Subscription { PawzeUserId = pawzeUser.Id, StartDate = DateTime.Now, StripeSubscriptionId = subscription.Id }; pawzeSubscription.Boxes.Add(box); _subscriptionRepository.Add(pawzeSubscription); _unitOfWork.Commit(); }
public IHttpActionResult PutPawzeUser(string id, PawzeUsersModel user) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != user.Id) { return(BadRequest()); } PawzeUser dbPawzeUser = _pawzeUserRepository.GetById(id); dbPawzeUser.Update(user); _pawzeUserRepository.Update(dbPawzeUser); try { _unitOfWork.Commit(); } catch (Exception) { if (!PawzeUserExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }