Exemplo n.º 1
0
        private async void AddNewPlanTarget(object sender, RoutedEventArgs e)
        {
            if (!HasNotEmptySetting())
            {
                ShowMessage("请填写用户信息", false);
                return;
            }
            newPlanTargetName.Text = newPlanTargetName.Text.Trim();
            if (newPlanTargetName.Text == "")
            {
                return;
            }
            try
            {
                AppTask task = await HttpApi.CreateTask(newPlanTargetName.Text, AppTask.TypeToString(TaskType.Todo), date : newPlanTargetDeadline.SelectedDate?.AddDays(1).Date.ToString());

                SimpleTaskCard card = task.ToSimpleTaskCard(false);
                card.CardRemove   += TargetRemoved;
                card.StatusChange += TargetStatusChange;
                planTargetsList.Children.Add(card);
                planTargetsListScroll.ScrollToBottom();
                newPlanTargetName.Text = "";
            }
            catch (Exception exception)
            {
                ShowMessage(exception.Message, false);
            }
        }
Exemplo n.º 2
0
        public async Task <AppTask> CreateTask(string text, string type, string[] tags = null, string date = null)
        {
            // 构造请求
            HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, BaseUrl + "tasks/user");

            request = AddHeaderToRequest(request);
            JObject c = new JObject
            {
                { "text", text },
                { "type", type },
            };

            if (tags != null)
            {
                c.Add("tags", new JArray(tags));
            }
            if (date != null)
            {
                c.Add("date", date);
            }
            Debug.WriteLine(c.ToString());
            request.Content = new StringContent(c.ToString());
            request.Content.Headers.ContentType = MediaTypeHeaderValue.Parse("application/json"); // 必须设置请求内容为 JSON 格式,否则服务器无法识别
            // 发起请求
            HttpResponseMessage response = await Client.SendAsync(request);

            // 获取响应
            string json = await response.Content.ReadAsStringAsync();

            Debug.WriteLine(json);
            AppTask newTask = GetObjectResponseData <AppTask>(json);

            return(newTask);
        }
Exemplo n.º 3
0
        public List <AppTask> PlanTargetTaskFilter(List <AppTask> tasks, Tag todayTargetTag)
        {
            List <AppTask> planTargetTasks = new List <AppTask>();

            foreach (AppTask task in tasks)
            {
                if (!task.Tags.Contains(todayTargetTag.Id) && task.Type == AppTask.TypeToString(TaskType.Todo))
                {
                    planTargetTasks.Add(task);
                }
            }

            return(planTargetTasks);
        }
Exemplo n.º 4
0
        public List <AppTask> DailyTargetTaskFilter(List <AppTask> tasks)
        {
            List <AppTask> dailyTargetTasks = new List <AppTask>();

            foreach (AppTask task in tasks)
            {
                if (task.Type == AppTask.TypeToString(TaskType.Daily))
                {
                    dailyTargetTasks.Add(task);
                }
            }

            return(dailyTargetTasks);
        }