public ActionResult AddPersonality(int Id, int?UserId, bool IsDelete = false) { if (UserId == null) { UserId = Int32.Parse(Session["UserId"].ToString()); } int roleId = Int32.Parse(Session["RoleId"].ToString()); using (SussexDBEntities db = new SussexDBEntities()) { if (IsDelete) { UserPersonality userPersonality = db.UserPersonalities.Where(w => w.UserId == UserId && w.PersonalityId == Id).FirstOrDefault(); db.UserPersonalities.Remove(userPersonality); db.SaveChanges(); } else { UserPersonality personality = new UserPersonality(); personality.UserId = (int)UserId; personality.PersonalityId = Id; db.UserPersonalities.Add(personality); db.SaveChanges(); } } if (roleId == RoleTypes.CUSTOMER_ID) { return(Redirect("/User/MyProfile")); } return(Redirect("/Admin/HobbiesAndPersonalities/" + UserId)); }
public static void UpdateMonthlySubscription(int UserId) { using (SussexDBEntities db = new SussexDBEntities()) { int monthlyFee = 0; var user = db.Users.Where(w => w.UserId == UserId).FirstOrDefault(); if (user == null) { return; } // Currency is in Euros if (user.UserType == UserTypes.LOCAL) { monthlyFee = 12; } else { monthlyFee = 5; } // check whether the subscription is exist var subscription = db.BillingHistories .Where(w => w.UserId == UserId && w.BillingHistoryAmount == monthlyFee) .OrderByDescending(o => o.BillingHistoryDate) .FirstOrDefault(); DateTime nextPaymentDate; if (subscription != null) { // if the next billing date is not met if (subscription.BillingHistoryDate > DateTime.Now) { return; } // if payment is not recieved for last month if (!subscription.BillingHistoryIsPayed && subscription.BillingHistoryDate.AddMonths(1) < DateTime.Now) { subscription.BillingHistoryIsOverdue = true; db.SaveChanges(); SendOverdueEmail(user, subscription); } nextPaymentDate = subscription.BillingHistoryDate.AddMonths(1); BillingHistory billing = new BillingHistory(); billing.BillingHistoryDate = nextPaymentDate; billing.BillingHistoryAmount = monthlyFee; billing.BillingHistoryIsPayed = false; billing.BillingHistoryIsOverdue = false; billing.UserId = UserId; db.BillingHistories.Add(billing); db.SaveChanges(); } } }
public ActionResult Edit(NewPaymentViewModel viewModel) { PaymentCard paymentCard = new PaymentCard(); using (SussexDBEntities db = new SussexDBEntities()) { if (viewModel.PaymentCardId != 0) { paymentCard = db.PaymentCards.Where(w => w.PaymentCardId == viewModel.PaymentCardId).FirstOrDefault(); } paymentCard.PaymentCardIsDefault = true; paymentCard.PaymentCardHolderName = viewModel.PaymentCardHolderName; paymentCard.PaymentCardNumber = viewModel.PaymentCardNumber; paymentCard.PaymentCardExpireDate = viewModel.PaymentCardExpireDate; paymentCard.PaymentCardSecurityCode = viewModel.PaymentCardSecurityCode; paymentCard.UserId = viewModel.UserId; if (viewModel.PaymentCardId == 0) { db.PaymentCards.Add(paymentCard); } db.SaveChanges(); } return(Redirect(viewModel.ReturnUrl)); }
public ActionResult ConfirmBooking(int UserId, int EventId, int By, bool IsPayed = true) { String message = "Booking Successfull"; using (SussexDBEntities db = new SussexDBEntities()) { UserEvent userEvent = db.UserEvents.Where(w => w.UserId == UserId && w.EventId == EventId).FirstOrDefault(); if (userEvent != null) { message = "User already has booking for this event"; } else { userEvent = new UserEvent(); userEvent.UserId = UserId; userEvent.EventId = EventId; userEvent.UserEventRegisteredDate = DateTime.Now; userEvent.IsAccepted = false; db.UserEvents.Add(userEvent); db.SaveChanges(); PaymentHelper.AddEventPaymentForUser(UserId, EventId, IsPayed); } } return(Redirect("/Event/BookSuccessfullMessage/" + By + "?Message=" + message + "&EventId=" + EventId + "&UserId=" + UserId)); }
// new changes public static void StartMonthlySubscription(int UserId) { using (SussexDBEntities db = new SussexDBEntities()) { var user = db.Users.Where(w => w.UserId == UserId).FirstOrDefault(); // check whether the subscription is exist var subscription = db.BillingHistories.Where(w => w.UserId == UserId).FirstOrDefault(); if (subscription != null || user == null) { return; } BillingHistory billing = new BillingHistory(); billing.BillingHistoryDate = DateTime.Now.AddMonths(1); billing.BillingHistoryIsPayed = false; billing.BillingHistoryIsOverdue = false; billing.UserId = UserId; // Currency is in Euros if (user.UserType == UserTypes.LOCAL) { billing.BillingHistoryAmount = 12; } else { billing.BillingHistoryAmount = 5; } db.BillingHistories.Add(billing); db.SaveChanges(); } }
public ActionResult AddMeetingToEvent(MeetingSchedule MeetingSchedule) { using (SussexDBEntities db = new SussexDBEntities()) { db.MeetingSchedules.Add(MeetingSchedule); db.SaveChanges(); } return(Redirect("/Event/Edit/" + MeetingSchedule.EventId)); }
public ActionResult Delete(int Id) { using (SussexDBEntities db = new SussexDBEntities()) { Event eventToDelete = db.Events.Where(w => w.EventId == Id).FirstOrDefault(); eventToDelete.EventIsDeleted = true; db.SaveChanges(); } return(Redirect("/Event/")); }
public ActionResult RemoveCategoryFromEvent(int EventId, int CategoryId) { using (SussexDBEntities db = new SussexDBEntities()) { EventCategory eventCategory = db.EventCategories.Where(w => w.EventId == EventId && w.CategoryId == CategoryId).FirstOrDefault(); db.EventCategories.Remove(eventCategory); db.SaveChanges(); } return(Redirect("/Event/Edit/" + EventId)); }
public ActionResult AcceptBookingsByUsers(int Id) { SussexDBEntities db = new SussexDBEntities(); UserEvent e = db.UserEvents.Where(w => w.UserEventId == Id).FirstOrDefault(); if (e != null) { e.IsAccepted = true; } db.SaveChanges(); return(Redirect("/Event/BookingsByUsers")); }
public ActionResult AddCategoryToEvent(int EventId, int CategoryId) { using (SussexDBEntities db = new SussexDBEntities()) { EventCategory eventCategory = new EventCategory(); eventCategory.EventId = EventId; eventCategory.CategoryId = CategoryId; db.EventCategories.Add(eventCategory); db.SaveChanges(); } return(Redirect("/Event/Edit/" + EventId)); }
public ActionResult AcceptRequest(int Id) { int userId = Int32.Parse(Session["UserId"].ToString()); using (SussexDBEntities db = new SussexDBEntities()) { UserMatch match = db.UserMatches .Where(w => w.UserMatchRequestUserId == Id && w.UserMatchRecievedUserId == userId).FirstOrDefault(); match.UserMatchIsAccepted = true; db.SaveChanges(); } return(Redirect("/User/MyFriends")); }
public ActionResult ConfirmPayment(int Id) { int roleId = Int32.Parse(Session["RoleId"].ToString()); SussexDBEntities db = new SussexDBEntities(); BillingHistory billing = db.BillingHistories.Where(w => w.BillingHistoryId == Id).FirstOrDefault(); if (billing != null) { billing.BillingHistoryIsPayed = true; db.SaveChanges(); } if (roleId == RoleTypes.CUSTOMER_ID) { return(Redirect("/User/Subscription")); } return(Redirect("/Payment/UserPayments")); }
public ActionResult AddFriend(int Id) { int userId = Int32.Parse(Session["UserId"].ToString()); using (SussexDBEntities db = new SussexDBEntities()) { UserMatch match = new UserMatch(); match.UserMatchRequestUserId = userId; match.UserMatchRecievedUserId = Id; match.UserMatchDate = DateTime.Now; match.UserMatchIsAccepted = false; match.UserMatchIsDeleted = false; db.UserMatches.Add(match); db.SaveChanges(); } return(Redirect("/User/MyFriends")); }
public static void AddEventPaymentForUser(int UserId, int EventId, bool IsPayed = true) { using (SussexDBEntities db = new SussexDBEntities()) { var user = db.Users.Where(w => w.UserId == UserId).FirstOrDefault(); var eventDetails = db.Events.Where(w => w.EventId == EventId).FirstOrDefault(); BillingHistory billing = new BillingHistory(); billing.BillingHistoryDate = DateTime.Now.AddMonths(1); billing.BillingHistoryIsPayed = IsPayed; billing.BillingHistoryIsOverdue = false; billing.BillingHistoryAmount = eventDetails.EventFee; billing.UserId = UserId; db.BillingHistories.Add(billing); db.SaveChanges(); SendEventRegistrationEmail(user, eventDetails, IsPayed); } }
public ActionResult Edit(EventEditViewModel viewModel) { using (SussexDBEntities db = new SussexDBEntities()) { if (viewModel.Event.EventId == 0) { db.Events.Add(viewModel.Event); } else { Event eventToEdit = db.Events.Where(w => w.EventId == viewModel.Event.EventId).FirstOrDefault(); eventToEdit.EventDescription = viewModel.Event.EventDescription; eventToEdit.EventTitle = viewModel.Event.EventTitle; eventToEdit.EventFee = viewModel.Event.EventFee; eventToEdit.EventDate = viewModel.Event.EventDate; eventToEdit.EventContactNo = viewModel.Event.EventContactNo; eventToEdit.EventEmail = viewModel.Event.EventEmail; eventToEdit.EventRegistrationDeadline = viewModel.Event.EventRegistrationDeadline; } db.SaveChanges(); } return(Redirect("/Event/Edit/" + viewModel.Event.EventId)); }
//[CustomAuthorize("Admin", "Customer", "Receptionist", "Client Service Agent")] public ActionResult EditUser(UserEditViewModel viewModel) { int roleId = 0; if (Session["RoleId"] != null && Session["RoleId"].ToString() != "") { roleId = Int32.Parse(Session["RoleId"].ToString()); } SussexDBEntities db = new SussexDBEntities(); User user = null; if (viewModel.UserId != 0) { user = db.Users.Where(w => w.UserId == viewModel.UserId).FirstOrDefault(); } // new user if (user == null) { user = new User(); user.UserType = viewModel.UserType; user.UserJoinedDate = DateTime.Now; user.UserIsActivated = true; user.UserEmail = viewModel.Email; } if (user.RoleId == roleId) { user.RoleId = roleId; } else { user.RoleId = RoleTypes.CUSTOMER_ID; } if (roleId == 0) { user.RoleId = RoleTypes.CUSTOMER_ID; } user.UserFirstName = viewModel.FirstName; user.UserLastName = viewModel.LastName; user.UserContactNo = viewModel.ContactNo; if (user.UserId == 0) { user.UserPassword = Crypto.Hash(viewModel.Password); db.Users.Add(user); } db.SaveChanges(); PaymentHelper.StartMonthlySubscription(user.UserId); UserDetail userDetail = null; userDetail = db.UserDetails.Where(w => w.UserDetailId == viewModel.UserDetailId).FirstOrDefault(); if (userDetail == null) { userDetail = new UserDetail(); } userDetail.UserDetailBio = viewModel.Bio; userDetail.UserDetailProfession = viewModel.Profession; userDetail.UserDetailAge = viewModel.Age; userDetail.UserDetailGender = viewModel.Gender; userDetail.UserId = user.UserId; if (userDetail.UserDetailId == 0) { db.UserDetails.Add(userDetail); } db.SaveChanges(); if (roleId == RoleTypes.CUSTOMER_ID) { return(Redirect("/User/MyProfile")); } return(Redirect("/")); }