allen 10 months ago
parent
commit
394011cacb
18 changed files with 265 additions and 15 deletions
  1. 17 0
      script/sql/postgresql/update_task_and_subtask.sql
  2. 2 2
      taais-admin/src/main/resources/application-dev.yml
  3. 3 0
      taais-common/taais-common-core/src/main/java/com/taais/common/core/utils/DateUtils.java
  4. 1 1
      taais-common/taais-common-security/src/main/java/com/taais/common/security/config/SecurityConfig.java
  5. 19 6
      taais-extra/taais-powerjob-server/src/main/resources/application-dev.properties
  6. 4 1
      taais-modules/taais-biz/src/main/java/com/taais/biz/constant/BizConstant.java
  7. 46 2
      taais-modules/taais-biz/src/main/java/com/taais/biz/controller/AlgorithmTaskController.java
  8. 70 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/controller/PublicController.java
  9. 2 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/domain/dto/AlgorithmRequestDto.java
  10. 11 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/domain/dto/TaskResultDTO.java
  11. 2 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/mapper/AlgorithmBizProcessMapper.java
  12. 3 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/service/IAlgorithmBizProcessService.java
  13. 3 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/service/IAlgorithmDataProcessService.java
  14. 37 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmBizProcessServiceImpl.java
  15. 37 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmDataProcessServiceImpl.java
  16. 4 2
      taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmSubtaskServiceImpl.java
  17. 1 0
      taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmTaskServiceImpl.java
  18. 3 1
      taais-modules/taais-biz/src/main/resources/mapper/task/AlgorithmBizProcessMapper.xml

+ 17 - 0
script/sql/postgresql/update_task_and_subtask.sql

@@ -0,0 +1,17 @@
+DROP PROCEDURE IF EXISTS update_task_and_subtask(bigint,character varying);
+CREATE OR REPLACE PROCEDURE update_task_and_subtask(
+    p_biz_id BIGINT,
+    p_bizType VARCHAR
+)
+LANGUAGE plpgsql
+AS $$
+DECLARE
+    v_task_id BIGINT;
+    v_subtask_id BIGINT;
+BEGIN
+    -- 根据业务ID和业务类型获取任务ID
+EXCEPTION
+    WHEN OTHERS THEN
+        RAISE EXCEPTION 'Error occurred: % (%). Please check the input and database state.', SQLERRM, SQLSTATE;
+END;
+$$;

+ 2 - 2
taais-admin/src/main/resources/application-dev.yml

@@ -106,9 +106,9 @@ spring.boot.admin.client:
 powerjob:
   worker:
     # 如何开启调度中心请查看文档教程
-    enabled: false
+    enabled: true
     # 需要先在 powerjob 登录页执行应用注册后才能使用
-    app-name: taais-worker
+    app-name: taais
     # 28080 端口 随着主应用端口飘逸 避免集群冲突
     port: 2${server.port}
     protocol: http

+ 3 - 0
taais-common/taais-common-core/src/main/java/com/taais/common/core/utils/DateUtils.java

@@ -123,6 +123,9 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
     public static int differentDaysByMillisecond(Date date1, Date date2) {
         return Math.abs((int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24)));
     }
