增加接口权限字符

This commit is contained in:
weiweiw 2024-11-27 08:17:22 +08:00
parent 2716b02095
commit cac6d13111
7 changed files with 144 additions and 53 deletions

View File

@ -12,6 +12,7 @@ import com.bonus.common.core.web.controller.BaseController;
import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.core.web.page.TableDataInfo; import com.bonus.common.core.web.page.TableDataInfo;
import com.bonus.common.security.annotation.RequiresPermissions;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -33,6 +34,7 @@ public class AnnotationTaskController extends BaseController {
* @param task 新增的数据集信息 * @param task 新增的数据集信息
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:task:create")
@PostMapping("/create") @PostMapping("/create")
public AjaxResult add(@Validated @RequestBody AnnotationTaskEntity task) { public AjaxResult add(@Validated @RequestBody AnnotationTaskEntity task) {
int status = annotationTaskService.createTask(task); int status = annotationTaskService.createTask(task);
@ -43,6 +45,7 @@ public class AnnotationTaskController extends BaseController {
* @param task 修改的任务 * @param task 修改的任务
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:task:edit")
@PostMapping("/edit") @PostMapping("/edit")
public AjaxResult edit(@Validated @RequestBody AnnotationTaskEntity task) { public AjaxResult edit(@Validated @RequestBody AnnotationTaskEntity task) {
int status = annotationTaskService.updateTask(task); int status = annotationTaskService.updateTask(task);
@ -54,30 +57,61 @@ public class AnnotationTaskController extends BaseController {
* @param taskId 修改的任务 * @param taskId 修改的任务
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:task:delete")
@PostMapping("/delete/{taskId}") @PostMapping("/delete/{taskId}")
public AjaxResult remove(@PathVariable Long taskId) { public AjaxResult remove(@PathVariable Long taskId) {
annotationTaskService.deleteTaskById(taskId); annotationTaskService.deleteTaskById(taskId);
return AjaxResult.success(); return AjaxResult.success();
} }
/** /**
* 查看由我创建的任务列表和我参与的或全部任务列表 * 查看由我创建的任务列表和我参与的或全部任务列表
* 统一获取文件列表 * 统一获取文件列表
* @return 返回满足条件的任务列表 * @return 返回满足条件的任务列表
*/ */
@GetMapping("/list") @RequiresPermissions("dataCenter:task:list:all")
public TableDataInfo list(AnnotationTaskEntity task) { @GetMapping("/list/all")
public TableDataInfo list() {
startPage(); startPage();
List<AnnotationTaskEntity> taskList = annotationTaskService.getTaskList(task); List<AnnotationTaskEntity> taskList = annotationTaskService.getAllTaskList();
return getDataTable(taskList); return getDataTable(taskList);
} }
/**
* 查看由我创建的任务列表
* 统一获取文件列表
* @return 返回满足条件的任务列表
*/
@RequiresPermissions("dataCenter:task:list:creation")
@GetMapping("/list/creation")
public TableDataInfo listMyCreation() {
startPage();
List<AnnotationTaskEntity> taskList = annotationTaskService.getMyCreationTaskList();
return getDataTable(taskList);
}
/**
* 查看由我参与的任务列表
* 统一获取文件列表
* @return 返回满足条件的任务列表
*/
@RequiresPermissions("dataCenter:task:list:participant")
@GetMapping("/list/participant")
public TableDataInfo listMyParticipant() {
startPage();
List<AnnotationTaskEntity> taskList = annotationTaskService.getMyParticipantTaskList();
return getDataTable(taskList);
}
/** /**
* 根据任务编号获取任务详情,如果是标注人员获取分配的文件列表如果是审核人员获取所有分配的文件列表如果是管理员获取所有文件列表 * 根据任务编号获取任务详情,如果是标注人员获取分配的文件列表如果是审核人员获取所有分配的文件列表如果是管理员获取所有文件列表
* @param taskId 任务编号 * @param taskId 任务编号
* @return 返回任务详情 * @return 返回任务详情
*/ */
@RequiresPermissions("dataCenter:task:detail")
@GetMapping(value = "/{taskId}") @GetMapping(value = "/{taskId}")
public AjaxResult getInfo(@PathVariable Long taskId) { public AjaxResult getInfo(@PathVariable Long taskId) {
AnnotationTaskEntity taskEntity = annotationTaskService.getTaskInfo(taskId); AnnotationTaskEntity taskEntity = annotationTaskService.getTaskInfo(taskId);
@ -90,6 +124,8 @@ public class AnnotationTaskController extends BaseController {
* ,String annotationStatus 5 表示全部0-4表示标注和审核状态 * ,String annotationStatus 5 表示全部0-4表示标注和审核状态
* @return 返回数据集详情 * @return 返回数据集详情
*/ */
@RequiresPermissions("dataCenter:task:file:annotation")
@GetMapping(value = "/getMyAnnotationFiles/{annotationStatus}/{taskId}") @GetMapping(value = "/getMyAnnotationFiles/{annotationStatus}/{taskId}")
public AjaxResult getMyAnnotationFilesByTaskId(@PathVariable Long taskId, @PathVariable String annotationStatus) { public AjaxResult getMyAnnotationFilesByTaskId(@PathVariable Long taskId, @PathVariable String annotationStatus) {
try { try {
@ -104,6 +140,7 @@ public class AnnotationTaskController extends BaseController {
* * 根据任务id返回由我审核任务的所有文件列表 * * 根据任务id返回由我审核任务的所有文件列表
* @return 返回数据集详情 * @return 返回数据集详情
*/ */
@RequiresPermissions("dataCenter:task:file:audit")
@GetMapping(value = "/getMyAuditFiles/{annotationStatus}/{taskId}") @GetMapping(value = "/getMyAuditFiles/{annotationStatus}/{taskId}")
public AjaxResult getMyAuditFilesByTaskId(@PathVariable Long taskId, @PathVariable String annotationStatus) { public AjaxResult getMyAuditFilesByTaskId(@PathVariable Long taskId, @PathVariable String annotationStatus) {
try { try {
@ -116,9 +153,10 @@ public class AnnotationTaskController extends BaseController {
/** /**
* * 根据任务id返回由我审核任务的所有文件列表 * * 根据任务id和文件id 返回驳回审核的原因
* @return 返回数据集详情 * @return 返回数据集详情
*/ */
@RequiresPermissions("dataCenter:task:file:failed_reason")
@GetMapping(value = "/getAuditFailReasonByTaskId/{taskId}/{fileId}") @GetMapping(value = "/getAuditFailReasonByTaskId/{taskId}/{fileId}")
public AjaxResult getAuditFailReasonByFileId(@PathVariable Long taskId, @PathVariable Long fileId) { public AjaxResult getAuditFailReasonByFileId(@PathVariable Long taskId, @PathVariable Long fileId) {
try { try {
@ -139,6 +177,7 @@ public class AnnotationTaskController extends BaseController {
* @param subTask 标注文件的信息 * @param subTask 标注文件的信息
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:task:manual_annotate")
@PostMapping("/manualAnnotate") @PostMapping("/manualAnnotate")
public AjaxResult manualAnnotate(@Validated @RequestBody AnnotationTaskAnnotatorEntity subTask) { public AjaxResult manualAnnotate(@Validated @RequestBody AnnotationTaskAnnotatorEntity subTask) {
annotationTaskService.manualAnnotate(subTask); annotationTaskService.manualAnnotate(subTask);
@ -149,6 +188,7 @@ public class AnnotationTaskController extends BaseController {
* @param subTask 标注文件的信息 * @param subTask 标注文件的信息
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:task:ai_annotate")
@PostMapping("/aiAnnotate") @PostMapping("/aiAnnotate")
public AjaxResult aiAnnotate(@Validated @RequestBody AnnotationTaskAnnotatorEntity subTask) { public AjaxResult aiAnnotate(@Validated @RequestBody AnnotationTaskAnnotatorEntity subTask) {

View File

@ -36,6 +36,7 @@ public class DatasetController extends BaseController {
* @param dataSet 新增的数据集信息并且建立和文件的关联关系 * @param dataSet 新增的数据集信息并且建立和文件的关联关系
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:dataSet:create")
@PostMapping("/create") @PostMapping("/create")
public AjaxResult create(@Validated @RequestBody DataSetEntity dataSet) { public AjaxResult create(@Validated @RequestBody DataSetEntity dataSet) {
try { try {
@ -53,6 +54,7 @@ public class DatasetController extends BaseController {
* @param dataSet 修改的数据集信息 * @param dataSet 修改的数据集信息
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:dataSet:edit")
@PostMapping("/edit") @PostMapping("/edit")
public AjaxResult edit(@Validated @RequestBody DataSetEntity dataSet) { public AjaxResult edit(@Validated @RequestBody DataSetEntity dataSet) {
if (!datasetService.checkDatasetNameUnique(dataSet)){ if (!datasetService.checkDatasetNameUnique(dataSet)){
@ -67,17 +69,18 @@ public class DatasetController extends BaseController {
* @param dataSetIds 删除的数据集信息 * @param dataSetIds 删除的数据集信息
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:dataSet:delete")
@PostMapping("/delete/{dataSetIds}") @PostMapping("/delete/{dataSetIds}")
public AjaxResult remove(@PathVariable("dataSetIds") Long[] dataSetIds) { public AjaxResult remove(@PathVariable("dataSetIds") Long[] dataSetIds) {
return toAjax(datasetService.deleteDatasets(dataSetIds)); return toAjax(datasetService.deleteDatasets(dataSetIds));
} }
/** /**
* 查看由我创建的数据集 * 分页返回满足条件的数据集列表
* 统一获取文件列表
* @param * @param
* @return 返回满足条件的数据集列表 * @return 返回满足条件的数据集列表
*/ */
@RequiresPermissions("dataCenter:dataSet:list:page")
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo list(DataSetEntity dataSet) { public TableDataInfo list(DataSetEntity dataSet) {
try { try {
@ -90,11 +93,11 @@ public class DatasetController extends BaseController {
} }
/** /**
* 查看由我创建的数据集 * * 返回满足条件的数据集列表
* 统一获取文件列表
* @param * @param
* @return 返回满足条件的数据集列表 * @return 返回满足条件的数据集列表
*/ */
@RequiresPermissions("dataCenter:dataSet:list")
@GetMapping("/datasetList") @GetMapping("/datasetList")
public AjaxResult datasetList(DataSetEntity dataSet) { public AjaxResult datasetList(DataSetEntity dataSet) {
return AjaxResult.success(datasetService.getDatasetList(dataSet)); return AjaxResult.success(datasetService.getDatasetList(dataSet));
@ -105,6 +108,7 @@ public class DatasetController extends BaseController {
* @param datasetId 数据集编号 * @param datasetId 数据集编号
* @return 返回数据集详情 * @return 返回数据集详情
*/ */
@RequiresPermissions("dataCenter:dataSet:detail")
@GetMapping(value = "/{datasetId}") @GetMapping(value = "/{datasetId}")
public AjaxResult getInfo(@PathVariable Long datasetId) { public AjaxResult getInfo(@PathVariable Long datasetId) {
AjaxResult ajax = AjaxResult.success(); AjaxResult ajax = AjaxResult.success();
@ -113,10 +117,11 @@ public class DatasetController extends BaseController {
return ajax; return ajax;
} }
/** /**
* 根据数据集编号获取数据集详情 * 根据搜索条件返回对应的数据集里文件列表
* @param entity 筛选条件 * @param entity 筛选条件
* @return 返回数据集详情 * @return 返回数据集详情
*/ */
@RequiresPermissions("dataCenter:dataSet:file:list")
@GetMapping(value = "getDataSetBasicFile") @GetMapping(value = "getDataSetBasicFile")
public TableDataInfo getDataSetBasicFile(DataSetBasicFileEntity entity) { public TableDataInfo getDataSetBasicFile(DataSetBasicFileEntity entity) {
try { try {
@ -133,6 +138,7 @@ public class DatasetController extends BaseController {
* 删除的数据集 * 删除的数据集
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:dataSet:file:delete")
@PostMapping("/removeDataSetBasicFile") @PostMapping("/removeDataSetBasicFile")
public AjaxResult removeDataSetBasicFile(@RequestParam("datasetId") String datasetId,@RequestParam("fileIds") String fileIds) { public AjaxResult removeDataSetBasicFile(@RequestParam("datasetId") String datasetId,@RequestParam("fileIds") String fileIds) {
// 将字符串转换为 long[] 数组并输出 // 将字符串转换为 long[] 数组并输出
@ -150,6 +156,7 @@ public class DatasetController extends BaseController {
* @param isPublic 是否设置为公共文件true - 设置为公共文件, false - 取消公共状态 * @param isPublic 是否设置为公共文件true - 设置为公共文件, false - 取消公共状态
* @return 操作结果 * @return 操作结果
*/ */
@RequiresPermissions("dataCenter:dataSet:public")
@PostMapping("/setPublic") @PostMapping("/setPublic")
public AjaxResult setDatasetPublicStatus(@RequestParam String datasetId, @RequestParam String isPublic){ public AjaxResult setDatasetPublicStatus(@RequestParam String datasetId, @RequestParam String isPublic){
datasetService.setPublicStatus(datasetId, isPublic); datasetService.setPublicStatus(datasetId, isPublic);
@ -160,6 +167,7 @@ public class DatasetController extends BaseController {
* 数据集导入 * 数据集导入
* @return 返回满足条件的版本列表 * @return 返回满足条件的版本列表
*/ */
@RequiresPermissions("dataCenter:dataSet:import")
@PostMapping("/import") @PostMapping("/import")
public AjaxResult importDataset(@RequestBody DataSetEntity entity) { public AjaxResult importDataset(@RequestBody DataSetEntity entity) {
return datasetService.importDataset(entity); return datasetService.importDataset(entity);
@ -169,6 +177,7 @@ public class DatasetController extends BaseController {
* 数据集导出 * 数据集导出
* @return 返回满足条件的版本列表 * @return 返回满足条件的版本列表
*/ */
@RequiresPermissions("dataCenter:dataSet:export")
@PostMapping("/export/{datasetId}") @PostMapping("/export/{datasetId}")
public void exportDataset(HttpServletResponse response, HttpServletRequest request, @PathVariable Long datasetId) { public void exportDataset(HttpServletResponse response, HttpServletRequest request, @PathVariable Long datasetId) {
datasetService.exportDataset(request,response,datasetId); datasetService.exportDataset(request,response,datasetId);

View File

@ -5,6 +5,7 @@ import com.bonus.ai.service.dataset.ReleaseVersionService;
import com.bonus.common.core.web.controller.BaseController; import com.bonus.common.core.web.controller.BaseController;
import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.core.web.page.TableDataInfo; import com.bonus.common.core.web.page.TableDataInfo;
import com.bonus.common.security.annotation.RequiresPermissions;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -25,6 +26,7 @@ public class ReleaseVersionController extends BaseController {
* @param version 发布数据集的版本信息 * @param version 发布数据集的版本信息
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:version:create")
@PostMapping("/release") @PostMapping("/release")
public AjaxResult release(@Validated @RequestBody ReleaseVersionEntity version) { public AjaxResult release(@Validated @RequestBody ReleaseVersionEntity version) {
return releaseVersionService.release(version); return releaseVersionService.release(version);
@ -34,6 +36,7 @@ public class ReleaseVersionController extends BaseController {
* @param versionId 发布数据集的版本id * @param versionId 发布数据集的版本id
* @return 返回影响的行数或错误信 * @return 返回影响的行数或错误信
*/ */
@RequiresPermissions("dataCenter:version:export")
@GetMapping(value = "/export/{versionId}") @GetMapping(value = "/export/{versionId}")
public AjaxResult export(@PathVariable Long versionId) { public AjaxResult export(@PathVariable Long versionId) {
return AjaxResult.success(); return AjaxResult.success();
@ -44,6 +47,7 @@ public class ReleaseVersionController extends BaseController {
* @param versionIds id 集合 * @param versionIds id 集合
* @return * @return
*/ */
@RequiresPermissions("dataCenter:version:delete")
@PostMapping(value = "/delete/{versionIds}") @PostMapping(value = "/delete/{versionIds}")
public AjaxResult delete(@PathVariable Long[] versionIds) { public AjaxResult delete(@PathVariable Long[] versionIds) {
return releaseVersionService.delete(versionIds); return releaseVersionService.delete(versionIds);
@ -55,6 +59,7 @@ public class ReleaseVersionController extends BaseController {
* 查看发布的版本列表 * 查看发布的版本列表
* @return 返回满足条件的版本列表 * @return 返回满足条件的版本列表
*/ */
@RequiresPermissions("dataCenter:version:list")
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo list(ReleaseVersionEntity version) { public TableDataInfo list(ReleaseVersionEntity version) {
try { try {

View File

@ -53,8 +53,8 @@ public class AnnotationTaskEntity extends BaseEntity {
/**用于查询目的*/ /**用于查询目的*/
/**根据任务id标注人id或审核人id 和文件标注状态返回满足条件的文件列表*/ /**根据任务id标注人id或审核人id 和文件标注状态返回满足条件的文件列表*/
private Long annotatorId= 0L; private String annotatorId= "";
private Long reviewerId = 0L; private String reviewerId = "";
private String fileAnnotationStatus; private String fileAnnotationStatus;
/**根据任务id 和文件id 返回审核驳回的原因*/ /**根据任务id 和文件id 返回审核驳回的原因*/
private Long fileId = 0L; private Long fileId = 0L;

View File

@ -17,9 +17,9 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.UUID; import java.util.UUID;
import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
@ -66,10 +66,10 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
status = annotationTaskMapper.insertAnnotationTask(task); status = annotationTaskMapper.insertAnnotationTask(task);
AnnotationTaskEntity tempTask = new AnnotationTaskEntity(); AnnotationTaskEntity tempTask = new AnnotationTaskEntity();
tempTask.setTaskUuid(uuid); tempTask.setTaskUuid(uuid);
List<AnnotationTaskEntity> tempTasks = annotationTaskMapper.selectAnnotationTaskList(task); List<AnnotationTaskEntity> tempTasks = annotationTaskMapper.selectAnnotationTaskList(task);
Long annotationTaskid = 0L; Long annotationTaskid = 0L;
if (!tempTasks.isEmpty()) { if (!tempTasks.isEmpty()){
annotationTaskid = tempTasks.get(0).getTaskId(); annotationTaskid = tempTasks.get(0).getTaskId();
} }
@ -86,12 +86,12 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
//4. 文件分配后需要调用label studio 接口创建task将taskid与 文件和标注人表进行关联因为文件较多启用异步调用 //4. 文件分配后需要调用label studio 接口创建task将taskid与 文件和标注人表进行关联因为文件较多启用异步调用
// 5. 将文件和标注人等信息 插入文件和标注人关联表 // 5. 将文件和标注人等信息 插入文件和标注人关联表
if (status == 1) { if(status == 1){
try { try {
for (AnnotationTaskAnnotatorEntity entity : annotationTaskAnnotatorEntities) { for(AnnotationTaskAnnotatorEntity entity:annotationTaskAnnotatorEntities){
status = annotationTaskMapper.insertAnnotTaskannotator(entity); status = annotationTaskMapper.insertAnnotTaskannotator(entity);
} }
} catch (Exception e) { }catch (Exception e){
log.error("Error updating task: ", e); log.error("Error updating task: ", e);
throw e; // 抛出异常以触发回滚 throw e; // 抛出异常以触发回滚
} }
@ -100,16 +100,43 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
} }
/**
* 获取任务列表分配给我的标注任务我创建的标注任务
*/
@Override @Override
public List<AnnotationTaskEntity> getTaskList(AnnotationTaskEntity task) { public List<AnnotationTaskEntity> getAllTaskList() {
try { try {
//这样设置不合适设置后会改变真实用户的意图 AnnotationTaskEntity taskEntity = new AnnotationTaskEntity();
// String userId = SecurityUtils.getUserId().toString(); String userId = SecurityUtils.getUserId().toString();
// task.setCreateBy(userId); taskEntity.setCreateBy(userId);
return annotationTaskMapper.selectMyAnnotationTaskList(task); taskEntity.setAnnotatorId(userId);
taskEntity.setReviewerId(userId);
return annotationTaskMapper.selectMyAnnotationTaskList(taskEntity);
} catch (Exception e) {
log.error("获取数据集列表失败", e);
return new ArrayList<>();
}
}
@Override
public List<AnnotationTaskEntity> getMyCreationTaskList() {
try {
AnnotationTaskEntity taskEntity = new AnnotationTaskEntity();
String userId = SecurityUtils.getUserId().toString();
taskEntity.setCreateBy(userId);
return annotationTaskMapper.selectMyAnnotationTaskList(taskEntity);
} catch (Exception e) {
log.error("获取数据集列表失败", e);
return new ArrayList<>();
}
}
/**根据类型获取标注任务列表*/
@Override
public List<AnnotationTaskEntity> getMyParticipantTaskList(){
try {
AnnotationTaskEntity taskEntity = new AnnotationTaskEntity();
String userId = SecurityUtils.getUserId().toString();
taskEntity.setAnnotatorId(userId);
taskEntity.setReviewerId(userId);
return annotationTaskMapper.selectMyAnnotationTaskList(taskEntity);
} catch (Exception e) { } catch (Exception e) {
log.error("获取数据集列表失败", e); log.error("获取数据集列表失败", e);
return new ArrayList<>(); return new ArrayList<>();
@ -122,14 +149,16 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
/** /**
* 更新任务 * 更新任务
*/ */
@Override @Override
public int updateTask(AnnotationTaskEntity task) { public int updateTask(AnnotationTaskEntity task){
int result = 0; int result = 0;
try { try {
result = annotationTaskMapper.updateAnnotationTaskById(task); task.setUpdateBy(SecurityUtils.getUserId().toString());
} catch (Exception e) { result = annotationTaskMapper.updateAnnotationTaskById(task);
}catch(Exception e)
{
e.printStackTrace(); e.printStackTrace();
} }
return result; return result;
@ -138,7 +167,6 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
/** /**
* 根据taskid 删除任务 * 根据taskid 删除任务
*
* @param taskId * @param taskId
* @return * @return
*/ */
@ -146,13 +174,13 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
public int deleteTaskById(Long taskId) { public int deleteTaskById(Long taskId) {
//删除任务需要删除两个个表 对应两个个表删除状态修改成1 //删除任务需要删除两个个表 对应两个个表删除状态修改成1
int status = 0; int status = 0;
try { try{
//删除主表任务信息 //删除主表任务信息
status = annotationTaskMapper.deleteTaskById(taskId); status = annotationTaskMapper.deleteTaskById(taskId);
//删除团队成员表信息 //删除团队成员表信息
status = annotationTaskMapper.deleteAnnotator(taskId); status = annotationTaskMapper.deleteAnnotator(taskId);
} catch (Exception e) { }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
} }
return status; return status;
@ -160,7 +188,6 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
/** /**
* 获取任务详情 * 获取任务详情
*
* @param taskId * @param taskId
* @return * @return
*/ */
@ -172,20 +199,20 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
task.setTaskId(taskId); 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()) {
return resultTasks.get(0); return resultTasks.get(0);
} }
} catch (Exception e) { } catch (Exception e){
e.printStackTrace(); e.printStackTrace();
} }
return null; return null;
} }
@Override @Override
public List<DataSetBasicFileEntity> getMyAnnotaionTaskBasicFile(Long taskId, String annotationStatus) { public List<DataSetBasicFileEntity> getMyAnnotaionTaskBasicFile(Long taskId, String annotationStatus){
try { try {
Long userId = SecurityUtils.getUserId(); String userId = SecurityUtils.getUserId().toString();
AnnotationTaskEntity task = new AnnotationTaskEntity(); AnnotationTaskEntity task = new AnnotationTaskEntity();
task.setTaskId(taskId); task.setTaskId(taskId);
task.setAnnotatorId(userId); task.setAnnotatorId(userId);
@ -197,22 +224,23 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
} }
task.setFileAnnotationStatus(annotationStatus); task.setFileAnnotationStatus(annotationStatus);
return annotationTaskMapper.getTaskBasicFile(task); return annotationTaskMapper.getTaskBasicFile(task);
} catch (Exception e) { }catch(Exception e){
e.printStackTrace(); e.printStackTrace();
return new ArrayList<>(); return new ArrayList<>();
} }
} }
@Override @Override
public List<DataSetBasicFileEntity> getMyAuditTaskBasicFile(Long taskId, String annotationStatus) { public List<DataSetBasicFileEntity> getMyAuditTaskBasicFile(Long taskId, String annotationStatus){
Long userId = SecurityUtils.getUserId(); String userId = SecurityUtils.getUserId().toString();
AnnotationTaskEntity task = new AnnotationTaskEntity(); AnnotationTaskEntity task = new AnnotationTaskEntity();
task.setTaskId(taskId); task.setTaskId(taskId);
task.setReviewerId(userId); task.setReviewerId(userId);
Long intAnnotationStatus = Long.valueOf(annotationStatus); Long intAnnotationStatus = Long.valueOf(annotationStatus);
if (intAnnotationStatus < 4 && intAnnotationStatus >= 0) { if (intAnnotationStatus < 4 && intAnnotationStatus >= 0) {
task.setFileAnnotationStatus(annotationStatus); task.setFileAnnotationStatus(annotationStatus);
} else { }
else {
task.setFileAnnotationStatus("5"); task.setFileAnnotationStatus("5");
} }
return annotationTaskMapper.getTaskBasicFile(task); return annotationTaskMapper.getTaskBasicFile(task);
@ -220,10 +248,10 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
@Override @Override
public String getAuditFailReasonByFileId(Long taskId, Long fileId) { public String getAuditFailReasonByFileId(Long taskId, Long fileId){
try { try {
return annotationTaskMapper.getAuditFailReasonByFileId(taskId, fileId); return annotationTaskMapper.getAuditFailReasonByFileId(taskId, fileId);
} catch (Exception e) { }catch(Exception e){
e.printStackTrace(); e.printStackTrace();
return ""; return "";
} }
@ -231,12 +259,11 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
/** /**
* 检查任务名称是否重复 * 检查任务名称是否重复
*
* @param task * @param task
* @return * @return
*/ */
@Override @Override
public boolean checkTaskNameUnique(AnnotationTaskEntity task) { public boolean checkTaskNameUnique(AnnotationTaskEntity task){
return false; return false;
} }
@ -257,4 +284,5 @@ public class AnnotationTaskServiceImpl implements AnnotationTaskService {
} }
} }

View File

@ -29,8 +29,17 @@ public interface AnnotationTaskService {
/**AI自动标注*/ /**AI自动标注*/
void aiAnnotate(AnnotationTaskAnnotatorEntity subTask); void aiAnnotate(AnnotationTaskAnnotatorEntity subTask);
// /**根据类型获取标注任务列表*/
// List<AnnotationTaskEntity> getTaskList(AnnotationTaskEntity task);
/**根据类型获取标注任务列表*/ /**根据类型获取标注任务列表*/
List<AnnotationTaskEntity> getTaskList(AnnotationTaskEntity task); List<AnnotationTaskEntity> getAllTaskList();
/**根据类型获取标注任务列表*/
List<AnnotationTaskEntity> getMyCreationTaskList();
/**根据类型获取标注任务列表*/
List<AnnotationTaskEntity> getMyParticipantTaskList();
/**检查标注任务名唯一性*/ /**检查标注任务名唯一性*/
boolean checkTaskNameUnique(AnnotationTaskEntity task); boolean checkTaskNameUnique(AnnotationTaskEntity task);

View File

@ -90,19 +90,19 @@
LEFT join sys_user su on su.user_id = at.create_by LEFT join sys_user su on su.user_id = at.create_by
WHERE at.del_flag = '0' and ap.annotation_status IN ('0', '1', '2','3') WHERE at.del_flag = '0' and ap.annotation_status IN ('0', '1', '2','3')
<choose> <choose>
<when test="annotatorId != null and annotatorId != 0 and reviewerId != null and reviewerId != 0 and createBy != null and createBy != 0"> <when test="annotatorId != null and annotatorId != '' and reviewerId != null and reviewerId != '' and createBy != null and createBy != ''">
AND (ap.annotator_id = #{annotatorId} or ap.reviewer_id = #{reviewerId} or at.create_by = #{createBy}) AND (ap.annotator_id = #{annotatorId} or ap.reviewer_id = #{reviewerId} or at.create_by = #{createBy})
</when> </when>
<when test="annotatorId != null and annotatorId != 0 and reviewerId != null and reviewerId != 0 "> <when test="annotatorId != null and annotatorId != '' and reviewerId != null and reviewerId != '' ">
AND (ap.annotator_id = #{annotatorId} or ap.reviewer_id = #{reviewerId}) AND (ap.annotator_id = #{annotatorId} or ap.reviewer_id = #{reviewerId})
</when> </when>
<when test="reviewerId != null and reviewerId != 0 and createBy != null and createBy != 0"> <when test="reviewerId != null and reviewerId != '' and createBy != null and createBy != ''">
AND (ap.reviewer_id = #{reviewerId} or at.create_by = #{createBy}) AND (ap.reviewer_id = #{reviewerId} or at.create_by = #{createBy})
</when> </when>
<when test="annotatorId != null and annotatorId != 0 and createBy != null and createBy != 0"> <when test="annotatorId != null and annotatorId != '' and createBy != null and createBy != ''">
AND (ap.annotatorId = #{annotatorId} or at.create_by = #{createBy}) AND (ap.annotatorId = #{annotatorId} or at.create_by = #{createBy})
</when> </when>
<when test="createBy != null and createBy != 0"> <when test="createBy != null and createBy != ''">
AND (at.create_by = #{createBy} or at.create_by = #{createBy}) AND (at.create_by = #{createBy} or at.create_by = #{createBy})
</when> </when>
</choose> </choose>