using AIStudio.Wpf.Flowchart.ViewModels; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Media; using System.Xml.Serialization; using AIStudio.Wpf.DiagramDesigner; using System.ComponentModel.Design; using System.Reflection; namespace AIStudio.Wpf.Flowchart.Models { [Serializable] [XmlInclude(typeof(FlowNodeDesignerItem))] public class FlowNodeDesignerItem : DesignerItemBase { public FlowNodeDesignerItem() { } public FlowNodeDesignerItem(FlowNode item) : base(item) { if (item is MiddleFlowNode middleFlow) { UserIds = middleFlow.UserIds; RoleIds = middleFlow.RoleIds; ActType = middleFlow.ActType; SimulateApprove = middleFlow.SimulateApprove; } Color = item.StatusColor; Kind = item.Kind; StateImage = item.StateImage; Status = item.Status; Remark = item.Remark; } [XmlArray] public List UserIds { get; set; } [XmlArray] public List RoleIds { get; set; } [XmlAttribute] public string ActType { get; set; } [XmlAttribute] public bool SimulateApprove { get; set; } [XmlAttribute] public int Status { get; set; } [XmlAttribute] public string Remark { get; set; } [XmlAttribute] public string Color { get; set; } [XmlAttribute] public NodeKinds Kind { get; set; } [XmlAttribute] public string StateImage { get; set; } } }