public void AddToDeleted(TaskSyncedJson deleteJson)
 {
     if (deleteJson != null)
     {
         deleted.Add(deleteJson);
     }
 }
        public async Task HandleCommitResult(Dictionary<String, String> id2eTag, List<String> errorIds, List<SyncTaskBean> taskBeans, long lastPostPoint)
        {
            if (LoggerHelper.IS_LOG_ENABLED)
            {
                await LoggerHelper.LogToAllChannels(null, string.Format("Post Tasks Result success Num ={0} ", id2eTag.Count));
            }

            Dictionary<String, String> addTaskProjectMap = new Dictionary<String, String>();
            List<TasksProjects> delete = new List<TasksProjects>();
            List<TasksServer> add = new List<TasksServer>();
            List<TasksServer> update = new List<TasksServer>();

            if (taskBeans != null)
            {
                foreach (SyncTaskBean taskBean in taskBeans)
                {
                    delete.AddRange(taskBean.Delete);
                    add.AddRange(taskBean.Add);
                    update.AddRange(taskBean.Update);
                }
            }
            TaskSyncedJsonBean jsonBean = new TaskSyncedJsonBean();
            List<String> deleteIds = new List<String>();
            foreach (TasksProjects taskProject in delete)
            {
                if (!errorIds.Contains(taskProject.TaskId))
                {
                    deleteIds.Add(taskProject.TaskId);

                    TaskSyncedJson taskSyncedJson = new TaskSyncedJson();
                    taskSyncedJson.TaskSID = taskProject.TaskId;
                    taskSyncedJson.UserId = userId;
                    jsonBean.AddToDeleted(taskSyncedJson);
                }
            }
            foreach (var task in add)
            {
                if (id2eTag.ContainsKey(task.Id.ToString()))
                {
                    jsonBean.AddToAdded(task);
                    addTaskProjectMap.Add(task.Id.ToString(), task.ProjectId);
                }
            }
            foreach (var task in update)
            {
                if (id2eTag.ContainsKey(task.Id.ToString()))
                {
                    jsonBean.AddToUpdated(task);
                }
            }
            await TaskSyncedJsonBll.SaveTaskSyncedJsons(jsonBean, userId);
            await TaskBll.SaveCommitResultBackToDB(id2eTag, deleteIds, userId, lastPostPoint);
        }
Example #3
0
 public static Tasks ConvertTaskSyncedJsonToLocal(TaskSyncedJson json)//此处android中的ObjectMapper mapper可以使用newton.json代替进行json转对象的操作
 {
     if (json == null)
     {
         return null;
     }
     try
     {
         TasksServer task = JsonConvert.DeserializeObject<TasksServer>(json.JsonString);
         if (task != null)
         {
             return ConvertServerTaskToLocalWithChecklistItem(task);
         }
     }
     //catch (JsonParseException e)
     //{
     //    Log.e(TAG, e.getMessage(), e);
     //}
     //catch (JsonMappingException e)
     //{
     //    Log.e(TAG, e.getMessage(), e);
     //}
     catch (IOException e)
     {
         //Log.e(TAG, e.getMessage(), e);
     }
     return null;
 }
        private void CollectDeleteForeverTasks(SyncTaskBean syncTaskBean, Dictionary<String, Tasks> localTasks, TaskSyncModel taskSyncModel)
        {
            // DELETED_FOREVER操作直接删除本地task,并清楚TaskSyncedJson
            List<TasksProjects> deletedForeverTasks = syncTaskBean.DeletedForever;//DeleteChangeToTaskProjects(syncTaskBean.Delete);
            foreach (var taskProject in deletedForeverTasks)
            {
                String taskSid = taskProject.TaskId;
                if (!localTasks.ContainsKey(taskSid))
                {
                    continue;
                }
                Tasks localTask = localTasks[taskSid];
                if (localTask != null)
                {
                    taskSyncModel.AddDeletedForeverTask(localTask);
                    localTasks.Remove(taskSid);
                    // delete original task
                    TaskSyncedJson json = new TaskSyncedJson();
                    json.UserId = localTask.UserId;
                    json.TaskSID = taskSid;
                    taskSyncModel.AddDeletedTaskSyncedJson(json);
                }
            }

        }
Example #5
0
 public void AddDeletedTaskSyncedJson(TaskSyncedJson deletedJson)
 {
     TaskSyncedJsonBean.AddToDeleted(deletedJson);
 }