量表代码提交

This commit is contained in:
jiangzhe 2024-04-02 17:03:32 +08:00
parent daa31dd9b3
commit 24b2a131b8
3 changed files with 37 additions and 11 deletions

View File

@ -40,7 +40,7 @@ public class SysScaleQuestionBo extends BaseEntity {
/**
* 测评量表标题
*/
@NotBlank(message = "测评量表标题不能为空", groups = {AddGroup.class, EditGroup.class})
// @NotBlank(message = "测评量表标题不能为空", groups = {AddGroup.class, EditGroup.class})
private String scaleTitle;
/**
@ -55,17 +55,17 @@ public class SysScaleQuestionBo extends BaseEntity {
@NotBlank(message = "问题内容不能为空", groups = {AddGroup.class, EditGroup.class})
private String questionContent;
// /**
// * 所属因子维度
// */
/**
* 所属因子维度
*/
// @NotNull(message = "所属因子维度不能为空", groups = { AddGroup.class, EditGroup.class })
// private Long factorId;
//
// /**
// * 因子名称
// */
private Long factorId;
/**
* 因子名称
*/
// @NotBlank(message = "因子名称不能为空", groups = { AddGroup.class, EditGroup.class })
// private String factorName;
private String factorName;
/**
* 问题答案列表

View File

@ -1,5 +1,6 @@
package org.dromara.scale.service.impl;
import cn.hutool.core.collection.CollUtil;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
@ -10,6 +11,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.scale.domain.SysScale;
import org.dromara.scale.domain.SysScaleFormula;
import org.dromara.scale.domain.SysScaleQuestion;
import org.dromara.scale.domain.bo.SysScaleQuestionBo;
import org.dromara.scale.mapper.SysScaleFormulaMapper;
import org.dromara.scale.mapper.SysScaleMapper;
import org.dromara.scale.mapper.SysScaleQuestionMapper;
@ -20,6 +23,7 @@ import org.dromara.scale.domain.SysScaleFactor;
import org.dromara.scale.mapper.SysScaleFactorMapper;
import org.dromara.scale.service.ISysScaleFactorService;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Collection;
@ -94,6 +98,19 @@ public class SysScaleFactorServiceImpl implements ISysScaleFactorService {
if (flag) {
bo.setFactorId(add.getFactorId());
}
if (CollUtil.isNotEmpty(bo.getQuestionIds())) {
List<SysScaleQuestion> list = new ArrayList<>(bo.getQuestionIds().size());
for (Long questionId : bo.getQuestionIds()) {
SysScaleQuestion question = new SysScaleQuestion();
question.setQuestionId(questionId);
question.setFactorId(bo.getFactorId());
question.setFactorName(bo.getFactorName());
list.add(question);
}
scaleQuestionMapper.updateBatchById(list, 100);
}
return flag;
}

View File

@ -8,6 +8,7 @@ import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.scale.domain.SysScaleAnswer;
import org.dromara.scale.domain.SysScaleQuestion;
import org.dromara.scale.domain.bo.SysScaleQuestionBo;
import org.dromara.scale.domain.vo.SysScaleQuestionVo;
@ -15,6 +16,7 @@ import org.dromara.scale.mapper.SysScaleAnswerMapper;
import org.dromara.scale.mapper.SysScaleQuestionMapper;
import org.dromara.scale.service.ISysScaleQuestionService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.List;
@ -76,6 +78,7 @@ public class SysScaleQuestionServiceImpl implements ISysScaleQuestionService {
/**
* 新增量问题内容
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Boolean insertByBo(SysScaleQuestionBo bo) {
SysScaleQuestion add = MapstructUtils.convert(bo, SysScaleQuestion.class);
@ -85,7 +88,13 @@ public class SysScaleQuestionServiceImpl implements ISysScaleQuestionService {
if (flag) {
bo.setQuestionId(add.getQuestionId());
}
scaleAnswerMapper.batchInsert(bo.getScaleAnswerList());
List<SysScaleAnswer> scaleAnswerList = bo.getScaleAnswerList();
for (SysScaleAnswer sysScaleAnswer : scaleAnswerList) {
sysScaleAnswer.setScaleId(bo.getScaleId());
sysScaleAnswer.setQuestionId(add.getQuestionId());
sysScaleAnswer.setQuestionContent(add.getQuestionContent());
}
scaleAnswerMapper.batchInsert(scaleAnswerList);
return flag;
}