//创建流程
        private void StartFlow()
        {
            if (op == "c" || op == "create")
            {
                ent           = this.GetPostedData <UsrTravelWelfare>();
                ent.ApplyTime = DateTime.Now;
                ent.DoCreate();
                id = ent.Id;
            }
            else
            {
                ent = UsrTravelWelfare.Find(id);
            }

            //受理人
            string UserId   = ent.ApproveUserId;
            string UserName = ent.ApproveName;

            string FlowKey = "EmpUsrWelfare";   //工作流key

            if (!string.IsNullOrEmpty(FlowKey))
            {
                string formUrl = "/EmpWelfare/UsrTravelWelfareEdit.aspx?op=r&id=" + id;
                Guid   guid    = Aim.WorkFlow.WorkFlow.StartWorkFlow(id, formUrl, "员工旅游申请", FlowKey, UserInfo.UserID, UserInfo.Name);
                ent.WorkFlowState = "Start";
                ent.WorkFLowCode  = guid.ToString(); //InstanceId
                ent.DoUpdate();
                this.PageState.Add("NextInfo", guid.ToString() + "$" + UserId + "|" + UserName);
            }
        }
 /// <summary>
 /// 审批完成
 /// </summary>
 private void SubmitFinish()
 {
     if (!string.IsNullOrEmpty(id))
     {
         UsrTravelWelfare Ent = UsrTravelWelfare.Find(id);
         Ent.WorkFlowState = "End";
         Ent.Result        = RequestData.Get <string>("ApproveResult"); //处理结果
         Ent.DoUpdate();
     }
 }
        //获取下一节点人
        private void GetNextUsers()
        {
            //  taskName id   nextUserName
            string id       = this.RequestData.Get("id") + "";
            string taskName = this.RequestData.Get("taskName") + "";
            string nextName = this.RequestData.Get("nextName") + "";

            if (!string.IsNullOrEmpty(id))
            {
                var Ent = UsrTravelWelfare.Find(id);
                if (nextName == "审批人")
                {
                    this.PageState.Add("NextUsers", new { nextUserId = Ent.ApproveUserId, nextUserName = Ent.ApproveName });
                }
            }
        }
        private void StartFlow()
        {
            string id = RequestData.Get("Id") + "";

            if (!string.IsNullOrEmpty(id))
            {
                ent = UsrTravelWelfare.Find(id);
            }
            //受理人
            string UserId   = ent.ApproveUserId;
            string UserName = ent.ApproveName;

            string FlowKey = "EmpUsrWelfare";   //工作流key

            if (!string.IsNullOrEmpty(FlowKey))
            {
                string formUrl = "/EmpWelfare/UsrTravelWelfareEdit.aspx?op=r&id=" + id;
                Guid   guid    = Aim.WorkFlow.WorkFlow.StartWorkFlow(id, formUrl, "员工旅游申请", FlowKey, UserInfo.UserID, UserInfo.Name);
                ent.WorkFlowState = "Start";
                ent.WorkFLowCode  = guid.ToString(); //InstanceId WorkFlowCode WorkFLowCode
                ent.DoUpdate();
                this.PageState.Add("NextInfo", guid.ToString() + "$" + UserId + "|" + UserName);
            }
        }
        private void DoSelect()
        {
            string CorpId        = string.Empty;
            string DeptId        = string.Empty;
            string ApproveName   = string.Empty;
            string ApproveUserId = string.Empty;

            if (Session["CompanyId"] != null)
            {
                CorpId = Session["CompanyId"] + "";
            }
            else
            {
                CorpId = UserEnt.Pk_corp;
            }

            DeptId = UserEnt.Pk_deptdoc;

            GetAddrEnum(CorpId, DeptId);   //获取地址枚举

            if (op == "c" || op == "create")
            {
                //corp
                SysGroup Gp          = SysGroup.TryFind(CorpId);
                string   CompanyName = Gp == null ? "" : Gp.Name;

                string DeptName = string.Empty;
                if (UserEnt.Pk_corp != CorpId)
                {
                    DeptName = "";
                }
                else if (UserEnt.Pk_corp == CorpId)
                {
                    SysGroup GpEnt = SysGroup.FindFirstByProperties(SysGroup.Prop_GroupID, UserEnt.Pk_deptdoc);
                    DeptName = "/" + GpEnt.Name;
                }


                //查找到部门配置
                string SQL = @"with GetTree
                                as
                                (
	                                select * from HR_OA_MiddleDB..fld_bmml where pk_deptdoc='{0}'
	                                union all
	                                select A.*
	                                from HR_OA_MiddleDB..fld_bmml As A 
	                                join GetTree as B 
	                                on  A.pk_deptdoc=B.pk_fathedept
                                )
	                           select deptname+',' as [text()] from getTree FOR XML PATH('') "    ;
                SQL = SQL.Replace("HR_OA_MiddleDB", Global.HR_OA_MiddleDB);
                SQL = string.Format(SQL, UserEnt.Pk_deptdoc);
                string DeptPathStr = DataHelper.QueryValue(SQL).ToString();
                DeptPathStr = string.IsNullOrEmpty(DeptPathStr) ? "" : DeptPathStr;

                SQL = @"select top 1 *,
                    case when patindex('%'+DeptName+'%','{1}')=0  then 100
                         else  patindex('%'+DeptName+'%','{1}') 
                    end  As SortIndex 
                from FL_Culture..SysApproveConfig As A
                where A.CompanyId='{0}' and TravelWelfareId is not null  order by SortIndex";
                SQL = string.Format(SQL, CorpId, DeptPathStr);
                DataTable Dt = DataHelper.QueryDataTable(SQL);

                if (Dt.Rows.Count > 0)
                {
                    ApproveName   = Dt.Rows[0]["TravelWelfareName"] + "";
                    ApproveUserId = Dt.Rows[0]["TravelWelfareId"] + "";
                }

                var Obj = new
                {
                    UserId   = UserEnt.UserID,
                    UserName = UserEnt.Name,
                    Sex      = UserEnt.Sex,
                    //Age = Ent.Age,
                    WorkNo = UserEnt.WorkNo,
                    //IndutyData = Ent.IndutyData,
                    CompanyName   = CompanyName + DeptName,
                    CompanyId     = CorpId,
                    DeptId        = DeptId,
                    DeptName      = DeptName,
                    ApproveName   = "",
                    ApproveUserId = "",
                };
                this.SetFormData(Obj);
            }

            if (op != "c" && op != "cs")
            {
                if (!String.IsNullOrEmpty(id))
                {
                    ent = UsrTravelWelfare.Find(id);
                    string SQL = @"select * from Task where PatIndex('%{0}%',EFormName)>0  and Status='4' order by FinishTime asc";
                    SQL = string.Format(SQL, id);
                    IList <EasyDictionary> taskDics = DataHelper.QueryDictList(SQL);
                    PageState.Add("Opinion", taskDics);
                    string taskId = RequestData.Get <string>("TaskId");//取审批暂存时所填写的意见
                    if (!string.IsNullOrEmpty(taskId))
                    {
                        Task tEnt = Task.Find(taskId);
                        if (tEnt.Status != 4 && !string.IsNullOrEmpty(tEnt.Description))
                        {
                            PageState.Add("UnSubmitOpinion", tEnt.Description);
                        }
                    }
                }
                this.SetFormData(ent);
                string sql = "select * from FL_Culture..UsrTravelInfo  where WelfareTravelId='{0}' order by CreateTime";
                sql = string.Format(sql, id);
                this.PageState.Add("datalist", DataHelper.QueryDictList(sql));
            }
        }