diff --git a/src/main/java/com/yzdx/AiInterviewer/controller/QuestionController.java b/src/main/java/com/yzdx/AiInterviewer/controller/QuestionController.java index 3633647..6dc8914 100644 --- a/src/main/java/com/yzdx/AiInterviewer/controller/QuestionController.java +++ b/src/main/java/com/yzdx/AiInterviewer/controller/QuestionController.java @@ -7,10 +7,7 @@ import com.yzdx.AiInterviewer.entity.SharedQuestionBank; import com.yzdx.AiInterviewer.entity.dto.QuestionDto; import com.yzdx.AiInterviewer.entity.dto.SharedQuestionBankDto; import com.yzdx.AiInterviewer.entity.dto.SharedQuestionDto; -import com.yzdx.AiInterviewer.service.QuestionBankService; -import com.yzdx.AiInterviewer.service.QuestionService; -import com.yzdx.AiInterviewer.service.SharedQuestionBankService; -import com.yzdx.AiInterviewer.service.SharedQuestionService; +import com.yzdx.AiInterviewer.service.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; @@ -34,6 +31,7 @@ public class QuestionController { @Autowired private SharedQuestionService sharedQuestionService; + /** * 获取题库列表 * @param encoding 公司编码 @@ -347,7 +345,16 @@ public class QuestionController { } return R.error(result); } - + @GetMapping("/get_OurQuestionTypeList") + public R getOurSharedQuestionTypeList(String encoding){ + List ourQuestionTypeList = sharedQuestionBankService.getOurQuestionTypeList(encoding); + return R.success(ourQuestionTypeList); + } + @GetMapping("/search_OurSharedQuestionType") + public R searchOurSharedQuestionType(String encoding,String searchName){ + List sharedQuestionBankDtoList = sharedQuestionBankService.searchOurSharedQuestionType(encoding, searchName); + return R.success(sharedQuestionBankDtoList); + } diff --git a/src/main/java/com/yzdx/AiInterviewer/service/SharedQuestionBankService.java b/src/main/java/com/yzdx/AiInterviewer/service/SharedQuestionBankService.java index 96a8210..2b9c944 100644 --- a/src/main/java/com/yzdx/AiInterviewer/service/SharedQuestionBankService.java +++ b/src/main/java/com/yzdx/AiInterviewer/service/SharedQuestionBankService.java @@ -53,5 +53,19 @@ public interface SharedQuestionBankService extends IService */ String addQuestionTypeFromShare(ListSharedBankIds,Integer userId,String encoding); + /** + * 根据公司编码获取本公司分享的题库 + * @param encoding + * @return 题库列表 + */ + List getOurQuestionTypeList(String encoding); + + /** + * 根据公司编码和题库名称搜索题库 + * @param encoding + * @param searchName + * @return 题库列表 + */ + List searchOurSharedQuestionType(String encoding,String searchName); } diff --git a/src/main/java/com/yzdx/AiInterviewer/service/impl/SharedQuestionBankServiceImpl.java b/src/main/java/com/yzdx/AiInterviewer/service/impl/SharedQuestionBankServiceImpl.java index eb1099b..2c23b0f 100644 --- a/src/main/java/com/yzdx/AiInterviewer/service/impl/SharedQuestionBankServiceImpl.java +++ b/src/main/java/com/yzdx/AiInterviewer/service/impl/SharedQuestionBankServiceImpl.java @@ -217,6 +217,67 @@ public class SharedQuestionBankServiceImpl extends ServiceImpl getOurQuestionTypeList(String encoding) { + LambdaQueryWrapper queryWrapper=new LambdaQueryWrapper<>(); + queryWrapper.eq(SharedQuestionBank::getCreateCompany,encoding); + List sharedQuestionBanks = sharedQuestionBankMapper.selectList(queryWrapper); + List 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 List searchOurSharedQuestionType(String encoding, String searchName) { + LambdaQueryWrapper queryWrapper=new LambdaQueryWrapper<>(); + queryWrapper.like(SharedQuestionBank::getCreateCompany,encoding).like(SharedQuestionBank::getTypeName,searchName); + List sharedQuestionBanks = sharedQuestionBankMapper.selectList(queryWrapper); + List 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; + }