From b725463a09193f689795201854a237d269299163 Mon Sep 17 00:00:00 2001 From: yq183 <645046984@qq.com> Date: Wed, 26 Mar 2025 21:12:28 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=8F=90u=E5=8F=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sample/manage/model/entity/DeviceQrtzFileEntity.java | 3 +-- .../org/dromara/sample/manage/service/IDeviceQrtzService.java | 2 +- .../sample/manage/service/impl/DeviceQrtzServiceImpl.java | 3 ++- .../dromara/sample/wayline/model/entity/WaylineFileEntity.java | 2 ++ 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/entity/DeviceQrtzFileEntity.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/entity/DeviceQrtzFileEntity.java index e3df59e..77a4773 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/entity/DeviceQrtzFileEntity.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/entity/DeviceQrtzFileEntity.java @@ -44,8 +44,7 @@ public class DeviceQrtzFileEntity implements Serializable { private Integer status; - - + private String deviceSn; /** * 飞行时间 diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceQrtzService.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceQrtzService.java index 86acb27..f40df20 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceQrtzService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/IDeviceQrtzService.java @@ -53,5 +53,5 @@ public interface IDeviceQrtzService { Boolean fileSort(Long id ,Integer sort); //通知启用飞行任务 - DeviceQrtzFileEntity getDeviceQrtzFileEntity(Long id); + DeviceQrtzFileEntity getDeviceQrtzFileEntity(String deviceSn); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java index 36a3ab8..3585a50 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java @@ -191,6 +191,7 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService { DeviceQrtzFileEntity entity = new DeviceQrtzFileEntity(); QueryWrapper queryWrapper = new QueryWrapper().eq("wayline_id", waylineId); WaylineFileEntity fileEntity = waylineFileMapper.selectOne(queryWrapper); + entity.setDeviceSn(fileEntity.getDeviceSn()); entity.setQrtzId(qrtzId); entity.setWaylineId(waylineId); entity.setWaylineName(fileEntity.getName()); @@ -251,7 +252,7 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService { } @Override - public DeviceQrtzFileEntity getDeviceQrtzFileEntity(Long id) { + public DeviceQrtzFileEntity getDeviceQrtzFileEntity(String deviceSn) { return null; } } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineFileEntity.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineFileEntity.java index 81b6221..9df75d7 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineFileEntity.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineFileEntity.java @@ -30,6 +30,8 @@ public class WaylineFileEntity implements Serializable { @TableField("wayline_id") private String waylineId; + @TableField("device_sn") + private String deviceSn; @TableField("drone_model_key") private String droneModelKey; From ff32d7575752417c84f56ed6bd6fed24df3a7f05 Mon Sep 17 00:00:00 2001 From: yq183 <645046984@qq.com> Date: Wed, 26 Mar 2025 22:09:46 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DeviceQrtzController.java | 5 +-- .../service/impl/DeviceQrtzServiceImpl.java | 45 ++++++++++++++++--- 2 files changed, 42 insertions(+), 8 deletions(-) diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceQrtzController.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceQrtzController.java index 45d94af..ec7273a 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceQrtzController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/DeviceQrtzController.java @@ -154,9 +154,8 @@ public class DeviceQrtzController extends BaseController { */ @SaCheckPermission("devict:qrtz:remove") @Log(title = "自动飞行航线删除", businessType = BusinessType.DELETE) - @DeleteMapping("/fileRemove/{id}") - public R fileRemove(@NotEmpty(message = "主键不能为空") - @PathVariable Long id) { + @DeleteMapping("/fileRemove") + public R fileRemove(@NotNull(message = "主键不能为空")Long id) { return toAjax(deviceQrtzService.fileRemove(id)); } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java index 3585a50..b7b2827 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/DeviceQrtzServiceImpl.java @@ -4,13 +4,13 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; + import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.dromara.common.core.constant.DeviceQrtzConstants; -import org.dromara.common.core.utils.MapstructUtils; + import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.sample.manage.mapper.IDeviceMapper; + import org.dromara.sample.manage.mapper.IDeviceQrtzDateMapper; import org.dromara.sample.manage.mapper.IDeviceQrtzFileMapper; import org.dromara.sample.manage.mapper.IDeviceQrtzMapper; @@ -21,9 +21,9 @@ import org.dromara.sample.manage.model.entity.DeviceQrtzDateEntity; import org.dromara.sample.manage.model.entity.DeviceQrtzEntity; import org.dromara.sample.manage.model.entity.DeviceQrtzFileEntity; import org.dromara.sample.manage.service.IDeviceQrtzDateService; -import org.dromara.sample.manage.service.IDeviceQrtzFileService; + import org.dromara.sample.manage.service.IDeviceQrtzService; -import org.dromara.sample.manage.service.IDeviceService; + import org.dromara.sample.wayline.mapper.IWaylineFileMapper; import org.dromara.sample.wayline.model.entity.WaylineFileEntity; import org.dromara.system.api.model.LoginUser; @@ -32,6 +32,10 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.text.ParseException; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.format.DateTimeFormatter; import java.util.Collection; import java.util.Date; import java.util.List; @@ -251,8 +255,39 @@ public class DeviceQrtzServiceImpl implements IDeviceQrtzService { return deviceQrtzFileMapper.updateById(entity)>0; } + @Override public DeviceQrtzFileEntity getDeviceQrtzFileEntity(String deviceSn) { + if(StrUtil.isNotEmpty(deviceSn)){ + // 获取当前日期 + LocalDate currentDate = LocalDate.now(); + + // 定义日期格式 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + + // 格式化当前日期 + String formattedDate = currentDate.format(formatter); + List qrtzFileEntityList = deviceQrtzFileMapper.selectList(new QueryWrapper().eq("device_sn", deviceSn).eq("exec_date", formattedDate).eq("status", DeviceQrtzConstants.QRTZ_FILE_STATUS_1).orderByAsc("sort")); + if(!qrtzFileEntityList.isEmpty()){ + DeviceQrtzFileEntity deviceQrtzFileEntity = qrtzFileEntityList.get(0); + List 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()))){ + //获取航线数据发送之类 + //获取是否是工单航线,是修改状态 + + } + + + } + + } + } + + } return null; } }