你好啊
This commit is contained in:
parent
4b66fa8c0c
commit
b2fb7e72c9
|
@ -312,6 +312,29 @@ public class QuestionController {
|
|||
}
|
||||
return R.error(result);
|
||||
}
|
||||
@GetMapping("/search_sharedQuestionType")
|
||||
public R searchSharedQuestionType(String searchName){
|
||||
List<SharedQuestionBankDto> sharedQuestionBankDtoList = sharedQuestionBankService.searchSharedQuestionType(searchName);
|
||||
return R.success(sharedQuestionBankDtoList);
|
||||
}
|
||||
@GetMapping("/search_sharedQuestion")
|
||||
public R searchSharedQuestion(String searchName){
|
||||
List<SharedQuestionDto> sharedQuestionDtos = sharedQuestionService.searchSharedQuestion(searchName);
|
||||
return R.success(sharedQuestionDtos);
|
||||
|
||||
}
|
||||
@PostMapping("/add_QuestionBankFromShare")
|
||||
public R addQuestionBankFromShare(@RequestBody Map<String,Object> addInfo){
|
||||
List<Integer> sharedBankIds = (List<Integer>) addInfo.get("SharedBankIds");
|
||||
Integer userId =(Integer) addInfo.get("userId");
|
||||
String encoding =(String) addInfo.get("encoding");
|
||||
String result=sharedQuestionBankService.addQuestionTypeFromShare(sharedBankIds,userId,encoding);
|
||||
|
||||
if(result.equals("题库:/n题目:已存在添加题库中")){
|
||||
return R.success("添加成功");
|
||||
}
|
||||
return R.error(result);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -37,4 +37,21 @@ public interface SharedQuestionBankService extends IService<SharedQuestionBank>
|
|||
*/
|
||||
SharedQuestionBank getShareQuestionTypeByCompany(String encoding);
|
||||
|
||||
/**
|
||||
* 根据题库名称搜索分享题库
|
||||
* @param searchName 题库名称
|
||||
* @return 分享题库列表
|
||||
*/
|
||||
List<SharedQuestionBankDto> searchSharedQuestionType(String searchName);
|
||||
|
||||
/**
|
||||
* 根据分享题库添加题库
|
||||
* @param SharedBankIds
|
||||
* @param userId
|
||||
* @param encoding
|
||||
* @return 题库
|
||||
*/
|
||||
|
||||
String addQuestionTypeFromShare(List<Integer>SharedBankIds,Integer userId,String encoding);
|
||||
|
||||
}
|
||||
|
|
|
@ -23,4 +23,13 @@ public interface SharedQuestionService extends IService<SharedQuestion> {
|
|||
|
||||
List<SharedQuestionDto> getSharedQuestionListBySharedBankId(Integer SharedBankId);
|
||||
|
||||
/**
|
||||
* 根据分享题目名称搜索分享题目
|
||||
* @param searchName
|
||||
* @return 分享的题目
|
||||
*/
|
||||
List<SharedQuestionDto> searchSharedQuestion(String searchName);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -3,12 +3,12 @@ package com.yzdx.AiInterviewer.service.impl;
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.yzdx.AiInterviewer.comment.R;
|
||||
import com.yzdx.AiInterviewer.entity.BaseEntity;
|
||||
import com.yzdx.AiInterviewer.entity.Company;
|
||||
import com.yzdx.AiInterviewer.entity.SharedQuestionBank;
|
||||
import com.yzdx.AiInterviewer.entity.User;
|
||||
import com.yzdx.AiInterviewer.entity.*;
|
||||
import com.yzdx.AiInterviewer.entity.dto.SharedQuestionBankDto;
|
||||
import com.yzdx.AiInterviewer.mapper.QuestionBankMapper;
|
||||
import com.yzdx.AiInterviewer.mapper.QuestionMapper;
|
||||
import com.yzdx.AiInterviewer.mapper.SharedQuestionBankMapper;
|
||||
import com.yzdx.AiInterviewer.mapper.SharedQuestionMapper;
|
||||
import com.yzdx.AiInterviewer.service.CompanyService;
|
||||
import com.yzdx.AiInterviewer.service.SharedQuestionBankService;
|
||||
import com.yzdx.AiInterviewer.service.UserService;
|
||||
|
@ -17,6 +17,7 @@ import org.springframework.beans.BeanUtils;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
@ -28,6 +29,12 @@ public class SharedQuestionBankServiceImpl extends ServiceImpl<SharedQuestionBan
|
|||
private CompanyService companyService;
|
||||
@Autowired
|
||||
private UserService userService;
|
||||
@Autowired
|
||||
private QuestionBankMapper questionBankMapper;
|
||||
@Autowired
|
||||
private SharedQuestionMapper sharedQuestionMapper;
|
||||
@Autowired
|
||||
private QuestionMapper questionMapper;
|
||||
|
||||
|
||||
@Override
|
||||
|
@ -115,5 +122,106 @@ public class SharedQuestionBankServiceImpl extends ServiceImpl<SharedQuestionBan
|
|||
return sharedQuestionBank;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SharedQuestionBankDto> searchSharedQuestionType(String searchName) {
|
||||
LambdaQueryWrapper<SharedQuestionBank> queryWrapper=new LambdaQueryWrapper<>();
|
||||
queryWrapper.like(SharedQuestionBank::getTypeName,searchName);
|
||||
List<SharedQuestionBank> sharedQuestionBanks = sharedQuestionBankMapper.selectList(queryWrapper);
|
||||
List<SharedQuestionBankDto> sharedQuestionBankDtos=sharedQuestionBanks.stream().map(item->{
|
||||
SharedQuestionBankDto sharedQuestionBankDto=new SharedQuestionBankDto();
|
||||
|
||||
BeanUtils.copyProperties(item,sharedQuestionBankDto);
|
||||
|
||||
Company companyDetail = companyService.getCompanyDetail(sharedQuestionBankDto.getCreateCompany());
|
||||
|
||||
sharedQuestionBankDto.setCreateCompany(null);
|
||||
|
||||
sharedQuestionBankDto.setCreateCompanyName(companyDetail.getCompanyName());
|
||||
|
||||
User createUser = userService.getUserById(sharedQuestionBankDto.getCreateUser());
|
||||
|
||||
sharedQuestionBankDto.setCreateUserName(createUser.getUsername());
|
||||
|
||||
User updateUser = userService.getUserById(sharedQuestionBankDto.getUpdateUser());
|
||||
|
||||
sharedQuestionBankDto.setUpdateUserName(updateUser.getUsername());
|
||||
|
||||
return sharedQuestionBankDto;
|
||||
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
return sharedQuestionBankDtos;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String addQuestionTypeFromShare(List<Integer>SharedBankIds, Integer userId, String encoding) {
|
||||
String bankResult="题库:";
|
||||
String questionResult="题目:";
|
||||
//遍历分享题库id
|
||||
for (Integer SharedBankId:SharedBankIds) {
|
||||
//根据分享题库id查找每条分享题库的信息
|
||||
LambdaQueryWrapper<SharedQuestionBank> queryWrapper=new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SharedQuestionBank::getId,SharedBankId);
|
||||
SharedQuestionBank sharedQuestionBank = sharedQuestionBankMapper.selectOne(queryWrapper);
|
||||
//根据分享题库的信息添加题库信息
|
||||
LambdaQueryWrapper<QuestionBank> queryWrapper1=new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(QuestionBank::getTypeName,sharedQuestionBank.getTypeName());
|
||||
QuestionBank questionBank1 = questionBankMapper.selectOne(queryWrapper1);
|
||||
if (questionBank1!=null){
|
||||
bankResult=bankResult+sharedQuestionBank.getTypeName();
|
||||
continue;
|
||||
}
|
||||
QuestionBank questionBank=new QuestionBank();
|
||||
questionBank.setTypeName(sharedQuestionBank.getTypeName());
|
||||
questionBank.setType(sharedQuestionBank.getType());
|
||||
questionBank.setDescription(sharedQuestionBank.getDescription());
|
||||
questionBank.setCompanyEncoding(encoding);
|
||||
questionBank.setCreateUser(userId);
|
||||
questionBank.setUpdateUser(userId);
|
||||
questionBank.setCreateTime(TimeUtil.getTime());
|
||||
questionBank.setUpdateTime(TimeUtil.getTime());
|
||||
//将新数据插入到题库中
|
||||
questionBankMapper.insert(questionBank);
|
||||
//根据题库名字,公司编码查找题库中的题库id
|
||||
LambdaQueryWrapper<QuestionBank> queryWrapper2=new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(QuestionBank::getTypeName,sharedQuestionBank.getTypeName()).eq(QuestionBank::getCompanyEncoding,encoding);
|
||||
QuestionBank questionBank2 = questionBankMapper.selectOne(queryWrapper2);
|
||||
Integer bankId = questionBank2.getId();
|
||||
//根据题库id查找分享题目的信息
|
||||
LambdaQueryWrapper<SharedQuestion> queryWrapper3=new LambdaQueryWrapper<>();
|
||||
queryWrapper3.eq(SharedQuestion::getBankId,sharedQuestionBank.getId());
|
||||
List<SharedQuestion> sharedQuestions = sharedQuestionMapper.selectList(queryWrapper3);
|
||||
for (SharedQuestion sharedQuestion:
|
||||
sharedQuestions) {
|
||||
//根据题目信息添加题目
|
||||
LambdaQueryWrapper<Question> queryWrapper4=new LambdaQueryWrapper<>();
|
||||
queryWrapper4.eq(Question::getTitle,sharedQuestion.getTitle()).eq(Question::getCompanyEncoding,encoding);
|
||||
Question questions = questionMapper.selectOne(queryWrapper4);
|
||||
if(questions!=null){
|
||||
questionResult=questionResult+sharedQuestion.getTitle();
|
||||
continue;
|
||||
}
|
||||
Question question=new Question();
|
||||
question.setDetails(sharedQuestion.getDetails());
|
||||
question.setBankId(bankId);
|
||||
question.setPromote(sharedQuestion.getPromote());
|
||||
question.setCompanyEncoding(encoding);
|
||||
question.setTitle(sharedQuestion.getTitle());
|
||||
question.setCreateTime(TimeUtil.getTime());
|
||||
question.setUpdateTime(TimeUtil.getTime());
|
||||
question.setCreateUser(userId);
|
||||
question.setUpdateUser(userId);
|
||||
questionMapper.insert(question);
|
||||
}
|
||||
|
||||
}
|
||||
return bankResult+"/n"+questionResult+"已存在添加题库中";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -152,5 +152,39 @@ public class SharedQuestionServiceImpl extends ServiceImpl<SharedQuestionMapper,
|
|||
return sharedQuestionDtos;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SharedQuestionDto> searchSharedQuestion(String searchName) {
|
||||
LambdaQueryWrapper<SharedQuestion> sharedQuestionLambdaQueryWrapper =new LambdaQueryWrapper<>();
|
||||
sharedQuestionLambdaQueryWrapper.like(SharedQuestion::getTitle,searchName);
|
||||
List<SharedQuestion> list = sharedQuestionMapper.selectList(sharedQuestionLambdaQueryWrapper);
|
||||
List<SharedQuestionDto> sharedQuestionDtos=list.stream().map(item->{
|
||||
SharedQuestionDto sharedQuestionDto=new SharedQuestionDto();
|
||||
|
||||
BeanUtils.copyProperties(item,sharedQuestionDto);
|
||||
|
||||
User findCreateUser = userService.getUserById(sharedQuestionDto.getCreateUser());
|
||||
|
||||
sharedQuestionDto.setCreateUserName(findCreateUser.getUsername());
|
||||
|
||||
User findUpdateUser = userService.getUserById(sharedQuestionDto.getUpdateUser());
|
||||
|
||||
sharedQuestionDto.setUpdateUserName(findUpdateUser.getUsername());
|
||||
|
||||
SharedQuestionBank sharedQuestionBankById = sharedQuestionBankService.getSharedQuestionBankById(sharedQuestionDto.getBankId());
|
||||
|
||||
sharedQuestionDto.setSharedQuestionBankName(sharedQuestionBankById.getTypeName());
|
||||
|
||||
Company companyDetail = companyService.getCompanyDetail(sharedQuestionDto.getCreateCompany());
|
||||
|
||||
sharedQuestionDto.setCreateCompanyName(companyDetail.getCompanyName());
|
||||
|
||||
return sharedQuestionDto;
|
||||
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
return sharedQuestionDtos;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue