量表代码提交

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; private String scaleTitle;
/** /**
@ -55,17 +55,17 @@ public class SysScaleQuestionBo extends BaseEntity {
@NotBlank(message = "问题内容不能为空", groups = {AddGroup.class, EditGroup.class}) @NotBlank(message = "问题内容不能为空", groups = {AddGroup.class, EditGroup.class})
private String questionContent; private String questionContent;
// /** /**
// * 所属因子维度 * 所属因子维度
// */ */
// @NotNull(message = "所属因子维度不能为空", groups = { AddGroup.class, EditGroup.class }) // @NotNull(message = "所属因子维度不能为空", groups = { AddGroup.class, EditGroup.class })
// private Long factorId; private Long factorId;
//
// /** /**
// * 因子名称 * 因子名称
// */ */
// @NotBlank(message = "因子名称不能为空", groups = { AddGroup.class, EditGroup.class }) // @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; 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.MapstructUtils;
import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
@ -10,6 +11,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.dromara.scale.domain.SysScale; import org.dromara.scale.domain.SysScale;
import org.dromara.scale.domain.SysScaleFormula; 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.SysScaleFormulaMapper;
import org.dromara.scale.mapper.SysScaleMapper; import org.dromara.scale.mapper.SysScaleMapper;
import org.dromara.scale.mapper.SysScaleQuestionMapper; 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.mapper.SysScaleFactorMapper;
import org.dromara.scale.service.ISysScaleFactorService; import org.dromara.scale.service.ISysScaleFactorService;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Collection; import java.util.Collection;
@ -94,6 +98,19 @@ public class SysScaleFactorServiceImpl implements ISysScaleFactorService {
if (flag) { if (flag) {
bo.setFactorId(add.getFactorId()); 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; 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.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; 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.SysScaleQuestion;
import org.dromara.scale.domain.bo.SysScaleQuestionBo; import org.dromara.scale.domain.bo.SysScaleQuestionBo;
import org.dromara.scale.domain.vo.SysScaleQuestionVo; 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.mapper.SysScaleQuestionMapper;
import org.dromara.scale.service.ISysScaleQuestionService; import org.dromara.scale.service.ISysScaleQuestionService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
@ -76,6 +78,7 @@ public class SysScaleQuestionServiceImpl implements ISysScaleQuestionService {
/** /**
* 新增量问题内容 * 新增量问题内容
*/ */
@Transactional(rollbackFor = Exception.class)
@Override @Override
public Boolean insertByBo(SysScaleQuestionBo bo) { public Boolean insertByBo(SysScaleQuestionBo bo) {
SysScaleQuestion add = MapstructUtils.convert(bo, SysScaleQuestion.class); SysScaleQuestion add = MapstructUtils.convert(bo, SysScaleQuestion.class);
@ -85,7 +88,13 @@ public class SysScaleQuestionServiceImpl implements ISysScaleQuestionService {
if (flag) { if (flag) {
bo.setQuestionId(add.getQuestionId()); 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; return flag;
} }