public object PostIndex(Guid threadTaskID, Guid stepID, bool?goNext = null, string controlId = "") { using (ThreadTaskService threadTaskService = new ThreadTaskService()) { using (DynamicFormService dynamicFormService = new DynamicFormService()) { sysBpmsThreadTask threadTask = new ThreadTaskService().GetInfo(threadTaskID, new string[] { nameof(sysBpmsThreadTask.Thread) }); using (ProcessEngine processEngine = new ProcessEngine(new EngineSharedModel(threadTask.Thread, threadTask.Thread.ProcessID, this.MyRequest.GetList(dynamicFormService.GetInfoByStepID(stepID).ConfigXmlModel.IsEncrypted, base.ApiSessionId).ToList(), base.ClientUserName, base.ApiSessionId))) { PostTaskFormResponseModel responseVM = processEngine.PostTaskForm(threadTaskID, stepID, goNext, controlId); if (!responseVM.IsSuccess) { return(new EngineFormResponseDTO(redirectUrl: base.GetRedirectUrl(responseVM.RedirectUrlModel), reloadForm: false, null, false, messageList: responseVM.ListMessageModel, false)); } else { if (responseVM.IsSubmit) { if (responseVM.IsNextPrevious == true) { return(new EngineFormResponseDTO( redirectUrl: base.GetRedirectUrl(responseVM.RedirectUrlModel), reloadForm: true, listDownloadModel: responseVM.ListDownloadModel, messageList: responseVM.ListMessageModel ) { StepID = responseVM.StepID.Value, }); } else { return(new EngineFormResponseDTO( redirectUrl: string.IsNullOrWhiteSpace(base.GetRedirectUrl(responseVM.RedirectUrlModel)) ? "CartableManage" : base.GetRedirectUrl(responseVM.RedirectUrlModel), reloadForm: false, listDownloadModel: responseVM.ListDownloadModel, messageList: responseVM.ListMessageModel )); } } else { return new EngineFormResponseDTO( redirectUrl: base.GetRedirectUrl(responseVM.RedirectUrlModel), reloadForm: true, listDownloadModel: responseVM.ListDownloadModel, messageList: responseVM.ListMessageModel ) { StepID = responseVM.StepID.Value, } }; } } } } } }