|
@@ -31,6 +31,9 @@ public class NascQuestionServiceImpl implements INascQuestionService {
|
|
@Autowired
|
|
@Autowired
|
|
private NascMaterialMapper materialMapper;
|
|
private NascMaterialMapper materialMapper;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private NascMaterialListMapper materialListMapper;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public List<NascPreQuestion> selectQuestionList(NascPreQuestion question) {
|
|
public List<NascPreQuestion> selectQuestionList(NascPreQuestion question) {
|
|
return preQuestionMapper.getQuestionByMatterId(question.getMatterId());
|
|
return preQuestionMapper.getQuestionByMatterId(question.getMatterId());
|
|
@@ -57,6 +60,10 @@ public class NascQuestionServiceImpl implements INascQuestionService {
|
|
/** 先删除选项和材料信息 **/
|
|
/** 先删除选项和材料信息 **/
|
|
List<NascPreQuestionOption> preQuestionOptionList = question.getPreQuestionOptionList();
|
|
List<NascPreQuestionOption> preQuestionOptionList = question.getPreQuestionOptionList();
|
|
long[] optionIds = preQuestionOptionList.stream().mapToLong(NascPreQuestionOption::getId).toArray();
|
|
long[] optionIds = preQuestionOptionList.stream().mapToLong(NascPreQuestionOption::getId).toArray();
|
|
|
|
+ // 删除材料清单列表
|
|
|
|
+ for (NascPreQuestionOption option : preQuestionOptionList) {
|
|
|
|
+ materialListMapper.deleteMaterialListByMaterialId(option.getMaterial().getId());
|
|
|
|
+ }
|
|
// 删除选项相关的材料信息
|
|
// 删除选项相关的材料信息
|
|
materialMapper.deleteMaterialByOptionIds(optionIds);
|
|
materialMapper.deleteMaterialByOptionIds(optionIds);
|
|
// 删除问题相关的选项
|
|
// 删除问题相关的选项
|
|
@@ -73,6 +80,10 @@ public class NascQuestionServiceImpl implements INascQuestionService {
|
|
// 根据问题ID查询所有选项信息
|
|
// 根据问题ID查询所有选项信息
|
|
List<NascPreQuestionOption> optionList = preQuestionOptionMapper.getPreQuestionOptionListByQuestionId(id);
|
|
List<NascPreQuestionOption> optionList = preQuestionOptionMapper.getPreQuestionOptionListByQuestionId(id);
|
|
long[] optionIds = optionList.stream().mapToLong(NascPreQuestionOption::getId).toArray();
|
|
long[] optionIds = optionList.stream().mapToLong(NascPreQuestionOption::getId).toArray();
|
|
|
|
+ // 删除材料清单信息
|
|
|
|
+ for (NascPreQuestionOption option: optionList) {
|
|
|
|
+ materialListMapper.deleteMaterialListByMaterialId(option.getMaterial().getId());
|
|
|
|
+ }
|
|
// 删除选项相关的材料信息
|
|
// 删除选项相关的材料信息
|
|
materialMapper.deleteMaterialByOptionIds(optionIds);
|
|
materialMapper.deleteMaterialByOptionIds(optionIds);
|
|
// 删除选项信息
|
|
// 删除选项信息
|
|
@@ -86,6 +97,12 @@ public class NascQuestionServiceImpl implements INascQuestionService {
|
|
NascPreQuestion question = preQuestionMapper.getQuestionById(id);
|
|
NascPreQuestion question = preQuestionMapper.getQuestionById(id);
|
|
// 查询问题选项和选项对应的材料信息
|
|
// 查询问题选项和选项对应的材料信息
|
|
List<NascPreQuestionOption> optionList = preQuestionOptionMapper.getPreQuestionOptionListByQuestionId(id);
|
|
List<NascPreQuestionOption> optionList = preQuestionOptionMapper.getPreQuestionOptionListByQuestionId(id);
|
|
|
|
+ for (NascPreQuestionOption option : optionList) {
|
|
|
|
+ if (option.getJumpToMatterId() == 0) {
|
|
|
|
+ NascMaterial material = option.getMaterial();
|
|
|
|
+ material.setMaterialList(materialListMapper.getMaterialListByMaterialId(material.getId()));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
question.setPreQuestionOptionList(optionList);
|
|
question.setPreQuestionOptionList(optionList);
|
|
return question;
|
|
return question;
|
|
}
|
|
}
|
|
@@ -109,8 +126,25 @@ public class NascQuestionServiceImpl implements INascQuestionService {
|
|
material.setOptionId(option.getId());
|
|
material.setOptionId(option.getId());
|
|
// 存储材料信息
|
|
// 存储材料信息
|
|
materialMapper.insertMaterial(material);
|
|
materialMapper.insertMaterial(material);
|
|
|
|
+ // 保存材料清单
|
|
|
|
+ saveMaterialList(material.getMaterialList(), material.getId());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * @Author: Yujianq
|
|
|
|
+ * @Date: 2024/6/13 15:40
|
|
|
|
+ * @Description: 保存材料清单列表
|
|
|
|
+ * @param materialLists
|
|
|
|
+ * @param materialId
|
|
|
|
+ * @return: void
|
|
|
|
+ */
|
|
|
|
+ public void saveMaterialList(List<NascMaterialList> materialLists, Long materialId) {
|
|
|
|
+ for (NascMaterialList materialList: materialLists) {
|
|
|
|
+ materialList.setMaterialId(materialId);
|
|
|
|
+ materialListMapper.insertMaterialList(materialList);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|