This commit is contained in:
ls
2025-07-13 00:17:58 +08:00
parent 272c9bcda7
commit c88146106b
5 changed files with 17 additions and 3 deletions

View File

@@ -506,12 +506,12 @@ public class ExperimentController extends JeecgController<Experiment, IExperimen
ExperimentRating data = experimentRatingList.get(k); ExperimentRating data = experimentRatingList.get(k);
// 设置 rateUser1, rateUser2, rateUser3 // 设置 rateUser1, rateUser2, rateUser3
Field rateUserField = dto.getClass().getDeclaredField("rateUser" + (i + 1)); Field rateUserField = dto.getClass().getDeclaredField("rateUser" + (k + 1));
rateUserField.setAccessible(true); rateUserField.setAccessible(true);
rateUserField.set(dto, data.getRateUserName()); rateUserField.set(dto, data.getRateUserName());
// 设置 rateScore1, rateScore2, rateScore3 // 设置 rateScore1, rateScore2, rateScore3
Field rateScoreField = dto.getClass().getDeclaredField("rateScore" + (i + 1)); Field rateScoreField = dto.getClass().getDeclaredField("rateScore" + (k + 1));
rateScoreField.setAccessible(true); rateScoreField.setAccessible(true);
rateScoreField.set(dto, data.getTotalScore()); rateScoreField.set(dto, data.getTotalScore());
} }

View File

@@ -1,8 +1,12 @@
package org.jeecg.modules.database.mapper; package org.jeecg.modules.database.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.jeecg.modules.database.entity.ExperimentRating; import org.jeecg.modules.database.entity.ExperimentRating;
import java.util.List;
/** /**
* @Description: 试验评分 * @Description: 试验评分
* @Author: jeecg-boot * @Author: jeecg-boot
@@ -11,4 +15,7 @@ import org.jeecg.modules.database.entity.ExperimentRating;
*/ */
public interface ExperimentRatingMapper extends BaseMapper<ExperimentRating> { public interface ExperimentRatingMapper extends BaseMapper<ExperimentRating> {
@Select("SELECT * FROM experiment_rating where create_time=(select max(create_time) from experiment_rating where "
+ "experiment_id=#{experimentId}) and experiment_id=#{experimentId} order by create_time")
List<ExperimentRating> getLatestRating(@Param("experimentId") String experimentId);
} }

View File

@@ -14,4 +14,6 @@ import java.util.List;
public interface IExperimentRatingService extends IService<ExperimentRating> { public interface IExperimentRatingService extends IService<ExperimentRating> {
List<ExperimentRating> getByExperimentId(String experimentId); List<ExperimentRating> getByExperimentId(String experimentId);
List<ExperimentRating> getLatestRating(String experimentId);
} }

View File

@@ -23,4 +23,9 @@ public class ExperimentRatingServiceImpl extends ServiceImpl<ExperimentRatingMap
List<ExperimentRating> list = list(new LambdaQueryWrapper<ExperimentRating>().eq(ExperimentRating::getExperimentId, experimentId)); List<ExperimentRating> list = list(new LambdaQueryWrapper<ExperimentRating>().eq(ExperimentRating::getExperimentId, experimentId));
return list; return list;
} }
@Override
public List<ExperimentRating> getLatestRating(String experimentId) {
return baseMapper.getLatestRating(experimentId);
}
} }

View File

@@ -138,7 +138,7 @@ public class ExperimentServiceImpl extends ServiceImpl<ExperimentMapper, Experim
} else { } else {
experiment.setExperimentReportList(new ArrayList<>()); experiment.setExperimentReportList(new ArrayList<>());
} }
List<ExperimentRating> ratingList = experimentRatingService.getByExperimentId(experiment.getId()); List<ExperimentRating> ratingList = experimentRatingService.getLatestRating(experiment.getId());
if (CollUtil.isNotEmpty(ratingList)) { if (CollUtil.isNotEmpty(ratingList)) {
ratingList.forEach(this::fetchExperimentRateDetail); ratingList.forEach(this::fetchExperimentRateDetail);
experiment.setExperimentRatingList(ratingList); experiment.setExperimentRatingList(ratingList);