|
|
@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|
|
|
import org.dromara.business.api.RemoteBusinessTaskService; |
|
|
|
import org.dromara.common.core.constant.BusinessConstants; |
|
|
|
import org.dromara.common.core.constant.DeviceQrtzConstants; |
|
|
|
|
|
|
|
import org.dromara.common.mybatis.core.page.TableDataInfo; |
|
|
@ -63,7 +65,8 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService { |
|
|
|
private IWaylineFileMapper waylineFileMapper; |
|
|
|
@Autowired |
|
|
|
private IFlightTaskService flightTaskService; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private RemoteBusinessTaskService remoteBusinessTaskService; |
|
|
|
@Override |
|
|
|
public TableDataInfo<DeviceQrtzEntity> listManageDeviceQrtz(Page page, DeviceQrtzDTO deviceQrtzDTO) { |
|
|
|
return TableDataInfo.build(deviceQrtzMapper.listManageDeviceQrtz(page, deviceQrtzDTO)); |
|
|
@ -266,12 +269,10 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService { |
|
|
|
public DeviceQrtzFileEntity getDeviceQrtzFileEntity(DeviceDTO device) { |
|
|
|
if(StrUtil.isNotEmpty(device.getDeviceSn())){ |
|
|
|
// 获取当前日期
|
|
|
|
LocalDate currentDate = LocalDate.now(); |
|
|
|
|
|
|
|
LocalDateTime currentDate = LocalDateTime.now(); |
|
|
|
// 定义日期格式
|
|
|
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); |
|
|
|
DateTimeFormatter formatterS = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); |
|
|
|
|
|
|
|
// 格式化当前日期
|
|
|
|
String formattedDate = currentDate.format(formatter); |
|
|
|
List<DeviceQrtzFileEntity> qrtzFileEntityList = deviceQrtzFileMapper.selectList(new QueryWrapper<DeviceQrtzFileEntity>().eq("device_sn", device.getDeviceSn()).eq("exec_date", formattedDate).eq("status", DeviceQrtzConstants.QRTZ_FILE_STATUS_1).orderByAsc("sort")); |
|
|
@ -280,18 +281,21 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService { |
|
|
|
List<DeviceQrtzDateEntity> qrtzDateEntityList = deviceQrtzDateMapper.listDeviceQrtzDateByQrtzAndDate(deviceQrtzFileEntity.getQrtzId()); |
|
|
|
if(!qrtzDateEntityList.isEmpty()){ |
|
|
|
// 获取当前日期和时间
|
|
|
|
LocalDateTime currentDateTime = LocalDateTime.now(); |
|
|
|
for (DeviceQrtzDateEntity qrtzDate : qrtzDateEntityList) { |
|
|
|
if (!currentDateTime.isBefore(Convert.toLocalDateTime(qrtzDate.getStartDate())) && !currentDateTime.isAfter(Convert.toLocalDateTime(qrtzDate.getEndDate()))){ |
|
|
|
if (!currentDate.isBefore(Convert.toLocalDateTime(qrtzDate.getStartDate())) && !currentDate.isAfter(Convert.toLocalDateTime(qrtzDate.getEndDate()))){ |
|
|
|
//获取航线数据发送之类
|
|
|
|
WaylineFileEntity waylineFileEntity = waylineFileMapper.selectOne(new LambdaQueryWrapper<WaylineFileEntity>().eq(WaylineFileEntity::getWaylineId, deviceQrtzFileEntity.getWaylineId())); |
|
|
|
if(waylineFileEntity == null){//更改为异常,当前航线不存在
|
|
|
|
if(waylineFileEntity == null){ |
|
|
|
//更改为异常,当前航线不存在
|
|
|
|
deviceQrtzFileEntity.setStatus(DeviceQrtzConstants.QRTZ_FILE_STATUS_0); |
|
|
|
deviceQrtzFileMapper.updateById(deviceQrtzFileEntity); |
|
|
|
continue; |
|
|
|
} |
|
|
|
//获取是否是工单航线,是修改状态
|
|
|
|
remoteBusinessTaskService.updateTaskStatus(deviceQrtzFileEntity.getWaylineId(), BusinessConstants.TASK_STATUS_2,null,null); |
|
|
|
CreateJobParam createJobParam = new CreateJobParam(); |
|
|
|
try { |
|
|
|
createJobParam.setName(deviceQrtzFileEntity.getWaylineName()+""+currentDateTime.format(formatterS)); |
|
|
|
createJobParam.setName(deviceQrtzFileEntity.getWaylineName()+""+currentDate.format(formatterS)); |
|
|
|
createJobParam.setFileId(deviceQrtzFileEntity.getWaylineId()); |
|
|
|
createJobParam.setDockSn(device.getDeviceSn()); |
|
|
|
createJobParam.setWaylineType(WaylineTypeEnum.find(waylineFileEntity.getTemplateTypes())); |
|
|
|