/// <summary>
        /// 创建协同审批数据
        /// </summary>
        /// <param name="dic">审批表单对象数据</param>
        /// <param name="requestName">申请名称</param>
        /// <param name="creatorId">协同申请人 ID</param>
        /// <param name="xtWorkFlowCode">协同工作流编码</param>
        /// <returns></returns>
        private static WorkflowRequestInfo CreateWorkFlowRequestInfo(Dictionary <string, object> dic, string requestName, string creatorId, XtWorkFlowCode xtWorkFlowCode)
        {
            string workFlowId = ((int)xtWorkFlowCode).ToString();

            if (string.IsNullOrWhiteSpace(workFlowId))
            {
                throw new Exception("未配置相关审批流程!");
            }

            List <WorkflowDetailTableInfo> detailTableInfos = new List <WorkflowDetailTableInfo>();
            WorkflowRequestInfo            data             = new WorkflowRequestInfo()
            {
                requestName  = requestName + DateTime.Now.ToString(),
                creatorId    = creatorId,
                requestLevel = "0",             // 0 正常, 1 重要, 2 紧急

                workflowMainTableInfo = new WorkflowMainTableInfo()
                {
                    requestRecords = new WorkflowRequestTableRecord[]
                    {
                        GetRequestTableRecord(dic, detailTableInfos)
                    }
                },
                workflowDetailTableInfos = detailTableInfos.ToArray(),
                workflowBaseInfo         = new WorkflowBaseInfo()
                {
                    workflowId = workFlowId
                }
            };

            return(data);
        }
        /// <summary>
        /// 发起协同审批申请,并获取协同申请返回的申请流程 ID
        /// </summary>
        /// <typeparam name="T">审批对象类型</typeparam>
        /// <param name="model">审批对象实体</param>
        /// <param name="requestName">申请名称</param>
        /// <param name="creatorId">协同申请人 ID</param>
        /// <param name="xtWorkFlowCode">协同工作流编码</param>
        /// <returns></returns>
        public static string GetFlowId <T>(T model, string requestName, string creatorId, XtWorkFlowCode xtWorkFlowCode)
            where T : class
        {
            Dictionary <string, object> dic  = GetProperties(model);
            WorkflowRequestInfo         data = CreateWorkFlowRequestInfo(dic, requestName, creatorId, xtWorkFlowCode);

            return(GetFlowId(data, Convert.ToInt32(creatorId)));
        }