public async Task <IHttpActionResult> GetAllStores() { try { using (SkriblContext ctx = new SkriblContext()) { var stores = ctx.Stores.Where(x => x.IsDeleted == false).ToList(); foreach (var store in stores) { store.CalculateAverageRating(); } CustomResponse <IEnumerable <Store> > response = new CustomResponse <IEnumerable <Store> > { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = stores }; return(Ok(response)); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetNearByStores(double Latitude, double Longitude, int?Page = 0, int?Items = 6) { try { using (SkriblContext ctx = new SkriblContext()) { var point = Utility.CreatePoint(Latitude, Longitude); var Store = ctx.Stores.Where(x => x.Location.Distance(point) < Global.NearbyStoreRadius && x.IsDeleted == false).OrderBy(x => x.Id).Skip(Page.Value * Items.Value).Take(Items.Value).ToList(); if (Store != null) { foreach (var item in Store) { item.Distance = Convert.ToDouble(String.Format("{0:0.00}", item.Location.Distance(point).Value)); } } CustomResponse <StoresViewModel> response = new CustomResponse <StoresViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new StoresViewModel { Stores = Store, TotalRecords = ctx.Stores.Count(x => !x.IsDeleted) } }; return(Ok(response)); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> RateApp(int UserId, short Rating, string Feedback) { try { using (SkriblContext ctx = new SkriblContext()) { var user = ctx.Users.FirstOrDefault(x => x.Id == UserId); if (user != null) { user.AppRatings.Add(new AppRatings { User_ID = user.Id, Rating = Rating, Description = Feedback }); ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new Error { ErrorMessage = "Invalid UserId" } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> ActivateBox(int UserId, int SubscriptionId, string ActivationCode) { try { using (SkriblContext ctx = new SkriblContext()) { var userSubscription = ctx.UserSubscriptions.FirstOrDefault(x => x.Id == SubscriptionId && x.User_Id == UserId && x.ActivationCode == ActivationCode && x.IsDeleted == false); if (userSubscription != null) { userSubscription.Status = (int)SubscriptionStatus.Active; ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.BadRequest, StatusCode = (int)HttpStatusCode.BadRequest, Result = new Error { ErrorMessage = "Invalid Subscription" } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> UserNoticationsOnOff(int UserId, int SignInType, bool On) { try { using (SkriblContext ctx = new SkriblContext()) { if (SignInType == (int)RoleTypes.User) { var user = ctx.Users.FirstOrDefault(x => x.Id == UserId); if (user != null) { user.IsNotificationsOn = On; ctx.SaveChanges(); } } else { var deliveryMan = ctx.DeliveryMen.FirstOrDefault(x => x.Id == UserId); if (deliveryMan != null) { deliveryMan.IsNotificationsOn = On; ctx.SaveChanges(); } } } return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> EditProfile(DelivererEditProfileBindingModel model) { try { using (SkriblContext ctx = new SkriblContext()) { var deliverer = ctx.DeliveryMen.FirstOrDefault(x => x.Id == model.Id); if (deliverer != null) { deliverer.Address1 = model.Address1; deliverer.Address2 = model.Address2; deliverer.FullName = model.FullName; deliverer.Phone = model.PhoneNumber; ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = "NotFound", StatusCode = (int)HttpStatusCode.NotFound, Result = new Error { ErrorMessage = "User not found" } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task CreateAsync(AuthenticationTokenCreateContext context) { var guid = Guid.NewGuid().ToString(); //copy properties and set the desired lifetime of refresh token var refreshTokenProperties = new AuthenticationProperties(context.Ticket.Properties.Dictionary) { IssuedUtc = context.Ticket.Properties.IssuedUtc, ExpiresUtc = DateTime.UtcNow.AddDays(35) //SET DATETIME to 5 Minutes // it shoild be greater then the time set for the AccessTokenExpireTimeSpan so that in case token is expired he still can send the refresh_token //ExpiresUtc = DateTime.UtcNow.AddMonths(3) }; /*CREATE A NEW TICKET WITH EXPIRATION TIME OF 5 MINUTES * INCLUDING THE VALUES OF THE CONTEXT TICKET: SO ALL WE * DO HERE IS TO ADD THE PROPERTIES IssuedUtc and * ExpiredUtc to the TICKET*/ var refreshTokenTicket = new AuthenticationTicket(context.Ticket.Identity, refreshTokenProperties); //saving the new refreshTokenTicket to a local var of Type ConcurrentDictionary<string,AuthenticationTicket> // consider storing only the hash of the handle using (SkriblContext ctx = new SkriblContext()) { ctx.RefreshTokens.Add(new RefreshTokens { Token = guid }); ctx.SaveChanges(); } _refreshTokens.TryAdd(guid, refreshTokenTicket); context.SetToken(guid); }
public async Task <IHttpActionResult> ChangeOrderStatus(int OrderId, int Status) { try { if (Status >= (int)OrderStatuses.DelivererInProgress && Status <= (int)OrderStatuses.Completed) { using (SkriblContext ctx = new SkriblContext()) { ctx.Orders.FirstOrDefault(x => x.Id == OrderId).Status = Status; ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.BadRequest, StatusCode = (int)HttpStatusCode.BadRequest, Result = new Error { ErrorMessage = "Invalid status code" } })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> DeleteAvailibilityScheduleByDateRange(int userId, bool availibility, string StartDate) { try { DateTime startDateTime; DateTime.TryParse(StartDate, out startDateTime); using (SkriblContext ctx = new SkriblContext()) { var schedule = ctx.DeliveryManAvailibilitySchedules.FirstOrDefault(x => x.IsDeleted == false && x.IsAvailable == availibility && x.StartDate.Month == startDateTime.Month && x.StartDate.Year == startDateTime.Year); if (schedule != null) { schedule.IsDeleted = true; ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.NotFound, StatusCode = (int)HttpStatusCode.NotFound, Result = new Error { ErrorMessage = "No schedule to delete" } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> AddHowItWorks(AddHowItWorksBindingModel model) { try { using (SkriblContext ctx = new SkriblContext()) { var setting = ctx.Settings.FirstOrDefault(); if (setting != null) { setting.HowItWorksUrl = model.Url; setting.HowItWorksDescription = model.HowItWorksDescription; } else { ctx.Settings.Add(new Settings { HowItWorksUrl = model.Url, HowItWorksDescription = model.HowItWorksDescription }); } ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = "Success" })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetMyFavouriteOffers(int User_Id, int?Page = 0, int?Items = 10) { try { using (SkriblContext ctx = new SkriblContext()) { FavouritesViewModel returnModel = new FavouritesViewModel(); returnModel.Favourites = ctx.Favourites.Where(x => x.User_ID == User_Id && x.IsFavourite && !x.IsDeleted).Include(x => x.Product).OrderByDescending(x => x.Id).Skip(Page.Value * Items.Value).Take(Items.Value).ToList(); returnModel.TotalRecords = ctx.Favourites.Count(x => x.User_ID == User_Id && x.IsFavourite && !x.IsDeleted); CustomResponse <FavouritesViewModel> response = new CustomResponse <FavouritesViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = returnModel }; return(Ok(response)); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetHowItWorksVideoUrl() { try { using (SkriblContext ctx = new SkriblContext()) { var setting = ctx.Settings.FirstOrDefault(); if (setting != null) { return(Ok(new CustomResponse <HowItWorksViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new HowItWorksViewModel { Url = setting.HowItWorksUrl, HowItWorksDescription = setting.HowItWorksDescription } })); } else { return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetNotifications(int UserId, int SignInType) { try { using (SkriblContext ctx = new SkriblContext()) { NotificationsViewModel notificationsViewModel = new NotificationsViewModel(); if (SignInType == (int)RoleTypes.User) { notificationsViewModel.Notifications = ctx.Notifications.Where(x => x.User_ID.HasValue && x.User_ID.Value == UserId && x.Status == 0).ToList(); } else if (SignInType == (int)RoleTypes.Deliverer) { notificationsViewModel.Notifications = ctx.Notifications.Where(x => x.DeliveryMan_ID.HasValue && x.DeliveryMan_ID.Value == UserId && x.Status == 0).ToList(); } CustomResponse <NotificationsViewModel> response = new CustomResponse <NotificationsViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = notificationsViewModel }; return(Ok(response)); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> MarkNotificationAsRead(int NotificationId) { try { using (SkriblContext ctx = new SkriblContext()) { var notification = ctx.Notifications.FirstOrDefault(x => x.Id == NotificationId); if (notification != null) { notification.Status = (int)Global.NotificationStatus.Read; ctx.SaveChanges(); CustomResponse <string> response = new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK }; return(Ok(response)); } else { CustomResponse <Error> response = new CustomResponse <Error> { Message = Global.ResponseMessages.NotFound, StatusCode = (int)HttpStatusCode.NotFound, Result = new Error { ErrorMessage = "Invalid notificationid" } }; return(Ok(response)); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> MarkOnlineOffline(int userId, bool IsOnline) { try { using (SkriblContext ctx = new SkriblContext()) { var user = ctx.DeliveryMen.FirstOrDefault(x => x.Id == userId); if (user != null) { user.IsOnline = IsOnline; ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.NotFound, StatusCode = (int)HttpStatusCode.NotFound, Result = new Error { ErrorMessage = "Invalid userid" } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetSettings() { try { using (SkriblContext ctx = new SkriblContext()) { var settings = ctx.Settings.FirstOrDefault(); if (settings == null) { return(Ok(new CustomResponse <Settings> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new Settings { DeliveryFee = 0, AboutUs = "", BannerImage = "", Currency = "", FreeDeliveryThreshold = 0, HowItWorksDescription = "", HowItWorksUrl = "" } })); } else { return(Ok(new CustomResponse <Settings> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = ctx.Settings.FirstOrDefault() })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public static void LoadSettings() { try { using (SkriblContext ctx = new SkriblContext()) { var setting = ctx.Settings.FirstOrDefault(); if (setting != null) { Id = setting.Id; DeliveryFee = setting.DeliveryFee; Currency = setting.Currency; BannerImageUrl = setting.BannerImage; FreeDeliveryThreshold = setting.FreeDeliveryThreshold; HowItWorksUrl = setting.HowItWorksUrl; HowItWorksDescription = setting.HowItWorksDescription; InstagramImage = setting.InstagramImage; } } } catch (Exception ex) { Utility.LogError(ex); } }
public async Task <ActionResult> ResetPassword(ResetPasswordViewModel model) { if (!ModelState.IsValid) { return(View(model)); } using (SkriblContext ctx = new SkriblContext()) { var tokens = ctx.ForgotPasswordTokens.Where(x => x.User_ID == model.UserId && x.IsDeleted == false); if (tokens.Count() > 0) { foreach (var token in tokens) { token.IsDeleted = true; } ctx.Users.FirstOrDefault(x => x.Id == model.UserId).Password = model.Password; ctx.SaveChanges(); } else { return(View("Error")); } } return(View("PasswordResetSuccess")); }
public async Task <IHttpActionResult> MarkAvailibilitySchedule(int userId, bool availibility, string StartDate, string EndDate) { try { DateTime startDateTime; DateTime endDateTime; DateTime.TryParse(StartDate, out startDateTime); DateTime.TryParse(EndDate, out endDateTime); if (startDateTime == DateTime.MinValue || endDateTime == DateTime.MinValue) { return(Ok(new CustomResponse <Error> { Message = "BadRequest", StatusCode = (int)HttpStatusCode.BadRequest, Result = new Error { ErrorMessage = "Invalid startdate or enddate" } })); } using (SkriblContext ctx = new SkriblContext()) { var deliveryMan = ctx.DeliveryMen.Include(x => x.AvailibilitySchedules).FirstOrDefault(x => x.Id == userId); if (deliveryMan != null) { var existingSchedule = deliveryMan.AvailibilitySchedules.FirstOrDefault(x => x.StartDate.Month == startDateTime.Month && x.StartDate.Year == startDateTime.Year && x.IsAvailable == availibility && x.IsDeleted == false); if (existingSchedule != null) { existingSchedule.StartDate = startDateTime; existingSchedule.EndDate = endDateTime; } else { deliveryMan.AvailibilitySchedules.Add(new DeliveryMan_AvailibilitySchedule { IsAvailable = availibility, StartDate = startDateTime, EndDate = endDateTime }); } ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.NotFound, StatusCode = (int)HttpStatusCode.NotFound, Result = new Error { ErrorMessage = "Invalid userid" } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public static void SetOrderItem(this Order_Items orderItem, CartItemViewModel model) { try { using (SkriblContext ctx = new SkriblContext()) { switch (model.ItemType) { case (int)CartItemTypes.Product: orderItem.Product_Id = model.ItemId; var product = ctx.Products.FirstOrDefault(x => x.Id == model.ItemId && x.IsDeleted == false); orderItem.Name = product.Name; orderItem.Price = product.Price * model.Qty; orderItem.Description = product.Description; product.OrderedCount = product.OrderedCount + model.Qty; ctx.SaveChanges(); break; case (int)CartItemTypes.Package: orderItem.Package_Id = model.ItemId; var package = ctx.Packages.FirstOrDefault(x => x.Id == model.ItemId && x.IsDeleted == false); orderItem.Name = package.Name; orderItem.Price = package.Price * model.Qty; orderItem.Description = package.Description; break; case (int)CartItemTypes.Offer_Product: orderItem.Offer_Product_Id = model.ItemId; var offerProduct = ctx.Offer_Products.Include(x => x.Product).FirstOrDefault(x => x.Id == model.ItemId && x.IsDeleted == false); orderItem.Name = offerProduct.Product.Name; orderItem.Price = offerProduct.DiscountedPrice * model.Qty; orderItem.Description = offerProduct.Description; break; case (int)CartItemTypes.Offer_Package: orderItem.Offer_Package_Id = model.ItemId; var offerPackage = ctx.Offer_Packages.Include(x => x.Package).FirstOrDefault(x => x.Id == model.ItemId && x.IsDeleted == false); orderItem.Name = offerPackage.Package.Name; orderItem.Price = offerPackage.DiscountedPrice * model.Qty; orderItem.Description = offerPackage.Description; break; default: throw new Exception("Invalid CartItemType"); } } orderItem.Qty = model.Qty; } catch (Exception) { throw; } }
public async Task <IHttpActionResult> InsertOrder(OrderViewModel model) { try { Order order; if (System.Web.HttpContext.Current.Request.Params["PaymentCard"] != null) { model.PaymentCard = JsonConvert.DeserializeObject <PaymentCardViewModel>(System.Web.HttpContext.Current.Request.Params["PaymentCard"]); } if (System.Web.HttpContext.Current.Request.Params["Cart"] != null) { model.Cart = JsonConvert.DeserializeObject <CartViewModel>(System.Web.HttpContext.Current.Request.Params["Cart"]); } Validate(model); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (model.Cart.CartItems.Count() > 0) { order = new Order(); order.MakeOrder(model); using (SkriblContext ctx = new SkriblContext()) { ctx.Orders.Add(order); await ctx.SaveChangesAsync(); } return(Ok(new CustomResponse <OrderSummaryViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new OrderSummaryViewModel(order) })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.BadRequest, StatusCode = (int)HttpStatusCode.BadRequest, Result = new Error { ErrorMessage = "No items in the cart." } })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> MarkProductAsFavourite(int UserId, int ProductId, bool Favourite) { try { using (SkriblContext ctx = new SkriblContext()) { var favouriteModel = ctx.Favourites.FirstOrDefault(x => x.User_ID == UserId && x.Product_Id == ProductId); if (Favourite) { if (favouriteModel == null) { ctx.Favourites.Add(new Favourite { Product_Id = ProductId, User_ID = UserId }); ctx.SaveChanges(); } else { if (favouriteModel.IsDeleted) { favouriteModel.IsDeleted = false; ctx.SaveChanges(); } } } else { if (favouriteModel != null) { if (!favouriteModel.IsDeleted) { favouriteModel.IsDeleted = true; ctx.SaveChanges(); } } } return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> EditOrderScheduling(int OrderId, string From, string To, string AdditionalNote) { try { DateTime FromDateTime; DateTime ToDateTime; DateTime.TryParse(From, out FromDateTime); DateTime.TryParse(To, out ToDateTime); if (FromDateTime == DateTime.MinValue || ToDateTime == DateTime.MinValue) { return(Ok(new CustomResponse <Error> { Message = "BadRequest", StatusCode = (int)HttpStatusCode.BadRequest, Result = new Error { ErrorMessage = "Invalid startdate or enddate" } })); } using (SkriblContext ctx = new SkriblContext()) { var order = ctx.Orders.FirstOrDefault(x => x.Id == OrderId); if (order != null) { order.DeliveryTime_From = FromDateTime; order.DeliveryTime_To = ToDateTime; order.AdditionalNote = AdditionalNote; ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK })); } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.NotFound, StatusCode = (int)HttpStatusCode.NotFound, Result = new Error { ErrorMessage = Global.ResponseMessages.GenerateInvalid("OrderId") } })); } } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> AddHowItWorksVideo() { try { var httpRequest = HttpContext.Current.Request; if (httpRequest.Files.Count > 0) { var postedFile = httpRequest.Files[0]; var fileExtension = Path.GetExtension(postedFile.FileName).ToLower(); var newFullPath = HttpContext.Current.Server.MapPath("~/" + ConfigurationManager.AppSettings["VideosFolderPath"] + "HowItWorks" + fileExtension); postedFile.SaveAs(newFullPath); using (SkriblContext ctx = new SkriblContext()) { var setting = ctx.Settings.FirstOrDefault(); if (setting != null) { setting.HowItWorksUrl = ConfigurationManager.AppSettings["VideosFolderPath"] + "HowItWorks" + fileExtension; } else { ctx.Settings.Add(new Settings { HowItWorksUrl = ConfigurationManager.AppSettings["VideosFolderPath"] + "HowItWorks" + fileExtension }); } ctx.SaveChanges(); return(Ok(new CustomResponse <string> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = ConfigurationManager.AppSettings["VideosFolderPath"] + "HowItWorks" + fileExtension })); } } else { return(Ok(new CustomResponse <Error> { Message = Global.ResponseMessages.BadRequest, StatusCode = (int)HttpStatusCode.BadRequest, Result = new Error { ErrorMessage = "File not found" } })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetUserFavourites(int UserId) { try { using (SkriblContext ctx = new SkriblContext()) { return(Ok(new CustomResponse <FavouritesViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new FavouritesViewModel { Favourites = ctx.Favourites.Include(x => x.Product).Where(x => x.User_ID == UserId && x.IsDeleted == false).ToList() } })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task ReceiveAsync(AuthenticationTokenReceiveContext context) { AuthenticationTicket ticket; using (SkriblContext ctx = new SkriblContext()) { if (_refreshTokens.TryRemove(context.Token, out ticket)) { var refreshToken = ctx.RefreshTokens.FirstOrDefault(x => x.Token == context.Token); if (refreshToken != null) { ctx.RefreshTokens.Remove(refreshToken); ctx.SaveChanges(); context.SetTicket(ticket); } } } }
public async Task <IHttpActionResult> GetAllCities(int?Page = 0, int?Items = 10) { try { using (SkriblContext ctx = new SkriblContext()) { return(Ok(new CustomResponse <List <Cities> > { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = ctx.Cities.Where(x => !x.IsDeleted).ToList() })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetAllStoresByFranchisorId(int FranchisorId) { try { using (SkriblContext ctx = new SkriblContext()) { CustomResponse <IEnumerable <Store> > response = new CustomResponse <IEnumerable <Store> > { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = ctx.Stores.ToList() }; return(Ok(response)); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetAvailibilityScheduleByDateRange(int userId, bool availibility, string StartDate) { try { DateTime startDateTime; DateTime.TryParse(StartDate, out startDateTime); using (SkriblContext ctx = new SkriblContext()) { var schedule = ctx.DeliveryManAvailibilitySchedules.FirstOrDefault(x => x.IsDeleted == false && x.IsAvailable == availibility && x.StartDate.Month == startDateTime.Month && x.StartDate.Year == startDateTime.Year); return(Ok(new CustomResponse <DeliveryMan_AvailibilitySchedule> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = schedule })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }
public async Task <IHttpActionResult> GetBoxesByType(int Type, int UserId) { try { using (SkriblContext ctx = new SkriblContext()) { List <Box> boxes = new List <Box>(); if (Type == (int)BoxCategoryOptions.HallOfFame) { boxes = ctx.Boxes.Where(x => x.IsDeleted == false && x.ReleaseDate.Month < DateTime.Now.Month).ToList(); } else { boxes = ctx.Boxes.Where(x => x.IsDeleted == false && x.BoxCategory_Id == Type).ToList(); } var userSubscriptions = ctx.UserSubscriptions.Where(x => x.User_Id == UserId && x.IsDeleted == false).ToList(); if (userSubscriptions != null && userSubscriptions.Count > 0) { foreach (var box in boxes) { box.AlreadySubscribed = userSubscriptions.Any(x => x.Box_Id == box.Id); } } return(Ok(new CustomResponse <SearchBoxesViewModel> { Message = Global.ResponseMessages.Success, StatusCode = (int)HttpStatusCode.OK, Result = new SearchBoxesViewModel { Boxes = boxes } })); } } catch (Exception ex) { return(StatusCode(Utility.LogError(ex))); } }