private GoogleTask CreateGoogleTask(string subject, string body, DateTime dueTime, bool isCompleted) { var token = GetGoogleUserToken(); var googleTaskService = _externalServiceProvider.GetGoogleTaskService(token); var isDefaultTaskListExist = false; var taskList = DependencyResolver.Resolve <IGoogleTaskSyncDataService>().GetDefaultTaskList(token, out isDefaultTaskListExist); var task = new GoogleTask(); task.Title = subject; task.Notes = body; var dueTimeUtcFormat = new DateTime(dueTime.Year, dueTime.Month, dueTime.Day, 0, 0, 0, DateTimeKind.Utc); task.Due = Rfc3339DateTime.ToString(dueTimeUtcFormat); if (isCompleted) { task.Status = "completed"; } else { task.Status = "needsAction"; } task = googleTaskService.Tasks.Insert(task, taskList.Id).Fetch(); return(task); }
/// <summary> /// 创建Google Task /// </summary> private void CreateGoogleTask(GoogleTaskSyncData taskData, TasksService googleTaskService, TaskList defaultTaskList) { global::Google.Apis.Tasks.v1.Data.Task googleTask = null; bool success = false; try { //创建Google Task googleTask = googleTaskService.Tasks.Insert(taskData.GoogleTask, defaultTaskList.Id).Fetch(); _logger.InfoFormat("新增Google任务#{0}|{1}|{2}", googleTask.Id, googleTask.Title, _account.ID); success = true; } catch (Exception ex) { _logger.Error("CreateGoogleTask has exception.", ex); } if (success) { //更新任务最后更新时间,确保与Google Task的最后更新时间一致 UpdateTaskLastUpdateTime(long.Parse(taskData.SyncId), Rfc3339DateTime.Parse(googleTask.Updated).ToLocalTime()); //创建同步信息 if (defaultTaskList.Title == GoogleSyncSettings.DefaultTaskListName) { SyncInfo syncInfo = new SyncInfo(); syncInfo.AccountId = _account.ID; syncInfo.LocalDataId = taskData.SyncId; syncInfo.SyncDataId = googleTask.Id; syncInfo.SyncDataType = taskData.SyncType; InsertSyncInfo(syncInfo); } } }
private void AssertTaskAndGoogleTaskAreEqual(CooperTask cooperTask, GoogleTask googleTask) { MicrosoftAssert.AreEqual(cooperTask.Subject, googleTask.Title); MicrosoftAssert.AreEqual(cooperTask.Body, googleTask.Notes); var dueDate = Rfc3339DateTime.Parse(googleTask.Due); MicrosoftAssert.AreEqual(cooperTask.DueTime, new DateTime(dueDate.Year, dueDate.Month, dueDate.Day)); if (cooperTask.IsCompleted) { MicrosoftAssert.AreEqual("completed", googleTask.Status); } else { MicrosoftAssert.AreEqual("needsAction", googleTask.Status); } var lastUpdateTime = Rfc3339DateTime.Parse(googleTask.Updated).ToLocalTime(); MicrosoftAssert.AreEqual(FormatTime(cooperTask.LastUpdateTime), FormatTime(lastUpdateTime)); }
private GoogleTask CreateGoogleTask(string subject, string body, DateTime dueTime, bool isCompleted) { var token = GetGoogleUserToken(); var googleTaskService = _externalServiceProvider.GetGoogleTaskService(token); var isDefaultTaskListExist = false; var taskList = DependencyResolver.Resolve<IGoogleTaskSyncDataService>().GetDefaultTaskList(token, out isDefaultTaskListExist); var task = new GoogleTask(); task.Title = subject; task.Notes = body; var dueTimeUtcFormat = new DateTime(dueTime.Year, dueTime.Month, dueTime.Day, 0, 0, 0, DateTimeKind.Utc); task.Due = Rfc3339DateTime.ToString(dueTimeUtcFormat); if (isCompleted) { task.Status = "completed"; } else { task.Status = "needsAction"; } task = googleTaskService.Tasks.Insert(task, taskList.Id).Fetch(); return task; }
private void AssertTaskAndGoogleTaskAreEqual(CooperTask cooperTask, GoogleTask googleTask) { MicrosoftAssert.AreEqual(cooperTask.Subject, googleTask.Title); MicrosoftAssert.AreEqual(cooperTask.Body, googleTask.Notes); var dueDate = Rfc3339DateTime.Parse(googleTask.Due); MicrosoftAssert.AreEqual(cooperTask.DueTime, new DateTime(dueDate.Year, dueDate.Month, dueDate.Day)); if (cooperTask.IsCompleted) { MicrosoftAssert.AreEqual("completed", googleTask.Status); } else { MicrosoftAssert.AreEqual("needsAction", googleTask.Status); } var lastUpdateTime = Rfc3339DateTime.Parse(googleTask.Updated).ToLocalTime(); MicrosoftAssert.AreEqual(FormatTime(cooperTask.LastUpdateTime), FormatTime(lastUpdateTime)); }