From 65c2b4299b16b4715fd07df68e03aa2161374ba0 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 19 Feb 2024 11:28:09 +0800
Subject: [PATCH] 物业评定bug修复

---
 src/main/java/org/springblade/modules/answerRecord/entity/AnswerRecordEntity.java                |    2 
 src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java     |   28 +++++++++-----
 src/main/java/org/springblade/modules/subjectChoices/service/impl/SubjectChoicesServiceImpl.java |   29 ++++++++++----
 src/main/java/org/springblade/modules/subjectChoices/vo/SubjectChoicesVO.java                    |    2 +
 4 files changed, 41 insertions(+), 20 deletions(-)

diff --git a/src/main/java/org/springblade/modules/answerRecord/entity/AnswerRecordEntity.java b/src/main/java/org/springblade/modules/answerRecord/entity/AnswerRecordEntity.java
index a1282fd..81c1c09 100644
--- a/src/main/java/org/springblade/modules/answerRecord/entity/AnswerRecordEntity.java
+++ b/src/main/java/org/springblade/modules/answerRecord/entity/AnswerRecordEntity.java
@@ -73,7 +73,7 @@
 	 */
 	@ApiModelProperty(value = "提交的选项id", example = "")
 	@TableField("answer_option")
-	private String answerOption;
+	private Long answerOption;
 
 	/**
 	 * 本题得分
diff --git a/src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java b/src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java
index b1f3c29..3e55c0a 100644
--- a/src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java
+++ b/src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java
@@ -17,8 +17,10 @@
 package org.springblade.modules.answerRecord.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.constant.CommonConstant;
 import org.springblade.common.utils.SpringUtils;
 import org.springblade.modules.answerRecord.dto.AnswerRecordDTO;
 import org.springblade.modules.answerRecord.entity.AnswerRecordEntity;
@@ -86,22 +88,28 @@
 				remove(Wrappers.<AnswerRecordEntity>lambdaQuery()
 					.eq(AnswerRecordEntity::getPropertyId, choicesVO.getPropertyId())
 					.eq(AnswerRecordEntity::getSubjectChoicesId, choicesVO.getId()));
-				if (subjectOptionVO.getIds() != null) {
-					AnswerRecordDTO answerRecordDTO = new AnswerRecordDTO();
-					answerRecordDTO.setPropertyId(choicesVO.getPropertyId());
-					answerRecordDTO.setAnswerOption(subjectOptionVO.getId().toString());
-					answerRecordDTO.setSubjectChoicesId(choicesVO.getId());
-					answerRecordDTO.setSubjectOptionId(subjectOptionVO.getId());
-					objects.add(answerRecordDTO);
-					bigDecimal = bigDecimal.add(subjectOptionVO.getScore());
+				// 判断选项的id
+				if (subjectOptionVO.getId().equals(choicesVO.getChooseId())) {
+					if (CommonConstant.NUMBER_ZERO.equals(choicesVO.getChoicesType().intValue())) {
+						AnswerRecordDTO answerRecordDTO = new AnswerRecordDTO();
+						answerRecordDTO.setPropertyId(choicesVO.getPropertyId());
+						answerRecordDTO.setAnswerOption(subjectOptionVO.getId());
+						answerRecordDTO.setSubjectChoicesId(choicesVO.getId());
+						answerRecordDTO.setSubjectChoicesType(1);
+						answerRecordDTO.setSubjectOptionId(subjectOptionVO.getId());
+						objects.add(answerRecordDTO);
+						bigDecimal = bigDecimal.add(subjectOptionVO.getScore());
+						break;
+					}
 				}
-				if (subjectOptionVO.getNumbers() != null) {
+				if (CommonConstant.NUMBER_THREE.equals(choicesVO.getChoicesType().intValue())) {
 					AnswerRecordDTO answerRecordDTO = new AnswerRecordDTO();
 					answerRecordDTO.setPropertyId(choicesVO.getPropertyId());
-					answerRecordDTO.setAnswerOption(subjectOptionVO.getId().toString());
+					answerRecordDTO.setAnswerOption(subjectOptionVO.getId());
 					answerRecordDTO.setSubjectChoicesId(choicesVO.getId());
 					answerRecordDTO.setAnswer(subjectOptionVO.getNumbers());
 					answerRecordDTO.setSubjectOptionId(subjectOptionVO.getId());
+					answerRecordDTO.setSubjectChoicesType(3);
 					objects.add(answerRecordDTO);
 					BigDecimal multiply = BigDecimal.valueOf(subjectOptionVO.getNumbers()).multiply(subjectOptionVO.getScore());
 					bigDecimal = bigDecimal.subtract(multiply);
diff --git a/src/main/java/org/springblade/modules/subjectChoices/service/impl/SubjectChoicesServiceImpl.java b/src/main/java/org/springblade/modules/subjectChoices/service/impl/SubjectChoicesServiceImpl.java
index 9bef93a..b7fcea5 100644
--- a/src/main/java/org/springblade/modules/subjectChoices/service/impl/SubjectChoicesServiceImpl.java
+++ b/src/main/java/org/springblade/modules/subjectChoices/service/impl/SubjectChoicesServiceImpl.java
@@ -17,14 +17,17 @@
 package org.springblade.modules.subjectChoices.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springblade.common.utils.SpringUtils;
+import org.springblade.modules.answerRecord.entity.AnswerRecordEntity;
 import org.springblade.modules.answerRecord.service.IAnswerRecordService;
 import org.springblade.modules.subjectChoices.dto.SubjectChoicesDTO;
 import org.springblade.modules.subjectChoices.entity.SubjectChoicesEntity;
 import org.springblade.modules.subjectChoices.mapper.SubjectChoicesMapper;
 import org.springblade.modules.subjectChoices.service.ISubjectChoicesService;
 import org.springblade.modules.subjectChoices.vo.SubjectChoicesVO;
+import org.springblade.modules.subjectOption.vo.SubjectOptionVO;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -42,15 +45,23 @@
 	public IPage<SubjectChoicesVO> selectSubjectChoicesPage(IPage<SubjectChoicesVO> page, SubjectChoicesVO subjectChoices) {
 		List<SubjectChoicesVO> subjectChoicesVOS = baseMapper.selectSubjectChoicesPage(page, subjectChoices);
 		IAnswerRecordService bean = SpringUtils.getBean(IAnswerRecordService.class);
-		// for (SubjectChoicesVO subjectChoicesVO : subjectChoicesVOS) {
-		// 	List<SubjectOptionVO> subjectOptionList = subjectChoicesVO.getSubjectOptionList();
-		// 	for (SubjectOptionVO subjectOptionVO : subjectOptionList) {
-		// 		bean.getOne(Wrappers.<AnswerRecordEntity>lambdaQuery().
-		// 			eq(AnswerRecordEntity::getSubjectOptionId,subjectOptionVO.getId()))
-		// 		subjectOptionVO.setIds();
-		// 		subjectOptionVO.setNumbers();
-		// 	}
-		// }
+		for (SubjectChoicesVO subjectChoicesVO : subjectChoicesVOS) {
+			List<SubjectOptionVO> subjectOptionList = subjectChoicesVO.getSubjectOptionList();
+			for (SubjectOptionVO subjectOptionVO : subjectOptionList) {
+				AnswerRecordEntity one = bean.getOne(Wrappers.<AnswerRecordEntity>lambdaQuery().
+					eq(AnswerRecordEntity::getAnswerOption, subjectOptionVO.getId())
+					.eq(AnswerRecordEntity::getPropertyId,subjectChoices.getPropertyId()));
+				if (one == null) {
+					continue;
+				}
+				if (one.getSubjectChoicesType().equals(3)) {
+					subjectOptionVO.setNumbers(one.getAnswer());
+				} else {
+					subjectChoicesVO.setChooseId(one.getAnswerOption());
+					break;
+				}
+			}
+		}
 		return page.setRecords(subjectChoicesVOS);
 	}
 
diff --git a/src/main/java/org/springblade/modules/subjectChoices/vo/SubjectChoicesVO.java b/src/main/java/org/springblade/modules/subjectChoices/vo/SubjectChoicesVO.java
index 6501f20..2857dec 100644
--- a/src/main/java/org/springblade/modules/subjectChoices/vo/SubjectChoicesVO.java
+++ b/src/main/java/org/springblade/modules/subjectChoices/vo/SubjectChoicesVO.java
@@ -36,6 +36,8 @@
 
 	private Long propertyId;
 
+	private Long chooseId;
+
 //	private List<SubjectOptionEntity> subjectOptionList;
 
 	private List<SubjectOptionVO> subjectOptionList;

--
Gitblit v1.9.3