/// <summary> /// 自动执行 - 除开任务节点和结束节点外的其他节点在执行后都会调用该步骤 /// </summary> /// <param name="line"></param> /// <param name="nextLines"></param> /// <returns></returns> public override WorkFlowDefLineDetail DoWorkFlowSelectLine(WorkFlowDefLineDetail line, List <WorkFlowDefLineDetail> nextLines) { UserLog.create("【自定义】请假申请自动执行", "请假申请", adminUser, this); //当审批执行到 天数判断 节点时 if (line.ToStep.Id == "e76982fed81b4f13982528b375339c9b") { //判断天数 var td = (this.EndTime - this.BeginTime).TotalDays; if (td >= 2) { return(nextLines.Single(p => p.Id == "507fbfb416b44301b71684dea4a498db")); } else { return(nextLines.Single(p => p.Id == "800372357ce4495999e77875e1890b8d")); } } return(base.DoWorkFlowSelectLine(line, nextLines)); }
/// <summary> /// 执行到待用户审批步骤是返回执行人的列表 /// </summary> /// <param name="line"></param> /// <returns></returns> public override List <ICommunicationable> DoWorkFlowGetTaskUserList(WorkFlowDefLineDetail line) { UserLog.create("【自定义】请假申请进入到任务节点,返回执行人", "请假申请", adminUser, this); return(base.DoWorkFlowGetTaskUserList(line)); }
/// <summary> /// 启动后在执行所有步骤前 /// </summary> /// <param name="line"></param> /// <returns></returns> public override bool DoWorkFlowConfimBefore(WorkFlowDefLineDetail line) { UserLog.create(string.Format("【自定义】请假申请即将执行步骤[{0}]", line.ToStep.name), "请假申请", adminUser, this); return(base.DoWorkFlowConfimBefore(line)); }