🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
(1)评分以10分制,当有记录时,评分求平均值并取整;否则为7。关键代码如下: ~~~ if (list.isEmpty()) { return AjaxResult.success(7); } else { long sum = list.stream().mapToLong(UserRank::getScore).sum(); return AjaxResult.success(sum / list.size()); } ~~~ (2)提交评分时,当评分已存在时,更新。代码如下: ~~~ ... UserRank one = iUserRankService.getOne(objectLambdaQueryWrapper); if (Objects.nonNull(one)) { userRank.setId(one.getId()); return toAjax(iUserRankService.updateById(userRank) ? 1 : 0); } ... return toAjax(iUserRankService.save(userRank) ? 1 : 0); ~~~ (2)前台基于element-ui的评分组件,关键代码如下: ~~~ <div class="album-score"> <div> <h3>歌单评分:</h3> <div> <el-rate v-model="value5" disabled></el-rate> </div> </div> <span>{{value5 * 2}}</span> <div> <h3>评价:</h3> <div @click="pushValue()"> <el-rate v-model="value3" show-text allow-half></el-rate> </div> </div> </div> ~~~ (3)实现效果,如图所示: ![](https://img.kancloud.cn/da/20/da20d5ac805cb8e372999a053969357b_465x85.png)