Пример #1
0
 public bool UpdateRegisteredActions(List <RegisteredAction> registeredActions, string projectMemberId)
 {
     try
     {
         IEnumerable <RegisteredAction> allRegisteredActions = registeredActionRepository.GetAll()
                                                               .Where(x => x.ProjectMemberId == projectMemberId);
         List <RegisteredAction> deletedProjectMembers = allRegisteredActions
                                                         .Where(ppm => !registeredActions.Any(pmi => pmi.Id == ppm.Id)).ToList();
         foreach (var registeredAction in deletedProjectMembers)
         {
             registeredActionRepository.Remove(registeredAction.Id);
         }
         foreach (RegisteredAction registeredAction in registeredActions)
         {
             RegisteredAction actionFromDatabase = registeredActionRepository.Get(registeredAction.Id);
             if (!registeredAction.Equals(actionFromDatabase))
             {
                 registeredActionRepository.Update(registeredAction);
             }
         }
         return(true);
     }
     catch (Exception e)
     {
         return(false);
     }
 }
Пример #2
0
 public string Add(RegisteredAction model)
 {
     if (model.Id != null)
     {
         return(null);
     }
     context.Add(model);
     context.SaveChanges();
     return(model.Id);
 }
Пример #3
0
        public void TestHasRegisteredHandlerInTalker()
        {
            var registeredHandler = new RegisteredHandler();
            var msg = new MsgEventArgs {
                Command = "396", Data = new[] { "hello_", "world", "oh, hai :)" }
            };
            RegisteredAction action = null;

            Caller.registered = new Action <RegisteredAction>(res => { action = res; });
            Assert.IsNull(Talker.RegisteredAction);
            registeredHandler.Msg(Talker, Caller, msg);
            Assert.IsNotNull(Talker.RegisteredAction);
            Assert.AreEqual(action, Talker.RegisteredAction);
        }
Пример #4
0
 public string Update(RegisteredAction model)
 {
     try
     {
         RegisteredAction action = Get(model.Id);
         context.RegisteredActions.Attach(action);
         action.StartTime       = model.StartTime;
         action.Duration        = model.Duration;
         action.ProjectActionId = model.ProjectActionId;
         action.ProjectMemberId = model.ProjectMemberId;
         context.SaveChanges();
         return(model.Id);
     }
     catch (DbUpdateConcurrencyException)
     {
         return(null);
     }
 }
Пример #5
0
        public JsonResult RegisterTime(string projectMemberActionId, string projectMemberId, int duration)
        {
            if (projectMemberActionId == null || duration <= 0)
            {
                return(new JsonResult(new { message = "MissingParameters" }));
            }
            DateTime         now = DateTime.Now;
            ProjectAction    projectMemberAction = projectActionsRepository.Get(projectMemberActionId);
            RegisteredAction registeredAction    = new RegisteredAction
            {
                StartTime       = now,
                Duration        = duration,
                ProjectMemberId = projectMemberId,
                ProjectActionId = projectMemberActionId
            };
            string result = registeredActionsService.Add(registeredAction);

            return(new JsonResult(new { result = result }));
        }
Пример #6
0
 void LoopTask(RegisteredAction task)
 {
     task.ToLoop();
     scheduler.ScheduleTask(task.Delay, () => LoopTask(task));
 }
Пример #7
0
 void ScheduleTask(RegisteredAction task)
 {
     scheduler.ScheduleTask(TimeSpan.FromMilliseconds(1), () => LoopTask(task));
 }
Пример #8
0
 public string Update(RegisteredAction model)
 {
     return(registeredActionRepository.Update(model));
 }
Пример #9
0
 public string Add(RegisteredAction model)
 {
     return(registeredActionRepository.Add(model));
 }