问卷
This commit is contained in:
parent
4552919c34
commit
62b6d99c23
@ -70,7 +70,7 @@ public class QuestionInfoController extends BaseController {
|
|||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('system:question:add')")
|
@PreAuthorize("@ss.hasPermi('system:question:add')")
|
||||||
@Log(title = "问卷基本信息", businessType = BusinessType.INSERT)
|
@Log(title = "问卷基本信息", businessType = BusinessType.INSERT)
|
||||||
@PostMapping
|
@PostMapping("/add")
|
||||||
public AjaxResult add(@RequestBody QuestionVO questionInfo) {
|
public AjaxResult add(@RequestBody QuestionVO questionInfo) {
|
||||||
if (Objects.isNull(questionInfo) || StringUtils.isBlank(questionInfo.getQuestionnaireName())) {
|
if (Objects.isNull(questionInfo) || StringUtils.isBlank(questionInfo.getQuestionnaireName())) {
|
||||||
return AjaxResult.error("请添加问卷信息!");
|
return AjaxResult.error("请添加问卷信息!");
|
||||||
@ -83,7 +83,7 @@ public class QuestionInfoController extends BaseController {
|
|||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('system:question:edit')")
|
@PreAuthorize("@ss.hasPermi('system:question:edit')")
|
||||||
@Log(title = "问卷基本信息", businessType = BusinessType.UPDATE)
|
@Log(title = "问卷基本信息", businessType = BusinessType.UPDATE)
|
||||||
@PutMapping
|
@PostMapping("/edit")
|
||||||
public AjaxResult edit(@RequestBody QuestionVO question) {
|
public AjaxResult edit(@RequestBody QuestionVO question) {
|
||||||
return questionInfoService.updateQuestionInfo(question);
|
return questionInfoService.updateQuestionInfo(question);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -44,7 +44,7 @@ public class QuestionSubject extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
@ApiModelProperty(value = "题目序号")
|
@ApiModelProperty(value = "题目序号")
|
||||||
@Excel(name = "题目序号")
|
@Excel(name = "题目序号")
|
||||||
private Integer questionNumber;
|
private BigDecimal questionNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 题目类型,单选题:MULTIPLE_CHOICE,多选题:MULTIPLE_CHOICE_QUESTIONS,填空题:FILL_IN_THE_BLANKS,打分题:SCORING_QUESTIONS,
|
* 题目类型,单选题:MULTIPLE_CHOICE,多选题:MULTIPLE_CHOICE_QUESTIONS,填空题:FILL_IN_THE_BLANKS,打分题:SCORING_QUESTIONS,
|
||||||
@ -95,7 +95,7 @@ public class QuestionSubject extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
@ApiModelProperty(value = "是否计分,0:否,1:是")
|
@ApiModelProperty(value = "是否计分,0:否,1:是")
|
||||||
@Excel(name = "是否计分,0:否,1:是")
|
@Excel(name = "是否计分,0:否,1:是")
|
||||||
private Integer whetherScore;
|
private Boolean whetherScore;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计分方式,每个选项都有对应分值:NOT_UNIQUE_ANSWER,全部答对才得分:UNIQUE_ANSWER
|
* 计分方式,每个选项都有对应分值:NOT_UNIQUE_ANSWER,全部答对才得分:UNIQUE_ANSWER
|
||||||
|
|||||||
@ -84,5 +84,5 @@ public interface QuestionSubjectOptionMapper {
|
|||||||
* @param questionSubjectIds 题目表id
|
* @param questionSubjectIds 题目表id
|
||||||
* @return int
|
* @return int
|
||||||
*/
|
*/
|
||||||
int deleteOptionByQuestionSubjectIds(List<Long> questionSubjectIds);
|
int deleteOptionByQuestionSubjectIds(@Param("questionSubjectIds") List<Long> questionSubjectIds);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -102,8 +102,8 @@ public class QuestionInfoServiceImpl implements IQuestionInfoService {
|
|||||||
List<QuestionSubjectVO> questionSubjectList = question.getQuestionSubjectList();
|
List<QuestionSubjectVO> questionSubjectList = question.getQuestionSubjectList();
|
||||||
List<QuestionSubject> questionSubjects = new ArrayList<>();
|
List<QuestionSubject> questionSubjects = new ArrayList<>();
|
||||||
List<QuestionSubjectOptionVO> questionSubjectOptions = new ArrayList<>();
|
List<QuestionSubjectOptionVO> questionSubjectOptions = new ArrayList<>();
|
||||||
QuestionSubject saveQuestionSubject = new QuestionSubject();
|
|
||||||
for (QuestionSubjectVO questionSubject : questionSubjectList) {
|
for (QuestionSubjectVO questionSubject : questionSubjectList) {
|
||||||
|
QuestionSubject saveQuestionSubject = new QuestionSubject();
|
||||||
BeanUtils.copyBeanProp(saveQuestionSubject, questionSubject);
|
BeanUtils.copyBeanProp(saveQuestionSubject, questionSubject);
|
||||||
saveQuestionSubject.setQuestionInfoId(questionInfo.getId());
|
saveQuestionSubject.setQuestionInfoId(questionInfo.getId());
|
||||||
saveQuestionSubject.setCreateTime(DateUtils.getNowDate());
|
saveQuestionSubject.setCreateTime(DateUtils.getNowDate());
|
||||||
@ -118,14 +118,14 @@ public class QuestionInfoServiceImpl implements IQuestionInfoService {
|
|||||||
}
|
}
|
||||||
//新增选项表
|
//新增选项表
|
||||||
List<QuestionSubjectOption> saveQuestionSubjectOptions = new ArrayList<>();
|
List<QuestionSubjectOption> saveQuestionSubjectOptions = new ArrayList<>();
|
||||||
QuestionSubjectOption saveQuestionSubjectOption = new QuestionSubjectOption();
|
|
||||||
for (QuestionSubjectOptionVO questionSubjectOption : questionSubjectOptions) {
|
for (QuestionSubjectOptionVO questionSubjectOption : questionSubjectOptions) {
|
||||||
|
QuestionSubjectOption saveQuestionSubjectOption = new QuestionSubjectOption();
|
||||||
BeanUtils.copyBeanProp(saveQuestionSubjectOption, questionSubjectOption);
|
BeanUtils.copyBeanProp(saveQuestionSubjectOption, questionSubjectOption);
|
||||||
QuestionSubject questionSubject = questionSubjects.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getQuestionNumber()) && questionSubjectOption.getQuestionNumber().equals(item.getQuestionNumber())).findFirst().orElse(new QuestionSubject());
|
QuestionSubject questionSubject = questionSubjects.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getQuestionNumber()) && questionSubjectOption.getQuestionNumber().compareTo(item.getQuestionNumber()) == 0).findFirst().orElse(new QuestionSubject());
|
||||||
questionSubjectOption.setQuestionnaireSubjectId(questionSubject.getId());
|
saveQuestionSubjectOption.setQuestionnaireSubjectId(questionSubject.getId());
|
||||||
saveQuestionSubjectOption.setCreateTime(DateUtils.getNowDate());
|
saveQuestionSubjectOption.setCreateTime(DateUtils.getNowDate());
|
||||||
saveQuestionSubjectOption.setCreateBy(SecurityUtils.getUsername());
|
saveQuestionSubjectOption.setCreateBy(SecurityUtils.getUsername());
|
||||||
saveQuestionSubjectOptions.add(questionSubjectOption);
|
saveQuestionSubjectOptions.add(saveQuestionSubjectOption);
|
||||||
}
|
}
|
||||||
int subjectOptionCount = questionSubjectOptionMapper.insertQuestionSubjectOptionList(saveQuestionSubjectOptions);
|
int subjectOptionCount = questionSubjectOptionMapper.insertQuestionSubjectOptionList(saveQuestionSubjectOptions);
|
||||||
if (subjectOptionCount <= 0) {
|
if (subjectOptionCount <= 0) {
|
||||||
@ -173,8 +173,8 @@ public class QuestionInfoServiceImpl implements IQuestionInfoService {
|
|||||||
List<QuestionSubjectVO> questionSubjectList = question.getQuestionSubjectList();
|
List<QuestionSubjectVO> questionSubjectList = question.getQuestionSubjectList();
|
||||||
List<QuestionSubject> questionSubjects = new ArrayList<>();
|
List<QuestionSubject> questionSubjects = new ArrayList<>();
|
||||||
List<QuestionSubjectOptionVO> questionSubjectOptions = new ArrayList<>();
|
List<QuestionSubjectOptionVO> questionSubjectOptions = new ArrayList<>();
|
||||||
QuestionSubject saveQuestionSubject = new QuestionSubject();
|
|
||||||
for (QuestionSubjectVO questionSubject : questionSubjectList) {
|
for (QuestionSubjectVO questionSubject : questionSubjectList) {
|
||||||
|
QuestionSubject saveQuestionSubject = new QuestionSubject();
|
||||||
BeanUtils.copyBeanProp(saveQuestionSubject, questionSubject);
|
BeanUtils.copyBeanProp(saveQuestionSubject, questionSubject);
|
||||||
saveQuestionSubject.setQuestionInfoId(questionInfo.getId());
|
saveQuestionSubject.setQuestionInfoId(questionInfo.getId());
|
||||||
saveQuestionSubject.setCreateTime(DateUtils.getNowDate());
|
saveQuestionSubject.setCreateTime(DateUtils.getNowDate());
|
||||||
@ -188,14 +188,14 @@ public class QuestionInfoServiceImpl implements IQuestionInfoService {
|
|||||||
throw new SecurityException("修改问卷失败!请联系管理员!");
|
throw new SecurityException("修改问卷失败!请联系管理员!");
|
||||||
}
|
}
|
||||||
List<QuestionSubjectOption> saveQuestionSubjectOptions = new ArrayList<>();
|
List<QuestionSubjectOption> saveQuestionSubjectOptions = new ArrayList<>();
|
||||||
QuestionSubjectOption saveQuestionSubjectOption = new QuestionSubjectOption();
|
|
||||||
for (QuestionSubjectOptionVO questionSubjectOption : questionSubjectOptions) {
|
for (QuestionSubjectOptionVO questionSubjectOption : questionSubjectOptions) {
|
||||||
|
QuestionSubjectOption saveQuestionSubjectOption = new QuestionSubjectOption();
|
||||||
BeanUtils.copyBeanProp(saveQuestionSubjectOption, questionSubjectOption);
|
BeanUtils.copyBeanProp(saveQuestionSubjectOption, questionSubjectOption);
|
||||||
QuestionSubject questionSubject = questionSubjects.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getQuestionNumber()) && questionSubjectOption.getQuestionNumber().equals(item.getQuestionNumber())).findFirst().orElse(new QuestionSubject());
|
QuestionSubject questionSubject = questionSubjects.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getQuestionNumber()) && questionSubjectOption.getQuestionNumber().compareTo(item.getQuestionNumber()) == 0).findFirst().orElse(new QuestionSubject());
|
||||||
questionSubjectOption.setQuestionnaireSubjectId(questionSubject.getId());
|
saveQuestionSubjectOption.setQuestionnaireSubjectId(questionSubject.getId());
|
||||||
saveQuestionSubjectOption.setCreateTime(DateUtils.getNowDate());
|
saveQuestionSubjectOption.setCreateTime(DateUtils.getNowDate());
|
||||||
saveQuestionSubjectOption.setCreateBy(SecurityUtils.getUsername());
|
saveQuestionSubjectOption.setCreateBy(SecurityUtils.getUsername());
|
||||||
saveQuestionSubjectOptions.add(questionSubjectOption);
|
saveQuestionSubjectOptions.add(saveQuestionSubjectOption);
|
||||||
}
|
}
|
||||||
int subjectOptionCount = questionSubjectOptionMapper.insertQuestionSubjectOptionList(saveQuestionSubjectOptions);
|
int subjectOptionCount = questionSubjectOptionMapper.insertQuestionSubjectOptionList(saveQuestionSubjectOptions);
|
||||||
if (subjectOptionCount <= 0) {
|
if (subjectOptionCount <= 0) {
|
||||||
|
|||||||
@ -4,6 +4,8 @@ import com.xinelu.manage.domain.questionsubjectoption.QuestionSubjectOption;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 问卷题目选项答案对象 question_subject_option
|
* 问卷题目选项答案对象 question_subject_option
|
||||||
*
|
*
|
||||||
@ -17,5 +19,5 @@ public class QuestionSubjectOptionVO extends QuestionSubjectOption {
|
|||||||
/**
|
/**
|
||||||
* 题号
|
* 题号
|
||||||
*/
|
*/
|
||||||
private Integer questionNumber;
|
private BigDecimal questionNumber;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -345,7 +345,7 @@
|
|||||||
<include refid="selectQuestionSubjectVo"/>
|
<include refid="selectQuestionSubjectVo"/>
|
||||||
<where>
|
<where>
|
||||||
<if test="questionInfoId != null ">
|
<if test="questionInfoId != null ">
|
||||||
and question_info_id = #{id}
|
question_info_id = #{id}
|
||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
@ -228,9 +228,14 @@
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
<delete id="deleteOptionByQuestionSubjectIds">
|
<delete id="deleteOptionByQuestionSubjectIds">
|
||||||
delete from question_subject_option where questionnaire_subject_id in
|
delete from question_subject_option
|
||||||
<foreach item="id" collection="list" open="(" separator="," close=")">
|
<where>
|
||||||
#{questionSubjectIds}
|
<if test="questionSubjectIds != null and questionSubjectIds.size() > 0">
|
||||||
</foreach>
|
questionnaire_subject_id in
|
||||||
|
<foreach item="questionSubjectIds" collection="questionSubjectIds" open="(" separator="," close=")">
|
||||||
|
#{questionSubjectIds}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
</delete>
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
||||||
Loading…
Reference in New Issue
Block a user