+    public static long differentSecondByDate(Date date1, Date date2) {
+        return (date2.getTime() - date1.getTime()) / 1000;
+    }
 
     /**
      * 计算时间差

+ 1 - 1
taais-common/taais-common-security/src/main/java/com/taais/common/security/config/SecurityConfig.java

@@ -41,7 +41,7 @@ public class SecurityConfig implements WebMvcConfigurer {
                     SaRouter
                     // 获取所有的
                     .match(allUrlHandler.getUrls())  // 拦截的 path 列表
-                    .check(StpUtil::checkLogin);
+                    .check(StpUtil::checkLogin).notMatch("/public/**");
             })).addPathPatterns("/**")
             // 排除不需要拦截的路径
             .excludePathPatterns(securityProperties.getExcludes());

+ 19 - 6
taais-extra/taais-powerjob-server/src/main/resources/application-dev.properties

@@ -1,21 +1,34 @@
 oms.env=dev
 ####### Database properties(Configure according to the the environment) #######
+#spring.datasource.remote.hibernate.properties.hibernate.dialect=tech.powerjob.server.persistence.config.dialect.PowerJobPGDialect
+#spring.datasource.core.driver-class-name=org.postgresql.Driver
+#spring.datasource.core.jdbc-url=jdbc:postgresql://localhost:5432/km?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
+#spring.datasource.core.username=postgres
+#spring.datasource.core.password=P3x0LG8jzyHRX59l
+## DM???????
+#spring.datasource.remote.hibernate.properties.hibernate.dialect=org.hibernate.dialect.DmDialect
+#spring.datasource.core.driver-class-name=dm.jdbc.driver.DmDriver
+#spring.datasource.core.jdbc-url=jdbc:dm://127.0.0.1:5236?schema=km&useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
+#spring.datasource.core.username=SYSDBA
+#spring.datasource.core.password=SYSDBA123
+## postgres
 spring.datasource.remote.hibernate.properties.hibernate.dialect=tech.powerjob.server.persistence.config.dialect.PowerJobPGDialect
 spring.datasource.core.driver-class-name=org.postgresql.Driver
-spring.datasource.core.jdbc-url=jdbc:postgresql://localhost:5432/km?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
+spring.datasource.core.jdbc-url=jdbc:postgresql://localhost:5432/taais?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
 spring.datasource.core.username=postgres
-spring.datasource.core.password=postgres@369
-## MySQL数据库连接参数
+spring.datasource.core.password=P3x0LG8jzyHRX59l
+## MySQL???????
+#spring.datasource.remote.hibernate.properties.hibernate.dialect=tech.powerjob.server.persistence.config.dialect.PowerJobPGDialect
 #spring.datasource.core.driver-class-name=com.mysql.cj.jdbc.Driver
 #spring.datasource.core.jdbc-url=jdbc:mysql://localhost:3306/km?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
 #spring.datasource.core.username=root
 #spring.datasource.core.password=Root@369
 spring.datasource.core.maximum-pool-size=20
 spring.datasource.core.minimum-idle=5
-# 监控配置
-# 客户端开关
+# ????
+# ?????
 spring.boot.admin.client.enabled=true
-# 设置 Spring Boot Admin Server 地址
+# ?? Spring Boot Admin Server ??
 spring.boot.admin.client.url:http://localhost:9090/admin
 spring.boot.admin.client.instance.service-host-type=IP
 spring.boot.admin.client.username=km

+ 4 - 1
taais-modules/taais-biz/src/main/java/com/taais/biz/constant/BizConstant.java

@@ -21,7 +21,7 @@ public class BizConstant {
     public static final String TASK_FOLDER_PATH_TRAIL_RESULT= "/result/";
 
     public static final String IMAGE = "image";
-    public static final String LABEL = "image";
+    public static final String LABEL = "label";
 
     public static final String STEP1_SELECT_TASK = "1";
     public static final String STEP2_TRAIN_DATA_SELECT = "2";
@@ -44,4 +44,7 @@ public class BizConstant {
     public static final String TASK_STATUS_PROCESSING = "1";
     public static final String TASK_STATUS_SUCCEED = "2";
     public static final String TASK_STATUS_FAILED = "3";
+
+    public static final String TYPE_DATA_PROCESS = "dataProcess";
+    public static final String TYPE_DATA_BIZ_PROCESS = "dataBizProcess";
 }

+ 46 - 2
taais-modules/taais-biz/src/main/java/com/taais/biz/controller/AlgorithmTaskController.java

@@ -2,7 +2,16 @@ package com.taais.biz.controller;
 
 import java.util.List;
 
+import com.taais.biz.domain.bo.AlgorithmConfigBo;
+import com.taais.biz.domain.bo.AlgorithmModelBo;
+import com.taais.biz.domain.bo.DataBo;
 import com.taais.biz.domain.dto.task.CreateTaskDto;
+import com.taais.biz.domain.vo.AlgorithmConfigVo;
+import com.taais.biz.domain.vo.AlgorithmModelVo;
+import com.taais.biz.domain.vo.DataVo;
+import com.taais.biz.service.IAlgorithmConfigService;
+import com.taais.biz.service.IAlgorithmModelService;
+import com.taais.biz.service.IDataService;
 import com.taais.common.core.utils.StringUtils;
 import lombok.RequiredArgsConstructor;
 import jakarta.servlet.http.HttpServletResponse;
@@ -35,6 +44,12 @@ import com.taais.common.core.core.page.PageResult;
 public class AlgorithmTaskController extends BaseController {
     @Resource
     private IAlgorithmTaskService algorithmTaskService;
+    @Resource
+    private DataController dataController;
+    @Resource
+    private IAlgorithmConfigService algorithmConfigService;
+    @Resource
+    private IAlgorithmModelService modelService;
 
     /**
      * 查询算法任务列表
@@ -49,7 +64,7 @@ public class AlgorithmTaskController extends BaseController {
      * 导出算法任务列表
      */
     @SaCheckPermission("task:task:export")
