Browse Source

提交:列表倒叙 。自动飞行更改状态

master
袁强 2 months ago
parent
commit
f6262ca8c1
  1. 9
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java
  2. 29
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/SDKWaylineService.java

9
dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/AiCompareServiceImpl.java

@ -87,7 +87,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
.like(StringUtils.isNotBlank(bo.getDeptName()), "lower(dept_name)", StringUtils.lowerCase(bo.getDeptName()))
.like(StringUtils.isNotBlank(bo.getJobName()), "lower(job_name)", StringUtils.lowerCase(bo.getJobName()))
.between(params.get("beginTime") != null && params.get("endTime") != null,
"create_time", params.get("beginTime"), params.get("endTime"));
"create_time", params.get("beginTime"), params.get("endTime")).orderByDesc("create_time");
return wrapper;
}
@Override
@ -96,7 +96,7 @@ public class AiCompareServiceImpl implements IAiCompareService {
if(compareDTOList.isEmpty()){
throw new RuntimeException("未选择比对数据");
}
List<AiCompareEntity> insertList =new ArrayList<>();
// List<AiCompareEntity> insertList =new ArrayList<>();
for (Map<String,Object> bo : compareDTOList) {
Long queueId = bo.containsKey("queueId") ? Convert.toLong(bo.get("queueId")) : null;
String waylineId = bo.containsKey("waylineId") ? Convert.toStr(bo.get("waylineId")) : null;
@ -137,12 +137,13 @@ public class AiCompareServiceImpl implements IAiCompareService {
aiCompareEntity.setTemplateId(jobEntityList.get(0).getJobId());
}
}
aiCompareMapper.insert(aiCompareEntity);
String topic = TopicConst.IMAGE +TopicConst.COMPARE;
List<AiCompareMediaFileDTO> mediaFileDTOS = listMediaFile(aiCompareEntity.getJobId(),aiCompareEntity.getId(),43200,false);
mqttGatewayPublish.publish(topic, new CommonTopicRequest().setData(mediaFileDTOS),1);
insertList.add(aiCompareEntity);
// insertList.add(aiCompareEntity);
}
List<BatchResult> resultList = aiCompareMapper.insertOrUpdate(insertList, 10);
// List<BatchResult> resultList = aiCompareMapper.insertOrUpdate(insertList, 10);
List<Long> list =compareDTOList.stream().map(e->Convert.toLong(e.get("queueId"))).collect(Collectors.toList());
return aiCompareQueueService.updateStatus(list,AiCompareStatusConstants.QUEUW_TYPE_1);
}

29
dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/SDKWaylineService.java

@ -1,5 +1,8 @@
package org.dromara.sample.wayline.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.dromara.common.core.constant.DeviceQrtzConstants;
import org.dromara.common.sdk.cloudapi.wayline.*;
import org.dromara.common.sdk.cloudapi.wayline.api.AbstractWaylineService;
import org.dromara.common.sdk.mqtt.MqttReply;
@ -11,7 +14,9 @@ import org.dromara.common.sdk.mqtt.requests.TopicRequestsResponse;
import org.dromara.common.websocket.dto.BizCodeEnum;
import org.dromara.sample.common.error.CommonErrorEnum;
import org.dromara.sample.component.mqtt.model.EventsReceiver;
import org.dromara.sample.manage.mapper.IDeviceQrtzFileMapper;
import org.dromara.sample.manage.model.dto.DeviceDTO;
import org.dromara.sample.manage.model.entity.DeviceQrtzFileEntity;
import org.dromara.sample.manage.model.enums.UserTypeEnum;
import org.dromara.sample.manage.service.IDeviceRedisService;
import org.dromara.sample.media.model.MediaFileCountDTO;
@ -31,7 +36,9 @@ import org.springframework.transaction.annotation.Transactional;
import java.net.URL;
import java.sql.SQLException;
import java.sql.Wrapper;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
@ -58,7 +65,8 @@ public class SDKWaylineService extends AbstractWaylineService {
@Autowired
private IWaylineFileService waylineFileService;
@Autowired
private IDeviceQrtzFileMapper deviceQrtzFileMapper;
@Autowired
private IWebSocketMessageService webSocketMessageService;
@ -105,9 +113,28 @@ public class SDKWaylineService extends AbstractWaylineService {
.jobId(response.getBid()).mediaCount(job.getMediaCount()).uploadedCount(0).fileId(job.getFileId()).build());
}
LambdaQueryWrapper<DeviceQrtzFileEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(DeviceQrtzFileEntity::getWaylineId,job.getFileId()).eq(DeviceQrtzFileEntity::getStatus, DeviceQrtzConstants.QRTZ_FILE_STATUS_1).eq(DeviceQrtzFileEntity::getDeviceSn,job.getDockSn());
List<DeviceQrtzFileEntity> fileEntityList = deviceQrtzFileMapper.selectList(wrapper);
if (FlighttaskStatusEnum.OK != statusEnum) {
job.setCode(eventsReceiver.getResult().getCode());
job.setStatus(WaylineJobStatusEnum.FAILED.getVal());
//异常
if(!fileEntityList.isEmpty()){
fileEntityList.forEach(f->{
f.setStatus(DeviceQrtzConstants.QRTZ_FILE_STATUS_0);
});
deviceQrtzFileMapper.updateById(fileEntityList);
}
}else if(FlighttaskStatusEnum.OK == statusEnum){
//正常
if(!fileEntityList.isEmpty()){
fileEntityList.forEach(f->{
f.setStatus(DeviceQrtzConstants.QRTZ_FILE_STATUS_3);
});
deviceQrtzFileMapper.updateById(fileEntityList);
}
}
waylineJobService.updateJob(job);
waylineRedisService.delRunningWaylineJob(response.getGateway());

Loading…
Cancel
Save