|
|
@@ -20,6 +20,7 @@ import com.fdkankan.common.exception.BusinessException;
|
|
|
import com.fdkankan.common.util.FileUtils;
|
|
|
import com.fdkankan.scene.bean.*;
|
|
|
import com.fdkankan.scene.config.FdkkLaserConfig;
|
|
|
+import com.fdkankan.scene.config.RedisKeyExt;
|
|
|
import com.fdkankan.scene.config.ServiceConfig;
|
|
|
import com.fdkankan.scene.constant.BuildType;
|
|
|
import com.fdkankan.scene.entity.*;
|
|
|
@@ -144,6 +145,7 @@ public class SceneDownloadHandlerServiceImpl {
|
|
|
log.info("场景下载开始 - num[{}] - threadName[{}]", num, Thread.currentThread().getName());
|
|
|
|
|
|
long startTime = Calendar.getInstance().getTimeInMillis();
|
|
|
+ redisUtil.del(RedisKeyExt.OFFLINE_LOCK_KEY+num);
|
|
|
|
|
|
//执行场景下载逻辑
|
|
|
this.downloadHandler(downLoadTaskBean);
|
|
|
@@ -154,10 +156,10 @@ public class SceneDownloadHandlerServiceImpl {
|
|
|
log.info("场景下载结束 - num[{}] - threadName[{}] - consumeTime[{}]", num, Thread.currentThread().getName(), consumeTime);
|
|
|
//成功请求
|
|
|
Date endDate = new Date();
|
|
|
- sceneFileBuildService.updateTimeAndStatus(downLoadTaskBean.getNum(),4,null, endDate, BuildType.BUILD_MESH_OFFLINE);
|
|
|
+ sceneFileBuildService.updateTimeAndStatus(downLoadTaskBean.getNum(),4,null, endDate, BuildType.BUILD_MESH_OFFLINE,endDate);
|
|
|
|
|
|
//离线包下载成功,更新场景最后修改时间为当前时间
|
|
|
- scenePlusService.update(new LambdaUpdateWrapper<ScenePlus>().set(ScenePlus::getLastEditTime, new Date()).eq(ScenePlus::getNum, downLoadTaskBean.getNum()));
|
|
|
+ scenePlusService.update(new LambdaUpdateWrapper<ScenePlus>().set(ScenePlus::getLastEditTime, endDate).eq(ScenePlus::getNum, downLoadTaskBean.getNum()));
|
|
|
|
|
|
SceneFileBuildEntity buildBySceneNum = sceneFileBuildService.findBuildBySceneNum(num, BuildType.BUILD_MESH_OFFLINE);
|
|
|
if (buildBySceneNum != null&&!downLoadTaskBean.isFusion()){
|
|
|
@@ -166,8 +168,9 @@ public class SceneDownloadHandlerServiceImpl {
|
|
|
logEntity.setStartBuildTime(buildBySceneNum.getStartBuildTime());
|
|
|
logEntity.setEndBuildTime(endDate);
|
|
|
logEntity.setBuildType(buildBySceneNum.getBuildType());
|
|
|
+ logEntity.setFusionId(downLoadTaskBean.getFusionId());
|
|
|
sceneBuildLogService.save(logEntity);
|
|
|
- laserClient.addNotifications(2);
|
|
|
+ laserClient.addNotifications(2,num,BuildType.BUILD_MESH_OFFLINE);
|
|
|
}
|
|
|
|
|
|
}catch (Exception e){
|
|
|
@@ -176,9 +179,12 @@ public class SceneDownloadHandlerServiceImpl {
|
|
|
.eq(SceneDownloadLog::getSceneNum,num)
|
|
|
.set(SceneDownloadLog::getStatus,2)
|
|
|
);
|
|
|
+ Date date = new Date();
|
|
|
+ sceneFileBuildService.updateTimeAndStatus(num,-1,null, new Date(), BuildType.BUILD_MESH_OFFLINE,date);
|
|
|
+ scenePlusService.update(new LambdaUpdateWrapper<ScenePlus>().set(ScenePlus::getLastEditTime, date).eq(ScenePlus::getNum, num));
|
|
|
log.error(ExceptionUtil.stacktraceToString(e));
|
|
|
if (!downLoadTaskBean.isFusion()) {
|
|
|
- laserClient.addNotifications(3);
|
|
|
+ laserClient.addNotifications(3,num, BuildType.BUILD_MESH_OFFLINE);
|
|
|
}
|
|
|
//失败请求
|
|
|
}finally {
|
|
|
@@ -188,7 +194,7 @@ public class SceneDownloadHandlerServiceImpl {
|
|
|
//删除正在下载任务
|
|
|
redisUtil.lRemove(RedisKey.SCENE_DOWNLOAD_ING, 1, num);
|
|
|
}
|
|
|
- sceneDownloadLogService.setBuildSceneOffline();
|
|
|
+ sceneDownloadLogService.setBuildSceneOffline(num);
|
|
|
}
|
|
|
}
|
|
|
|