-    @Log(title = "算法任务", businessType = BusinessType.EXPORT)
+    @Log(title = "算法任务导出", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     public void export(HttpServletResponse response, AlgorithmTaskBo algorithmTaskBo) {
         List<AlgorithmTaskVo> list = algorithmTaskService.selectList(algorithmTaskBo);
@@ -119,8 +134,37 @@ public class AlgorithmTaskController extends BaseController {
     public CommonResult<Void> create(@Validated @RequestBody CreateTaskDto taskDto) {
         String string = algorithmTaskService.create(taskDto);
         if (StringUtils.isNotEmpty(string)) {
-            return CommonResult.fail("新增算法任务记录失败!");
+            return CommonResult.fail("新增算法任务记录失败!失败圆晕:"+string);
         }
         return CommonResult.success();
     }
+
+    @SaCheckPermission("task:task:add")
+    @Log(title = "算法任务/获取图像", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping("/getImage")
+    public CommonResult<PageResult<DataVo>> getImage(@Validated @RequestBody DataBo data) {
+        return dataController.list(data);
+    }
+
+    @SaCheckPermission("task:task:add")
+    @Log(title = "算法任务/获取算法", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping("/getAlgorithm/{type}/{subsystem}")
+    public CommonResult<List<AlgorithmConfigVo>> getAlgorithm(@PathVariable String type, @PathVariable String subsystem) {
+        AlgorithmConfigBo algorithmConfigBo = new AlgorithmConfigBo();
+        algorithmConfigBo.setType(type);
+        algorithmConfigBo.setSubsystem(subsystem);
+        return CommonResult.success(algorithmConfigService.selectList(algorithmConfigBo));
+    }
+
+    @SaCheckPermission("task:task:add")
+    @Log(title = "算法任务/获取模型", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping("/getModel/{algorithmId}")
+    public CommonResult<List<AlgorithmModelVo>> getModel(@PathVariable Long algorithmId) {
+        AlgorithmModelBo algorithmModel = new AlgorithmModelBo();
+        algorithmModel.setAlgorithmId(algorithmId);
+        return CommonResult.success(modelService.selectList(algorithmModel));
+    }
 }

+ 70 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/controller/PublicController.java

@@ -0,0 +1,70 @@
+package com.taais.biz.controller;
+
+import com.taais.biz.constant.BizConstant;
+import com.taais.biz.domain.dto.TaskResultDTO;
+import com.taais.biz.service.IAlgorithmBizProcessService;
+import com.taais.biz.service.IAlgorithmDataProcessService;
+import com.taais.common.core.core.domain.CommonResult;
+import com.taais.common.web.core.BaseController;
+import jakarta.annotation.Resource;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author allen
+ */
+@Validated
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/public")
+public class PublicController extends BaseController {
+    private static final Logger log = LoggerFactory.getLogger(PublicController.class);
+
+    @Resource
+    IAlgorithmDataProcessService dataProcessService;
+    @Resource
+    IAlgorithmBizProcessService bizProcessService;
+    @PostMapping("/taskResult")
+    public CommonResult<Void> taskResult(TaskResultDTO resultDTO) {
+        String errorMsg = checkDTO(resultDTO);
+        if(StringUtils.isNotEmpty(errorMsg)){
+            return CommonResult.fail(errorMsg);
+        }
+        String bizType = resultDTO.getBizType();
+        if(BizConstant.TYPE_DATA_BIZ_PROCESS.equals(bizType)){
+            errorMsg = bizProcessService.taskResult(resultDTO);
+        } else if (BizConstant.TYPE_DATA_PROCESS.equals(bizType)) {
+            errorMsg = dataProcessService.taskResult(resultDTO);
+        } else {
+            log.error("这种情况是不可能发生的,参数:{}",resultDTO);
+            return CommonResult.fail("这种情况是不可能发生的");
+        }
+
+        if(StringUtils.isNotEmpty(errorMsg)){
+            return CommonResult.fail(errorMsg);
+        }
+        return CommonResult.success();
+    }
+
+    private String checkDTO(TaskResultDTO resultDTO) {
+        Integer status = resultDTO.getStatus();
+        if(status != 1 && status != 0){
+            return "status 只能是0或1";
+        }
+        Long bizId = resultDTO.getBizId();
+        if(bizId == null){
+            return "bizId 不能为null";
+        }
+        String bizType = resultDTO.getBizType();
+        if(!BizConstant.TYPE_DATA_BIZ_PROCESS.equals(bizType) && !BizConstant.TYPE_DATA_PROCESS.equals(bizType)){
+            return "status 只能是"+BizConstant.TYPE_DATA_BIZ_PROCESS+"或"+BizConstant.TYPE_DATA_PROCESS;
+        }
+        return null;
+    }
+}

+ 2 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/domain/dto/AlgorithmRequestDto.java

@@ -9,6 +9,8 @@ import java.util.Map;
  */
 @Data
 public class AlgorithmRequestDto {
+    private String bizType;
+    private Long bizId;
     private String sourcePath;
     private String resultPath;
     private Map<String,String> otherParams;

+ 11 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/domain/dto/TaskResultDTO.java

@@ -0,0 +1,11 @@
+package com.taais.biz.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class TaskResultDTO {
+    private Integer status;
+    private String msg;
+    private String bizType;
+    private Long bizId;
+}

+ 2 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/mapper/AlgorithmBizProcessMapper.java

@@ -3,6 +3,7 @@ package com.taais.biz.mapper;
 import com.mybatisflex.core.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 import com.taais.biz.domain.AlgorithmBizProcess;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 算法业务处理Mapper接口
@@ -13,4 +14,5 @@ import com.taais.biz.domain.AlgorithmBizProcess;
 @Mapper
 public interface AlgorithmBizProcessMapper extends BaseMapper<AlgorithmBizProcess> {
 
+    void updateTaskAndSubtask(@Param("bizId") Long bizId, @Param("bizType") String bizType);
 }

+ 3 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/service/IAlgorithmBizProcessService.java

@@ -3,6 +3,7 @@ package com.taais.biz.service;
 import java.util.List;
 
 import com.taais.biz.domain.AlgorithmBizProcess;
+import com.taais.biz.domain.dto.TaskResultDTO;
 import com.taais.biz.domain.vo.AlgorithmBizProcessVo;
 import com.taais.biz.domain.bo.AlgorithmBizProcessBo;
 import com.taais.common.orm.core.service.IBaseService;
@@ -64,4 +65,6 @@ public interface IAlgorithmBizProcessService extends IBaseService<AlgorithmBizPr
     boolean deleteByIds(Long[] ids);
 
     List<AlgorithmBizProcessVo> getProcessBySubtaskId(Long subtaskId);
+
+    String taskResult(TaskResultDTO resultDTO);
 }

+ 3 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/service/IAlgorithmDataProcessService.java

@@ -3,6 +3,7 @@ package com.taais.biz.service;
 import java.util.List;
 
 import com.taais.biz.domain.AlgorithmDataProcess;
+import com.taais.biz.domain.dto.TaskResultDTO;
 import com.taais.biz.domain.vo.AlgorithmDataProcessVo;
 import com.taais.biz.domain.bo.AlgorithmDataProcessBo;
 import com.taais.biz.domain.vo.AlgorithmDataSetVo;
@@ -65,4 +66,6 @@ public interface IAlgorithmDataProcessService extends IBaseService<AlgorithmData
     boolean deleteByIds(Long[] ids);
 
     List<AlgorithmDataProcessVo> getProcessBySubtaskId(Long id);
+
+    String taskResult(TaskResultDTO resultDTO);
 }

+ 37 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmBizProcessServiceImpl.java

@@ -1,17 +1,24 @@
 package com.taais.biz.service.impl;
 
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 import cn.hutool.core.util.ObjectUtil;
 import com.mybatisflex.core.paginate.Page;
 import com.mybatisflex.core.query.QueryWrapper;
+import com.taais.biz.constant.BizConstant;
+import com.taais.biz.controller.PublicController;
+import com.taais.biz.domain.dto.TaskResultDTO;
+import com.taais.common.core.utils.DateUtils;
 import com.taais.common.core.utils.MapstructUtils;
 import com.taais.common.core.utils.StringUtils;
 import com.taais.common.orm.core.page.PageQuery;
 import com.taais.common.core.core.page.PageResult;
 import com.taais.common.orm.core.service.impl.BaseServiceImpl;
 import jakarta.annotation.Resource;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import com.taais.biz.mapper.AlgorithmBizProcessMapper;
@@ -29,6 +36,7 @@ import static com.taais.biz.domain.table.AlgorithmBizProcessTableDef.ALGORITHM_B
  */
 @Service
 public class AlgorithmBizProcessServiceImpl extends BaseServiceImpl<AlgorithmBizProcessMapper, AlgorithmBizProcess> implements IAlgorithmBizProcessService {
+    private static final Logger log = LoggerFactory.getLogger(AlgorithmBizProcessServiceImpl.class);
     @Resource
     private AlgorithmBizProcessMapper algorithmBizProcessMapper;
 
@@ -135,4 +143,33 @@ public class AlgorithmBizProcessServiceImpl extends BaseServiceImpl<AlgorithmBiz
         return null;
     }
 
+    @Override
+    public String taskResult(TaskResultDTO resultDTO) {
+        Long bizId = resultDTO.getBizId();
+        AlgorithmBizProcessVo bizProcessVo = this.selectById(bizId);
+        if(bizProcessVo == null){
+            log.error("任务数据没有找到,resultDTO:{}",resultDTO);
+            return "任务数据没有找到,resultDTO:"+ resultDTO;
+        }
+        AlgorithmBizProcessBo algorithmBizProcess = MapstructUtils.convert(bizProcessVo, AlgorithmBizProcessBo.class);
+        if (resultDTO.getStatus() == 1) {
+            algorithmBizProcess.setStatus(BizConstant.TASK_STATUS_SUCCEED);
+
+        } else if (resultDTO.getStatus() == 0) {
+            algorithmBizProcess.setStatus(BizConstant.TASK_STATUS_FAILED);
+        } else {
+            log.error("不可能的分支");
+        }
+        algorithmBizProcess.setLog(resultDTO.getMsg());
+        Date now = new Date();
+        Date startTime = algorithmBizProcess.getStartTime();
+        algorithmBizProcess.setEndTime(now);
+        if (startTime != null) {
+            algorithmBizProcess.setCostSecond(DateUtils.differentSecondByDate(now, startTime));
+        }
+        this.update(algorithmBizProcess);
+        algorithmBizProcessMapper.updateTaskAndSubtask(resultDTO.getBizId(),resultDTO.getBizType());
+        return null;
+    }
+
 }

+ 37 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmDataProcessServiceImpl.java

@@ -1,17 +1,25 @@
 package com.taais.biz.service.impl;
 
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 import cn.hutool.core.util.ObjectUtil;
 import com.mybatisflex.core.paginate.Page;
 import com.mybatisflex.core.query.QueryWrapper;
+import com.taais.biz.constant.BizConstant;
+import com.taais.biz.domain.bo.AlgorithmBizProcessBo;
+import com.taais.biz.domain.dto.TaskResultDTO;
+import com.taais.biz.domain.vo.AlgorithmBizProcessVo;
+import com.taais.common.core.utils.DateUtils;
 import com.taais.common.core.utils.MapstructUtils;
 import com.taais.common.core.utils.StringUtils;
 import com.taais.common.orm.core.page.PageQuery;
 import com.taais.common.core.core.page.PageResult;
 import com.taais.common.orm.core.service.impl.BaseServiceImpl;
 import jakarta.annotation.Resource;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import com.taais.biz.mapper.AlgorithmDataProcessMapper;
@@ -29,6 +37,7 @@ import static com.taais.biz.domain.table.AlgorithmDataProcessTableDef.ALGORITHM_
  */
 @Service
 public class AlgorithmDataProcessServiceImpl extends BaseServiceImpl<AlgorithmDataProcessMapper, AlgorithmDataProcess> implements IAlgorithmDataProcessService {
+    private static final Logger log = LoggerFactory.getLogger(AlgorithmDataProcessServiceImpl.class);
     @Resource
     private AlgorithmDataProcessMapper algorithmDataProcessMapper;
 
@@ -135,4 +144,32 @@ public class AlgorithmDataProcessServiceImpl extends BaseServiceImpl<AlgorithmDa
         return null;
     }
 
+    @Override
+    public String taskResult(TaskResultDTO resultDTO) {
+        Long bizId = resultDTO.getBizId();
+        AlgorithmDataProcessVo dataProcessVo = this.selectById(bizId);
+        if(dataProcessVo == null){
+            log.error("任务数据没有找到,resultDTO:{}",resultDTO);
+            return "任务数据没有找到,resultDTO:"+ resultDTO;
+        }
+        AlgorithmDataProcessBo algorithmDataProcessBo = MapstructUtils.convert(dataProcessVo, AlgorithmDataProcessBo.class);
+        if (resultDTO.getStatus() == 1) {
+            algorithmDataProcessBo.setStatus(BizConstant.TASK_STATUS_SUCCEED);
+
+        } else if (resultDTO.getStatus() == 0) {
+            algorithmDataProcessBo.setStatus(BizConstant.TASK_STATUS_FAILED);
+        } else {
+            log.error("不可能的分支");
+        }
+        algorithmDataProcessBo.setLog(resultDTO.getMsg());
+        Date now = new Date();
+        Date startTime = algorithmDataProcessBo.getStartTime();
+        algorithmDataProcessBo.setEndTime(now);
+        if (startTime != null) {
+            algorithmDataProcessBo.setCostSecond(DateUtils.differentSecondByDate(now, startTime));
+        }
+        this.update(algorithmDataProcessBo);
+        return null;
+    }
+
 }

+ 4 - 2
taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmSubtaskServiceImpl.java

@@ -12,7 +12,6 @@ import com.taais.biz.domain.dto.AlgorithmConfigParamDto;
 import com.taais.biz.domain.dto.AlgorithmRequestDto;
 import com.taais.biz.domain.vo.AlgorithmBizProcessVo;
 import com.taais.biz.domain.vo.AlgorithmDataProcessVo;
-import com.taais.biz.domain.vo.AlgorithmDataSetVo;
 import com.taais.biz.domain.vo.AlgorithmSubtaskVo;
 import com.taais.biz.mapper.AlgorithmSubtaskMapper;
 import com.taais.biz.service.*;
@@ -73,7 +72,6 @@ public class AlgorithmSubtaskServiceImpl extends BaseServiceImpl<AlgorithmSubtas
         (algorithmSubtaskBo.getStartTime()));
         queryWrapper.and(ALGORITHM_SUBTASK.END_TIME.eq
         (algorithmSubtaskBo.getEndTime()));
-
         return queryWrapper;
     }
 
