/// <summary>
        /// Add new point
        /// </summary>
        /// <param name="points"></param>
        /// <returns></returns>
        public MembershipUserPoints Add(MembershipUserPoints points)
        {
            if (points.Points != 0)
            {
                // Add Date
                points.DateAdded = DateTime.UtcNow;

                // Check this point has not already been awarded
                var canAddPoints = true;

                // Check to see if this has an id
                if (points.PointsForId != null)
                {
                    var alreadyHasThisPoint = GetByUser(points.User).Any(x => x.PointsFor == points.PointsFor && x.PointsForId == points.PointsForId);
                    canAddPoints = (alreadyHasThisPoint == false);
                }

                // If they can ad points let them
                if (canAddPoints)
                {
                    return _membershipUserPointsRepository.Add(points);
                }
            }

            // If not just return the same one back
            return points;
        }
 public void Update(MembershipUserPoints item)
 {
     // Check there's not an object with same identifier already in context
     if (_context.MembershipUserPoints.Local.Select(x => x.Id == item.Id).Any())
     {
         throw new ApplicationException("Object already exists in context - you do not need to call Update. Save occurs on Commit");
     }
     _context.Entry(item).State = EntityState.Modified;
 }
 public void Delete(MembershipUserPoints points)
 {
     _membershipUserPointsRepository.Delete(points);
 }
 /// <summary>
 /// Add new point
 /// </summary>
 /// <param name="points"></param>
 /// <returns></returns>
 public MembershipUserPoints Add(MembershipUserPoints points)
 {
     points.DateAdded = DateTime.UtcNow;
     return _membershipUserPointsRepository.Add(points);
 }
 public MembershipUserPoints Add(MembershipUserPoints points)
 {
     _context.MembershipUserPoints.Add(points);
     return points;
 }
 public void Delete(MembershipUserPoints item)
 {
     _context.MembershipUserPoints.Remove(item);
 }
 public void Delete(MembershipUserPoints points)
 {
     _context.MembershipUserPoints.Remove(points);
 }
Пример #8
0
        public ActionResult ManageUserPoints(ManageUsersPointsViewModel viewModel)
        {
            using (var uow = UnitOfWorkManager.NewUnitOfWork())
            {
                // Repopulate viewmodel
                var user = MembershipService.GetUser(viewModel.Id);
                viewModel.AllPoints = _membershipUserPointsService.GetByUser(user).OrderByDescending(x => x.DateAdded).ToList();
                viewModel.User = user;

                if (viewModel.Amount > 0)
                {
                    // Add the new points
                    var newPoints = new MembershipUserPoints
                    {
                        DateAdded = DateTime.UtcNow,
                        Notes = viewModel.Note,
                        Points = (int)viewModel.Amount,
                        PointsFor = PointsFor.Manual,
                        User = user
                    };

                    _membershipUserPointsService.Add(newPoints);

                    try
                    {
                        uow.Commit();

                        ShowMessage(new GenericMessageViewModel
                        {
                            Message = "Points Added",
                            MessageType = GenericMessages.success
                        });
                    }
                    catch (Exception ex)
                    {
                        uow.Rollback();
                        LoggingService.Error(ex);
                        ShowMessage(new GenericMessageViewModel
                        {
                            Message = "There was an error adding the points",
                            MessageType = GenericMessages.danger
                        });
                    }
                }


                return RedirectToAction("ManageUserPoints", new { id = user.Id });
            }
        }