From 7e6ca43fe1ee00d6239ff3dd85814e7062e3730d Mon Sep 17 00:00:00 2001 From: gaojiabao Date: Wed, 12 Apr 2023 16:07:23 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=20=E6=A0=87=E5=87=86?= =?UTF-8?q?=E9=97=AE=E7=AD=94=20=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AskQuestionsController.java | 33 ++++++++++ .../StandardQA/entity/AskQuestionsPage.java | 3 + .../service/AskQuestionsService.java | 4 +- .../service/impl/AskQuestionsServiceImpl.java | 64 +++++++++++++++++-- 4 files changed, 99 insertions(+), 5 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java index 98af36ae..a10509d5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java @@ -58,12 +58,45 @@ public class AskQuestionsController extends BaseController { @GetMapping("/getAskQuestionsPage") public ResponseMessage> getAskQuestionsPage(AskQuestionsPage askQuestions){ + askQuestions.setPage(1l); + askQuestions.setPageSize(1000l); + askQuestions.setUserId("aideyu"); + if(StringUtils.isBlank(askQuestions.getUserId())){ + return Result.error(); + } + Set askIdList = askQuestionsService.getAskQuestionsPage(askQuestions); + //查询出所有的回答 IPage iPage = new Page<>(); iPage.setSize(askQuestions.getPageSize()); iPage.setPages(askQuestions.getPage()); QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.orderByDesc("QUESTION_TIME"); + if(!askIdList.isEmpty()){ + queryWrapper.in("id",askIdList); + } IPage page = askQuestionsService.page(iPage,queryWrapper); + if(!page.getRecords().isEmpty()){ + for (AskQuestions data : page.getRecords()){ + if(StringUtils.isNotBlank(data.getQuestioner())){ + TsUser tsUser = tsUserDao.selectById(data.getQuestioner()); + data.setQuestioner(tsUser.getUname()); + } + if(StringUtils.isNotBlank(data.getClassification())){ + if (data.getClassification().equals("BUSINESS_STAND")) { + data.setClassification("企业标准"); + } + if (data.getClassification().equals("FOREIGN")) { + data.setClassification("海外标准"); + } + if (data.getClassification().equals("INLAND")) { + data.setClassification("国内标准"); + } + if (data.getClassification().equals("OTHER")) { + data.setClassification("公共标准"); + } + } + } + } return Result.success(page); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java index 7c3ee0f8..c3e60d73 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java @@ -42,4 +42,7 @@ public class AskQuestionsPage { @ApiModelProperty(value = "标准ID") private String appendixName; + + @ApiModelProperty(value = "登录人") + private String userId; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java index 1b349281..33587c73 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java @@ -4,10 +4,12 @@ import com.adc.da.slrs.NewsFeed.entity.NewsFeed; import com.adc.da.slrs.StandardQA.entity.AskQuestions; import com.adc.da.slrs.StandardQA.entity.AskQuestionsPage; import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.util.http.ResponseMessage; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; +import java.util.Set; /** * @Author: qk @@ -31,5 +33,5 @@ public interface AskQuestionsService extends IService { List getArchiveAskQuestions(String id); List getAskQuestionsByakId(String id,String state,String userId); - + Set getAskQuestionsPage(AskQuestionsPage askQuestions); } 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 7958c3b1..aa50e6b3 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 @@ -3,11 +3,10 @@ package com.adc.da.slrs.StandardQA.service.Impl; import com.adc.da.slrs.StandardQA.dao.AskQuestionsDao; import com.adc.da.slrs.StandardQA.dao.ReplyDao; -import com.adc.da.slrs.StandardQA.entity.AskQuestions; -import com.adc.da.slrs.StandardQA.entity.AskQuestionsPage; -import com.adc.da.slrs.StandardQA.entity.AskQuestionsReplyVO; -import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.entity.*; import com.adc.da.slrs.StandardQA.service.AskQuestionsService; +import com.adc.da.slrs.sarUser.dao.TsUserDao; +import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.entity.UpDTO; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.util.http.ResponseMessage; @@ -24,7 +23,10 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * @Author: qk @@ -44,6 +46,13 @@ public class AskQuestionsServiceImpl extends ServiceImpl getAskQuestions(AskQuestions askQuestions) { return askQuestionsDao.getAskQuestions(askQuestions); @@ -137,6 +146,53 @@ 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); + } + } + } + askQuestionsList.removeAll(askList.stream().distinct().collect(Collectors.toList())); + Set askIdList = new HashSet<>(); + //所有没有回答的问题 + for (AskQuestions ask: askQuestionsList){ + askIdList.add(ask.getId()); + } + //查询出所有的回答 + return askIdList; + } + } + // 不是法规部门 但是被邀请回答 + 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()); + } + // 邀请当前人回答 + QueryWrapper objectQueryWrapper = new QueryWrapper<>(); + objectQueryWrapper.eq("USID",askQuestions.getUserId()); + List askUsers = askUserService.list(objectQueryWrapper); + for (AskUser askUser: askUsers){ + askIdList.add(askUser.getAsdId()); + } + //查询出所有的回答 + return askIdList; + } + public ResponseMessage selectAskReply(String id) { ArrayList objects = new ArrayList<>();