问答中心显示权限

This commit is contained in:
gaojiabao
2023-04-11 15:57:29 +08:00
parent 4396b0939b
commit 897502b4b0
3 changed files with 88 additions and 29 deletions
@@ -272,40 +272,90 @@ public class AskQuestionsController extends BaseController<AskQuestions> {
}
@PostMapping("/selectQuestionReplyInfo")
public ResponseMessage selectQuestionReplyInfo(String id){
public ResponseMessage selectQuestionReplyInfo(String id,String userId){
List<Object> objects = new ArrayList<>();
if(StringUtils.isNotBlank(id)){
if(StringUtils.isNotBlank(id) && StringUtils.isNotBlank(userId)){
Set<String> uIdSet = new HashSet<>();
AskQuestions askQuestions = askQuestionsService.getById(id);
QueryWrapper<Reply> replyQueryWrapper = new QueryWrapper<>();
replyQueryWrapper.eq("ASK_ID", id);
List<Reply> list = replyService.list(replyQueryWrapper);
List<String> uId = askQuestionsDao.getUId();
if(!list.isEmpty()){
for (Reply uid :list){
uIdSet.add(uid.getAnswerer());
}
}
if(!uId.isEmpty()){
for (String uid: uId){
uIdSet.add(uid);
}
}
if(askQuestions!=null) {
TsUser tsUser = tsUserDao.selectById(askQuestions.getQuestioner());
if(tsUser!=null){
askQuestions.setQuestioner(tsUser.getUname());
}
if(askQuestions.getClassification().equals("BUSINESS_STAND")){
askQuestions.setClassification("企业标准");
}
if(askQuestions.getClassification().equals("FOREIGN")){
askQuestions.setClassification("海外标准");
}
if(askQuestions.getClassification().equals("INLAND")){
askQuestions.setClassification("国内标准");
}
if(askQuestions.getClassification().equals("OTHER")){
askQuestions.setClassification("公共标准");
}
QueryWrapper<Reply> replyQueryWrapper = new QueryWrapper<>();
replyQueryWrapper.eq("ASK_ID", id);
List<Reply> list = replyService.list(replyQueryWrapper);
if(!list.isEmpty()){
for (Reply reply : list){
TsUser ruser = tsUserDao.selectById(reply.getAnswerer());
if(ruser!=null){
reply.setAnswerer(ruser.getUname());
uIdSet.add(askQuestions.getQuestioner());
//
for (String uid: uIdSet){
if(uid.equals(userId)){
TsUser tsUser = tsUserDao.selectById(askQuestions.getQuestioner());
if (tsUser != null) {
askQuestions.setQuestioner(tsUser.getUname());
}
if (askQuestions.getClassification().equals("BUSINESS_STAND")) {
askQuestions.setClassification("企业标准");
}
if (askQuestions.getClassification().equals("FOREIGN")) {
askQuestions.setClassification("海外标准");
}
if (askQuestions.getClassification().equals("INLAND")) {
askQuestions.setClassification("国内标准");
}
if (askQuestions.getClassification().equals("OTHER")) {
askQuestions.setClassification("公共标准");
}
QueryWrapper<Reply> replyQueryWrapperInfo = new QueryWrapper<>();
replyQueryWrapperInfo.eq("ASK_ID", id);
List<Reply> listInfo = replyService.list(replyQueryWrapperInfo);
if (!listInfo.isEmpty()) {
for (Reply reply : listInfo) {
TsUser ruser = tsUserDao.selectById(reply.getAnswerer());
if (ruser != null) {
reply.setAnswerer(ruser.getUname());
}
}
}
objects.add(askQuestions);
objects.add(listInfo);
return Result.success(objects);
}
}
//第三方人员 只能看到归档数据
// 问题存在则回填问题
TsUser tsUser = tsUserDao.selectById(askQuestions.getQuestioner());
if (tsUser != null) {
askQuestions.setQuestioner(tsUser.getUname());
}
if (askQuestions.getClassification().equals("BUSINESS_STAND")) {
askQuestions.setClassification("企业标准");
}
if (askQuestions.getClassification().equals("FOREIGN")) {
askQuestions.setClassification("海外标准");
}
if (askQuestions.getClassification().equals("INLAND")) {
askQuestions.setClassification("国内标准");
}
if (askQuestions.getClassification().equals("OTHER")) {
askQuestions.setClassification("公共标准");
}
QueryWrapper<Reply> replyQueryWrapperInfo = new QueryWrapper<>();
replyQueryWrapperInfo.eq("ASK_ID", id);
replyQueryWrapperInfo.eq("state","yes");
List<Reply> listInfo = replyService.list(replyQueryWrapperInfo);
objects.add(askQuestions);
objects.add(list);
objects.add(listInfo);
return Result.success(objects);
}else {
//问题不存在
return Result.success("0");
}
}
return Result.success(objects);
@@ -121,9 +121,19 @@ public class AskQuestionsServiceImpl extends ServiceImpl<AskQuestionsDao, AskQue
public List<Reply> getAskQuestionsByakId(String id,String state,String userId) {
String questioner = askQuestionsDao.selectBYAQId(id);
String answerer = askQuestionsDao.selectByRId(id,userId);
List<String> uId = askQuestionsDao.getUId();
if (userId.equals(questioner)||userId.equals(answerer)){
return askQuestionsDao.getAskQuestionsByakId(id,null);
}
// 当前人是法规部门的人
if(!uId.isEmpty()){
for (String uid :uId){
if(uid.equals(userId)){
return askQuestionsDao.getAskQuestionsByakId(id,null);
}
}
}
// 如果都不是则回填归档内容
return askQuestionsDao.getAskQuestionsById(id);
}
@@ -174,8 +174,7 @@ public class SarFileSplitInfoEOServiceImpl implements SarFileSplitInfoEOService
try {
AttFileEO attFileEO = attFileEOService.getFileInfo(sarFileSplitInfoEO.getAttId());
//String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName();
// String readFilePath = filePath + attFileEO.getFilePath() + attFileEO.getFileName();
String readFilePath = "C:/Users/syxy/Desktop/GB 1589-2016 汽车、挂车及汽车列车外廓尺寸、轴荷及质量限值.docx";
String readFilePath = filePath + attFileEO.getFilePath() + attFileEO.getFileName();
InputStream is = new FileInputStream(readFilePath); //需要将文件路更改为word文档所在路径。
XWPFDocument doc = new XWPFDocument(is);