drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwAreaDivideController.java
@@ -27,10 +27,12 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.Func; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.sxkj.fw.area.dto.FwAreaDivideDTO; import org.sxkj.fw.area.entity.FwAreaDivideEntity; import org.sxkj.fw.area.vo.FwAreaDivideVO; import org.sxkj.fw.area.excel.FwAreaDivideExcel; @@ -40,9 +42,11 @@ import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.tool.constant.BladeConstant; import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity; import springfox.documentation.annotations.ApiIgnore; import java.util.Map; import java.util.List; import java.util.Objects; import javax.servlet.http.HttpServletResponse; /** @@ -72,13 +76,13 @@ /** * 区域划分表 分页 */ @GetMapping("/list") @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入fwAreaDivide") public R<IPage<FwAreaDivideVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwAreaDivide, Query query) { IPage<FwAreaDivideEntity> pages = fwAreaDivideService.page(Condition.getPage(query), Condition.getQueryWrapper(fwAreaDivide, FwAreaDivideEntity.class)); return R.data(FwAreaDivideWrapper.build().pageVO(pages)); } // @GetMapping("/list") // @ApiOperationSupport(order = 2) // @ApiOperation(value = "分页", notes = "传入fwAreaDivide") // public R<IPage<FwAreaDivideVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwAreaDivide, Query query) { // IPage<FwAreaDivideEntity> pages = fwAreaDivideService.page(Condition.getPage(query), Condition.getQueryWrapper(fwAreaDivide, FwAreaDivideEntity.class)); // return R.data(FwAreaDivideWrapper.build().pageVO(pages)); // } /** * 区域划分表 自定义分页 @@ -86,7 +90,7 @@ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入fwAreaDivide") public R<IPage<FwAreaDivideVO>> page(FwAreaDivideVO fwAreaDivide, Query query) { public R<IPage<FwAreaDivideVO>> page(FwAreaDivideDTO fwAreaDivide, Query query) { IPage<FwAreaDivideVO> pages = fwAreaDivideService.selectFwAreaDividePage(Condition.getPage(query), fwAreaDivide); return R.data(pages); } @@ -94,22 +98,22 @@ /** * 区域划分表 新增 */ @PostMapping("/save") @ApiOperationSupport(order = 4) @ApiOperation(value = "新增", notes = "传入fwAreaDivide") public R save(@Valid @RequestBody FwAreaDivideEntity fwAreaDivide) { return R.status(fwAreaDivideService.save(fwAreaDivide)); } // @PostMapping("/save") // @ApiOperationSupport(order = 4) // @ApiOperation(value = "新增", notes = "传入fwAreaDivide") // public R save(@Valid @RequestBody FwAreaDivideEntity fwAreaDivide) { // return R.status(fwAreaDivideService.save(fwAreaDivide)); // } /** * 区域划分表 修改 */ @PostMapping("/update") @ApiOperationSupport(order = 5) @ApiOperation(value = "修改", notes = "传入fwAreaDivide") public R update(@Valid @RequestBody FwAreaDivideEntity fwAreaDivide) { return R.status(fwAreaDivideService.updateById(fwAreaDivide)); } // @PostMapping("/update") // @ApiOperationSupport(order = 5) // @ApiOperation(value = "修改", notes = "传入fwAreaDivide") // public R update(@Valid @RequestBody FwAreaDivideEntity fwAreaDivide) { // return R.status(fwAreaDivideService.updateById(fwAreaDivide)); // } /** * 区域划分表 新增或修改 @@ -117,8 +121,9 @@ @PostMapping("/submit") @ApiOperationSupport(order = 6) @ApiOperation(value = "新增或修改", notes = "传入fwAreaDivide") public R submit(@Valid @RequestBody FwAreaDivideEntity fwAreaDivide) { return R.status(fwAreaDivideService.saveOrUpdate(fwAreaDivide)); public R submit(@Valid @RequestBody FwAreaDivideDTO fwAreaDivide) { FwAreaDivideEntity fwAreaDivideEntity = Objects.requireNonNull(BeanUtil.copy(fwAreaDivide, FwAreaDivideEntity.class)); return R.status(fwAreaDivideService.saveOrUpdate(fwAreaDivideEntity)); } /** drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseSceneController.java
@@ -72,13 +72,13 @@ /** * 防控场景表 分页 */ @GetMapping("/list") @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入fwDefenseScene") public R<IPage<FwDefenseSceneVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDefenseScene, Query query) { IPage<FwDefenseSceneEntity> pages = fwDefenseSceneService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDefenseScene, FwDefenseSceneEntity.class)); return R.data(FwDefenseSceneWrapper.build().pageVO(pages)); } // @GetMapping("/list") // @ApiOperationSupport(order = 2) // @ApiOperation(value = "分页", notes = "传入fwDefenseScene") // public R<IPage<FwDefenseSceneVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDefenseScene, Query query) { // IPage<FwDefenseSceneEntity> pages = fwDefenseSceneService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDefenseScene, FwDefenseSceneEntity.class)); // return R.data(FwDefenseSceneWrapper.build().pageVO(pages)); // } /** * 防控场景表 自定义分页 @@ -94,12 +94,12 @@ /** * 防控场景表 新增 */ @PostMapping("/save") @ApiOperationSupport(order = 4) @ApiOperation(value = "新增", notes = "传入fwDefenseScene") public R save(@Valid @RequestBody FwDefenseSceneEntity fwDefenseScene) { return R.status(fwDefenseSceneService.save(fwDefenseScene)); } // @PostMapping("/save") // @ApiOperationSupport(order = 4) // @ApiOperation(value = "新增", notes = "传入fwDefenseScene") // public R save(@Valid @RequestBody FwDefenseSceneEntity fwDefenseScene) { // return R.status(fwDefenseSceneService.save(fwDefenseScene)); // } /** * 防控场景表 修改 drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwAreaDivideDTO.java
@@ -16,9 +16,17 @@ */ package org.sxkj.fw.area.dto; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import io.swagger.annotations.ApiModelProperty; import org.sxkj.fw.area.entity.FwAreaDivideEntity; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalTime; /** * 区域划分表 数据传输对象实体类 @@ -27,8 +35,84 @@ * @since 2026-01-07 */ @Data @EqualsAndHashCode(callSuper = true) public class FwAreaDivideDTO extends FwAreaDivideEntity { public class FwAreaDivideDTO { private static final long serialVersionUID = 1L; @ApiModelProperty("主键id") private Long id; /** * 区域名称 */ @ApiModelProperty(value = "区域名称") private String areaName; /** * 区域中心经度 */ @ApiModelProperty(value = "区域中心经度") private Double longitude; /** * 区域中心纬度 */ @ApiModelProperty(value = "区域中心纬度") private Double latitude; /** * 区域面积(km²) */ @ApiModelProperty(value = "区域面积(km²)") private BigDecimal areaSize; /** * 经纬度面(存储地理面数据) */ @ApiModelProperty(value = "经纬度面(存储地理面数据)") private byte[] geom; /** * 区域类型:报警区/重点管制区 */ @ApiModelProperty(value = "区域类型:报警区/重点管制区") private String areaType; /** * 触发条件 */ @ApiModelProperty(value = "触发条件") private String triggerCondition; /** * 响应机制内容 */ @ApiModelProperty(value = "响应机制内容") private String responseMechanism; /** * 管控级别:日常/重点/严密 */ @ApiModelProperty(value = "管控级别:日常/重点/严密") private String controlLevel; /** * 关联派出所id */ @ApiModelProperty(value = "关联派出所id") private Long policeStationId; /** * 可飞行时间段-开始 */ @ApiModelProperty(value = "可飞行时间段-开始") private LocalTime flyTimeStart; /** * 可飞行时间段-结束 */ @ApiModelProperty(value = "可飞行时间段-结束") private LocalTime flyTimeEnd; /** * 可飞行日期-开始 */ @ApiModelProperty(value = "可飞行日期-开始") private LocalDate flyDateStart; /** * 可飞行日期-结束 */ @ApiModelProperty(value = "可飞行日期-结束") private LocalDate flyDateEnd; /** * 区域编码 */ @ApiModelProperty(value = "区域编码") private String areaCode; } drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.area.mapper; import org.sxkj.fw.area.dto.FwAreaDivideDTO; import org.sxkj.fw.area.entity.FwAreaDivideEntity; import org.sxkj.fw.area.vo.FwAreaDivideVO; import org.sxkj.fw.area.excel.FwAreaDivideExcel; @@ -40,7 +41,7 @@ * @param fwAreaDivide * @return */ List<FwAreaDivideVO> selectFwAreaDividePage(IPage page, FwAreaDivideVO fwAreaDivide); List<FwAreaDivideVO> selectFwAreaDividePage(IPage page, FwAreaDivideDTO fwAreaDivide); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java
@@ -17,6 +17,7 @@ package org.sxkj.fw.area.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.sxkj.fw.area.dto.FwAreaDivideDTO; import org.sxkj.fw.area.entity.FwAreaDivideEntity; import org.sxkj.fw.area.vo.FwAreaDivideVO; import org.sxkj.fw.area.excel.FwAreaDivideExcel; @@ -38,7 +39,7 @@ * @param fwAreaDivide * @return */ IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideVO fwAreaDivide); IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideDTO fwAreaDivide); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java
@@ -18,6 +18,7 @@ import org.springblade.core.secure.utils.AuthUtil; import org.sxkj.common.utils.HeaderUtils; import org.sxkj.fw.area.dto.FwAreaDivideDTO; import org.sxkj.fw.area.entity.FwAreaDivideEntity; import org.sxkj.fw.area.vo.FwAreaDivideVO; import org.sxkj.fw.area.excel.FwAreaDivideExcel; @@ -40,7 +41,7 @@ public class FwAreaDivideServiceImpl extends BaseServiceImpl<FwAreaDivideMapper, FwAreaDivideEntity> implements IFwAreaDivideService { @Override public IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideVO fwAreaDivide) { public IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideDTO fwAreaDivide) { return page.setRecords(baseMapper.selectFwAreaDividePage(page, fwAreaDivide)); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneAlarmRecordController.java
@@ -95,7 +95,7 @@ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入fwDroneAlarmRecord") public R<IPage<FwDroneAlarmRecordVO>> page(FwDroneAlarmRecordVO fwDroneAlarmRecord, Query query) { public R<IPage<FwDroneAlarmRecordVO>> page(FwDroneAlarmRecordDTO fwDroneAlarmRecord, Query query) { IPage<FwDroneAlarmRecordVO> pages = fwDroneAlarmRecordService.selectFwDroneAlarmRecordPage(Condition.getPage(query), fwDroneAlarmRecord); return R.data(pages); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneFlightRecordController.java
@@ -89,7 +89,7 @@ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入fwDroneFlightRecord") public R<IPage<FwDroneFlightRecordVO>> page(FwDroneFlightRecordVO fwDroneFlightRecord, Query query) { public R<IPage<FwDroneFlightRecordVO>> page(FwDroneFlightRecordDTO fwDroneFlightRecord, Query query) { IPage<FwDroneFlightRecordVO> pages = fwDroneFlightRecordService.selectFwDroneFlightRecordPage(Condition.getPage(query), fwDroneFlightRecord); return R.data(pages); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneFlightRecordDetailController.java
@@ -90,7 +90,7 @@ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入fwDroneFlightRecordDetail") public R<IPage<FwDroneFlightRecordDetailVO>> page(FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail, Query query) { public R<IPage<FwDroneFlightRecordDetailVO>> page(FwDroneFlightRecordDetailDTO fwDroneFlightRecordDetail, Query query) { IPage<FwDroneFlightRecordDetailVO> pages = fwDroneFlightRecordDetailService.selectFwDroneFlightRecordDetailPage(Condition.getPage(query), fwDroneFlightRecordDetail); return R.data(pages); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneAlarmRecordDTO.java
@@ -129,4 +129,16 @@ */ @ApiModelProperty(value = "区域编码") private String areaCode; @ApiModelProperty(value = "开始时间") private String startTime; @ApiModelProperty(value = "结束时间") private String endTime; @ApiModelProperty(value = "设备类型") private String deviceType; @ApiModelProperty(value = "区域名称") private String areaName; } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneFlightRecordDTO.java
@@ -65,13 +65,24 @@ /** * 停留时长(HH:MM:SS) */ @ApiModelProperty(value = "停留时长(HH:MM:SS)") @JsonFormat(pattern = "HH:mm:ss") private LocalTime stayDuration; @ApiModelProperty(value = "停留时长(秒)") private String stayDuration; /** * 区域编码 */ @ApiModelProperty(value = "区域编码") private String areaCode; @ApiModelProperty(value = "开始时间") private String startTime; @ApiModelProperty(value = "结束时间") private String endTime; @ApiModelProperty(value = "设备类型") private String deviceType; @ApiModelProperty(value = "区域名称") private String areaName; } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneAlarmRecordEntity.java
@@ -151,4 +151,11 @@ @ApiModelProperty(value = "区域编码") private String areaCode; /** * 设备类型(察打一体/便捷侦测箱/反制枪) */ @TableField("device_type") @ApiModelProperty(value = "设备类型(察打一体/便捷侦测箱/反制枪)") private String deviceType; } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneFlightRecordEntity.java
@@ -45,6 +45,10 @@ @TableField("device_id") @ApiModelProperty(value = "反无设备ID(关联ja_fw_device.id)") private Long deviceId; @TableField("area_divide_id") @ApiModelProperty(value = "区域id ja_fw_area_divide") private Long areaDivideId; /** * 无人机名称 */ @@ -70,11 +74,11 @@ @ApiModelProperty(value = "触发原因/类型") private String triggerType; /** * 停留时长(HH:MM:SS) * 停留时长(秒) */ @TableField("stay_duration") @ApiModelProperty(value = "停留时长(HH:MM:SS)") private LocalTime stayDuration; @ApiModelProperty(value = "停留时长(秒)") private String stayDuration; /** * 区域编码 */ drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneAlarmRecordMapper.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.record.mapper; import org.sxkj.fw.record.dto.FwDroneAlarmRecordDTO; import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity; import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO; import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel; @@ -40,7 +41,7 @@ * @param fwDroneAlarmRecord * @return */ List<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage page, FwDroneAlarmRecordVO fwDroneAlarmRecord); List<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage page, FwDroneAlarmRecordDTO fwDroneAlarmRecord); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneAlarmRecordMapper.xml
@@ -33,87 +33,73 @@ </resultMap> <select id="selectFwDroneAlarmRecordPage" resultMap="fwDroneAlarmRecordResultMap"> select * from ja_fw_drone_alarm_record <select id="selectFwDroneAlarmRecordPage" resultType="org.sxkj.fw.record.vo.FwDroneAlarmRecordVO"> select dar.* from ja_fw_drone_alarm_record dar left join ja_fw_area_divide ad on dar.area_divide_id = ad.id <where> is_deleted = 0 <if test="param2.id != null and param2.id != ''"> and id = #{param2.id} </if> dar.is_deleted = 0 <if test="param2.deviceId != null and param2.deviceId != ''"> and device_id = #{param2.deviceId} and dar.device_id = #{param2.deviceId} </if> <if test="param2.droneName != null and param2.droneName != ''"> and drone_name = #{param2.droneName} and dar.drone_name like CONCAT('%', #{param2.droneName}, '%') </if> <if test="param2.droneSerialNo != null and param2.droneSerialNo != ''"> and drone_serial_no = #{param2.droneSerialNo} and dar.drone_serial_no = #{param2.droneSerialNo} </if> <if test="param2.droneType != null and param2.droneType != ''"> and drone_type = #{param2.droneType} and dar.drone_type = #{param2.droneType} </if> <if test="param2.alarmType != null and param2.alarmType != ''"> and alarm_type = #{param2.alarmType} and dar.alarm_type = #{param2.alarmType} </if> <if test="param2.alarmTime != null and param2.alarmTime != ''"> and alarm_time = #{param2.alarmTime} and dar.alarm_time = #{param2.alarmTime} </if> <if test="param2.triggerReason != null and param2.triggerReason != ''"> and trigger_reason = #{param2.triggerReason} and dar.trigger_reason = #{param2.triggerReason} </if> <if test="param2.flightStatus != null and param2.flightStatus != ''"> and flight_status = #{param2.flightStatus} and dar.flight_status = #{param2.flightStatus} </if> <if test="param2.longitude != null and param2.longitude != ''"> and longitude = #{param2.longitude} and dar.longitude = #{param2.longitude} </if> <if test="param2.latitude != null and param2.latitude != ''"> and latitude = #{param2.latitude} and dar.latitude = #{param2.latitude} </if> <if test="param2.signalFreqMhz != null and param2.signalFreqMhz != ''"> and signal_freq_mhz = #{param2.signalFreqMhz} and dar.signal_freq_mhz = #{param2.signalFreqMhz} </if> <if test="param2.flightHeightM != null and param2.flightHeightM != ''"> and flight_height_m = #{param2.flightHeightM} and dar.flight_height_m = #{param2.flightHeightM} </if> <if test="param2.flightSpeedMs != null and param2.flightSpeedMs != ''"> and flight_speed_ms = #{param2.flightSpeedMs} and dar.flight_speed_ms = #{param2.flightSpeedMs} </if> <if test="param2.stayDuration != null and param2.stayDuration != ''"> and stay_duration = #{param2.stayDuration} and dar.stay_duration = #{param2.stayDuration} </if> <if test="param2.counterWay != null and param2.counterWay != ''"> and counter_way = #{param2.counterWay} and dar.counter_way = #{param2.counterWay} </if> <if test="param2.areaDivideId != null and param2.areaDivideId != ''"> and area_divide_id = #{param2.areaDivideId} and dar.area_divide_id = #{param2.areaDivideId} </if> <if test="param2.defenseSceneId != null and param2.defenseSceneId != ''"> and defense_scene_id = #{param2.defenseSceneId} and dar.defense_scene_id = #{param2.defenseSceneId} </if> <if test="param2.areaCode != null and param2.areaCode != ''"> and area_code = #{param2.areaCode} <if test="param2.startTime != null and param2.startTime != '' and param2.endTime != null and param2.endTime != ''"> and dar.alarm_time BETWEEN #{param2.startTime} AND #{param2.endTime} </if> <if test="param2.createUser != null and param2.createUser != ''"> and create_user = #{param2.createUser} <if test="param2.deviceType != null and param2.deviceType != ''"> and dar.device_type = #{param2.deviceType} </if> <if test="param2.createDept != null and param2.createDept != ''"> and create_dept = #{param2.createDept} </if> <if test="param2.createTime != null and param2.createTime != ''"> and create_time = #{param2.createTime} </if> <if test="param2.updateUser != null and param2.updateUser != ''"> and update_user = #{param2.updateUser} </if> <if test="param2.updateTime != null and param2.updateTime != ''"> and update_time = #{param2.updateTime} </if> <if test="param2.status != null and param2.status != ''"> and status = #{param2.status} </if> <if test="param2.isDeleted != null and param2.isDeleted != ''"> and is_deleted = #{param2.isDeleted} <if test="param2.areaName != null and param2.areaName != ''"> and ad.area_name like CONCAT('%', #{param2.areaName}, '%') </if> </where> </select> drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordDetailMapper.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.record.mapper; import org.sxkj.fw.record.dto.FwDroneFlightRecordDetailDTO; import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity; import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO; import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel; @@ -40,7 +41,7 @@ * @param fwDroneFlightRecordDetail * @return */ List<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage page, FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail); List<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage page, FwDroneFlightRecordDetailDTO fwDroneFlightRecordDetail); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordDetailMapper.xml
@@ -24,9 +24,6 @@ select * from ja_fw_drone_flight_record_detail <where> is_deleted = 0 <if test="param2.id != null and param2.id != ''"> and id = #{param2.id} </if> <if test="param2.flightRecordId != null and param2.flightRecordId != ''"> and flight_record_id = #{param2.flightRecordId} </if> @@ -41,27 +38,6 @@ </if> <if test="param2.areaCode != null and param2.areaCode != ''"> and area_code = #{param2.areaCode} </if> <if test="param2.createUser != null and param2.createUser != ''"> and create_user = #{param2.createUser} </if> <if test="param2.createDept != null and param2.createDept != ''"> and create_dept = #{param2.createDept} </if> <if test="param2.createTime != null and param2.createTime != ''"> and create_time = #{param2.createTime} </if> <if test="param2.updateUser != null and param2.updateUser != ''"> and update_user = #{param2.updateUser} </if> <if test="param2.updateTime != null and param2.updateTime != ''"> and update_time = #{param2.updateTime} </if> <if test="param2.status != null and param2.status != ''"> and status = #{param2.status} </if> <if test="param2.isDeleted != null and param2.isDeleted != ''"> and is_deleted = #{param2.isDeleted} </if> </where> </select> drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordMapper.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.record.mapper; import org.sxkj.fw.record.dto.FwDroneFlightRecordDTO; import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity; import org.sxkj.fw.record.vo.FwDroneFlightRecordVO; import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel; @@ -40,7 +41,7 @@ * @param fwDroneFlightRecord * @return */ List<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage page, FwDroneFlightRecordVO fwDroneFlightRecord); List<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage page, FwDroneFlightRecordDTO fwDroneFlightRecord); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordMapper.xml
@@ -23,53 +23,39 @@ <select id="selectFwDroneFlightRecordPage" resultMap="fwDroneFlightRecordResultMap"> select * from ja_fw_drone_flight_record select dfr.* from ja_fw_drone_flight_record dfr left join ja_fw_area_divide ad on dfr.area_divide_id = ad.id <where> is_deleted = 0 <if test="param2.id != null and param2.id != ''"> and id = #{param2.id} </if> dfr.is_deleted = 0 <if test="param2.deviceId != null and param2.deviceId != ''"> and device_id = #{param2.deviceId} and dfr.device_id = #{param2.deviceId} </if> <if test="param2.droneName != null and param2.droneName != ''"> and drone_name = #{param2.droneName} and dfr.drone_name like CONCAT('%', #{param2.droneName}, '%') </if> <if test="param2.serialNo != null and param2.serialNo != ''"> and serial_no = #{param2.serialNo} and dfr.serial_no = #{param2.serialNo} </if> <if test="param2.alarmTime != null and param2.alarmTime != ''"> and alarm_time = #{param2.alarmTime} and dfr.alarm_time = #{param2.alarmTime} </if> <if test="param2.triggerType != null and param2.triggerType != ''"> and trigger_type = #{param2.triggerType} and dfr.trigger_type = #{param2.triggerType} </if> <if test="param2.stayDuration != null and param2.stayDuration != ''"> and stay_duration = #{param2.stayDuration} and dfr.stay_duration = #{param2.stayDuration} </if> <if test="param2.areaCode != null and param2.areaCode != ''"> and area_code = #{param2.areaCode} and dfr.area_code = #{param2.areaCode} </if> <if test="param2.createUser != null and param2.createUser != ''"> and create_user = #{param2.createUser} <if test="param2.startTime != null and param2.startTime != '' and param2.endTime != null and param2.endTime != ''"> and dfr.alarm_time BETWEEN #{param2.startTime} AND #{param2.endTime} </if> <if test="param2.createDept != null and param2.createDept != ''"> and create_dept = #{param2.createDept} <if test="param2.deviceType != null and param2.deviceType != ''"> and dfr.device_type = #{param2.deviceType} </if> <if test="param2.createTime != null and param2.createTime != ''"> and create_time = #{param2.createTime} </if> <if test="param2.updateUser != null and param2.updateUser != ''"> and update_user = #{param2.updateUser} </if> <if test="param2.updateTime != null and param2.updateTime != ''"> and update_time = #{param2.updateTime} </if> <if test="param2.status != null and param2.status != ''"> and status = #{param2.status} </if> <if test="param2.isDeleted != null and param2.isDeleted != ''"> and is_deleted = #{param2.isDeleted} <if test="param2.areaName != null and param2.areaName != ''"> and ad.area_name like CONCAT('%', #{param2.areaName}, '%') </if> </where> </select> drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneAlarmRecordService.java
@@ -17,6 +17,7 @@ package org.sxkj.fw.record.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.sxkj.fw.record.dto.FwDroneAlarmRecordDTO; import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity; import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO; import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel; @@ -38,7 +39,7 @@ * @param fwDroneAlarmRecord * @return */ IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordVO fwDroneAlarmRecord); IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordDTO fwDroneAlarmRecord); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneFlightRecordDetailService.java
@@ -17,6 +17,7 @@ package org.sxkj.fw.record.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.sxkj.fw.record.dto.FwDroneFlightRecordDetailDTO; import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity; import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO; import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel; @@ -38,7 +39,7 @@ * @param fwDroneFlightRecordDetail * @return */ IPage<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage<FwDroneFlightRecordDetailVO> page, FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail); IPage<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage<FwDroneFlightRecordDetailVO> page, FwDroneFlightRecordDetailDTO fwDroneFlightRecordDetail); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneFlightRecordService.java
@@ -17,6 +17,7 @@ package org.sxkj.fw.record.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.sxkj.fw.record.dto.FwDroneFlightRecordDTO; import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity; import org.sxkj.fw.record.vo.FwDroneFlightRecordVO; import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel; @@ -38,7 +39,7 @@ * @param fwDroneFlightRecord * @return */ IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordVO fwDroneFlightRecord); IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordDTO fwDroneFlightRecord); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneAlarmRecordServiceImpl.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.record.service.impl; import org.sxkj.fw.record.dto.FwDroneAlarmRecordDTO; import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity; import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO; import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel; @@ -37,7 +38,7 @@ public class FwDroneAlarmRecordServiceImpl extends BaseServiceImpl<FwDroneAlarmRecordMapper, FwDroneAlarmRecordEntity> implements IFwDroneAlarmRecordService { @Override public IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordVO fwDroneAlarmRecord) { public IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordDTO fwDroneAlarmRecord) { return page.setRecords(baseMapper.selectFwDroneAlarmRecordPage(page, fwDroneAlarmRecord)); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordDetailServiceImpl.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.record.service.impl; import org.sxkj.fw.record.dto.FwDroneFlightRecordDetailDTO; import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity; import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO; import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel; @@ -37,7 +38,7 @@ public class FwDroneFlightRecordDetailServiceImpl extends BaseServiceImpl<FwDroneFlightRecordDetailMapper, FwDroneFlightRecordDetailEntity> implements IFwDroneFlightRecordDetailService { @Override public IPage<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage<FwDroneFlightRecordDetailVO> page, FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail) { public IPage<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage<FwDroneFlightRecordDetailVO> page, FwDroneFlightRecordDetailDTO fwDroneFlightRecordDetail) { return page.setRecords(baseMapper.selectFwDroneFlightRecordDetailPage(page, fwDroneFlightRecordDetail)); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.record.service.impl; import org.sxkj.fw.record.dto.FwDroneFlightRecordDTO; import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity; import org.sxkj.fw.record.vo.FwDroneFlightRecordVO; import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel; @@ -37,7 +38,7 @@ public class FwDroneFlightRecordServiceImpl extends BaseServiceImpl<FwDroneFlightRecordMapper, FwDroneFlightRecordEntity> implements IFwDroneFlightRecordService { @Override public IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordVO fwDroneFlightRecord) { public IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordDTO fwDroneFlightRecord) { return page.setRecords(baseMapper.selectFwDroneFlightRecordPage(page, fwDroneFlightRecord)); } drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java
@@ -16,10 +16,16 @@ */ package org.sxkj.fw.record.vo; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity; import org.springblade.core.tool.node.INode; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; import java.util.Date; /** * 无人机告警表 视图实体类 @@ -28,8 +34,102 @@ * @since 2026-01-08 */ @Data @EqualsAndHashCode(callSuper = true) public class FwDroneAlarmRecordVO extends FwDroneAlarmRecordEntity { public class FwDroneAlarmRecordVO { private static final long serialVersionUID = 1L; @ApiModelProperty("主键id") private Long id; /** * 反无设备ID(关联ja_fw_device.id) */ @ApiModelProperty(value = "反无设备ID(关联ja_fw_device.id)") private Long deviceId; /** * 无人机名称 */ @ApiModelProperty(value = "无人机名称") private String droneName; /** * 无人机序列号 */ @ApiModelProperty(value = "无人机序列号") private String droneSerialNo; /** * 无人机类型(微型机/植保机...) */ @ApiModelProperty(value = "无人机类型(微型机/植保机...)") private String droneType; /** * 告警类型:实时告警/历史告警 */ @ApiModelProperty(value = "告警类型:实时告警/历史告警") private String alarmType; /** * 告警时间 */ @ApiModelProperty(value = "告警时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date alarmTime; /** * 触发原因 */ @ApiModelProperty(value = "触发原因") private String triggerReason; /** * 飞行状态:侦测中/反制中 */ @ApiModelProperty(value = "飞行状态:侦测中/反制中") private String flightStatus; /** * 当前经度 */ @ApiModelProperty(value = "当前经度") private Double longitude; /** * 当前纬度 */ @ApiModelProperty(value = "当前纬度") private Double latitude; /** * 信号频段(MHz) */ @ApiModelProperty(value = "信号频段(MHz)") private Integer signalFreqMhz; /** * 飞行高度(m) */ @ApiModelProperty(value = "飞行高度(m)") private Integer flightHeightM; /** * 飞行速度(m/s) */ @ApiModelProperty(value = "飞行速度(m/s)") private BigDecimal flightSpeedMs; /** * 停留时长 (秒) */ @ApiModelProperty(value = "停留时长(秒)") private String stayDuration; /** * 反制方式:信号干扰/诱导驱离/无 */ @ApiModelProperty(value = "反制方式:信号干扰/诱导驱离/无") private String counterWay; /** * 区域名称 */ @ApiModelProperty(value = "区域名称") private String areaName; /** * 区域编码 */ @ApiModelProperty(value = "区域编码") private String areaCode; /** * 设备类型(察打一体/便捷侦测箱/反制枪) */ @ApiModelProperty(value = "设备类型(察打一体/便捷侦测箱/反制枪)") private String deviceType; }