吉安感知网项目-后端
linwei
2026-02-05 bf45f88ff9ea1ea1d4976f97dbe2a12eae9a52f9
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.java
@@ -16,20 +16,27 @@
 */
package org.sxkj.fw.device.mapper;
import org.sxkj.fw.device.entity.FwDeviceEntity;
import org.sxkj.fw.device.vo.FwDeviceVO;
import org.sxkj.fw.device.excel.FwDeviceExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.sxkj.fw.cockpit.vo.AlarmStatisticsVO;
import org.sxkj.fw.device.vo.DeviceTypeStatisticsVO;
import org.sxkj.fw.cockpit.vo.DeviceStatisticsVO;
import org.sxkj.fw.device.dto.FwDeviceDTO;
import org.sxkj.fw.device.dto.FwDevicePolygonQueryDTO;
import org.sxkj.fw.device.entity.FwDeviceEntity;
import org.sxkj.fw.device.excel.FwDeviceExcel;
import org.sxkj.fw.device.vo.CockpitFwDeviceVO;
import org.sxkj.fw.device.vo.FwDeviceVO;
import java.util.List;
/**
 * 反无设备表 Mapper 接口
 * 设备表 Mapper 接口
 *
 * @author AIX
 * @since 2026-01-06
 * @author aix
 * @since 2026-01-08
 */
public interface FwDeviceMapper extends BaseMapper<FwDeviceEntity> {
@@ -40,15 +47,94 @@
    * @param fwDevice
    * @return
    */
   List<FwDeviceVO> selectFwDevicePage(IPage page, FwDeviceVO fwDevice);
   List<FwDeviceEntity> selectFwDevicePage(IPage page, FwDeviceDTO fwDevice);
   /**
    * 列表查询
    *
    * @param isAreaSelect
    * @param areaId
    * @param areaIds
    * @return
    */
   List<FwDeviceEntity> selectFwDeviceList(@Param("isAreaSelect") Integer isAreaSelect, @Param("areaId") Long areaId,
                                 @Param("areaIds") List<Long> areaIds, @Param("status") Integer status, @Param("isTrack") Integer isTrack);
   /**
    * 根据多边形查询设备列表
    *
    * @param query 查询条件
    * @return 设备列表
    */
   List<FwDeviceEntity> selectFwDeviceListByPolygons(@Param("query") FwDevicePolygonQueryDTO query);
   /**
    * 获取导出数据
    *
    * @param queryWrapper
    * @return
    */
   List<FwDeviceExcel> exportFwDevice(@Param("ew") Wrapper<FwDeviceEntity> queryWrapper);
   /**
    * 设备统计 - 驾驶舱使用
    * @return 统计数据
    */
   List<DeviceStatisticsVO> statisticalDeviceType(String regionCode, String currentDeptId);
   /**
    * 设备统计 - 按类型统计
    * @return 统计数据
    */
   List<DeviceTypeStatisticsVO> getDeviceTypeStatistics(List<Long> deptList,String currentDeptId);
   /**
    * 设备出库去向统计
    * @return 统计数据
    */
   List<DeviceStatisticsVO> getDeviceOutStatistics(String effectiveRangeKmIsNotNull,List<Long> deptList,String currentDeptId);
   /**
    * 设备生产厂商统计
    * @return 统计数据
    */
   List<DeviceStatisticsVO> getDeviceManufacturerStatistics(List<Long> deptList, String currentDeptId);
   /**
    * 告警统计
    * @return
    */
   AlarmStatisticsVO statisticalDeviceAtt(String regionCode, String currentDeptId);
   /**
    * 获取设备列表
    * @param page
    * @param fwDevice
    * @return
    */
   List<CockpitFwDeviceVO> selectCockpitDevicePage(IPage<CockpitFwDeviceVO> page, FwDeviceDTO fwDevice);
   /**
    * 按设备ID更新出入库状态
    *
    * @param deviceId 设备ID
    * @param trackStatus 出入库状态
    * @return 影响行数
    */
   int updateTrackStatusByDeviceId(@Param("deviceId") Long deviceId, @Param("trackStatus") Integer trackStatus, @Param("outTarget") String outTarget, @Param("outTargetCode") String outTargetCode);
   /**
    * 查询非本部门区域的设备
    * @param regionName 部门名称
    * @param currentDeptId 当前用户部门ID
    * @return 设备列表
    */
   List<FwDeviceVO> selectNonDeptAreaDevices(@Param("regionName") String regionName, @Param("currentDeptId") String currentDeptId);
   /**
    *
    * @param fwDeviceDTO
    * @return
    */
   List<DeviceStatisticsVO> getDeviceStatistics(FwDeviceDTO fwDeviceDTO);
}