namespace APT.BaseData.Domain.ApiModel
{
    /// 
    /// 流程节点
    /// 
    public class FlowNode
    {
        public const string START = "start round mix";
        public const string END = "end round";
        public const string NODE = "node";
        public const string FORK = "fork";   //会签开始节点
        public const string JOIN = "join";   //会签结束节点
        public string id { get; set; }
        public string name { get; set; }
        public string type { get; set; }
        /// 
        /// 节点的附加数据项
        /// 
        /// The set information.
        public FlowSetInfo setInfo { get; set; }
    }
    public class FlowSetInfo
    {
        public const string SPECIAL_USER = "SPECIAL_USER";  //指定用户
        public const string ALL_USER = "ALL_USER";  //所有用户
        public const string SPECIAL_ROLE = "SPECIAL_ROLE";
        /// 
        /// 节点执行权限类型
        /// 
        public string NodeDesignate { get; set; }
        public FlowNodedeSignateData NodeDesignateData { get; set; }
        public string NodeCode { get; set; }
        public string NodeName { get; set; }
        /// 
        /// 驳回节点0"前一步"1"第一步"2"某一步" 3"不处理"
        /// 
        public string NodeRejectType { get; set; }
		/// 
		/// 节点是否可以编辑
		/// 
		public string NodeEditable { get; set; }
	}
    /// 
    /// 节点执行人
    /// 
    public class FlowNodedeSignateData
    {
        public string[] users { get; set; }
        public string[] roles { get; set; }
        public string[] orgs { get; set; }
    }
    /// 
    /// 节点执行结果标签
    /// 
    public class Tag
    {
        public int Taged { get; set; }
        public string UserId { get; set; }
        public string UserName { get; set; }
        public string Description { get; set; }
        public string TagedTime { get; set; }
    }
}