/// <summary> /// 获取流程发起信息 /// </summary> /// <param name="startInfo"></param> /// <returns></returns> public (ResponseModel ResultInfo, ProcessStartInfo ProStartInfo) GetProcessStartInfo(ProcessStartArgs startInfo) { //获取发起Model数据 var processStartInfo = AutoMapperExt.MapTo <ProcessStartInfo>(startInfo); var resultInfo = new ResponseModel(); if (!string.IsNullOrWhiteSpace(startInfo.bizId)) { var proStartLogInfo = _interfaceLogService.GetProcessStartLogInfo(startInfo.processCode, startInfo.bizId); if (proStartLogInfo != null) { processStartInfo.K2ID = proStartLogInfo.K2ID; //如果流程已作废,则重新生成表单数 if (!_formInstanceSevice.IsProcessDeleteByBizId(startInfo.bizId)) { resultInfo.Message = "该bizId对应的流程已发起,请勿重复发起"; return(resultInfo, processStartInfo); } } } processStartInfo.SplitProcessCode = startInfo.processCode; //processStartInfo.SplitProcessCode = GetSplitProcessCode(startInfo);//TODO:获取流程编码 if (!string.IsNullOrWhiteSpace(processStartInfo.SplitProcessCode)) { //根据流程编码获取流程信息 var processSetInfo = _processSetService.GetPRC_Config_ProcessSetByCode(processStartInfo.SplitProcessCode); if (processSetInfo == null) { resultInfo.Message = string.Format("processCode:{0}不存在;", processStartInfo.SplitProcessCode); return(resultInfo, processStartInfo); } if (string.IsNullOrWhiteSpace(processStartInfo.K2ID)) { processStartInfo.K2ID = _processSetService.GetSerialNumberByProcessCode(processStartInfo.SplitProcessCode);//生成K2ID } } return(resultInfo, processStartInfo); }