Exemplo n.º 1
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            JObject jObj = JObject.FromObject(task);

            string[] files = JTokenHelper.GetPropertyValue <string[]>(jObj, property.Key);
            kanban.AttachmentCount = files.Length;
        }
Exemplo n.º 2
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            var kbp = new KanbanItemProperty
            {
                Name = property.Name
            };

            SetColor(kbp, setting.Color);

            JObject jObj = JObject.FromObject(task);
            string  uid  = JTokenHelper.GetPropertyValue <string>(jObj, property.Key);

            if (!string.IsNullOrEmpty(uid))
            {
                var avatar = AvatarHelper.GetAvatar(uid, AvatarSize.X40);
                if (property.RawKey == "assignee")
                {
                    kanban.Due = avatar;
                }
                else
                {
                    kbp.Value = avatar.DisplayName;
                    kanban.Properties.Add(kbp);
                }
            }
        }
Exemplo n.º 3
0
        public void Read(Property property, PropertyItem item, Data data)
        {
            JObject task  = JObject.FromObject(data.Value);
            string  value = JTokenHelper.GetPropertyValue <string>(task, property.Key);

            item.PropertyId = JTokenHelper.GetPropertyValue <string>(task, property.PropertyKey + ".property_id");
            if (value != null)
            {
                var lookup = JObject.FromObject(data.References.Lookups);
                if (property.Lookup != null)
                {
                    var    jItem = lookup[property.Lookup].Single(l => l["_id"].Value <string>() == value);
                    var    jObj  = jItem as JObject;
                    string text  = null;
                    if (jObj.ContainsKey("name"))
                    {
                        text = jObj.Value <string>("name");
                    }
                    else if (jObj.ContainsKey("text"))
                    {
                        text = jObj.Value <string>("text");
                    }
                    item.SelectedValue = new DropdownItem
                    {
                        Value = jObj.Value <string>("_id"),
                        Text  = text
                    };
                }
            }
        }
Exemplo n.º 4
0
        public void Read(Property property, PropertyItem item, Data data)
        {
            JObject task = JObject.FromObject(data.Value);

            string[] values = JTokenHelper.GetPropertyValue <string[]>(task, property.Key);
            item.SelectedIds.AddRange(values);
            item.PropertyId = JTokenHelper.GetPropertyValue <string>(task, property.PropertyKey + ".property_id");
        }
Exemplo n.º 5
0
        public void Read(Property property, PropertyItem item, Data data)
        {
            JObject task     = JObject.FromObject(data.Value);
            var     beginEnd = JTokenHelper.GetPropertyValue <BeginEnd>(task, property.Key);

            if (beginEnd.Begin.Date != null && beginEnd.Begin.Date.HasValue)
            {
                item.Begin = beginEnd.Begin.Date.Value;
                item.End   = beginEnd.End.Date.Value;
            }
        }
Exemplo n.º 6
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            JObject jObj  = JObject.FromObject(task);
            var     value = JTokenHelper.GetPropertyValue <string>(jObj, property.Key);

            if (value != null)
            {
                var priority = data.Data.References.Lookups.Priorities.Single(p => p.Id == value);
                kanban.Priority = WtColorHelper.GetNewBrush(priority.Color);
            }
        }
Exemplo n.º 7
0
        public void Read(Property property, PropertyItem item, Data data)
        {
            JObject task   = JObject.FromObject(data.Value);
            var     wtDate = JTokenHelper.GetPropertyValue <WtDate>(task, property.Key);

            item.TimeSpan = new TimeSpan();
            if (wtDate != null && wtDate.Date.HasValue)
            {
                item.Date = new DateTime(wtDate.Date.Value.Year, wtDate.Date.Value.Month, wtDate.Date.Value.Day);
                if (wtDate.WithTime)
                {
                    item.TimeSpan = wtDate.Date.Value - item.Date.Value;
                }
            }
        }
Exemplo n.º 8
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            var kbp = new KanbanItemProperty
            {
                Name = "实际工时"
            };

            SetColor(kbp, setting.Color);

            JObject jObj     = JObject.FromObject(task);
            var     workload = JTokenHelper.GetPropertyValue <WorkloadValue>(jObj, property.Key);

            if (workload.Actual != 0)
            {
                kbp.Value = workload.Actual.ToString();
                kanban.Properties.Add(kbp);
            }
        }
Exemplo n.º 9
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            var kbp = new KanbanItemProperty
            {
                Name = property.Name
            };

            SetColor(kbp, setting.Color);

            JObject jObj = JObject.FromObject(task);
            var     span = JTokenHelper.GetPropertyValue <DateSpan>(jObj, property.Key);

            if (span.Begin.Date.HasValue && span.End.Date.HasValue)
            {
                kbp.Value = WtDateTimeHelper.ToWtKanbanDate(span.Begin.Date.Value)
                            + " ~ "
                            + WtDateTimeHelper.ToWtKanbanDate(span.End.Date.Value);
                kanban.Properties.Add(kbp);
            }
        }
