public void CompleteTask(CompleteTaskInput input) { var authInfo = _authInfoProvider.GetCurrent(); var userId = authInfo?.User?.Id; var task = _taskProvider.GetTask(input.Id); if (task.Assignee != userId.Value.ToString()) { throw new AppCoreException($"id:为{userId.Value}的用户不是任务【{task.NodeName}】的委托人"); } if (input.FormContents.Count > 0) { _taskProvider.SetFields(input.Id, input.FormContents); } if (!input.PreventCommit) { _taskProvider.Complete(input.Id, input.Comment); } }