You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
3.0 KiB

package com.project.interaction.controller;
import com.project.base.domain.exception.MissingParameterException;
import com.project.base.domain.result.Result;
import com.project.interaction.application.AlgorithmApplicationService;
import com.project.interaction.domain.dto.ClusterCallbackDTO;
import com.project.interaction.domain.dto.QuestionCallBackDTO;
5 months ago
import com.project.interaction.domain.service.GenerateQuestionQueueService;
import com.project.question.domain.enums.QuestionSourceTypeEnum;
import com.project.question.domain.service.GenerateQuestionDomainService;
import com.project.task.application.TaskApplicationService;
import com.project.task.domain.enums.QuestionTypeEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/api/interaction")
public class InteractionController {
@Autowired
private AlgorithmApplicationService algorithmApplicationService;
@Autowired
private TaskApplicationService taskApplicationService;
5 months ago
@Autowired
private GenerateQuestionQueueService generateQuestionQueueService;
@Autowired
private GenerateQuestionDomainService generateQuestionDomainService;
// @PostMapping("/saveCluster")
// public Result<String> saveCluster(ClusterCallbackDTO dto) throws Exception{
// algorithmApplicationService.saveCluster(dto.getTaskId(), dto.getClusters());
// return Result.success("保存成功");
// }
@PostMapping("/saveCluster")
public Result<String> saveCluster(ClusterCallbackDTO dto) throws Exception{
algorithmApplicationService.saveClusterByInformationId(dto.getTaskId(), dto.getClusters());
return Result.success("保存成功");
}
@PostMapping("/saveQuestion")
public Result<String> saveQuestion(QuestionCallBackDTO dto) throws Exception {
return null;
}
/**
* 判断任务是否删除
*/
@PostMapping("/isDeletedTask")
public Result<Boolean> isDeletedTask(Long taskId,@RequestParam("taskKpIds") List<Long> taskKpIds,Integer type){
return taskApplicationService.isDeletedTask(taskId,taskKpIds,type);
}
5 months ago
/**
* 获取当前队列大小
*/
@GetMapping("/getQueueSize")
public Result<Integer> getQueueSize(){
return Result.success(generateQuestionQueueService.getQueueSize());
}
/**
* 生题请求
*/
@PostMapping("/generateQuestion")
public Result<String> generateQuestion(Long sourceId, Integer questionType , int needCount){
QuestionTypeEnum questionTypeEnum = QuestionTypeEnum.findByValue(questionType);
if (questionTypeEnum == null){
throw new MissingParameterException("题型不存在");
}
generateQuestionDomainService.produce(sourceId,questionTypeEnum,
QuestionTypeEnum.MULTIPLE_CHOICE.equals(questionTypeEnum) ? QuestionSourceTypeEnum.Multi_Concept : QuestionSourceTypeEnum.Single_Concept,
needCount,Boolean.TRUE);
return Result.success(null);
}
}