using System.Collections.Generic;

namespace GxPress.Entity.WorkProcessDto
{
    /// <summary>
    /// 添加流程定义
    /// </summary>
    public class ProcessDto
    {
        /// <summary>
        /// id
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 基本信息
        /// </summary>
        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 工作流组id
        /// </summary>
        public int GroupId { get; set; }

        /// <summary>
        /// 图标url
        /// </summary>
        public string IconUrl { get; set; }

        /// <summary>
        /// 描述
        /// </summary>
        public string Description { get; set; }

        /// <summary>
        /// 限制类型
        /// NoLimit,没有限制
        /// LimitUser,限制用户
        /// LimitDepartment, 限制部门
        /// LimitRole,限制角色
        /// </summary>
        public string LimitType { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        public int Sort { get; set; }

        /// <summary>
        /// 发起限制
        /// </summary>
        public List<RequestLimit> RequestLimits { get; set; }

        /// <summary>
        /// 表单定义
        /// </summary>
        public List<FormField> FormFields { get; set; }

        /// <summary>
        /// 节点定义 
        /// </summary> 
        public List<ProcessNodeDto> ProcessNodes { get; set; }

        /// <summary>
        /// 是否允许用户自选审批人
        /// </summary>
        public bool AllowApproverCheck { get; set; }

        /// <summary>
        /// 是否允许用户自选抄送人
        /// </summary>
        public bool AllowCarbonCopy { get; set; }

        /// <summary>
        /// Word模板文件地址
        /// </summary>
        public string TemplatePath { get; set; }
    }
}