From 09764af4a0db12a3d85cac2baff27c8f4a384032 Mon Sep 17 00:00:00 2001 From: gaojiabao Date: Thu, 13 Apr 2023 10:58:32 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=20=E9=97=AE=E7=AD=94=20?= =?UTF-8?q?=E6=B3=95=E8=A7=84=E9=83=A8=E9=97=A8=E5=8F=AF=E7=9C=8B=E6=89=80?= =?UTF-8?q?=E6=9C=89=E6=9C=AA=E5=9B=9E=E7=AD=94=E9=97=AE=E9=A2=98=EF=BC=8C?= =?UTF-8?q?=E5=85=B6=E4=BD=99=E4=BA=BA=E5=8F=AF=E8=A7=81=E8=87=AA=E5=B7=B1?= =?UTF-8?q?=E6=8F=90=E9=97=AE=E6=9C=AA=E5=9B=9E=E7=AD=94=EF=BC=8C=E9=82=80?= =?UTF-8?q?=E8=AF=B7=E4=BA=BA=E5=8F=AF=E8=A7=81=20=E8=87=AA=E5=B7=B1?= =?UTF-8?q?=E6=9C=AA=E8=83=BD=E5=9B=9E=E7=AD=94=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AskQuestionsServiceImpl.java | 69 ++++++++++++------- 1 file changed, 43 insertions(+), 26 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java index aa50e6b3..e876cca4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java @@ -150,44 +150,61 @@ public class AskQuestionsServiceImpl extends ServiceImpl getAskQuestionsPage(AskQuestionsPage askQuestions) { //当前人是法规部门 则返回未被回答的提问信息 List uId = askQuestionsDao.getUId(); - for (String uid : uId){ - if(uid.equals(askQuestions.getUserId())){ - //查询所有的问 答 - List askQuestionsList = baseMapper.selectList(null); - List repLies = replyDao.selectList(null); - List askList = new ArrayList<>(); - for (AskQuestions ask: askQuestionsList){ - for (Reply reply: repLies){ - if(ask.getId().equals(reply.getAskId())){ - askList.add(ask); + if(!uId.isEmpty()) { + for (String uid : uId) { + if (uid.equals(askQuestions.getUserId())) { + //查询所有的问 答 + List askQuestionsList = baseMapper.selectList(null); + List repLies = replyDao.selectList(null); + List askList = new ArrayList<>(); + for (AskQuestions ask : askQuestionsList) { + for (Reply reply : repLies) { + if (ask.getId().equals(reply.getAskId())) { + askList.add(ask); + } } } + askQuestionsList.removeAll(askList.stream().distinct().collect(Collectors.toList())); + Set askIdList = new HashSet<>(); + //所有没有回答的问题 + for (AskQuestions ask : askQuestionsList) { + askIdList.add(ask.getId()); + } + return askIdList; } - askQuestionsList.removeAll(askList.stream().distinct().collect(Collectors.toList())); - Set askIdList = new HashSet<>(); - //所有没有回答的问题 - for (AskQuestions ask: askQuestionsList){ - askIdList.add(ask.getId()); - } - //查询出所有的回答 - return askIdList; } } - // 不是法规部门 但是被邀请回答 + // 不是法规部门 但是被邀请回答 和自己的提问 + // 当前人的提问 + Set askIdList = new HashSet<>(); QueryWrapper askQuestionsQueryWrapper = new QueryWrapper<>(); askQuestionsQueryWrapper.eq("QUESTIONER",askQuestions.getUserId()); List askQuestionsList = baseMapper.selectList(askQuestionsQueryWrapper); - Set askIdList = new HashSet<>(); - //所有没有回答的问题 - for (AskQuestions ask: askQuestionsList){ - askIdList.add(ask.getId()); + // 当前人的提问没有被回答的 + if(!askQuestionsList.isEmpty()) { + for (AskQuestions ask :askQuestionsList) { + QueryWrapper replyQueryWrapper = new QueryWrapper<>(); + replyQueryWrapper.eq("ASK_ID",ask.getId()); + List replies = replyDao.selectList(replyQueryWrapper); + if(replies.isEmpty()){ + askIdList.add(ask.getId()); + } + } } - // 邀请当前人回答 + //邀请当前人回答 当前人未回答 QueryWrapper objectQueryWrapper = new QueryWrapper<>(); objectQueryWrapper.eq("USID",askQuestions.getUserId()); List askUsers = askUserService.list(objectQueryWrapper); - for (AskUser askUser: askUsers){ - askIdList.add(askUser.getAsdId()); + if(!askUsers.isEmpty()){ + for (AskUser ask :askUsers) { + QueryWrapper replyQueryWrapper = new QueryWrapper<>(); + replyQueryWrapper.eq("ASK_ID",ask.getAsdId()); + replyQueryWrapper.eq("ANSWERER",askQuestions.getUserId()); + List replies = replyDao.selectList(replyQueryWrapper); + if(replies.isEmpty()){ + askIdList.add(ask.getAsdId()); + } + } } //查询出所有的回答 return askIdList;