Exemplo n.º 1
0
        public void Execute(WfRunner runner, WfResult result)
        {
            var iTask = result.InstanceTask;

            iTask.Status    = WfTaskStatus.Dealing;
            iTask.User_Id   = runner.AC.User.Id;
            iTask.User_Name = runner.AC.User.UserName ?? runner.AC.User.NickName;
            iTask.DFetch    = DateTime.Now;
            iTaskService.Update(iTask);
        }
Exemplo n.º 2
0
        private void SetTaskFinish(WfRunner runner, WfResult result)
        {
            var iTask = result.InstanceTask;

            iTask.DUpdate       = DateTime.Now;
            iTask.UpdateUser_Id = runner.AC.User.Id;
            iTask.Status        = WfTaskStatus.Processed;
            iTask.Audit         = WfAuditState.Back;
            iTask.Opinion       = runner.Opinion;
            iTaskService.Update(iTask);
        }
Exemplo n.º 3
0
        public void Execute(WfRunner runner, WfResult result)
        {
            if (result.CanWithdraw)
            {
                // 删除后续实例任务
                iTaskService.Delete(result.InstanceTask.Id);

                // 修改本部为处理中
                var iTask = result.InstanceTask;
                iTask.Status  = WfTaskStatus.Dealing;
                iTask.Opinion = null;
                iTask.DUpdate = null;
                iTask.Audit   = result.IsStartTask ? WfAuditState.UnSend : WfAuditState.Pending;
                iTaskService.Update(iTask);
            }
            else
            {
                throw new AceException("该件已回收或后置节点已处理!");
            }
        }