public UserModel AddUserToInInterestedPeople(UserModel userModel) { using (var context = new greenMoneyEntities()) { var ip = new InterestedPeople { FirstName = userModel.FirstName, LastName = userModel.LastName, SendEmailOffers = false,//registrationViewModel.SendEmailOffers, //Redesing SendEmailUpdates = userModel.SendEmailOffers, Email = userModel.Email, Postcode = userModel.Postcode, Gender = null, //model.Sex, //Redesing DateOfBirth = userModel.DateOfBirth, FreeStandingHome = true, HasRfidTag = false, StreetName = "N/A", StreetNumber = "N/A", StreetType = "N/A", State = "N/A", Suburb = "N/A", UnitNumber = "N/A" }; context.InterestedPeople.Add(ip); context.SaveChanges(); return userModel; } }
public bool AddPoints(int userChallengeId) { using (var context = new greenMoneyEntities()) { var time = DateTime.Now; UserChallenges userChallenge = context.UserChallenges.Single(x => x.Id == userChallengeId); Users1 user = context.Users1.Single(x => x.Id == userChallenge.UserId); Challenges challenge = context.Challenges.Single(x => x.Id == userChallenge.ChallengeId); userChallenge.PointsClaimed = true; var transaction = new Transactions { Address_Id = user.Address_Id, User_Id = user.Id, Time = time, Description = "Challenge " + challenge.Name, Points = Convert.ToInt64(challenge.Points), TransactionTypeID = 2 }; context.Transactions.Add(transaction); context.SaveChanges(); return true; } }
public UploadModel UploadFile(string providerUserKey, UploadModel model, bool isProfilePhoto = false) { using (var context = new greenMoneyEntities()) { var upload = context.Uploads.Create(); var user = context.Users1.Find(new Guid(providerUserKey)); upload.Contents = model.Contents; upload.ContentType = model.ContentType; upload.FileName = model.FileName; upload.UploadedBy_Id = user.Id; context.Uploads.Add(upload); context.SaveChanges(); if (isProfilePhoto) { user.PhotoID = upload.Id; } context.SaveChanges(); model.UploadId = upload.Id; return model; } }
public SectionModel GetSection(int id) { using (var context = new greenMoneyEntities()) { Pages page = context.Pages.SingleOrDefault(w => w.Id == id); SectionModel model = new SectionModel(); SectionEntityModel sectionModel = new SectionEntityModel(); Sections section = context.Sections.SingleOrDefault(x => x.Id == page.Sections.Id); Utils.CopyProperties(section, sectionModel); model.Section = sectionModel; List<Pages> pages = context.Pages .Where(x => x.Sections.Id == section.Id) .OrderBy(o => o.OrderId) .ToList(); List<PageModel> pagesList = new List<PageModel>(); foreach (var item in pages) { PageModel pmodel = new PageModel(); Utils.CopyProperties(item, pmodel); pagesList.Add(pmodel); } model.Pages = pagesList; return model; } }
public bool CheckInInstance(int challengeId, Guid userId) { using (var context = new greenMoneyEntities()) { var challenge = context.Challenges.SingleOrDefault(x => x.Id == challengeId); var user = context.Users1.Single(x => x.Id == userId); bool InInstance = (challenge.Instance_Id == user.Instance_Id); return InInstance; } }
public bool CheckIfInMyChallenges(string providerUserKey, int id) { try { using (var context = new greenMoneyEntities()) { var isInMyChallenges = context.UserChallenges.Any(c => c.UserId == new Guid(providerUserKey) && c.ChallengeId == id); return isInMyChallenges; } } catch (Exception e) { return false; } }
public UploadModel GetUpload(int id) { using (var context = new greenMoneyEntities()) { var upload = context.Uploads.Find(id); if (upload != null) { UploadModel model = new UploadModel(); model.Contents = upload.Contents; upload.ContentType = upload.ContentType; return model; } return null; } }
//add points to translactions public bool AddPoints(string providerUserKey, int id, string promoCode = "") { try { using (var context = new greenMoneyEntities()) { var user = context.Users1.Find(new Guid(providerUserKey)); var time = DateTime.Now; var userChallenge = context.UserChallenges.FirstOrDefault( x => x.ChallengeId == id && x.UserId == user.Id); if (userChallenge != null) { userChallenge.PointsClaimed = true; var challenge = context.Challenges.SingleOrDefault(x => x.Id.Equals(id)); if (challenge != null) { //just for challenge action if (string.IsNullOrEmpty(promoCode) || challenge.PromoCode.Equals(promoCode)) { var addPoints = challenge.Points.HasValue ? Convert.ToInt64(challenge.Points.Value) : 0; var transaction = new Transactions { Addresses = user.Addresses, Users1 = user, Time = time, Description = "Challenge " + challenge.Name, Points = +addPoints, TransactionTypeID = 2 }; context.Transactions.Add(transaction); context.SaveChanges(); return true; } } } } return false; } catch { return false; } }
public List<ChallengeCategory> GetChallengeCategories() { using (var context = new greenMoneyEntities()) { var categories = context.ChallengeCategories .OrderBy(c => c.Name); List<ChallengeCategory> list = new List<ChallengeCategory>(); foreach (var category in categories) { ChallengeCategory model = new ChallengeCategory(); Utils.CopyProperties(category, model); list.Add(model); } return list; } }
public List<ChallengeAwardPointsOption> GetChallengeAwardPointsOptions() { using (var context = new greenMoneyEntities()) { var options = context.AwardPointsOptions .OrderBy(c => c.Name); List<ChallengeAwardPointsOption> list = new List<ChallengeAwardPointsOption>(); foreach (var option in options) { ChallengeAwardPointsOption model = new ChallengeAwardPointsOption(); Utils.CopyProperties(option, model); list.Add(model); } return list; } }
public bool ClaimedPoints(string providerUserKey, int id) { try { using (var context = new greenMoneyEntities()) { var userChallenge = context.UserChallenges.SingleOrDefault(c => c.UserId == new Guid(providerUserKey) && c.ChallengeId == id); if (userChallenge != null) { return userChallenge.PointsClaimed.HasValue && userChallenge.PointsClaimed.Value; } return false; } } catch (Exception e) { return false; } }
//challenge public int? CreateChallenge(Guid providerUserKey, ChallengeModel model) { using (var context = new greenMoneyEntities()) { var user = context.Users1.FirstOrDefault(u => u.Id == providerUserKey); if (user != null) { Challenges challenge = new Challenges(); Utils.CopyProperties(model, challenge); challenge.DateAdded = DateTime.Now; context.Challenges.Add(challenge); try { context.SaveChanges(); return challenge.Id; } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Trace.TraceInformation("Class: {0}, Property: {1}, Error: {2}", validationErrors.Entry.Entity.GetType().FullName, validationError.PropertyName, validationError.ErrorMessage); } } return null; } } } return null; }
public string AddSupplierAddressDefault() { using (var context = new greenMoneyEntities()) { var address = context.Addresses.Create(); address.Id = 1; address.StreetNumber = "1"; address.Instance_Id = 1; address.StreetName = "Supplier"; address.Suburb = "Supplier"; address.StreetType = "Supplier"; address.UnitNumber = "Supplier"; address.State = "000"; address.Postcode = "0000"; context.Addresses.Add(address); context.SaveChanges(); return address.Id.ToString(); } }
public ChallengeModel CopyChallenge(int id) { using (var context = new greenMoneyEntities()) { Challenges challenge = context.Challenges.Single(x => x.Id == id); challenge.DateAdded = DateTime.Now; context.Challenges.Add(challenge); try { context.SaveChanges(); ChallengeModel challengeModel = new ChallengeModel(); Utils.CopyProperties(challenge, challengeModel); // challengeModel.AustraliaState = challenge.State; return challengeModel; } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Trace.TraceInformation("Class: {0}, Property: {1}, Error: {2}", validationErrors.Entry.Entity.GetType().FullName, validationError.PropertyName, validationError.ErrorMessage); } } return null; } } }
public int? UpdateReward(Guid providerUserKey, RewardModel model) { using (var context = new greenMoneyEntities()) { var user = context.Users1.FirstOrDefault(u => u.Id == providerUserKey); var reward = context.Rewards.FirstOrDefault(r => r.Id == model.Id); if (user != null && reward != null) { reward.PartnerEmail = model.PartnerEmail; Utils.CopyProperties(model, reward); //CopyProperties doesn't work for null values... reward.ImageSmallId = model.ImageSmallId; reward.VoucherBarcodeId = model.VoucherBarcodeId; if (model.ProfileImages.Count > 0) { if (model.ProfileImages[0] != null && model.ProfileImages[0].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[0]); reward.ImageId = upload.UploadId; } else if (model.ImageId == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == reward.ImageId); if (uploadOld != null) { context.Uploads.Remove(uploadOld); reward.ImageId = null; } } if (model.ProfileImages[1] != null && model.ProfileImages[1].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[1]); reward.Image2Id = upload.UploadId; } else if (model.Image2Id == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == reward.Image2Id); if (uploadOld != null) { context.Uploads.Remove(uploadOld); reward.Image2Id = null; } } if (model.ProfileImages[2] != null && model.ProfileImages[2].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[2]); reward.Image3Id = upload.UploadId; } else if (model.Image3Id == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == reward.Image3Id); if (uploadOld != null) { context.Uploads.Remove(uploadOld); reward.Image3Id = null; } } if (model.ProfileImages[3] != null && model.ProfileImages[3].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[3]); reward.Image4Id = upload.UploadId; } else if (model.Image4Id == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == reward.Image4Id); if (uploadOld != null) { context.Uploads.Remove(uploadOld); reward.Image4Id = null; } } } try { context.SaveChanges(); return reward.Id; } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Trace.TraceInformation("Class: {0}, Property: {1}, Error: {2}", validationErrors.Entry.Entity.GetType().FullName, validationError.PropertyName, validationError.ErrorMessage); } } return null; } } } return null; }
public int? UpdateChallenge(Guid providerUserKey, ChallengeModel model) { using (var context = new greenMoneyEntities()) { var user = context.Users1.FirstOrDefault(u => u.Id == providerUserKey); var challenge = context.Challenges.FirstOrDefault(r => r.Id == model.Id); if (user != null && challenge != null) { Utils.CopyProperties(model, challenge); // challenge.State = model.AustraliaState; challenge.Owner_Id = user.Id; challenge.Instance_Id = user.Instance_Id; challenge.LogoImageId = model.LogoImageId; if (model.ProfileImages.Count > 0) { if (model.ProfileImages[0] != null && model.ProfileImages[0].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[0]); challenge.ImageId1 = upload.UploadId; } else if (model.ImageId1 == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == challenge.ImageId1); if (uploadOld != null) { context.Uploads.Remove(uploadOld); challenge.ImageId1 = null; } } if (model.ProfileImages[1] != null && model.ProfileImages[1].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[1]); challenge.ImageId2 = upload.UploadId; } else if (model.ImageId2 == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == challenge.ImageId2); if (uploadOld != null) { context.Uploads.Remove(uploadOld); challenge.ImageId2 = null; } } if (model.ProfileImages[2] != null && model.ProfileImages[2].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[2]); challenge.ImageId3 = upload.UploadId; } else if (model.ImageId3 == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == challenge.ImageId3); if (uploadOld != null) { context.Uploads.Remove(uploadOld); challenge.ImageId3 = null; } } if (model.ProfileImages[3] != null && model.ProfileImages[3].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[3]); challenge.ImageId4 = upload.UploadId; } else if (model.ImageId4 == null) { Uploads uploadOld = context.Uploads.SingleOrDefault(x => x.Id == challenge.ImageId4); if (uploadOld != null) { context.Uploads.Remove(uploadOld); challenge.ImageId4 = null; } } } try { context.SaveChanges(); return challenge.Id; } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Trace.TraceInformation("Class: {0}, Property: {1}, Error: {2}", validationErrors.Entry.Entity.GetType().FullName, validationError.PropertyName, validationError.ErrorMessage); } } return null; } } } return null; }
public RewardsListModel GetRewards(int? instanceId, int? excludeInstanceId, string sortBy, string category, string filter, int page, int pageSize) { using (var context = new greenMoneyEntities()) { if (pageSize == 0) { pageSize = 10; } //Get all rewards var rewards = context.Rewards .Where(r => r.AvailableFrom == null || r.AvailableFrom.Value <= DateTime.Now) .Where(r => r.AvailableTo == null || r.AvailableTo.Value > DateTime.Now) .Where(r => r.Display) .Where( r => r.State == null || (int)r.State == (int)RewardState.Approved || (int)r.State == (int)RewardState.NotModerated).ToList(); if (instanceId != null && instanceId != 0) { rewards = rewards.Where(r => r.Instance_Id == instanceId).ToList(); } else if (excludeInstanceId != null) { rewards = rewards.Where(r => r.Instance_Id != excludeInstanceId).ToList(); } //Filter all by text query if (!string.IsNullOrEmpty(filter)) rewards = rewards.Where( r => r.Name.ToLower().IndexOf(filter.ToLower()) > -1 || r.Description.ToLower().IndexOf(filter.ToLower()) > -1).ToList(); List<Rewards> selected = new List<Rewards>(); //Filter all by selected category RewardCategories rewardCategory; if (category != null) { rewardCategory = context.RewardCategories.FirstOrDefault( c => category.Equals(c.Slug, StringComparison.OrdinalIgnoreCase)); if (rewardCategory == null) { throw new Exception("reward category not found"); } //get all items, for selected and for subcategories if (rewardCategory.ParentId == 0) { var allAvailableCategories = context.RewardCategories .Where(c => c.Rewards.Any( r => (r.AvailableFrom == null || r.AvailableFrom.Value <= DateTime.Now) && (r.AvailableTo == null || r.AvailableTo.Value > DateTime.Now))); List<int> subCategoriesIds = allAvailableCategories .Where(c => c.ParentId == rewardCategory.Id).Select(c => c.Id).ToList(); subCategoriesIds.Add(rewardCategory.Id); foreach (var subCategoriesId in subCategoriesIds) { selected.AddRange(rewards.Where(r => r.CategoryId == subCategoriesId).ToList()); } } else { selected = rewards.Where(r => r.CategoryId == rewardCategory.Id).ToList(); } } else { selected = rewards.ToList(); } switch (sortBy) { case "newest": selected = selected.OrderByDescending(r => r.AvailableFrom).ThenByDescending(r => r.Id).ToList(); break; case "oldest": selected = selected.OrderBy(r => r.AvailableFrom).ThenBy(r => r.Id).ToList(); break; case "cheapest": selected = selected.OrderBy(r => r.Price).ToList(); break; case "expensive": selected = selected.OrderByDescending(r => r.Price).ToList(); break; case "popular": selected = selected.OrderByDescending(r => r.Popularity).ToList(); break; default: selected = selected.OrderByDescending(r => r.Popularity).ToList(); break; } //Include pagination var list = selected.Skip((page - 1) * pageSize).Take(pageSize); List<RewardModel> models = new List<RewardModel>(); foreach (var item in list) { RewardModel m = new RewardModel(); Utils.CopyProperties(item, m); models.Add(m); } RewardsListModel model = new RewardsListModel { RewardsList = models, NumPages = (int)Math.Ceiling((double)selected.Count() / pageSize), NumRewards = selected.Count(), Page = page }; return model; } }
public UserChallengeModel GetUserChallenge(int id) { using (var context = new greenMoneyEntities()) { UserChallenges userChallenge = context.UserChallenges.Single(x => x.Id == id); UserChallengeModel ucModel = new UserChallengeModel(); Utils.CopyProperties(userChallenge, ucModel); return ucModel; } }
public UserChallengeListModel GetUserChallenges(int id, int? orderBy, bool? pointsClaimed, string suburb, string search, int? timeRange, int page, int pageSize) { using (var context = new greenMoneyEntities()) { UserChallengeListModel listModel = new UserChallengeListModel(); if (timeRange == 100 || timeRange == null) timeRange = 0; int range = (-1) * Convert.ToInt32(timeRange); DateTime history = DateTime.Now.Date.AddDays(range); var userChallenges = from uc in context.UserChallenges join u in context.Users1 on uc.UserId equals u.Id //uc.UserId.Equals(u.Id) join a in context.Addresses on u.Address_Id equals a.Id where uc.ChallengeId == id && (uc.PointsClaimed == pointsClaimed || pointsClaimed == null) && (a.Suburb == suburb || suburb == "Suburb") && (u.FirstName.Contains(search) || u.LastName.Contains(search)) && (uc.Issued > history || range == 0) orderby uc.Issued descending select new { Id = uc.Id, ChallengeId = uc.ChallengeId, Issued = uc.Issued, UserId = uc.UserId, UserName = (String.IsNullOrEmpty(u.FirstName) ? "" : u.FirstName) + " " + (String.IsNullOrEmpty(u.LastName) ? "" : u.LastName), Suburb = a.Suburb, Workplace = a.StreetName, PointsClaimed = uc.PointsClaimed }; if (pageSize == 0) pageSize = userChallenges.Count(); switch (orderBy) { case 0: userChallenges = userChallenges.OrderByDescending(x => x.Issued); break; case 1: userChallenges = userChallenges.OrderBy(x => x.Issued); break; } listModel.NumChallenges = userChallenges.Count(); listModel.Page = page; listModel.NumPages = (int)Math.Ceiling((double)userChallenges.Count() / pageSize); userChallenges = userChallenges.Skip((page - 1) * pageSize).Take(pageSize); //var userChallenges = context.UserChallenges.Where(x => x.ChallengeId == id).Include(p => p.Users1); List<UserChallengeModel> list = new List<UserChallengeModel>(); foreach (var userChallenge in userChallenges) { UserChallengeModel userChallengeModel = new UserChallengeModel(); Utils.CopyProperties(userChallenge, userChallengeModel); list.Add(userChallengeModel); } listModel.UserChallengeList = list; return listModel; } }
public ChallengesListModel GetChallenges(Guid providerUserKey, int page, int pageSize, int orderBy, int? status, int? category, string search) { using (var context = new greenMoneyEntities()) { var user = new UserRepository().GetUserById(providerUserKey); ChallengesListModel model = new ChallengesListModel(); var challenges = context.Challenges.Where(r => r.Instance_Id == user.Instance_Id) .Where(r => (category == null || category == 0) || r.ChallengeCategoryId == category) .Where(r => search == null || r.Name.Contains(search) || r.About.Contains(search)); DateTime now = DateTime.Now.Date; DateTime inWeek = DateTime.Now.Date.AddDays(7); switch (status) { case 1: challenges = challenges.Where(x => x.Display == false); break; case 2: challenges = challenges.Where(x => (x.Display == true) && (x.StartDate <= now || x.StartDate == null) && (x.EndDate >= now || x.EndDate == null)); break; case 3: challenges = challenges.Where(x => (x.Display == false) || (x.StartDate > now) || (x.EndDate < now)); break; case 4: challenges = challenges.Where(x => x.EndDate > now && x.EndDate <= inWeek); break; } model.NumChallenges = challenges.Count(); model.Page = page; model.NumPages = (int)Math.Ceiling((double)challenges.Count() / pageSize); if (pageSize == 0) pageSize = model.NumChallenges; List<ChallengeModel> list = new List<ChallengeModel>(); //IEnumerable<ChallengeModel> list = new IEnumerable<ChallengeModel>(); foreach (var challenge in challenges) { var challengeModel = new ChallengeModel(); Utils.CopyProperties(challenge, challengeModel); challengeModel.Participants = challenge.UserChallenges.Count(); // challengeModel.AustraliaState = challenge.State; if (challenge.ChallengeCategoryId != null) { challengeModel.ChallengeCategory = challenge.ChallengeCategories.Name; } else { challengeModel.ChallengeCategory = ""; } if ((challenge.StartDate <= DateTime.Now || challenge.StartDate == null) && (challenge.EndDate >= now || challenge.EndDate == null) && (challenge.Display == true)) { challengeModel.ChallengeStatus = "Active"; } else { challengeModel.ChallengeStatus = "Not active"; } list.Add(challengeModel); } switch (orderBy) { case 0: list = list.OrderByDescending(x => x.DateAdded).ToList(); break; case 1: list = list.OrderBy(x => x.DateAdded).ToList(); break; case 2: list = list.OrderByDescending(x => x.Participants).ToList(); break; case 3: list = list.OrderBy(x => x.EndDate).ToList(); break; case 4: list = list.OrderByDescending(x => x.Popularity).ToList(); break; } model.ChallengesList = list.AsEnumerable<ChallengeModel>().Skip((page - 1) * pageSize).Take(pageSize).ToList(); return model; } }
public DateTime GetLastActivityDate(Guid id) { using (var context = new greenMoneyEntities()) { var user = context.Users.SingleOrDefault(x => x.UserId == id); DateTime lastActivity = user.LastActivityDate; return lastActivity; } }
public ChallengeModel GetChallengeDetails(int id) { using (var context = new greenMoneyEntities()) { var challenge = context.Challenges.SingleOrDefault(x => x.Id == id); ChallengeModel model = new ChallengeModel(); Utils.CopyProperties(challenge, model); // model.AustraliaState = challenge.State; return model; } }
public List<ChallengeParticipationFrequency> GetChallengeParticipationFrequency() { using (var context = new greenMoneyEntities()) { var frequencies = context.ParticipationFrequency .OrderBy(c => c.Name); List<ChallengeParticipationFrequency> list = new List<ChallengeParticipationFrequency>(); foreach (var frequency in frequencies) { ChallengeParticipationFrequency model = new ChallengeParticipationFrequency(); Utils.CopyProperties(frequency, model); list.Add(model); } return list; } }
public RewardsListModel GetSupplierRewards(Guid providerUserKey, int page, int pageSize) { using (var context = new greenMoneyEntities()) { var rewards = context.Rewards.Where(r => r.Owner_Id == providerUserKey); //var uploads = context.Uploads.Where(u => u.UploadedBy_Id == providerUserKey); //Include pagination var rewardsList = rewards.OrderByDescending(r => r.DateAdded).Skip((page - 1) * pageSize).Take(pageSize); List<RewardModel> list = new List<RewardModel>(); foreach (var reward in rewardsList) { RewardModel rewardModel = new RewardModel(); Utils.CopyProperties(reward, rewardModel); list.Add(rewardModel); } RewardsListModel model = new RewardsListModel(); model.RewardsList = list; model.NumRewards = rewards.Count(); model.Page = page; model.NumPages = (int)Math.Ceiling((double)rewards.Count() / pageSize); return model; } }
public List<ChallengeCategory> GetChallengeCategories(int instance_Id) { using (var context = new greenMoneyEntities()) { var categories = context.ChallengeCategories .OrderBy(c => c.Name); List<ChallengeCategory> list = new List<ChallengeCategory>(); foreach (var category in categories) { ChallengeCategory model = new ChallengeCategory(); Utils.CopyProperties(category, model); //if ((instance_Id != 5) || (instance_Id == 5 && category.Id != 4)) //for all instances Invite neighbour is not shown if (category.Id != 4) { list.Add(model); } } return list; } }
public bool DeleteUserChallenge(int id) { using (var context = new greenMoneyEntities()) { UserChallenges userChallenge = context.UserChallenges.Single(x => x.Id == id); context.UserChallenges.Remove(userChallenge); try { context.SaveChanges(); } catch (Exception) { return false; } return true; } }
//challenge public int? CreateChallenge(Guid providerUserKey, ChallengeModel model) { using (var context = new greenMoneyEntities()) { var user = context.Users1.FirstOrDefault(u => u.Id == providerUserKey); if (user != null) { Challenges challenge = new Challenges(); Utils.CopyProperties(model, challenge); challenge.Owner_Id = user.Id; challenge.Instance_Id = user.Instance_Id; challenge.DateAdded = DateTime.Now; challenge.Popularity = 0; // challenge.State = model.AustraliaState; if (model.ProfileImages.Count > 0) { if (model.ProfileImages[0] != null && model.ProfileImages[0].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[0]); challenge.ImageId1 = upload.UploadId; } if (model.ProfileImages[1] != null && model.ProfileImages[1].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[1]); challenge.ImageId2 = upload.UploadId; } if (model.ProfileImages[2] != null && model.ProfileImages[2].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[2]); challenge.ImageId3 = upload.UploadId; } if (model.ProfileImages[3] != null && model.ProfileImages[3].FileName != null) { var upload = new UploadsRepository().UploadFile(providerUserKey.ToString(), model.ProfileImages[3]); challenge.ImageId4 = upload.UploadId; } } context.Challenges.Add(challenge); try { context.SaveChanges(); return challenge.Id; } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Trace.TraceInformation("Class: {0}, Property: {1}, Error: {2}", validationErrors.Entry.Entity.GetType().FullName, validationError.PropertyName, validationError.ErrorMessage); } } return null; } } } return null; }
public bool DeleteReward(int id) { using (var context = new greenMoneyEntities()) { Rewards reward = context.Rewards.Single(x => x.Id == id); context.Rewards.Remove(reward); context.SaveChanges(); return true; } }
public RewardsSummaryListModel GetSupplierRewardsSummary(Guid providerUserKey, int page, int pageSize) { using (var context = new greenMoneyEntities()) { var rewards = context.Rewards.Where(r => r.Owner_Id == providerUserKey); //Include pagination var rewardsList = rewards.OrderByDescending(r => r.DateAdded).Skip((page - 1) * pageSize).Take(pageSize); List<RewardSummaryModel> list = new List<RewardSummaryModel>(); foreach (var reward in rewardsList) { RewardSummaryModel rewardModel = new RewardSummaryModel(); rewardModel.Id = reward.Id; rewardModel.ImageSmallId = reward.ImageSmallId; rewardModel.Name = reward.Name; rewardModel.PartnerName = reward.PartnerName; rewardModel.State = reward.State; var instance = context.Instance.Where(i => i.Id == reward.Instance_Id).FirstOrDefault(); if (instance != null) { rewardModel.City = instance.Name; } rewardModel.NumOfRedemptions = context.Vouchers .Where(v => v.Reward_Id == reward.Id) .Count(); RewardState status = RewardState.NotModerated; if (reward.State != null) { if (reward.State == (int)RewardState.Approved && reward.Display == true) { status = RewardState.Approved; } else if (reward.Display == false) { status = RewardState.NotDisplayed; } else if (reward.State == (int)RewardState.WaitingApproval) { status = RewardState.WaitingApproval; } } rewardModel.RewardState = status; list.Add(rewardModel); } RewardsSummaryListModel model = new RewardsSummaryListModel(); model.RewardsList = list; model.NumRewards = rewards.Count(); model.Page = page; model.NumPages = (int)Math.Ceiling((double)rewards.Count() / pageSize); return model; } }
public VoucherModel GetVoucher(Guid id) { using (var context = new greenMoneyEntities()) { var voucher = context.Vouchers.Find(id); VoucherModel model = new VoucherModel(); model.VoucherId = voucher.Id; model.Issued = voucher.Issued; model.UserFirstName = voucher.Users1.FirstName; model.UserLastName = voucher.Users1.LastName; RewardModel rewardModel = new RewardModel(); Utils.CopyProperties(voucher.Rewards, rewardModel); model.RewardModel = rewardModel; return model; } }