@@ -208,6 +206,8 @@ public class AlgorithmSubtaskServiceImpl extends BaseServiceImpl<AlgorithmSubtas
             }
             // send http
             AlgorithmRequestDto algorithmRequestDto = new AlgorithmRequestDto();
+            algorithmRequestDto.setBizType(BizConstant.TYPE_DATA_BIZ_PROCESS);
+            algorithmRequestDto.setBizId(bizProcessVo.getId());
             algorithmRequestDto.setSourcePath(preprocessPath);
             algorithmRequestDto.setResultPath(resultPath);
             Gson gson = new Gson();
@@ -269,6 +269,8 @@ public class AlgorithmSubtaskServiceImpl extends BaseServiceImpl<AlgorithmSubtas
             }
             // send http
             AlgorithmRequestDto algorithmRequestDto = new AlgorithmRequestDto();
+            algorithmRequestDto.setBizType(BizConstant.TYPE_DATA_BIZ_PROCESS);
+            algorithmRequestDto.setBizId(processVo.getId());
             algorithmRequestDto.setSourcePath(preprocessPath);
             algorithmRequestDto.setResultPath(resultPath);
             Gson gson = new Gson();

+ 1 - 0
taais-modules/taais-biz/src/main/java/com/taais/biz/service/impl/AlgorithmTaskServiceImpl.java

@@ -183,6 +183,7 @@ public class AlgorithmTaskServiceImpl extends BaseServiceImpl<AlgorithmTaskMappe
         return null;
     }
 
+    // todo Allen task start
     @Override
     public void taskRun() {
         AlgorithmTask algorithmTask = algorithmTaskMapper.getLastTask();

+ 3 - 1
taais-modules/taais-biz/src/main/resources/mapper/task/AlgorithmBizProcessMapper.xml

@@ -3,5 +3,7 @@
     PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.taais.biz.mapper.AlgorithmBizProcessMapper">
-
+    <select id="updateTaskAndSubtask" statementType="CALLABLE">
+        {call update_task_and_subtask(#{bizId,jdbcType=INTEGER,mode=IN}, #{bizType,jdbcType=VARCHAR,mode=IN})}
+    </select>
 </mapper>