public IEnumerable <ValidationResult> CanAddGoal(GroupGoal newGoal, IGroupUpdateService groupUpdateService)
        {
            GroupGoal goal;

            if (newGoal.GroupGoalId == 0)
            {
                goal = GroupGoalRepository.Get(g => (g.GroupId == newGoal.GroupId) && (g.GoalName == newGoal.GoalName));
            }
            else
            {
                goal = GroupGoalRepository.Get(g => (g.GroupId == newGoal.GroupId) && (g.GoalName == newGoal.GoalName) && g.GroupGoalId != newGoal.GroupGoalId);
            }
            if (goal != null)
            {
                yield return(new ValidationResult("GoalName", Resources.GoalExists));
            }
            if (newGoal.StartDate.Subtract(newGoal.EndDate).TotalSeconds > 0)
            {
                yield return(new ValidationResult("EndDate", Resources.EndDate));
            }
            int flag   = 0;
            int status = 0;

            if (newGoal.GroupGoalId != 0)
            {
                var Updates = groupUpdateService.GetUpdatesByGoal(newGoal.GroupGoalId).OrderByDescending(g => g.UpdateDate).ToList();

                if (Updates.Count() > 0)
                {
                    if (Updates[0].UpdateDate.Subtract(newGoal.EndDate).TotalSeconds > 0)
                    {
                        flag = 1;
                    }
                    if (newGoal.StartDate.Subtract(Updates[0].UpdateDate).TotalSeconds > 0)
                    {
                        status = 1;
                    }
                    if (flag == 1)
                    {
                        yield return(new ValidationResult("EndDate", Resources.EndDateNotValid + " " + Updates[0].UpdateDate.ToString("dd-MMM-yyyy")));
                    }
                    else if (status == 1)
                    {
                        yield return(new ValidationResult("StartDate", Resources.StartDate + " " + Updates[0].UpdateDate.ToString("dd-MMM-yyyy")));
                    }
                }
            }
        }
Beispiel #2
0
 // [HttpPost]
 public ActionResult SaveUpdate(GroupUpdateFormModel newupdate)
 {
     if (ModelState.IsValid)
     {
         GroupUpdate update = Mapper.Map <GroupUpdateFormModel, GroupUpdate>(newupdate);
         var         userId = User.Identity.GetUserId();
         groupUpdateService.CreateUpdate(update, userId);
         var Updates = Mapper.Map <IEnumerable <GroupUpdate>, IEnumerable <GroupUpdateViewModel> >(groupUpdateService.GetUpdatesByGoal(newupdate.GroupGoalId));
         foreach (var item in Updates)
         {
             item.IsSupported = groupUpdateSupportService.IsUpdateSupported(item.GroupUpdateId, User.Identity.GetUserId(), groupUserService);
             item.UserId      = groupUpdateUserService.GetGroupUpdateUser(item.GroupUpdateId).Id;
         }
         GroupUpdateListViewModel updates = new GroupUpdateListViewModel()
         {
             GroupUpdates = Updates,
             Metric       = groupGoalService.GetGroupGoal(newupdate.GroupGoalId).Metric,
             Target       = groupGoalService.GetGroupGoal(newupdate.GroupGoalId).Target
         };
         return(PartialView("_UpdateView", updates));
     }
     return(null);
 }
        public IEnumerable<ValidationResult> CanAddGoal(GroupGoal newGoal,IGroupUpdateService groupUpdateService)
        {
            GroupGoal goal;
            if (newGoal.GroupGoalId == 0)
                goal = GroupGoalRepository.Get(g => (g.GroupId == newGoal.GroupId) && (g.GoalName == newGoal.GoalName));
            else
                goal = GroupGoalRepository.Get(g => (g.GroupId == newGoal.GroupId) && (g.GoalName == newGoal.GoalName) && g.GroupGoalId != newGoal.GroupGoalId);
            if (goal != null)
            {
                yield return new ValidationResult("GoalName", Resources.GoalExists);
            }
            if (newGoal.StartDate.Subtract(newGoal.EndDate).TotalSeconds > 0)
            {
                yield return new ValidationResult("EndDate", Resources.EndDate);
            }
            int flag = 0;
            int status = 0;
            if (newGoal.GroupGoalId != 0)
            {
                var Updates = groupUpdateService.GetUpdatesByGoal(newGoal.GroupGoalId).OrderByDescending(g => g.UpdateDate).ToList();

                if (Updates.Count() > 0)
                {
                    if (Updates[0].UpdateDate.Subtract(newGoal.EndDate).TotalSeconds > 0)
                    {
                        flag = 1;
                    }
                    if (newGoal.StartDate.Subtract(Updates[0].UpdateDate).TotalSeconds > 0)
                    {
                        status = 1;
                    }
                    if (flag == 1)
                    {
                        
                        yield return new ValidationResult("EndDate", Resources.EndDateNotValid + " " + Updates[0].UpdateDate.ToString("dd-MMM-yyyy"));
                    }
                    else if (status == 1)
                    {                        
                        yield return new ValidationResult("StartDate", Resources.StartDate + " " + Updates[0].UpdateDate.ToString("dd-MMM-yyyy"));
                    }

                }
            }
        }