diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java index 9f9af766..165b2aff 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java @@ -91,6 +91,8 @@ public class QuestionAnswerController extends BaseController { long score = (count - errCount) * 10; WechatUser wechatUser = wechatService.selectUserById(questionCount.getUserId()); if (Objects.nonNull(wechatUser)) { + wechatUser.setMedal(wechatUser.getMedal() == null ? "" : wechatUser.getMedal()); + wechatUser.setScore(wechatUser.getScore() == null ? 0L : wechatUser.getScore()); //判断用户分数是否达到等级勋章设定,有则更新勋章个数 long total = wechatUser.getScore() + score; List sceneMedals = sceneMedalService.selectSceneMedalList(new SceneMedal()); diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java index 1dee7e8e..bd7fddb5 100755 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java @@ -154,22 +154,23 @@ public class WechatLoginController extends BaseController { List sceneMedals = sceneMedalService.selectSceneMedalList(sceneMedal); if (CollectionUtils.isNotEmpty(sceneMedals)) { SceneMedal medalObj = sceneMedals.stream().findFirst().orElse(null); - // 判断用户是否已拥有该勋章 - WechatUser user = wechatService.selectUserById(wechatUser.getGuid()); - String medalStr = user.getMedal(); - if (Objects.nonNull(medalObj) && StringUtils.isNotEmpty(medalStr) && medalStr.contains(medalObj.getGuid())) { - // 已拥有直接返回 - return ZDResponse.success("0", null); + if (Objects.nonNull(medalObj)) { + // 判断用户是否已拥有该勋章 + WechatUser user = wechatService.selectUserById(wechatUser.getGuid()); + String medalStr = user.getMedal() == null ? "" : user.getMedal(); + if (StringUtils.isNotEmpty(medalStr) && medalStr.contains(medalObj.getGuid())) { + // 已拥有直接返回 + return ZDResponse.success("0", medalObj.getAchieveIconPath()); + } + // 否则更新 + medalStr = StringUtils.isNotEmpty(medalStr) ? medalStr + "," + medalObj.getGuid() : medalObj.getGuid(); + wechatUser.setMedal(medalStr); + wechatUser.setActive(0); + return wechatService.update(wechatUser) > 0 + ? ZDResponse.success("1", medalObj.getAchieveIconPath()) : ZDResponse.error("编辑失败"); } - // 否则更新 - medalStr = StringUtils.isNotEmpty(medalStr) ? medalStr + "," + medalObj.getGuid() : medalObj.getGuid(); - // medalStr += StringUtils.isNotEmpty(medalStr) ? "," + medalObj.getGuid() : medalObj.getGuid(); - wechatUser.setMedal(medalStr); - wechatUser.setActive(0); - return wechatService.update(wechatUser) > 0 - ? ZDResponse.success("1", medalObj.getAchieveIconPath()) : ZDResponse.error("编辑失败"); } - return ZDResponse.error("编辑失败"); + return ZDResponse.success(); } /** diff --git a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/SceneMedalMapper.xml b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/SceneMedalMapper.xml index 96756578..484db94a 100644 --- a/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/SceneMedalMapper.xml +++ b/lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/SceneMedalMapper.xml @@ -42,7 +42,7 @@ and name like concat('%', #{name}, '%') and scene_id = #{sceneId} and type = #{type} - and hide = #{hide} + and hide = #{hide} and creator = #{creator} and scene_id = #{sceneId}