Exemplo n.º 10
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            JObject jObj = JObject.FromObject(task);

            string[] tagIds = JTokenHelper.GetPropertyValue <string[]>(jObj, property.Key);
            if (tagIds.Length > 0)
            {
                foreach (var id in tagIds)
                {
                    var tag = data.Data.References.Lookups.Tags.Single(t => t.Id == id);
                    var kbp = new KanbanItemProperty
                    {
                        Value      = tag.Name,
                        Foreground = new SolidColorBrush(Colors.White),
                        Background = WtColorHelper.GetNewBrush(tag.Color)
                    };
                    kanban.Properties.Add(kbp);
                }
            }
        }
Exemplo n.º 11
0
 public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
 {
     if (property.RawKey == "title")
     {
         kanban.Title = task.Title;
     }
     else
     {
         JObject jObj  = JObject.FromObject(task);
         string  value = JTokenHelper.GetPropertyValue <string>(jObj, property.Key);
         if (value != null)
         {
             var kbp = new KanbanItemProperty
             {
                 Name  = property.Name,
                 Value = value
             };
             SetColor(kbp, setting.Color);
             kanban.Properties.Add(kbp);
         }
     }
 }
Exemplo n.º 12
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            var kbp = new KanbanItemProperty
            {
                Name = property.Name
            };

            SetColor(kbp, setting.Color);

            JObject jObj  = JObject.FromObject(task);
            string  value = JTokenHelper.GetPropertyValue <string>(jObj, property.Key);

            if (value != null)
            {
                if (property.Lookup == null)
                {
                    kbp.Value = value;
                }
                else
                {
                    JObject lookup = JObject.FromObject(data.Data.References.Lookups);
                    var     jItem  = lookup[property.Lookup].Single(item => item["_id"].Value <string>() == value);
                    if (jItem is JObject obj)
                    {
                        if (obj.ContainsKey("name"))
                        {
                            kbp.Value = jItem["name"].Value <string>();
                            kanban.Properties.Add(kbp);
                        }
                        else if (obj.ContainsKey("text"))
                        {
                            kbp.Value = jItem["text"].Value <string>();
                            kanban.Properties.Add(kbp);
                        }
                    }
                }
            }
        }
Exemplo n.º 13
0
        public void Read(Property property, PropertyItem item, Data data)
        {
            JObject task  = JObject.FromObject(data.Value);
            string  value = JTokenHelper.GetPropertyValue <string>(task, property.Key);

            if (value != null)
            {
                var lookup = JObject.FromObject(data.References.Lookups);
                if (property.Lookup != null)
                {
                    var jItem = lookup[property.Lookup].Single(l => l["_id"].Value <string>() == value);
                    var jObj  = jItem as JObject;
                    item.SelectedValue = new DropdownItem
                    {
                        Glyph = WtIconHelper.GetGlyph("wtf-level-" + jObj.Value <string>("icon")),
                        Text  = jObj.Value <string>("name"),
                        Value = jObj.Value <string>("_id"),
                        Color = WtColorHelper.GetNewBrush(jObj.Value <string>("color"))
                    };
                    item.PropertyId = JTokenHelper.GetPropertyValue <string>(task, property.PropertyKey + ".property_id");
                }
            }
        }
Exemplo n.º 14
0
        public override void Read(KanbanItem kanban, WtTaskProperty property, ValueElement task, TaskState state, ShowSetting setting, ApiMissionVnextKanbanContent data)
        {
            var kbp = new KanbanItemProperty
            {
                Name = property.Name
            };

            SetColor(kbp, setting.Color);

            JObject jObj = JObject.FromObject(task);
            WtDate  date = null;

            if (property.Key.Count(k => k == '.') > 0)
            {
                date = JTokenHelper.GetPropertyValue <WtDate>(jObj, property.Key);
            }
            else
            {
                date = new WtDate();
                string timestamp = jObj[property.Key].Value <string>();
                if (timestamp != null)
                {
                    date.Date = WtDateTimeHelper.GetDateTime(timestamp);
                }
            }

            if (date.Date.HasValue)
            {
                kbp.Value = date.Date.Value.ToWtKanbanDate();
                if (property.RawKey == "due" && date.Date.Value < DateTime.Now)
                {
                    kbp.Foreground = WtColorHelper.DangerColor;
                    kbp.Background = WtColorHelper.DangerColor1A;
                }
                kanban.Properties.Add(kbp);
            }
        }
Exemplo n.º 15
0
        public void Read(Property property, PropertyItem item, Data data)
        {
            JObject task = JObject.FromObject(data.Value);

            item.Value = JTokenHelper.GetPropertyValue <string>(task, property.Key);
        }