增加获取审核驳回原因的接口
This commit is contained in:
parent
393d37e0c1
commit
fb4353ca7a
|
|
@ -3,6 +3,7 @@ package com.bonus.ai.controller.dataset;
|
||||||
import com.bonus.ai.client.AnnotationParam;
|
import com.bonus.ai.client.AnnotationParam;
|
||||||
import com.bonus.ai.domain.DataSetBasicFileEntity;
|
import com.bonus.ai.domain.DataSetBasicFileEntity;
|
||||||
import com.bonus.ai.domain.dataset.AnnotationSubTaskEntity;
|
import com.bonus.ai.domain.dataset.AnnotationSubTaskEntity;
|
||||||
|
import com.bonus.ai.domain.dataset.AnnotationTaskAnnotatorEntity;
|
||||||
import com.bonus.ai.domain.dataset.AnnotationTaskEntity;
|
import com.bonus.ai.domain.dataset.AnnotationTaskEntity;
|
||||||
import com.bonus.ai.domain.dataset.DataSetEntity;
|
import com.bonus.ai.domain.dataset.DataSetEntity;
|
||||||
import com.bonus.ai.service.DataSetBasicFileService;
|
import com.bonus.ai.service.DataSetBasicFileService;
|
||||||
|
|
@ -115,14 +116,34 @@ public class AnnotationTaskController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* * 根据任务id返回由我审核任务的所有文件列表
|
||||||
|
* @return 返回数据集详情
|
||||||
|
*/
|
||||||
|
@GetMapping(value = "/getAuditFailReasonByTaskId/{taskId}/{fileId}")
|
||||||
|
public AjaxResult getAuditFailReasonByFileId(@PathVariable Long taskId, @PathVariable Long fileId) {
|
||||||
|
try {
|
||||||
|
String failReason = annotationTaskService.getAuditFailReasonByFileId(taskId, fileId);
|
||||||
|
if (failReason.isEmpty())
|
||||||
|
{
|
||||||
|
failReason= "无";
|
||||||
|
}
|
||||||
|
return AjaxResult.success(failReason);
|
||||||
|
}catch (Exception e){
|
||||||
|
return AjaxResult.error("获取文件列表失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**手工标注或审核
|
/**手工标注或审核
|
||||||
* @param subTask 标注文件的信息
|
* @param subTask 标注文件的信息
|
||||||
* @return 返回影响的行数或错误信
|
* @return 返回影响的行数或错误信
|
||||||
*/
|
*/
|
||||||
@PostMapping("/manualAnnotate")
|
@PostMapping("/manualAnnotate")
|
||||||
public AjaxResult manualAnnotate(@Validated @RequestBody AnnotationSubTaskEntity subTask) {
|
public AjaxResult manualAnnotate(@Validated @RequestBody AnnotationTaskAnnotatorEntity subTask) {
|
||||||
|
annotationTaskService.manualAnnotate(subTask);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success("手工标注保存成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**智能标注,预留接口
|
/**智能标注,预留接口
|
||||||
|
|
@ -130,8 +151,9 @@ public class AnnotationTaskController extends BaseController {
|
||||||
* @return 返回影响的行数或错误信
|
* @return 返回影响的行数或错误信
|
||||||
*/
|
*/
|
||||||
@PostMapping("/aiAnnotate")
|
@PostMapping("/aiAnnotate")
|
||||||
public AjaxResult aiAnnotate(@Validated @RequestBody AnnotationSubTaskEntity subTask) {
|
public AjaxResult aiAnnotate(@Validated @RequestBody AnnotationTaskAnnotatorEntity subTask) {
|
||||||
|
|
||||||
|
annotationTaskService.aiAnnotate(subTask);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -52,8 +52,11 @@ public class AnnotationTaskEntity extends BaseEntity {
|
||||||
private List<AnnotationSubTaskEntity> subAnnotationTasks;
|
private List<AnnotationSubTaskEntity> subAnnotationTasks;
|
||||||
|
|
||||||
/**用于查询目的*/
|
/**用于查询目的*/
|
||||||
|
/**根据任务id,标注人id或审核人id 和文件标注状态返回满足条件的文件列表*/
|
||||||
private Long annotatorId= 0L;
|
private Long annotatorId= 0L;
|
||||||
private Long reviewerId = 0L;
|
private Long reviewerId = 0L;
|
||||||
private String fileAnnotationStatus;
|
private String fileAnnotationStatus;
|
||||||
|
/**根据任务id 和文件id 返回审核驳回的原因*/
|
||||||
|
private Long fileId = 0L;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -35,13 +35,6 @@ public interface AnnotationTaskMapper
|
||||||
*/
|
*/
|
||||||
int deleteAnnotationTaskById(Long taskId);
|
int deleteAnnotationTaskById(Long taskId);
|
||||||
|
|
||||||
/**
|
|
||||||
* 根据任务ID查询标注任务
|
|
||||||
* @param taskId 任务ID
|
|
||||||
* @return 标注任务实体
|
|
||||||
*/
|
|
||||||
// AnnotationTaskEntity selectAnnotationTaskById(Long taskId);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询标注任务列表
|
* 查询标注任务列表
|
||||||
* @param annotationTask 查询条件
|
* @param annotationTask 查询条件
|
||||||
|
|
@ -64,6 +57,7 @@ public interface AnnotationTaskMapper
|
||||||
int deleteAnnotator(Long taskId);
|
int deleteAnnotator(Long taskId);
|
||||||
|
|
||||||
List<DataSetBasicFileEntity>getTaskBasicFile(AnnotationTaskEntity annotationTask);
|
List<DataSetBasicFileEntity>getTaskBasicFile(AnnotationTaskEntity annotationTask);
|
||||||
|
String getAuditFailReasonByFileId(Long taskId, Long fileId);
|
||||||
//这个接口不需要,可以扩展selectAnnotationTaskList
|
//这个接口不需要,可以扩展selectAnnotationTaskList
|
||||||
// AnnotationTaskEntity selectAnnotationTaskListUUID(Long taskId);
|
// AnnotationTaskEntity selectAnnotationTaskListUUID(Long taskId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -156,28 +156,6 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return status;
|
return status;
|
||||||
/*
|
|
||||||
//删除任务需要删除两个个表 对应两个个表删除状态修改成1
|
|
||||||
AnnotationTaskEntity task = new AnnotationTaskEntity();
|
|
||||||
task.setTaskId(taskId);
|
|
||||||
int status = 0;
|
|
||||||
try{
|
|
||||||
// //删除主表任务信息
|
|
||||||
// status = annotationTaskMapper.deleteTaskById(taskId);
|
|
||||||
// //删除团队成员表信息
|
|
||||||
// status = annotationTaskMapper.deleteAnnotator(taskId);
|
|
||||||
// //查询对应的label studio project id , 删除这个标注任务对应的label studio project
|
|
||||||
List<AnnotationTaskEntity> resultTask = annotationTaskMapper.selectAnnotationTaskList(task);
|
|
||||||
if (!resultTask.isEmpty()){
|
|
||||||
Long project = resultTask.get(0).getLabelStudioProjectId();
|
|
||||||
//删除对应的标注任务文件关联关系表信息
|
|
||||||
onlineAnnotationService.deleteProjectById(String.valueOf(project));
|
|
||||||
}
|
|
||||||
|
|
||||||
}catch (Exception e){
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -188,19 +166,15 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AnnotationTaskEntity getTaskInfo(Long taskId) {
|
public AnnotationTaskEntity getTaskInfo(Long taskId) {
|
||||||
|
|
||||||
AnnotationTaskEntity task = new AnnotationTaskEntity();
|
|
||||||
task.setTaskId(taskId);
|
|
||||||
try {
|
try {
|
||||||
|
AnnotationTaskEntity task = new AnnotationTaskEntity();
|
||||||
|
task.setTaskId(taskId);
|
||||||
//查询对应的label studio project id , 从label studio这个标注任务对应的label studio project
|
//查询对应的label studio project id , 从label studio这个标注任务对应的label studio project
|
||||||
List<AnnotationTaskEntity> resultTasks = annotationTaskMapper.selectAnnotationTaskList(task);
|
List<AnnotationTaskEntity> resultTasks = annotationTaskMapper.selectAnnotationTaskList(task);
|
||||||
if (!resultTasks.isEmpty()) {
|
if (!resultTasks.isEmpty()) {
|
||||||
Long project = resultTasks.get(0).getLabelStudioProjectId();
|
return resultTasks.get(0);
|
||||||
//删除对应的标注任务文件关联关系表信息
|
|
||||||
ProjectParam projectParam = onlineAnnotationService.getProjectById(String.valueOf(project));
|
|
||||||
AnnotationTaskEntity resultTask = resultTasks.get(0);
|
|
||||||
resultTask.setProjectParam(projectParam);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (Exception e){
|
} catch (Exception e){
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
@ -209,18 +183,23 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<DataSetBasicFileEntity> getMyAnnotaionTaskBasicFile(Long taskId, String annotationStatus){
|
public List<DataSetBasicFileEntity> getMyAnnotaionTaskBasicFile(Long taskId, String annotationStatus){
|
||||||
Long userId = SecurityUtils.getUserId();
|
try {
|
||||||
AnnotationTaskEntity task = new AnnotationTaskEntity();
|
Long userId = SecurityUtils.getUserId();
|
||||||
task.setTaskId(taskId);
|
AnnotationTaskEntity task = new AnnotationTaskEntity();
|
||||||
task.setAnnotatorId(userId);
|
task.setTaskId(taskId);
|
||||||
Long intAnnotationStatus = Long.valueOf(annotationStatus);
|
task.setAnnotatorId(userId);
|
||||||
if (intAnnotationStatus < 4 && intAnnotationStatus >= 0) {
|
Long intAnnotationStatus = Long.valueOf(annotationStatus);
|
||||||
|
if (intAnnotationStatus < 4 && intAnnotationStatus >= 0) {
|
||||||
|
task.setFileAnnotationStatus(annotationStatus);
|
||||||
|
} else {
|
||||||
|
task.setFileAnnotationStatus("5");
|
||||||
|
}
|
||||||
task.setFileAnnotationStatus(annotationStatus);
|
task.setFileAnnotationStatus(annotationStatus);
|
||||||
} else {
|
return annotationTaskMapper.getTaskBasicFile(task);
|
||||||
task.setFileAnnotationStatus("5");
|
}catch(Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
task.setFileAnnotationStatus(annotationStatus);
|
|
||||||
return annotationTaskMapper.getTaskBasicFile(task);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -238,6 +217,18 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
|
||||||
}
|
}
|
||||||
return annotationTaskMapper.getTaskBasicFile(task);
|
return annotationTaskMapper.getTaskBasicFile(task);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getAuditFailReasonByFileId(Long taskId, Long fileId){
|
||||||
|
try {
|
||||||
|
return annotationTaskMapper.getAuditFailReasonByFileId(taskId, fileId);
|
||||||
|
}catch(Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 检查任务名称是否重复
|
* 检查任务名称是否重复
|
||||||
* @param task
|
* @param task
|
||||||
|
|
@ -253,7 +244,7 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
|
||||||
* 手工标注
|
* 手工标注
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void manualAnnotate(AnnotationSubTaskEntity subTask) {
|
public void manualAnnotate(AnnotationTaskAnnotatorEntity subTask) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -261,7 +252,7 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
|
||||||
* AI标注
|
* AI标注
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void aiAnnotate(AnnotationSubTaskEntity subTask) {
|
public void aiAnnotate(AnnotationTaskAnnotatorEntity subTask) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package com.bonus.ai.service.dataset;
|
||||||
|
|
||||||
import com.bonus.ai.domain.DataSetBasicFileEntity;
|
import com.bonus.ai.domain.DataSetBasicFileEntity;
|
||||||
import com.bonus.ai.domain.dataset.AnnotationSubTaskEntity;
|
import com.bonus.ai.domain.dataset.AnnotationSubTaskEntity;
|
||||||
|
import com.bonus.ai.domain.dataset.AnnotationTaskAnnotatorEntity;
|
||||||
import com.bonus.ai.domain.dataset.AnnotationTaskEntity;
|
import com.bonus.ai.domain.dataset.AnnotationTaskEntity;
|
||||||
import com.bonus.ai.domain.dataset.DataSetEntity;
|
import com.bonus.ai.domain.dataset.DataSetEntity;
|
||||||
import com.bonus.common.core.web.page.TableDataInfo;
|
import com.bonus.common.core.web.page.TableDataInfo;
|
||||||
|
|
@ -23,10 +24,10 @@ public interface AnnotationTaskService {
|
||||||
AnnotationTaskEntity getTaskInfo(Long taskId);
|
AnnotationTaskEntity getTaskInfo(Long taskId);
|
||||||
|
|
||||||
/**手工标注*/
|
/**手工标注*/
|
||||||
void manualAnnotate(AnnotationSubTaskEntity subTask);
|
void manualAnnotate(AnnotationTaskAnnotatorEntity subTask);
|
||||||
|
|
||||||
/**AI自动标注*/
|
/**AI自动标注*/
|
||||||
void aiAnnotate(AnnotationSubTaskEntity subTask);
|
void aiAnnotate(AnnotationTaskAnnotatorEntity subTask);
|
||||||
|
|
||||||
/**根据类型获取标注任务列表*/
|
/**根据类型获取标注任务列表*/
|
||||||
List<AnnotationTaskEntity> getTaskList(AnnotationTaskEntity task);
|
List<AnnotationTaskEntity> getTaskList(AnnotationTaskEntity task);
|
||||||
|
|
@ -37,5 +38,7 @@ public interface AnnotationTaskService {
|
||||||
List<DataSetBasicFileEntity> getMyAnnotaionTaskBasicFile(Long taskId,String annotationStatus);
|
List<DataSetBasicFileEntity> getMyAnnotaionTaskBasicFile(Long taskId,String annotationStatus);
|
||||||
|
|
||||||
List<DataSetBasicFileEntity> getMyAuditTaskBasicFile(Long taskId,String annotationStatus);
|
List<DataSetBasicFileEntity> getMyAuditTaskBasicFile(Long taskId,String annotationStatus);
|
||||||
|
|
||||||
|
String getAuditFailReasonByFileId(Long taskId, Long fileId);
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -294,6 +294,14 @@
|
||||||
</if>
|
</if>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getAuditFailReasonByFileId" parameterType="com.bonus.ai.domain.dataset.AnnotationTaskEntity" resultType="String">
|
||||||
|
SELECT
|
||||||
|
atap.audit_failed_reason
|
||||||
|
FROM ai_basic_file abf
|
||||||
|
LEFT JOIN ai_dataset_file_map adfm ON abf.file_id = adfm.file_id
|
||||||
|
LEFT JOIN ai_annotation_task aat ON aat.dataset_id= adfm.dataset_id
|
||||||
|
LEFT JOIN ai_annotation_task_annotator_map atap on atap.task_id = aat.task_id
|
||||||
|
where abf.del_flag = '0' and aat.del_flag = '0' and aat.task_id = #{taskId} and adfm.file_id = #{fileId}
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue