diff --git a/seer-mp/seer-mp-service-app/src/main/java/com/seer/teach/mp/app/service/impl/AppActivityFormExecutionServiceImpl.java b/seer-mp/seer-mp-service-app/src/main/java/com/seer/teach/mp/app/service/impl/AppActivityFormExecutionServiceImpl.java index 41c5497..a0afb06 100644 --- a/seer-mp/seer-mp-service-app/src/main/java/com/seer/teach/mp/app/service/impl/AppActivityFormExecutionServiceImpl.java +++ b/seer-mp/seer-mp-service-app/src/main/java/com/seer/teach/mp/app/service/impl/AppActivityFormExecutionServiceImpl.java @@ -12,6 +12,7 @@ import com.seer.teach.mp.entity.MpActivityFormFieldEntity; import com.seer.teach.mp.entity.MpActivityFormVariableEntity; import com.seer.teach.mp.service.IMpActivityFormExecutionService; import com.seer.teach.mp.service.IMpActivityFormFieldService; +import com.seer.teach.mp.service.IMpActivityFormRelationService; import com.seer.teach.mp.service.IMpActivityFormVariableService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -43,7 +44,7 @@ public class AppActivityFormExecutionServiceImpl implements IAppActivityFormExec private final IMpActivityFormExecutionService activityFormExecutionService; private final IMpActivityFormVariableService activityFormVariableService; private final IMpActivityFormFieldService activityFormFieldService; - + private final IMpActivityFormRelationService activityFormRelationService; @Override @Transactional @@ -136,13 +137,19 @@ public class AppActivityFormExecutionServiceImpl implements IAppActivityFormExec @Override public AppFormFieldWithValueResp getExecutionWithFormData(Integer activityId, Integer agentId, Integer userId) { + Integer formId = activityFormRelationService.getPrimaryFormIdByActivityId(activityId); + if (Objects.isNull(formId)) { + log.warn("未找到该活动对应的表单ID,活动ID:{}", activityId); + return null; + } + log.info("获取表单执行信息,活动ID:{},代理ID:{},用户ID:{},表单ID:{}", activityId, agentId, userId,formId); MpActivityFormExecutionEntity execution = activityFormExecutionService.getOneByActivityIdAndAgentIdAndSubmitterId(activityId, agentId, userId); if (Objects.isNull(execution)) { log.warn("未找到该用户的执行记录,活动ID:{},代理ID:{},用户ID:{}", activityId, agentId, userId); return null; } // 获取表单字段定义 - List fieldDefinitions = activityFormFieldService.getFieldListByFormId(execution.getFormId()); + List fieldDefinitions = activityFormFieldService.getFieldListByFormId(formId); if(CollectionUtil.isEmpty(fieldDefinitions)){ log.warn("表单字段定义为空,表单ID:{}", execution.getFormId()); return null; @@ -164,7 +171,7 @@ public class AppActivityFormExecutionServiceImpl implements IAppActivityFormExec response.setExecutionId(execution.getId()); response.setExecutionNo(execution.getExecutionNo()); response.setActivityId(execution.getActivityId()); - response.setFormId(execution.getFormId()); + response.setFormId(formId); response.setSubmitterId(execution.getSubmitterId()); // 组合字段定义和对应的值 List fields = new ArrayList<>(fieldDefinitions.size()); diff --git a/seer-mp/seer-mp-service/src/main/java/com/seer/teach/mp/service/impl/MpActivityFormRelationServiceImpl.java b/seer-mp/seer-mp-service/src/main/java/com/seer/teach/mp/service/impl/MpActivityFormRelationServiceImpl.java index 4d39ef3..7a1a9d5 100644 --- a/seer-mp/seer-mp-service/src/main/java/com/seer/teach/mp/service/impl/MpActivityFormRelationServiceImpl.java +++ b/seer-mp/seer-mp-service/src/main/java/com/seer/teach/mp/service/impl/MpActivityFormRelationServiceImpl.java @@ -110,7 +110,6 @@ public class MpActivityFormRelationServiceImpl extends ServiceImpl