private void OnPomodoroFinished() { if (ActiveTask.TaskStatistic == null) { ActiveTask.TaskStatistic = new FinishedTaskStatistic(); } ActiveTask.TaskStatistic.Add(1); AlarmService.RunAlarm(); CurrentSession.FinishedTaskInfo.Add( new TaskStatistic() { TaskId = ActiveTask.Id, FinishedTime = DateTime.Now, Duration = PomodoroSettings.PomodoroDuration, TaskName = ActiveTask.TaskName }); StorageService.UpdateSessionInfo(CurrentSession); StorageService.UpdateUserTask(ActiveTask); UserTaskModifiedEvent?.Invoke(this, new UserTaskModifiedEventArgs() { UserTask = ActiveTask }); }
public async Task <bool> AddNewUserTask(UserTask userTask) { var isAdded = await StorageService.AddNewUserTaskAsync(userTask); if (ActiveTask.Id == userTask.Id) { ActiveTask = userTask; } if (isAdded) { UserTasks.RemoveAll(x => x.Id == userTask.Id); UserTasks.Insert(0, userTask); UserTaskModifiedEvent?.Invoke(this, new UserTaskModifiedEventArgs() { UserTask = userTask }); } return(isAdded); }
private void OnPomodoroFinished() { if (ActiveTask.TaskStatistic == null) { ActiveTask.TaskStatistic = new FinishedTaskStatistic(); } ActiveTask.TaskStatistic.Add(1); AlarmService.RunPomodoroFinishedAlarm(); var taskStatistic = new TaskStatistic() { Id = Guid.NewGuid(), UserId = User.Id, TaskId = ActiveTask.Id, FinishedTime = DateTime.Now, Duration = PomodoroSettings.PomodoroDuration, TaskName = ActiveTask.TaskName }; CurrentSession.FinishedTaskInfo.Add(taskStatistic); StorageService.UpdateSessionInfo(CurrentSession); StorageService.UpdateUserTask(ActiveTask); UserTaskModifiedEvent?.Invoke(this, new UserTaskModifiedEventArgs() { UserTask = ActiveTask }); try { FireBaseOnlineStore fireBaseOnlineStore = new FireBaseOnlineStore(User); fireBaseOnlineStore.AddTaskStatisticsAsync(taskStatistic); } catch (Exception) { throw; } }