添加分类的controller
This commit is contained in:
0
.gitignore
vendored
Normal file → Executable file
0
.gitignore
vendored
Normal file → Executable file
@@ -1,135 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class="dashboard-container">
|
|
||||||
<!-- 欢迎横幅 -->
|
|
||||||
<el-card shadow="never" class="welcome-banner">
|
|
||||||
<div class="welcome-content">
|
|
||||||
<div class="welcome-text">
|
|
||||||
<h2>欢迎回来!</h2>
|
|
||||||
<p>准备好开始您的下一次模拟面试了吗?在这里管理您的题库,不断提升面试技巧。</p>
|
|
||||||
</div>
|
|
||||||
<img src="/src/assets/dashboard-hero.svg" alt="仪表盘插图" class="welcome-illustration" />
|
|
||||||
</div>
|
|
||||||
</el-card>
|
|
||||||
|
|
||||||
<!-- 功能导航 -->
|
|
||||||
<div class="feature-grid">
|
|
||||||
<router-link to="/interview" class="feature-card-link">
|
|
||||||
<el-card shadow="hover" class="feature-card">
|
|
||||||
<div class="card-content">
|
|
||||||
<el-icon class="card-icon" style="background-color: #ecf5ff; color: #409eff;"><ChatLineRound /></el-icon>
|
|
||||||
<div class="text-content">
|
|
||||||
<h3>开始模拟面试</h3>
|
|
||||||
<p>上传简历,与AI进行实战演练</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</el-card>
|
|
||||||
</router-link>
|
|
||||||
|
|
||||||
<router-link to="/question-bank" class="feature-card-link">
|
|
||||||
<el-card shadow="hover" class="feature-card">
|
|
||||||
<div class="card-content">
|
|
||||||
<el-icon class="card-icon" style="background-color: #f0f9eb; color: #67c23a;"><MessageBox /></el-icon>
|
|
||||||
<div class="text-content">
|
|
||||||
<h3>题库管理</h3>
|
|
||||||
<p>新增、编辑和导入您的面试题库</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</el-card>
|
|
||||||
</router-link>
|
|
||||||
|
|
||||||
<router-link to="/history" class="feature-card-link">
|
|
||||||
<el-card shadow="hover" class="feature-card">
|
|
||||||
<div class="card-content">
|
|
||||||
<el-icon class="card-icon" style="background-color: #fdf6ec; color: #e6a23c;"><Finished /></el-icon>
|
|
||||||
<div class="text-content">
|
|
||||||
<h3>面试历史</h3>
|
|
||||||
<p>查看过往的面试记录与AI复盘报告</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</el-card>
|
|
||||||
</router-link>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script setup>
|
|
||||||
// 导入Element Plus图标
|
|
||||||
import { ChatLineRound, MessageBox, Finished } from '@element-plus/icons-vue';
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style scoped>
|
|
||||||
/* 仪表盘容器 */
|
|
||||||
.dashboard-container {
|
|
||||||
padding: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 欢迎横幅 */
|
|
||||||
.welcome-banner {
|
|
||||||
border: none;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.welcome-content {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.welcome-text h2 {
|
|
||||||
font-size: 1.8em;
|
|
||||||
margin-top: 0;
|
|
||||||
color: #303133;
|
|
||||||
}
|
|
||||||
|
|
||||||
.welcome-text p {
|
|
||||||
color: #606266;
|
|
||||||
font-size: 1.1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.welcome-illustration {
|
|
||||||
width: 200px;
|
|
||||||
height: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 功能网格布局 */
|
|
||||||
.feature-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
|
|
||||||
gap: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.feature-card-link {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.feature-card .card-content {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 20px;
|
|
||||||
transition: transform 0.3s, box-shadow 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.feature-card:hover {
|
|
||||||
transform: translateY(-5px);
|
|
||||||
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-icon {
|
|
||||||
font-size: 32px;
|
|
||||||
padding: 15px;
|
|
||||||
border-radius: 50%;
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.text-content h3 {
|
|
||||||
margin: 0 0 8px 0;
|
|
||||||
color: #303133;
|
|
||||||
font-size: 1.1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.text-content p {
|
|
||||||
margin: 0;
|
|
||||||
color: #909399;
|
|
||||||
font-size: 0.9em;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
0
sql/.idea/.gitignore
generated
vendored
Normal file → Executable file
0
sql/.idea/.gitignore
generated
vendored
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/AiInterviewApplication.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/AiInterviewApplication.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/entity/Message.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/entity/Message.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/AIClientFactory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/AIClientFactory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/AIClientManager.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/AIClientManager.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/DeepSeekClientFactory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/DeepSeekClientFactory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/QwenClientFactory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/factory/QwenClientFactory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/service/AIClientService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/service/AIClientService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/service/impl/DeepSeekClientServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/service/impl/DeepSeekClientServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/service/impl/QwenClientServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/ai/service/impl/QwenClientServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/constants/AIStrategyConstant.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/constants/AIStrategyConstant.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/constants/CommonConstant.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/constants/CommonConstant.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/constants/QwenModelConstant.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/constants/QwenModelConstant.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/enums/CommonStateEnum.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/enums/CommonStateEnum.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/ex/ApiException.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/ex/ApiException.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/ex/GlobalErrorHandler.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/ex/GlobalErrorHandler.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/res/IErrorCode.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/res/IErrorCode.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/res/R.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/res/R.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/res/ResultCode.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/res/ResultCode.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/service/HttpService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/service/HttpService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/service/impl/HttpServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/service/impl/HttpServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/utils/AIUtils.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/utils/AIUtils.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/utils/SpringApplicationContextUtil.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/utils/SpringApplicationContextUtil.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/utils/TreeUtil.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/common/utils/TreeUtil.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/DashScopeConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/DashScopeConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/JacksonConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/JacksonConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/MyBatisPlusConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/MyBatisPlusConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/WebClientConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/config/WebClientConfig.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/AiSessionLogController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/AiSessionLogController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/DashboardController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/DashboardController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/InterviewController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/InterviewController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/InterviewQuestionProgressController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/InterviewQuestionProgressController.java
Normal file → Executable file
148
src/main/java/com/qingqiu/interview/controller/QuestionCategoryController.java
Normal file → Executable file
148
src/main/java/com/qingqiu/interview/controller/QuestionCategoryController.java
Normal file → Executable file
@@ -1,15 +1,159 @@
|
|||||||
package com.qingqiu.interview.controller;
|
package com.qingqiu.interview.controller;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import com.qingqiu.interview.common.res.R;
|
||||||
|
import com.qingqiu.interview.dto.QuestionCategoryDTO;
|
||||||
|
import com.qingqiu.interview.dto.QuestionCategoryPageParams;
|
||||||
|
import com.qingqiu.interview.entity.QuestionCategory;
|
||||||
import com.qingqiu.interview.service.IQuestionCategoryService;
|
import com.qingqiu.interview.service.IQuestionCategoryService;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/v1/question-category")
|
@RequestMapping("/api/v1/question-category")
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class QuestionCategoryController {
|
public class QuestionCategoryController {
|
||||||
|
|
||||||
private final IQuestionCategoryService questionCategoryService;
|
private final IQuestionCategoryService questionCategoryService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取分类树列表
|
||||||
|
*/
|
||||||
|
@GetMapping("/tree-list")
|
||||||
|
public R<List<QuestionCategory>> getTreeList() {
|
||||||
|
try {
|
||||||
|
List<QuestionCategory> list = questionCategoryService.getTreeList();
|
||||||
|
return R.success(list);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("获取分类树列表失败", e);
|
||||||
|
return R.error("获取分类树列表失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取分类选项
|
||||||
|
*/
|
||||||
|
@GetMapping("/options")
|
||||||
|
public R<List<QuestionCategory>> getOptions() {
|
||||||
|
try {
|
||||||
|
List<QuestionCategory> options = questionCategoryService.getOptions();
|
||||||
|
return R.success(options);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("获取分类选项失败", e);
|
||||||
|
return R.error("获取分类选项失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取分类详情
|
||||||
|
*/
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public R<QuestionCategory> getDetail(@PathVariable Long id) {
|
||||||
|
try {
|
||||||
|
QuestionCategory category = questionCategoryService.getCategoryDetail(id);
|
||||||
|
return R.success(category);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("获取分类详情失败", e);
|
||||||
|
return R.error("获取分类详情失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查询分类
|
||||||
|
*/
|
||||||
|
@GetMapping("/page")
|
||||||
|
public R<Page<QuestionCategory>> getPage(QuestionCategoryPageParams query) {
|
||||||
|
try {
|
||||||
|
Page<QuestionCategory> pageR = questionCategoryService.getCategoryPage(query);
|
||||||
|
return R.success(pageR);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("分页查询分类失败", e);
|
||||||
|
return R.error("分页查询分类失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建分类
|
||||||
|
*/
|
||||||
|
@PostMapping
|
||||||
|
public R<Long> create(@Validated @RequestBody QuestionCategoryDTO dto) {
|
||||||
|
try {
|
||||||
|
Long id = questionCategoryService.createCategory(dto);
|
||||||
|
return R.success(id);
|
||||||
|
} catch (RuntimeException e) {
|
||||||
|
log.error("创建分类失败", e);
|
||||||
|
return R.error(e.getMessage());
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("创建分类失败", e);
|
||||||
|
return R.error("创建分类失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新分类
|
||||||
|
*/
|
||||||
|
@PutMapping("/{id}")
|
||||||
|
public R<Void> update(@PathVariable Long id, @Validated @RequestBody QuestionCategoryDTO dto) {
|
||||||
|
try {
|
||||||
|
questionCategoryService.updateCategory(id, dto);
|
||||||
|
return R.success();
|
||||||
|
} catch (RuntimeException e) {
|
||||||
|
log.error("更新分类失败", e);
|
||||||
|
return R.error(e.getMessage());
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("更新分类失败", e);
|
||||||
|
return R.error("更新分类失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除分类
|
||||||
|
*/
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public R<Void> delete(@PathVariable Long id) {
|
||||||
|
try {
|
||||||
|
questionCategoryService.deleteCategory(id);
|
||||||
|
return R.success();
|
||||||
|
} catch (RuntimeException e) {
|
||||||
|
log.error("删除分类失败", e);
|
||||||
|
return R.error(e.getMessage());
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("删除分类失败", e);
|
||||||
|
return R.error("删除分类失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新分类状态
|
||||||
|
*/
|
||||||
|
@PatchMapping("/{id}/state")
|
||||||
|
public R<Void> updateState(@PathVariable Long id, @RequestParam Integer state) {
|
||||||
|
try {
|
||||||
|
questionCategoryService.updateState(id, state);
|
||||||
|
return R.success();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("更新分类状态失败", e);
|
||||||
|
return R.error("更新分类状态失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 搜索分类
|
||||||
|
*/
|
||||||
|
@GetMapping("/search")
|
||||||
|
public R<List<QuestionCategory>> search(@RequestParam String name) {
|
||||||
|
try {
|
||||||
|
List<QuestionCategory> res = questionCategoryService.searchByName(name);
|
||||||
|
return R.success(res);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("搜索分类失败", e);
|
||||||
|
return R.error("搜索分类失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
0
src/main/java/com/qingqiu/interview/controller/QuestionController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/controller/QuestionController.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/ApiResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/ApiResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/ChatRequest.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/ChatRequest.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/DashboardStatsResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/DashboardStatsResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/InterviewReportResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/InterviewReportResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/InterviewResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/InterviewResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/InterviewStartRequest.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/InterviewStartRequest.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/PageBaseParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/PageBaseParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionCategoryDTO.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionCategoryDTO.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionCategoryPageParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionCategoryPageParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionPageParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionPageParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionProgressPageParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/QuestionProgressPageParams.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/SessionHistoryResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/SessionHistoryResponse.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/SessionRequest.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/dto/SessionRequest.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/AiSessionLog.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/AiSessionLog.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewEvaluation.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewEvaluation.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewMessage.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewMessage.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewQuestionProgress.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewQuestionProgress.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewSession.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/InterviewSession.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/Question.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/Question.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/QuestionCategory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/entity/QuestionCategory.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/AiSessionLogMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/AiSessionLogMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewEvaluationMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewEvaluationMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewMessageMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewMessageMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewQuestionProgressMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewQuestionProgressMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewSessionMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/InterviewSessionMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/QuestionCategoryMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/QuestionCategoryMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/QuestionMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/mapper/QuestionMapper.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/DashboardService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/DashboardService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/IAiSessionLogService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/IAiSessionLogService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/IInterviewQuestionProgressService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/IInterviewQuestionProgressService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/IQuestionCategoryService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/IQuestionCategoryService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/InterviewService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/InterviewService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/QuestionClassificationService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/QuestionClassificationService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/QuestionService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/QuestionService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/impl/AiSessionLogServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/impl/AiSessionLogServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/impl/InterviewQuestionProgressServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/impl/InterviewQuestionProgressServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/impl/QuestionCategoryServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/impl/QuestionCategoryServiceImpl.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/llm/LlmService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/llm/LlmService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/llm/qwen/QwenService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/llm/qwen/QwenService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/parser/DocumentParser.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/parser/DocumentParser.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/parser/MarkdownParserService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/parser/MarkdownParserService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/parser/PdfParserService.java
Normal file → Executable file
0
src/main/java/com/qingqiu/interview/service/parser/PdfParserService.java
Normal file → Executable file
0
src/main/resources/application.yml
Normal file → Executable file
0
src/main/resources/application.yml
Normal file → Executable file
0
src/main/resources/mapper/AIClientService.xml
Normal file → Executable file
0
src/main/resources/mapper/AIClientService.xml
Normal file → Executable file
0
src/main/resources/mapper/AiSessionLogMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/AiSessionLogMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/InterviewEvaluationMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/InterviewEvaluationMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/InterviewMessageMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/InterviewMessageMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/InterviewQuestionProgressMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/InterviewQuestionProgressMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/QuestionCategoryMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/QuestionCategoryMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/QuestionMapper.xml
Normal file → Executable file
0
src/main/resources/mapper/QuestionMapper.xml
Normal file → Executable file
0
src/main/resources/sql/schema.sql
Normal file → Executable file
0
src/main/resources/sql/schema.sql
Normal file → Executable file
0
src/test/java/com/qingqiu/interview/AiInterviewApplicationTests.java
Normal file → Executable file
0
src/test/java/com/qingqiu/interview/AiInterviewApplicationTests.java
Normal file → Executable file
Reference in New Issue
Block a user