|
|
|
@ -3,7 +3,6 @@ package com.inspect.taskstatus.controller; |
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
import com.inspect.analysis.domain.ResultAnalysis; |
|
|
|
import com.inspect.analysis.service.IResultAnalysisService; |
|
|
|
import com.inspect.base.core.constant.Color; |
|
|
|
import com.inspect.base.core.constant.RedisConst; |
|
|
|
import com.inspect.base.core.enums.TaskStatus; |
|
|
|
import com.inspect.base.core.utils.DateUtils; |
|
|
|
@ -26,7 +25,6 @@ import com.inspect.task.domain.PatrolSendTask; |
|
|
|
import com.inspect.task.domain.PatrolTask; |
|
|
|
import com.inspect.task.domain.SendTask; |
|
|
|
import com.inspect.task.service.IPatrolTaskService; |
|
|
|
import com.inspect.taskinfo.mapper.PatrolTaskInfoMapper; |
|
|
|
import com.inspect.taskinfo.service.IPatrolTaskInfoService; |
|
|
|
import com.inspect.taskstatus.client.FeignJobTaskClient; |
|
|
|
import com.inspect.taskstatus.client.FeignTaskClient; |
|
|
|
@ -583,32 +581,32 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
|
|
|
|
//立即执行任务 |
|
|
|
@GetMapping({"/controlChange"}) |
|
|
|
public AjaxResult controlChange(PatrolTask patrolTask) { |
|
|
|
String taskCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, String.valueOf(patrolTask.getTaskId())); |
|
|
|
if (!StringUtils.isEmpty(taskCode)) { |
|
|
|
log.info("[TASK] CURRENT EXEC TASK: {}", taskCode); |
|
|
|
return AjaxResult.error(501, "THE TASK IS RUNNING!"); |
|
|
|
public AjaxResult controlChange(PatrolTask patrolTaskParam) { |
|
|
|
String taskCurrentCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, String.valueOf(patrolTaskParam.getTaskId())); |
|
|
|
log.info("CONTROL_CHANGE CURRENT EXEC TASK: taskId: {}, taskCurrentCode: {}", patrolTaskParam.getTaskId(), taskCurrentCode); |
|
|
|
if (!StringUtils.isEmpty(taskCurrentCode)) { |
|
|
|
return AjaxResult.error(501, "THE TASK " + taskCurrentCode + " IS RUNNING"); |
|
|
|
} else { |
|
|
|
PatrolTask patrol = patrolTaskService.selectPatrolTaskByTaskId(patrolTask.getTaskId()); |
|
|
|
return issueToRobot(patrol);//type=41 立即执行任务 |
|
|
|
PatrolTask patrolTask = patrolTaskService.selectPatrolTaskByTaskId(patrolTaskParam.getTaskId()); |
|
|
|
return issuePatrolTask(patrolTask); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public void sendTaskToVideo(final PatrolTask patrolTask) { |
|
|
|
public void sendVideoLightTaskToScheduledJob(final PatrolTask patrolTask) { |
|
|
|
try { |
|
|
|
if ("1".equals(patrolTask.getDevType())) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
feignJobTaskClient.immediatelyExecTask(patrolTask); |
|
|
|
(new Thread(() -> { |
|
|
|
try { |
|
|
|
PatrolTaskStatusController.this.extracted(patrolTask); |
|
|
|
} catch (InterruptedException e) { |
|
|
|
e.printStackTrace(); |
|
|
|
} |
|
|
|
|
|
|
|
})).start(); |
|
|
|
// (new Thread(() -> { |
|
|
|
// try { |
|
|
|
// extracted(patrolTask); |
|
|
|
// } catch (InterruptedException e) { |
|
|
|
// e.printStackTrace(); |
|
|
|
// } |
|
|
|
// |
|
|
|
// })).start(); |
|
|
|
} catch (Exception e) { |
|
|
|
e.printStackTrace(); |
|
|
|
} |
|
|
|
@ -635,7 +633,7 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
public AjaxResult issueToRobot(PatrolTask patrolTask) { |
|
|
|
public AjaxResult issuePatrolTask(final PatrolTask patrolTask) { |
|
|
|
String receiveCode = ""; |
|
|
|
String sendCode = ""; |
|
|
|
BasedataEqpBookMoMain basedataEqpBookMoMain = new BasedataEqpBookMoMain(); |
|
|
|
@ -651,10 +649,10 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
List<String> devTypeList = new ArrayList<>(); |
|
|
|
List<String> devNoList = new ArrayList<>(); |
|
|
|
for (int i = 0; i < devNos.length; i++) { |
|
|
|
log.info("第{}个devNo------------issueToRobot", i + 1); |
|
|
|
log.info("issuePatrolTask devNo: {}", i + 1); |
|
|
|
BasedataEqpBookMoMain basedataEqpbookMomain = new BasedataEqpBookMoMain(); |
|
|
|
basedataEqpbookMomain.setPatrolDeviceCode(devNos[i]); |
|
|
|
List<BasedataEqpBookMoMain> eqpBookMoMains = this.patrolResultService.selectBasedataEqpBookList(basedataEqpbookMomain); |
|
|
|
List<BasedataEqpBookMoMain> eqpBookMoMains = patrolResultService.selectBasedataEqpBookList(basedataEqpbookMomain); |
|
|
|
if (!eqpBookMoMains.isEmpty() && eqpBookMoMains.get(0).getMainSystemCode() != null) { |
|
|
|
receiveCode = eqpBookMoMains.get(0).getMainSystemCode(); |
|
|
|
} |
|
|
|
@ -666,6 +664,7 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
sendTask.setType("41"); |
|
|
|
sendTask.setCommand("1"); |
|
|
|
String str = JSONObject.toJSONString(sendTask); |
|
|
|
log.info("无人机-机器人任务, receiveCode: {}, devType: {}, devNo: {}", receiveCode, patrolTask.getDevType(), patrolTask.getDevNo()); |
|
|
|
this.feignTaskClient.sendCommand(str); |
|
|
|
} else { |
|
|
|
// String taskCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, String.valueOf(patrolTask.getTaskId())); |
|
|
|
@ -674,7 +673,7 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
// return AjaxResult.error(501, "THERE TASK IS RUNNING!"); |
|
|
|
// } else { |
|
|
|
// 手动任务执行 |
|
|
|
log.info("第{}个devNo{}", i + 1, devNos[i]); |
|
|
|
log.info("可见光任务, 第{}个, devNo: {}", i + 1, devNos[i]); |
|
|
|
devTypeList.add(devTypes[i]); |
|
|
|
devNoList.add(devNos[i]); |
|
|
|
// patrolTask.setDevType(devTypes[i]); |
|
|
|
@ -683,11 +682,11 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
// } |
|
|
|
} |
|
|
|
} |
|
|
|
if (devTypeList.size() > 0 && devNoList.size() > 0) { |
|
|
|
patrolTask.setDevType(StringUtils.join(devTypeList, ",")); |
|
|
|
patrolTask.setDevNo(StringUtils.join(devNoList, ",")); |
|
|
|
log.info("手动执行任务,devType:{}, devNo:{}", patrolTask.getDevType(), patrolTask.getDevNo()); |
|
|
|
sendTaskToVideo(patrolTask); |
|
|
|
if (!devTypeList.isEmpty() && !devNoList.isEmpty()) { |
|
|
|
patrolTask.setDevType(StringUtils.join(devTypeList, StringUtils.COMMA)); |
|
|
|
patrolTask.setDevNo(StringUtils.join(devNoList, StringUtils.COMMA)); |
|
|
|
log.info("可见光任务, devType:{}, devNo:{}", patrolTask.getDevType(), patrolTask.getDevNo()); |
|
|
|
sendVideoLightTaskToScheduledJob(patrolTask); |
|
|
|
} |
|
|
|
} |
|
|
|
return toAjax(1); |
|
|
|
@ -720,11 +719,11 @@ public class PatrolTaskStatusController extends BaseController { |
|
|
|
|
|
|
|
int res = patrolTaskStatusService.updatePatrolTaskStatus(patrolTaskStatus); |
|
|
|
patrolTaskStatus.setCommand(command); |
|
|
|
issueTask(patrolTaskStatus); |
|
|
|
issuePatrolTask(patrolTaskStatus); |
|
|
|
return toAjax(res); |
|
|
|
} |
|
|
|
|
|
|
|
public void issueTask(PatrolTaskStatus patrolTaskStatus) { |
|
|
|
public void issuePatrolTask(PatrolTaskStatus patrolTaskStatus) { |
|
|
|
String posType = patrolTaskStatus.getPosType();//预置位类型 0-视频 1-机器人 2-无人机 |
|
|
|
if (StringUtils.isEmpty(posType)) { |
|
|
|
log.warn("[TASK] posType is null"); |
|
|
|
|