吉安感知网项目-后端
linwei
2026-01-07 88e6da794f9cb859c15e55ceea5274f8e7cf6936
接口初始化
130 files added
6916 ■■■■■ changed files
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwAreaDivideController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseSceneController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseZoneController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwPoliceStationController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwAreaDivideDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwDefenseSceneDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwDefenseZoneDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwPoliceStationDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwAreaDivideEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwDefenseSceneEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwDefenseZoneEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwPoliceStationEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwAreaDivideExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwDefenseSceneExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwDefenseZoneExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwPoliceStationExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseZoneMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseZoneMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwPoliceStationMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwPoliceStationMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwDefenseSceneService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwDefenseZoneService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwPoliceStationService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseSceneServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseZoneServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwPoliceStationServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwAreaDivideVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwDefenseSceneVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwDefenseZoneVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwPoliceStationVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwAreaDivideWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwDefenseSceneWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwDefenseZoneWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwPoliceStationWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/controller/FwDeviceConfigController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/controller/FwEffectEvalController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/controller/FwTaskScheduleController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/dto/FwDeviceConfigDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/dto/FwEffectEvalDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/dto/FwTaskScheduleDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/entity/FwDeviceConfigEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/entity/FwEffectEvalEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/entity/FwTaskScheduleEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/excel/FwDeviceConfigExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/excel/FwEffectEvalExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/excel/FwTaskScheduleExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwDeviceConfigMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwDeviceConfigMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwTaskScheduleMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwTaskScheduleMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/IFwDeviceConfigService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/IFwEffectEvalService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/IFwTaskScheduleService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/impl/FwDeviceConfigServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/impl/FwEffectEvalServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/impl/FwTaskScheduleServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/vo/FwDeviceConfigVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/vo/FwEffectEvalVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/vo/FwTaskScheduleVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/wrapper/FwDeviceConfigWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/wrapper/FwEffectEvalWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/wrapper/FwTaskScheduleWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceMaintainPlanController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceMaintainRecordController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceScrapController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceMaintainPlanDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceMaintainRecordDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceScrapDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceMaintainPlanEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceMaintainRecordEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceScrapEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceMaintainPlanExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceMaintainRecordExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceScrapExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainRecordMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainRecordMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceScrapMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceScrapMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceMaintainPlanService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceMaintainRecordService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceScrapService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainRecordServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceScrapServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceMaintainPlanVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceMaintainRecordVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceScrapVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceMaintainPlanWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceMaintainRecordWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceScrapWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneAlarmRecordController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneFlightRecordController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneFlightRecordDetailController.java 151 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneAlarmRecordDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneFlightRecordDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneFlightRecordDetailDTO.java 34 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneAlarmRecordEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneFlightRecordDetailEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneFlightRecordEntity.java 39 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/excel/FwDroneAlarmRecordExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/excel/FwDroneFlightRecordDetailExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/excel/FwDroneFlightRecordExcel.java 44 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneAlarmRecordMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneAlarmRecordMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordDetailMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordDetailMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordMapper.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordMapper.xml 19 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneAlarmRecordService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneFlightRecordDetailService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneFlightRecordService.java 52 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneAlarmRecordServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordDetailServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java 54 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneFlightRecordDetailVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneFlightRecordVO.java 35 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/wrapper/FwDroneAlarmRecordWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/wrapper/FwDroneFlightRecordDetailWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/wrapper/FwDroneFlightRecordWrapper.java 50 ●●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwAreaDivideController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.entity.FwAreaDivideEntity;
import org.sxkj.fw.area.vo.FwAreaDivideVO;
import org.sxkj.fw.area.excel.FwAreaDivideExcel;
import org.sxkj.fw.area.wrapper.FwAreaDivideWrapper;
import org.sxkj.fw.area.service.IFwAreaDivideService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 区域划分表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("area/fwAreaDivide")
@Api(value = "区域划分表", tags = "区域划分表接口")
public class FwAreaDivideController extends BladeController {
    private final IFwAreaDivideService fwAreaDivideService;
    /**
     * 区域划分表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwAreaDivide")
    public R<FwAreaDivideVO> detail(FwAreaDivideEntity fwAreaDivide) {
        FwAreaDivideEntity detail = fwAreaDivideService.getOne(Condition.getQueryWrapper(fwAreaDivide));
        return R.data(FwAreaDivideWrapper.build().entityVO(detail));
    }
    /**
     * 区域划分表 分页
     */
    @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("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwAreaDivide")
    public R<IPage<FwAreaDivideVO>> page(FwAreaDivideVO fwAreaDivide, Query query) {
        IPage<FwAreaDivideVO> pages = fwAreaDivideService.selectFwAreaDividePage(Condition.getPage(query), fwAreaDivide);
        return R.data(pages);
    }
    /**
     * 区域划分表 新增
     */
    @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("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwAreaDivide")
    public R submit(@Valid @RequestBody FwAreaDivideEntity fwAreaDivide) {
        return R.status(fwAreaDivideService.saveOrUpdate(fwAreaDivide));
    }
    /**
     * 区域划分表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwAreaDivideService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwAreaDivide")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwAreaDivide")
    public void exportFwAreaDivide(@ApiIgnore @RequestParam Map<String, Object> fwAreaDivide, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwAreaDivideEntity> queryWrapper = Condition.getQueryWrapper(fwAreaDivide, FwAreaDivideEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwAreaDivide::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwAreaDivideEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwAreaDivideExcel> list = fwAreaDivideService.exportFwAreaDivide(queryWrapper);
        ExcelUtil.export(response, "区域划分表数据" + DateUtil.time(), "区域划分表数据表", list, FwAreaDivideExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseSceneController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.entity.FwDefenseSceneEntity;
import org.sxkj.fw.area.vo.FwDefenseSceneVO;
import org.sxkj.fw.area.excel.FwDefenseSceneExcel;
import org.sxkj.fw.area.wrapper.FwDefenseSceneWrapper;
import org.sxkj.fw.area.service.IFwDefenseSceneService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 防控场景表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("area/fwDefenseScene")
@Api(value = "防控场景表", tags = "防控场景表接口")
public class FwDefenseSceneController extends BladeController {
    private final IFwDefenseSceneService fwDefenseSceneService;
    /**
     * 防控场景表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDefenseScene")
    public R<FwDefenseSceneVO> detail(FwDefenseSceneEntity fwDefenseScene) {
        FwDefenseSceneEntity detail = fwDefenseSceneService.getOne(Condition.getQueryWrapper(fwDefenseScene));
        return R.data(FwDefenseSceneWrapper.build().entityVO(detail));
    }
    /**
     * 防控场景表 分页
     */
    @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("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDefenseScene")
    public R<IPage<FwDefenseSceneVO>> page(FwDefenseSceneVO fwDefenseScene, Query query) {
        IPage<FwDefenseSceneVO> pages = fwDefenseSceneService.selectFwDefenseScenePage(Condition.getPage(query), fwDefenseScene);
        return R.data(pages);
    }
    /**
     * 防控场景表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDefenseScene")
    public R save(@Valid @RequestBody FwDefenseSceneEntity fwDefenseScene) {
        return R.status(fwDefenseSceneService.save(fwDefenseScene));
    }
    /**
     * 防控场景表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDefenseScene")
    public R update(@Valid @RequestBody FwDefenseSceneEntity fwDefenseScene) {
        return R.status(fwDefenseSceneService.updateById(fwDefenseScene));
    }
    /**
     * 防控场景表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDefenseScene")
    public R submit(@Valid @RequestBody FwDefenseSceneEntity fwDefenseScene) {
        return R.status(fwDefenseSceneService.saveOrUpdate(fwDefenseScene));
    }
    /**
     * 防控场景表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDefenseSceneService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDefenseScene")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDefenseScene")
    public void exportFwDefenseScene(@ApiIgnore @RequestParam Map<String, Object> fwDefenseScene, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDefenseSceneEntity> queryWrapper = Condition.getQueryWrapper(fwDefenseScene, FwDefenseSceneEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDefenseScene::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDefenseSceneEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDefenseSceneExcel> list = fwDefenseSceneService.exportFwDefenseScene(queryWrapper);
        ExcelUtil.export(response, "防控场景表数据" + DateUtil.time(), "防控场景表数据表", list, FwDefenseSceneExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwDefenseZoneController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.entity.FwDefenseZoneEntity;
import org.sxkj.fw.area.vo.FwDefenseZoneVO;
import org.sxkj.fw.area.excel.FwDefenseZoneExcel;
import org.sxkj.fw.area.wrapper.FwDefenseZoneWrapper;
import org.sxkj.fw.area.service.IFwDefenseZoneService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 防区管理表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("area/fwDefenseZone")
@Api(value = "防区管理表", tags = "防区管理表接口")
public class FwDefenseZoneController extends BladeController {
    private final IFwDefenseZoneService fwDefenseZoneService;
    /**
     * 防区管理表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDefenseZone")
    public R<FwDefenseZoneVO> detail(FwDefenseZoneEntity fwDefenseZone) {
        FwDefenseZoneEntity detail = fwDefenseZoneService.getOne(Condition.getQueryWrapper(fwDefenseZone));
        return R.data(FwDefenseZoneWrapper.build().entityVO(detail));
    }
    /**
     * 防区管理表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDefenseZone")
    public R<IPage<FwDefenseZoneVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDefenseZone, Query query) {
        IPage<FwDefenseZoneEntity> pages = fwDefenseZoneService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDefenseZone, FwDefenseZoneEntity.class));
        return R.data(FwDefenseZoneWrapper.build().pageVO(pages));
    }
    /**
     * 防区管理表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDefenseZone")
    public R<IPage<FwDefenseZoneVO>> page(FwDefenseZoneVO fwDefenseZone, Query query) {
        IPage<FwDefenseZoneVO> pages = fwDefenseZoneService.selectFwDefenseZonePage(Condition.getPage(query), fwDefenseZone);
        return R.data(pages);
    }
    /**
     * 防区管理表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDefenseZone")
    public R save(@Valid @RequestBody FwDefenseZoneEntity fwDefenseZone) {
        return R.status(fwDefenseZoneService.save(fwDefenseZone));
    }
    /**
     * 防区管理表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDefenseZone")
    public R update(@Valid @RequestBody FwDefenseZoneEntity fwDefenseZone) {
        return R.status(fwDefenseZoneService.updateById(fwDefenseZone));
    }
    /**
     * 防区管理表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDefenseZone")
    public R submit(@Valid @RequestBody FwDefenseZoneEntity fwDefenseZone) {
        return R.status(fwDefenseZoneService.saveOrUpdate(fwDefenseZone));
    }
    /**
     * 防区管理表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDefenseZoneService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDefenseZone")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDefenseZone")
    public void exportFwDefenseZone(@ApiIgnore @RequestParam Map<String, Object> fwDefenseZone, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDefenseZoneEntity> queryWrapper = Condition.getQueryWrapper(fwDefenseZone, FwDefenseZoneEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDefenseZone::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDefenseZoneEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDefenseZoneExcel> list = fwDefenseZoneService.exportFwDefenseZone(queryWrapper);
        ExcelUtil.export(response, "防区管理表数据" + DateUtil.time(), "防区管理表数据表", list, FwDefenseZoneExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/controller/FwPoliceStationController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.entity.FwPoliceStationEntity;
import org.sxkj.fw.area.vo.FwPoliceStationVO;
import org.sxkj.fw.area.excel.FwPoliceStationExcel;
import org.sxkj.fw.area.wrapper.FwPoliceStationWrapper;
import org.sxkj.fw.area.service.IFwPoliceStationService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 派出所信息表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("area/fwPoliceStation")
@Api(value = "派出所信息表", tags = "派出所信息表接口")
public class FwPoliceStationController extends BladeController {
    private final IFwPoliceStationService fwPoliceStationService;
    /**
     * 派出所信息表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwPoliceStation")
    public R<FwPoliceStationVO> detail(FwPoliceStationEntity fwPoliceStation) {
        FwPoliceStationEntity detail = fwPoliceStationService.getOne(Condition.getQueryWrapper(fwPoliceStation));
        return R.data(FwPoliceStationWrapper.build().entityVO(detail));
    }
    /**
     * 派出所信息表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwPoliceStation")
    public R<IPage<FwPoliceStationVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwPoliceStation, Query query) {
        IPage<FwPoliceStationEntity> pages = fwPoliceStationService.page(Condition.getPage(query), Condition.getQueryWrapper(fwPoliceStation, FwPoliceStationEntity.class));
        return R.data(FwPoliceStationWrapper.build().pageVO(pages));
    }
    /**
     * 派出所信息表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwPoliceStation")
    public R<IPage<FwPoliceStationVO>> page(FwPoliceStationVO fwPoliceStation, Query query) {
        IPage<FwPoliceStationVO> pages = fwPoliceStationService.selectFwPoliceStationPage(Condition.getPage(query), fwPoliceStation);
        return R.data(pages);
    }
    /**
     * 派出所信息表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwPoliceStation")
    public R save(@Valid @RequestBody FwPoliceStationEntity fwPoliceStation) {
        return R.status(fwPoliceStationService.save(fwPoliceStation));
    }
    /**
     * 派出所信息表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwPoliceStation")
    public R update(@Valid @RequestBody FwPoliceStationEntity fwPoliceStation) {
        return R.status(fwPoliceStationService.updateById(fwPoliceStation));
    }
    /**
     * 派出所信息表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwPoliceStation")
    public R submit(@Valid @RequestBody FwPoliceStationEntity fwPoliceStation) {
        return R.status(fwPoliceStationService.saveOrUpdate(fwPoliceStation));
    }
    /**
     * 派出所信息表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwPoliceStationService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwPoliceStation")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwPoliceStation")
    public void exportFwPoliceStation(@ApiIgnore @RequestParam Map<String, Object> fwPoliceStation, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwPoliceStationEntity> queryWrapper = Condition.getQueryWrapper(fwPoliceStation, FwPoliceStationEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwPoliceStation::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwPoliceStationEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwPoliceStationExcel> list = fwPoliceStationService.exportFwPoliceStation(queryWrapper);
        ExcelUtil.export(response, "派出所信息表数据" + DateUtil.time(), "派出所信息表数据表", list, FwPoliceStationExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwAreaDivideDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.dto;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 区域划分表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwAreaDivideDTO extends FwAreaDivideEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwDefenseSceneDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.dto;
import org.sxkj.fw.area.entity.FwDefenseSceneEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 防控场景表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDefenseSceneDTO extends FwDefenseSceneEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwDefenseZoneDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.dto;
import org.sxkj.fw.area.entity.FwDefenseZoneEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 防区管理表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDefenseZoneDTO extends FwDefenseZoneEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/dto/FwPoliceStationDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.dto;
import org.sxkj.fw.area.entity.FwPoliceStationEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 派出所信息表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwPoliceStationDTO extends FwPoliceStationEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwAreaDivideEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 区域划分表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_area_divide")
@ApiModel(value = "FwAreaDivide对象", description = "区域划分表")
@EqualsAndHashCode(callSuper = true)
public class FwAreaDivideEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwDefenseSceneEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 防控场景表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_defense_scene")
@ApiModel(value = "FwDefenseScene对象", description = "防控场景表")
@EqualsAndHashCode(callSuper = true)
public class FwDefenseSceneEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwDefenseZoneEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 防区管理表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_defense_zone")
@ApiModel(value = "FwDefenseZone对象", description = "防区管理表")
@EqualsAndHashCode(callSuper = true)
public class FwDefenseZoneEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/entity/FwPoliceStationEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 派出所信息表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_police_station")
@ApiModel(value = "FwPoliceStation对象", description = "派出所信息表")
@EqualsAndHashCode(callSuper = true)
public class FwPoliceStationEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwAreaDivideExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 区域划分表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwAreaDivideExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwDefenseSceneExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 防控场景表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDefenseSceneExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwDefenseZoneExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 防区管理表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDefenseZoneExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/excel/FwPoliceStationExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 派出所信息表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwPoliceStationExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.mapper;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import org.sxkj.fw.area.vo.FwAreaDivideVO;
import org.sxkj.fw.area.excel.FwAreaDivideExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 区域划分表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwAreaDivideMapper extends BaseMapper<FwAreaDivideEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwAreaDivide
     * @return
     */
    List<FwAreaDivideVO> selectFwAreaDividePage(IPage page, FwAreaDivideVO fwAreaDivide);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwAreaDivideExcel> exportFwAreaDivide(@Param("ew") Wrapper<FwAreaDivideEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwAreaDivideMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.area.mapper.FwAreaDivideMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwAreaDivideResultMap" type="org.sxkj.fw.area.entity.FwAreaDivideEntity">
    </resultMap>
    <select id="selectFwAreaDividePage" resultMap="fwAreaDivideResultMap">
        select * from ja_fw_area_divide where is_deleted = 0
    </select>
    <select id="exportFwAreaDivide" resultType="org.sxkj.fw.area.excel.FwAreaDivideExcel">
        SELECT * FROM ja_fw_area_divide ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.mapper;
import org.sxkj.fw.area.entity.FwDefenseSceneEntity;
import org.sxkj.fw.area.vo.FwDefenseSceneVO;
import org.sxkj.fw.area.excel.FwDefenseSceneExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 防控场景表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDefenseSceneMapper extends BaseMapper<FwDefenseSceneEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDefenseScene
     * @return
     */
    List<FwDefenseSceneVO> selectFwDefenseScenePage(IPage page, FwDefenseSceneVO fwDefenseScene);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDefenseSceneExcel> exportFwDefenseScene(@Param("ew") Wrapper<FwDefenseSceneEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.area.mapper.FwDefenseSceneMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDefenseSceneResultMap" type="org.sxkj.fw.area.entity.FwDefenseSceneEntity">
    </resultMap>
    <select id="selectFwDefenseScenePage" resultMap="fwDefenseSceneResultMap">
        select * from ja_fw_defense_scene where is_deleted = 0
    </select>
    <select id="exportFwDefenseScene" resultType="org.sxkj.fw.area.excel.FwDefenseSceneExcel">
        SELECT * FROM ja_fw_defense_scene ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseZoneMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.mapper;
import org.sxkj.fw.area.entity.FwDefenseZoneEntity;
import org.sxkj.fw.area.vo.FwDefenseZoneVO;
import org.sxkj.fw.area.excel.FwDefenseZoneExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 防区管理表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDefenseZoneMapper extends BaseMapper<FwDefenseZoneEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDefenseZone
     * @return
     */
    List<FwDefenseZoneVO> selectFwDefenseZonePage(IPage page, FwDefenseZoneVO fwDefenseZone);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDefenseZoneExcel> exportFwDefenseZone(@Param("ew") Wrapper<FwDefenseZoneEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseZoneMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.area.mapper.FwDefenseZoneMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDefenseZoneResultMap" type="org.sxkj.fw.area.entity.FwDefenseZoneEntity">
    </resultMap>
    <select id="selectFwDefenseZonePage" resultMap="fwDefenseZoneResultMap">
        select * from ja_fw_defense_zone where is_deleted = 0
    </select>
    <select id="exportFwDefenseZone" resultType="org.sxkj.fw.area.excel.FwDefenseZoneExcel">
        SELECT * FROM ja_fw_defense_zone ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwPoliceStationMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.mapper;
import org.sxkj.fw.area.entity.FwPoliceStationEntity;
import org.sxkj.fw.area.vo.FwPoliceStationVO;
import org.sxkj.fw.area.excel.FwPoliceStationExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 派出所信息表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwPoliceStationMapper extends BaseMapper<FwPoliceStationEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwPoliceStation
     * @return
     */
    List<FwPoliceStationVO> selectFwPoliceStationPage(IPage page, FwPoliceStationVO fwPoliceStation);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwPoliceStationExcel> exportFwPoliceStation(@Param("ew") Wrapper<FwPoliceStationEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwPoliceStationMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.area.mapper.FwPoliceStationMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwPoliceStationResultMap" type="org.sxkj.fw.area.entity.FwPoliceStationEntity">
    </resultMap>
    <select id="selectFwPoliceStationPage" resultMap="fwPoliceStationResultMap">
        select * from ja_fw_police_station where is_deleted = 0
    </select>
    <select id="exportFwPoliceStation" resultType="org.sxkj.fw.area.excel.FwPoliceStationExcel">
        SELECT * FROM ja_fw_police_station ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwAreaDivideService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import org.sxkj.fw.area.vo.FwAreaDivideVO;
import org.sxkj.fw.area.excel.FwAreaDivideExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 区域划分表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwAreaDivideService extends BaseService<FwAreaDivideEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwAreaDivide
     * @return
     */
    IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideVO fwAreaDivide);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwAreaDivideExcel> exportFwAreaDivide(Wrapper<FwAreaDivideEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwDefenseSceneService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.area.entity.FwDefenseSceneEntity;
import org.sxkj.fw.area.vo.FwDefenseSceneVO;
import org.sxkj.fw.area.excel.FwDefenseSceneExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 防控场景表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDefenseSceneService extends BaseService<FwDefenseSceneEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDefenseScene
     * @return
     */
    IPage<FwDefenseSceneVO> selectFwDefenseScenePage(IPage<FwDefenseSceneVO> page, FwDefenseSceneVO fwDefenseScene);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDefenseSceneExcel> exportFwDefenseScene(Wrapper<FwDefenseSceneEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwDefenseZoneService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.area.entity.FwDefenseZoneEntity;
import org.sxkj.fw.area.vo.FwDefenseZoneVO;
import org.sxkj.fw.area.excel.FwDefenseZoneExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 防区管理表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDefenseZoneService extends BaseService<FwDefenseZoneEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDefenseZone
     * @return
     */
    IPage<FwDefenseZoneVO> selectFwDefenseZonePage(IPage<FwDefenseZoneVO> page, FwDefenseZoneVO fwDefenseZone);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDefenseZoneExcel> exportFwDefenseZone(Wrapper<FwDefenseZoneEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/IFwPoliceStationService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.area.entity.FwPoliceStationEntity;
import org.sxkj.fw.area.vo.FwPoliceStationVO;
import org.sxkj.fw.area.excel.FwPoliceStationExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 派出所信息表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwPoliceStationService extends BaseService<FwPoliceStationEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwPoliceStation
     * @return
     */
    IPage<FwPoliceStationVO> selectFwPoliceStationPage(IPage<FwPoliceStationVO> page, FwPoliceStationVO fwPoliceStation);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwPoliceStationExcel> exportFwPoliceStation(Wrapper<FwPoliceStationEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service.impl;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import org.sxkj.fw.area.vo.FwAreaDivideVO;
import org.sxkj.fw.area.excel.FwAreaDivideExcel;
import org.sxkj.fw.area.mapper.FwAreaDivideMapper;
import org.sxkj.fw.area.service.IFwAreaDivideService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 区域划分表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwAreaDivideServiceImpl extends BaseServiceImpl<FwAreaDivideMapper, FwAreaDivideEntity> implements IFwAreaDivideService {
    @Override
    public IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideVO fwAreaDivide) {
        return page.setRecords(baseMapper.selectFwAreaDividePage(page, fwAreaDivide));
    }
    @Override
    public List<FwAreaDivideExcel> exportFwAreaDivide(Wrapper<FwAreaDivideEntity> queryWrapper) {
        List<FwAreaDivideExcel> fwAreaDivideList = baseMapper.exportFwAreaDivide(queryWrapper);
        //fwAreaDivideList.forEach(fwAreaDivide -> {
        //    fwAreaDivide.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwAreaDivide.getType()));
        //});
        return fwAreaDivideList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseSceneServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service.impl;
import org.sxkj.fw.area.entity.FwDefenseSceneEntity;
import org.sxkj.fw.area.vo.FwDefenseSceneVO;
import org.sxkj.fw.area.excel.FwDefenseSceneExcel;
import org.sxkj.fw.area.mapper.FwDefenseSceneMapper;
import org.sxkj.fw.area.service.IFwDefenseSceneService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 防控场景表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDefenseSceneServiceImpl extends BaseServiceImpl<FwDefenseSceneMapper, FwDefenseSceneEntity> implements IFwDefenseSceneService {
    @Override
    public IPage<FwDefenseSceneVO> selectFwDefenseScenePage(IPage<FwDefenseSceneVO> page, FwDefenseSceneVO fwDefenseScene) {
        return page.setRecords(baseMapper.selectFwDefenseScenePage(page, fwDefenseScene));
    }
    @Override
    public List<FwDefenseSceneExcel> exportFwDefenseScene(Wrapper<FwDefenseSceneEntity> queryWrapper) {
        List<FwDefenseSceneExcel> fwDefenseSceneList = baseMapper.exportFwDefenseScene(queryWrapper);
        //fwDefenseSceneList.forEach(fwDefenseScene -> {
        //    fwDefenseScene.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDefenseScene.getType()));
        //});
        return fwDefenseSceneList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseZoneServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service.impl;
import org.sxkj.fw.area.entity.FwDefenseZoneEntity;
import org.sxkj.fw.area.vo.FwDefenseZoneVO;
import org.sxkj.fw.area.excel.FwDefenseZoneExcel;
import org.sxkj.fw.area.mapper.FwDefenseZoneMapper;
import org.sxkj.fw.area.service.IFwDefenseZoneService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 防区管理表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDefenseZoneServiceImpl extends BaseServiceImpl<FwDefenseZoneMapper, FwDefenseZoneEntity> implements IFwDefenseZoneService {
    @Override
    public IPage<FwDefenseZoneVO> selectFwDefenseZonePage(IPage<FwDefenseZoneVO> page, FwDefenseZoneVO fwDefenseZone) {
        return page.setRecords(baseMapper.selectFwDefenseZonePage(page, fwDefenseZone));
    }
    @Override
    public List<FwDefenseZoneExcel> exportFwDefenseZone(Wrapper<FwDefenseZoneEntity> queryWrapper) {
        List<FwDefenseZoneExcel> fwDefenseZoneList = baseMapper.exportFwDefenseZone(queryWrapper);
        //fwDefenseZoneList.forEach(fwDefenseZone -> {
        //    fwDefenseZone.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDefenseZone.getType()));
        //});
        return fwDefenseZoneList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwPoliceStationServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.service.impl;
import org.sxkj.fw.area.entity.FwPoliceStationEntity;
import org.sxkj.fw.area.vo.FwPoliceStationVO;
import org.sxkj.fw.area.excel.FwPoliceStationExcel;
import org.sxkj.fw.area.mapper.FwPoliceStationMapper;
import org.sxkj.fw.area.service.IFwPoliceStationService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 派出所信息表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwPoliceStationServiceImpl extends BaseServiceImpl<FwPoliceStationMapper, FwPoliceStationEntity> implements IFwPoliceStationService {
    @Override
    public IPage<FwPoliceStationVO> selectFwPoliceStationPage(IPage<FwPoliceStationVO> page, FwPoliceStationVO fwPoliceStation) {
        return page.setRecords(baseMapper.selectFwPoliceStationPage(page, fwPoliceStation));
    }
    @Override
    public List<FwPoliceStationExcel> exportFwPoliceStation(Wrapper<FwPoliceStationEntity> queryWrapper) {
        List<FwPoliceStationExcel> fwPoliceStationList = baseMapper.exportFwPoliceStation(queryWrapper);
        //fwPoliceStationList.forEach(fwPoliceStation -> {
        //    fwPoliceStation.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwPoliceStation.getType()));
        //});
        return fwPoliceStationList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwAreaDivideVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.vo;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 区域划分表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwAreaDivideVO extends FwAreaDivideEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwDefenseSceneVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.vo;
import org.sxkj.fw.area.entity.FwDefenseSceneEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 防控场景表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDefenseSceneVO extends FwDefenseSceneEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwDefenseZoneVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.vo;
import org.sxkj.fw.area.entity.FwDefenseZoneEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 防区管理表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDefenseZoneVO extends FwDefenseZoneEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/vo/FwPoliceStationVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.vo;
import org.sxkj.fw.area.entity.FwPoliceStationEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 派出所信息表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwPoliceStationVO extends FwPoliceStationEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwAreaDivideWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import org.sxkj.fw.area.vo.FwAreaDivideVO;
import java.util.Objects;
/**
 * 区域划分表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwAreaDivideWrapper extends BaseEntityWrapper<FwAreaDivideEntity, FwAreaDivideVO>  {
    public static FwAreaDivideWrapper build() {
        return new FwAreaDivideWrapper();
     }
    @Override
    public FwAreaDivideVO entityVO(FwAreaDivideEntity fwAreaDivide) {
        FwAreaDivideVO fwAreaDivideVO = Objects.requireNonNull(BeanUtil.copy(fwAreaDivide, FwAreaDivideVO.class));
        //User createUser = UserCache.getUser(fwAreaDivide.getCreateUser());
        //User updateUser = UserCache.getUser(fwAreaDivide.getUpdateUser());
        //fwAreaDivideVO.setCreateUserName(createUser.getName());
        //fwAreaDivideVO.setUpdateUserName(updateUser.getName());
        return fwAreaDivideVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwDefenseSceneWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.area.entity.FwDefenseSceneEntity;
import org.sxkj.fw.area.vo.FwDefenseSceneVO;
import java.util.Objects;
/**
 * 防控场景表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDefenseSceneWrapper extends BaseEntityWrapper<FwDefenseSceneEntity, FwDefenseSceneVO>  {
    public static FwDefenseSceneWrapper build() {
        return new FwDefenseSceneWrapper();
     }
    @Override
    public FwDefenseSceneVO entityVO(FwDefenseSceneEntity fwDefenseScene) {
        FwDefenseSceneVO fwDefenseSceneVO = Objects.requireNonNull(BeanUtil.copy(fwDefenseScene, FwDefenseSceneVO.class));
        //User createUser = UserCache.getUser(fwDefenseScene.getCreateUser());
        //User updateUser = UserCache.getUser(fwDefenseScene.getUpdateUser());
        //fwDefenseSceneVO.setCreateUserName(createUser.getName());
        //fwDefenseSceneVO.setUpdateUserName(updateUser.getName());
        return fwDefenseSceneVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwDefenseZoneWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.area.entity.FwDefenseZoneEntity;
import org.sxkj.fw.area.vo.FwDefenseZoneVO;
import java.util.Objects;
/**
 * 防区管理表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDefenseZoneWrapper extends BaseEntityWrapper<FwDefenseZoneEntity, FwDefenseZoneVO>  {
    public static FwDefenseZoneWrapper build() {
        return new FwDefenseZoneWrapper();
     }
    @Override
    public FwDefenseZoneVO entityVO(FwDefenseZoneEntity fwDefenseZone) {
        FwDefenseZoneVO fwDefenseZoneVO = Objects.requireNonNull(BeanUtil.copy(fwDefenseZone, FwDefenseZoneVO.class));
        //User createUser = UserCache.getUser(fwDefenseZone.getCreateUser());
        //User updateUser = UserCache.getUser(fwDefenseZone.getUpdateUser());
        //fwDefenseZoneVO.setCreateUserName(createUser.getName());
        //fwDefenseZoneVO.setUpdateUserName(updateUser.getName());
        return fwDefenseZoneVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/wrapper/FwPoliceStationWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.area.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.area.entity.FwPoliceStationEntity;
import org.sxkj.fw.area.vo.FwPoliceStationVO;
import java.util.Objects;
/**
 * 派出所信息表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwPoliceStationWrapper extends BaseEntityWrapper<FwPoliceStationEntity, FwPoliceStationVO>  {
    public static FwPoliceStationWrapper build() {
        return new FwPoliceStationWrapper();
     }
    @Override
    public FwPoliceStationVO entityVO(FwPoliceStationEntity fwPoliceStation) {
        FwPoliceStationVO fwPoliceStationVO = Objects.requireNonNull(BeanUtil.copy(fwPoliceStation, FwPoliceStationVO.class));
        //User createUser = UserCache.getUser(fwPoliceStation.getCreateUser());
        //User updateUser = UserCache.getUser(fwPoliceStation.getUpdateUser());
        //fwPoliceStationVO.setCreateUserName(createUser.getName());
        //fwPoliceStationVO.setUpdateUserName(updateUser.getName());
        return fwPoliceStationVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/controller/FwDeviceConfigController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.detection.entity.FwDeviceConfigEntity;
import org.sxkj.fw.detection.vo.FwDeviceConfigVO;
import org.sxkj.fw.detection.excel.FwDeviceConfigExcel;
import org.sxkj.fw.detection.wrapper.FwDeviceConfigWrapper;
import org.sxkj.fw.detection.service.IFwDeviceConfigService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 设备配置表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("detection/fwDeviceConfig")
@Api(value = "设备配置表", tags = "设备配置表接口")
public class FwDeviceConfigController extends BladeController {
    private final IFwDeviceConfigService fwDeviceConfigService;
    /**
     * 设备配置表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDeviceConfig")
    public R<FwDeviceConfigVO> detail(FwDeviceConfigEntity fwDeviceConfig) {
        FwDeviceConfigEntity detail = fwDeviceConfigService.getOne(Condition.getQueryWrapper(fwDeviceConfig));
        return R.data(FwDeviceConfigWrapper.build().entityVO(detail));
    }
    /**
     * 设备配置表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDeviceConfig")
    public R<IPage<FwDeviceConfigVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDeviceConfig, Query query) {
        IPage<FwDeviceConfigEntity> pages = fwDeviceConfigService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDeviceConfig, FwDeviceConfigEntity.class));
        return R.data(FwDeviceConfigWrapper.build().pageVO(pages));
    }
    /**
     * 设备配置表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDeviceConfig")
    public R<IPage<FwDeviceConfigVO>> page(FwDeviceConfigVO fwDeviceConfig, Query query) {
        IPage<FwDeviceConfigVO> pages = fwDeviceConfigService.selectFwDeviceConfigPage(Condition.getPage(query), fwDeviceConfig);
        return R.data(pages);
    }
    /**
     * 设备配置表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDeviceConfig")
    public R save(@Valid @RequestBody FwDeviceConfigEntity fwDeviceConfig) {
        return R.status(fwDeviceConfigService.save(fwDeviceConfig));
    }
    /**
     * 设备配置表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDeviceConfig")
    public R update(@Valid @RequestBody FwDeviceConfigEntity fwDeviceConfig) {
        return R.status(fwDeviceConfigService.updateById(fwDeviceConfig));
    }
    /**
     * 设备配置表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDeviceConfig")
    public R submit(@Valid @RequestBody FwDeviceConfigEntity fwDeviceConfig) {
        return R.status(fwDeviceConfigService.saveOrUpdate(fwDeviceConfig));
    }
    /**
     * 设备配置表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDeviceConfigService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDeviceConfig")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDeviceConfig")
    public void exportFwDeviceConfig(@ApiIgnore @RequestParam Map<String, Object> fwDeviceConfig, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDeviceConfigEntity> queryWrapper = Condition.getQueryWrapper(fwDeviceConfig, FwDeviceConfigEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDeviceConfig::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDeviceConfigEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDeviceConfigExcel> list = fwDeviceConfigService.exportFwDeviceConfig(queryWrapper);
        ExcelUtil.export(response, "设备配置表数据" + DateUtil.time(), "设备配置表数据表", list, FwDeviceConfigExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/controller/FwEffectEvalController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.detection.entity.FwEffectEvalEntity;
import org.sxkj.fw.detection.vo.FwEffectEvalVO;
import org.sxkj.fw.detection.excel.FwEffectEvalExcel;
import org.sxkj.fw.detection.wrapper.FwEffectEvalWrapper;
import org.sxkj.fw.detection.service.IFwEffectEvalService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 反制效果评估表 控制器
 *
 * @author BladeX
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("detection/fwEffectEval")
@Api(value = "反制效果评估表", tags = "反制效果评估表接口")
public class FwEffectEvalController extends BladeController {
    private final IFwEffectEvalService fwEffectEvalService;
    /**
     * 反制效果评估表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwEffectEval")
    public R<FwEffectEvalVO> detail(FwEffectEvalEntity fwEffectEval) {
        FwEffectEvalEntity detail = fwEffectEvalService.getOne(Condition.getQueryWrapper(fwEffectEval));
        return R.data(FwEffectEvalWrapper.build().entityVO(detail));
    }
    /**
     * 反制效果评估表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwEffectEval")
    public R<IPage<FwEffectEvalVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwEffectEval, Query query) {
        IPage<FwEffectEvalEntity> pages = fwEffectEvalService.page(Condition.getPage(query), Condition.getQueryWrapper(fwEffectEval, FwEffectEvalEntity.class));
        return R.data(FwEffectEvalWrapper.build().pageVO(pages));
    }
    /**
     * 反制效果评估表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwEffectEval")
    public R<IPage<FwEffectEvalVO>> page(FwEffectEvalVO fwEffectEval, Query query) {
        IPage<FwEffectEvalVO> pages = fwEffectEvalService.selectFwEffectEvalPage(Condition.getPage(query), fwEffectEval);
        return R.data(pages);
    }
    /**
     * 反制效果评估表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwEffectEval")
    public R save(@Valid @RequestBody FwEffectEvalEntity fwEffectEval) {
        return R.status(fwEffectEvalService.save(fwEffectEval));
    }
    /**
     * 反制效果评估表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwEffectEval")
    public R update(@Valid @RequestBody FwEffectEvalEntity fwEffectEval) {
        return R.status(fwEffectEvalService.updateById(fwEffectEval));
    }
    /**
     * 反制效果评估表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwEffectEval")
    public R submit(@Valid @RequestBody FwEffectEvalEntity fwEffectEval) {
        return R.status(fwEffectEvalService.saveOrUpdate(fwEffectEval));
    }
    /**
     * 反制效果评估表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwEffectEvalService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwEffectEval")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwEffectEval")
    public void exportFwEffectEval(@ApiIgnore @RequestParam Map<String, Object> fwEffectEval, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwEffectEvalEntity> queryWrapper = Condition.getQueryWrapper(fwEffectEval, FwEffectEvalEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwEffectEval::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwEffectEvalEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwEffectEvalExcel> list = fwEffectEvalService.exportFwEffectEval(queryWrapper);
        ExcelUtil.export(response, "反制效果评估表数据" + DateUtil.time(), "反制效果评估表数据表", list, FwEffectEvalExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/controller/FwTaskScheduleController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.detection.entity.FwTaskScheduleEntity;
import org.sxkj.fw.detection.vo.FwTaskScheduleVO;
import org.sxkj.fw.detection.excel.FwTaskScheduleExcel;
import org.sxkj.fw.detection.wrapper.FwTaskScheduleWrapper;
import org.sxkj.fw.detection.service.IFwTaskScheduleService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 任务调度记录表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("detection/fwTaskSchedule")
@Api(value = "任务调度记录表", tags = "任务调度记录表接口")
public class FwTaskScheduleController extends BladeController {
    private final IFwTaskScheduleService fwTaskScheduleService;
    /**
     * 任务调度记录表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwTaskSchedule")
    public R<FwTaskScheduleVO> detail(FwTaskScheduleEntity fwTaskSchedule) {
        FwTaskScheduleEntity detail = fwTaskScheduleService.getOne(Condition.getQueryWrapper(fwTaskSchedule));
        return R.data(FwTaskScheduleWrapper.build().entityVO(detail));
    }
    /**
     * 任务调度记录表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwTaskSchedule")
    public R<IPage<FwTaskScheduleVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwTaskSchedule, Query query) {
        IPage<FwTaskScheduleEntity> pages = fwTaskScheduleService.page(Condition.getPage(query), Condition.getQueryWrapper(fwTaskSchedule, FwTaskScheduleEntity.class));
        return R.data(FwTaskScheduleWrapper.build().pageVO(pages));
    }
    /**
     * 任务调度记录表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwTaskSchedule")
    public R<IPage<FwTaskScheduleVO>> page(FwTaskScheduleVO fwTaskSchedule, Query query) {
        IPage<FwTaskScheduleVO> pages = fwTaskScheduleService.selectFwTaskSchedulePage(Condition.getPage(query), fwTaskSchedule);
        return R.data(pages);
    }
    /**
     * 任务调度记录表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwTaskSchedule")
    public R save(@Valid @RequestBody FwTaskScheduleEntity fwTaskSchedule) {
        return R.status(fwTaskScheduleService.save(fwTaskSchedule));
    }
    /**
     * 任务调度记录表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwTaskSchedule")
    public R update(@Valid @RequestBody FwTaskScheduleEntity fwTaskSchedule) {
        return R.status(fwTaskScheduleService.updateById(fwTaskSchedule));
    }
    /**
     * 任务调度记录表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwTaskSchedule")
    public R submit(@Valid @RequestBody FwTaskScheduleEntity fwTaskSchedule) {
        return R.status(fwTaskScheduleService.saveOrUpdate(fwTaskSchedule));
    }
    /**
     * 任务调度记录表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwTaskScheduleService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwTaskSchedule")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwTaskSchedule")
    public void exportFwTaskSchedule(@ApiIgnore @RequestParam Map<String, Object> fwTaskSchedule, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwTaskScheduleEntity> queryWrapper = Condition.getQueryWrapper(fwTaskSchedule, FwTaskScheduleEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwTaskSchedule::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwTaskScheduleEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwTaskScheduleExcel> list = fwTaskScheduleService.exportFwTaskSchedule(queryWrapper);
        ExcelUtil.export(response, "任务调度记录表数据" + DateUtil.time(), "任务调度记录表数据表", list, FwTaskScheduleExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/dto/FwDeviceConfigDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.dto;
import org.sxkj.fw.detection.entity.FwDeviceConfigEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备配置表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceConfigDTO extends FwDeviceConfigEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/dto/FwEffectEvalDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.dto;
import org.sxkj.fw.detection.entity.FwEffectEvalEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 反制效果评估表 数据传输对象实体类
 *
 * @author BladeX
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwEffectEvalDTO extends FwEffectEvalEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/dto/FwTaskScheduleDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.dto;
import org.sxkj.fw.detection.entity.FwTaskScheduleEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 任务调度记录表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwTaskScheduleDTO extends FwTaskScheduleEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/entity/FwDeviceConfigEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 设备配置表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_device_config")
@ApiModel(value = "FwDeviceConfig对象", description = "设备配置表")
@EqualsAndHashCode(callSuper = true)
public class FwDeviceConfigEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/entity/FwEffectEvalEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 反制效果评估表 实体类
 *
 * @author BladeX
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_effect_eval")
@ApiModel(value = "FwEffectEval对象", description = "反制效果评估表")
@EqualsAndHashCode(callSuper = true)
public class FwEffectEvalEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/entity/FwTaskScheduleEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 任务调度记录表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_task_schedule")
@ApiModel(value = "FwTaskSchedule对象", description = "任务调度记录表")
@EqualsAndHashCode(callSuper = true)
public class FwTaskScheduleEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/excel/FwDeviceConfigExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 设备配置表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDeviceConfigExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/excel/FwEffectEvalExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 反制效果评估表 Excel实体类
 *
 * @author BladeX
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwEffectEvalExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/excel/FwTaskScheduleExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 任务调度记录表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwTaskScheduleExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwDeviceConfigMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.mapper;
import org.sxkj.fw.detection.entity.FwDeviceConfigEntity;
import org.sxkj.fw.detection.vo.FwDeviceConfigVO;
import org.sxkj.fw.detection.excel.FwDeviceConfigExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 设备配置表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDeviceConfigMapper extends BaseMapper<FwDeviceConfigEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceConfig
     * @return
     */
    List<FwDeviceConfigVO> selectFwDeviceConfigPage(IPage page, FwDeviceConfigVO fwDeviceConfig);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceConfigExcel> exportFwDeviceConfig(@Param("ew") Wrapper<FwDeviceConfigEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwDeviceConfigMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.detection.mapper.FwDeviceConfigMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDeviceConfigResultMap" type="org.sxkj.fw.detection.entity.FwDeviceConfigEntity">
    </resultMap>
    <select id="selectFwDeviceConfigPage" resultMap="fwDeviceConfigResultMap">
        select * from ja_fw_device_config where is_deleted = 0
    </select>
    <select id="exportFwDeviceConfig" resultType="org.sxkj.fw.detection.excel.FwDeviceConfigExcel">
        SELECT * FROM ja_fw_device_config ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.mapper;
import org.sxkj.fw.detection.entity.FwEffectEvalEntity;
import org.sxkj.fw.detection.vo.FwEffectEvalVO;
import org.sxkj.fw.detection.excel.FwEffectEvalExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 反制效果评估表 Mapper 接口
 *
 * @author BladeX
 * @since 2026-01-07
 */
public interface FwEffectEvalMapper extends BaseMapper<FwEffectEvalEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwEffectEval
     * @return
     */
    List<FwEffectEvalVO> selectFwEffectEvalPage(IPage page, FwEffectEvalVO fwEffectEval);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwEffectEvalExcel> exportFwEffectEval(@Param("ew") Wrapper<FwEffectEvalEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.detection.mapper.FwEffectEvalMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwEffectEvalResultMap" type="org.sxkj.fw.detection.entity.FwEffectEvalEntity">
    </resultMap>
    <select id="selectFwEffectEvalPage" resultMap="fwEffectEvalResultMap">
        select * from ja_fw_effect_eval where is_deleted = 0
    </select>
    <select id="exportFwEffectEval" resultType="org.sxkj.fw.detection.excel.FwEffectEvalExcel">
        SELECT * FROM ja_fw_effect_eval ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwTaskScheduleMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.mapper;
import org.sxkj.fw.detection.entity.FwTaskScheduleEntity;
import org.sxkj.fw.detection.vo.FwTaskScheduleVO;
import org.sxkj.fw.detection.excel.FwTaskScheduleExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 任务调度记录表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwTaskScheduleMapper extends BaseMapper<FwTaskScheduleEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwTaskSchedule
     * @return
     */
    List<FwTaskScheduleVO> selectFwTaskSchedulePage(IPage page, FwTaskScheduleVO fwTaskSchedule);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwTaskScheduleExcel> exportFwTaskSchedule(@Param("ew") Wrapper<FwTaskScheduleEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwTaskScheduleMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.detection.mapper.FwTaskScheduleMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwTaskScheduleResultMap" type="org.sxkj.fw.detection.entity.FwTaskScheduleEntity">
    </resultMap>
    <select id="selectFwTaskSchedulePage" resultMap="fwTaskScheduleResultMap">
        select * from ja_fw_task_schedule where is_deleted = 0
    </select>
    <select id="exportFwTaskSchedule" resultType="org.sxkj.fw.detection.excel.FwTaskScheduleExcel">
        SELECT * FROM ja_fw_task_schedule ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/IFwDeviceConfigService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.detection.entity.FwDeviceConfigEntity;
import org.sxkj.fw.detection.vo.FwDeviceConfigVO;
import org.sxkj.fw.detection.excel.FwDeviceConfigExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 设备配置表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDeviceConfigService extends BaseService<FwDeviceConfigEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceConfig
     * @return
     */
    IPage<FwDeviceConfigVO> selectFwDeviceConfigPage(IPage<FwDeviceConfigVO> page, FwDeviceConfigVO fwDeviceConfig);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceConfigExcel> exportFwDeviceConfig(Wrapper<FwDeviceConfigEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/IFwEffectEvalService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.detection.entity.FwEffectEvalEntity;
import org.sxkj.fw.detection.vo.FwEffectEvalVO;
import org.sxkj.fw.detection.excel.FwEffectEvalExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 反制效果评估表 服务类
 *
 * @author BladeX
 * @since 2026-01-07
 */
public interface IFwEffectEvalService extends BaseService<FwEffectEvalEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwEffectEval
     * @return
     */
    IPage<FwEffectEvalVO> selectFwEffectEvalPage(IPage<FwEffectEvalVO> page, FwEffectEvalVO fwEffectEval);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwEffectEvalExcel> exportFwEffectEval(Wrapper<FwEffectEvalEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/IFwTaskScheduleService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.detection.entity.FwTaskScheduleEntity;
import org.sxkj.fw.detection.vo.FwTaskScheduleVO;
import org.sxkj.fw.detection.excel.FwTaskScheduleExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 任务调度记录表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwTaskScheduleService extends BaseService<FwTaskScheduleEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwTaskSchedule
     * @return
     */
    IPage<FwTaskScheduleVO> selectFwTaskSchedulePage(IPage<FwTaskScheduleVO> page, FwTaskScheduleVO fwTaskSchedule);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwTaskScheduleExcel> exportFwTaskSchedule(Wrapper<FwTaskScheduleEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/impl/FwDeviceConfigServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.service.impl;
import org.sxkj.fw.detection.entity.FwDeviceConfigEntity;
import org.sxkj.fw.detection.vo.FwDeviceConfigVO;
import org.sxkj.fw.detection.excel.FwDeviceConfigExcel;
import org.sxkj.fw.detection.mapper.FwDeviceConfigMapper;
import org.sxkj.fw.detection.service.IFwDeviceConfigService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 设备配置表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDeviceConfigServiceImpl extends BaseServiceImpl<FwDeviceConfigMapper, FwDeviceConfigEntity> implements IFwDeviceConfigService {
    @Override
    public IPage<FwDeviceConfigVO> selectFwDeviceConfigPage(IPage<FwDeviceConfigVO> page, FwDeviceConfigVO fwDeviceConfig) {
        return page.setRecords(baseMapper.selectFwDeviceConfigPage(page, fwDeviceConfig));
    }
    @Override
    public List<FwDeviceConfigExcel> exportFwDeviceConfig(Wrapper<FwDeviceConfigEntity> queryWrapper) {
        List<FwDeviceConfigExcel> fwDeviceConfigList = baseMapper.exportFwDeviceConfig(queryWrapper);
        //fwDeviceConfigList.forEach(fwDeviceConfig -> {
        //    fwDeviceConfig.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDeviceConfig.getType()));
        //});
        return fwDeviceConfigList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/impl/FwEffectEvalServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.service.impl;
import org.sxkj.fw.detection.entity.FwEffectEvalEntity;
import org.sxkj.fw.detection.vo.FwEffectEvalVO;
import org.sxkj.fw.detection.excel.FwEffectEvalExcel;
import org.sxkj.fw.detection.mapper.FwEffectEvalMapper;
import org.sxkj.fw.detection.service.IFwEffectEvalService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 反制效果评估表 服务实现类
 *
 * @author BladeX
 * @since 2026-01-07
 */
@Service
public class FwEffectEvalServiceImpl extends BaseServiceImpl<FwEffectEvalMapper, FwEffectEvalEntity> implements IFwEffectEvalService {
    @Override
    public IPage<FwEffectEvalVO> selectFwEffectEvalPage(IPage<FwEffectEvalVO> page, FwEffectEvalVO fwEffectEval) {
        return page.setRecords(baseMapper.selectFwEffectEvalPage(page, fwEffectEval));
    }
    @Override
    public List<FwEffectEvalExcel> exportFwEffectEval(Wrapper<FwEffectEvalEntity> queryWrapper) {
        List<FwEffectEvalExcel> fwEffectEvalList = baseMapper.exportFwEffectEval(queryWrapper);
        //fwEffectEvalList.forEach(fwEffectEval -> {
        //    fwEffectEval.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwEffectEval.getType()));
        //});
        return fwEffectEvalList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/service/impl/FwTaskScheduleServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.service.impl;
import org.sxkj.fw.detection.entity.FwTaskScheduleEntity;
import org.sxkj.fw.detection.vo.FwTaskScheduleVO;
import org.sxkj.fw.detection.excel.FwTaskScheduleExcel;
import org.sxkj.fw.detection.mapper.FwTaskScheduleMapper;
import org.sxkj.fw.detection.service.IFwTaskScheduleService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 任务调度记录表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwTaskScheduleServiceImpl extends BaseServiceImpl<FwTaskScheduleMapper, FwTaskScheduleEntity> implements IFwTaskScheduleService {
    @Override
    public IPage<FwTaskScheduleVO> selectFwTaskSchedulePage(IPage<FwTaskScheduleVO> page, FwTaskScheduleVO fwTaskSchedule) {
        return page.setRecords(baseMapper.selectFwTaskSchedulePage(page, fwTaskSchedule));
    }
    @Override
    public List<FwTaskScheduleExcel> exportFwTaskSchedule(Wrapper<FwTaskScheduleEntity> queryWrapper) {
        List<FwTaskScheduleExcel> fwTaskScheduleList = baseMapper.exportFwTaskSchedule(queryWrapper);
        //fwTaskScheduleList.forEach(fwTaskSchedule -> {
        //    fwTaskSchedule.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwTaskSchedule.getType()));
        //});
        return fwTaskScheduleList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/vo/FwDeviceConfigVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.vo;
import org.sxkj.fw.detection.entity.FwDeviceConfigEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备配置表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceConfigVO extends FwDeviceConfigEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/vo/FwEffectEvalVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.vo;
import org.sxkj.fw.detection.entity.FwEffectEvalEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 反制效果评估表 视图实体类
 *
 * @author BladeX
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwEffectEvalVO extends FwEffectEvalEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/vo/FwTaskScheduleVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.vo;
import org.sxkj.fw.detection.entity.FwTaskScheduleEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 任务调度记录表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwTaskScheduleVO extends FwTaskScheduleEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/wrapper/FwDeviceConfigWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.detection.entity.FwDeviceConfigEntity;
import org.sxkj.fw.detection.vo.FwDeviceConfigVO;
import java.util.Objects;
/**
 * 设备配置表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDeviceConfigWrapper extends BaseEntityWrapper<FwDeviceConfigEntity, FwDeviceConfigVO>  {
    public static FwDeviceConfigWrapper build() {
        return new FwDeviceConfigWrapper();
     }
    @Override
    public FwDeviceConfigVO entityVO(FwDeviceConfigEntity fwDeviceConfig) {
        FwDeviceConfigVO fwDeviceConfigVO = Objects.requireNonNull(BeanUtil.copy(fwDeviceConfig, FwDeviceConfigVO.class));
        //User createUser = UserCache.getUser(fwDeviceConfig.getCreateUser());
        //User updateUser = UserCache.getUser(fwDeviceConfig.getUpdateUser());
        //fwDeviceConfigVO.setCreateUserName(createUser.getName());
        //fwDeviceConfigVO.setUpdateUserName(updateUser.getName());
        return fwDeviceConfigVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/wrapper/FwEffectEvalWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.detection.entity.FwEffectEvalEntity;
import org.sxkj.fw.detection.vo.FwEffectEvalVO;
import java.util.Objects;
/**
 * 反制效果评估表 包装类,返回视图层所需的字段
 *
 * @author BladeX
 * @since 2026-01-07
 */
public class FwEffectEvalWrapper extends BaseEntityWrapper<FwEffectEvalEntity, FwEffectEvalVO>  {
    public static FwEffectEvalWrapper build() {
        return new FwEffectEvalWrapper();
     }
    @Override
    public FwEffectEvalVO entityVO(FwEffectEvalEntity fwEffectEval) {
        FwEffectEvalVO fwEffectEvalVO = Objects.requireNonNull(BeanUtil.copy(fwEffectEval, FwEffectEvalVO.class));
        //User createUser = UserCache.getUser(fwEffectEval.getCreateUser());
        //User updateUser = UserCache.getUser(fwEffectEval.getUpdateUser());
        //fwEffectEvalVO.setCreateUserName(createUser.getName());
        //fwEffectEvalVO.setUpdateUserName(updateUser.getName());
        return fwEffectEvalVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/wrapper/FwTaskScheduleWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.detection.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.detection.entity.FwTaskScheduleEntity;
import org.sxkj.fw.detection.vo.FwTaskScheduleVO;
import java.util.Objects;
/**
 * 任务调度记录表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwTaskScheduleWrapper extends BaseEntityWrapper<FwTaskScheduleEntity, FwTaskScheduleVO>  {
    public static FwTaskScheduleWrapper build() {
        return new FwTaskScheduleWrapper();
     }
    @Override
    public FwTaskScheduleVO entityVO(FwTaskScheduleEntity fwTaskSchedule) {
        FwTaskScheduleVO fwTaskScheduleVO = Objects.requireNonNull(BeanUtil.copy(fwTaskSchedule, FwTaskScheduleVO.class));
        //User createUser = UserCache.getUser(fwTaskSchedule.getCreateUser());
        //User updateUser = UserCache.getUser(fwTaskSchedule.getUpdateUser());
        //fwTaskScheduleVO.setCreateUserName(createUser.getName());
        //fwTaskScheduleVO.setUpdateUserName(updateUser.getName());
        return fwTaskScheduleVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceMaintainPlanController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.device.entity.FwDeviceMaintainPlanEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel;
import org.sxkj.fw.device.wrapper.FwDeviceMaintainPlanWrapper;
import org.sxkj.fw.device.service.IFwDeviceMaintainPlanService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 设备维护计划表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("device/fwDeviceMaintainPlan")
@Api(value = "设备维护计划表", tags = "设备维护计划表接口")
public class FwDeviceMaintainPlanController extends BladeController {
    private final IFwDeviceMaintainPlanService fwDeviceMaintainPlanService;
    /**
     * 设备维护计划表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDeviceMaintainPlan")
    public R<FwDeviceMaintainPlanVO> detail(FwDeviceMaintainPlanEntity fwDeviceMaintainPlan) {
        FwDeviceMaintainPlanEntity detail = fwDeviceMaintainPlanService.getOne(Condition.getQueryWrapper(fwDeviceMaintainPlan));
        return R.data(FwDeviceMaintainPlanWrapper.build().entityVO(detail));
    }
    /**
     * 设备维护计划表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDeviceMaintainPlan")
    public R<IPage<FwDeviceMaintainPlanVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDeviceMaintainPlan, Query query) {
        IPage<FwDeviceMaintainPlanEntity> pages = fwDeviceMaintainPlanService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDeviceMaintainPlan, FwDeviceMaintainPlanEntity.class));
        return R.data(FwDeviceMaintainPlanWrapper.build().pageVO(pages));
    }
    /**
     * 设备维护计划表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDeviceMaintainPlan")
    public R<IPage<FwDeviceMaintainPlanVO>> page(FwDeviceMaintainPlanVO fwDeviceMaintainPlan, Query query) {
        IPage<FwDeviceMaintainPlanVO> pages = fwDeviceMaintainPlanService.selectFwDeviceMaintainPlanPage(Condition.getPage(query), fwDeviceMaintainPlan);
        return R.data(pages);
    }
    /**
     * 设备维护计划表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDeviceMaintainPlan")
    public R save(@Valid @RequestBody FwDeviceMaintainPlanEntity fwDeviceMaintainPlan) {
        return R.status(fwDeviceMaintainPlanService.save(fwDeviceMaintainPlan));
    }
    /**
     * 设备维护计划表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDeviceMaintainPlan")
    public R update(@Valid @RequestBody FwDeviceMaintainPlanEntity fwDeviceMaintainPlan) {
        return R.status(fwDeviceMaintainPlanService.updateById(fwDeviceMaintainPlan));
    }
    /**
     * 设备维护计划表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDeviceMaintainPlan")
    public R submit(@Valid @RequestBody FwDeviceMaintainPlanEntity fwDeviceMaintainPlan) {
        return R.status(fwDeviceMaintainPlanService.saveOrUpdate(fwDeviceMaintainPlan));
    }
    /**
     * 设备维护计划表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDeviceMaintainPlanService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDeviceMaintainPlan")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDeviceMaintainPlan")
    public void exportFwDeviceMaintainPlan(@ApiIgnore @RequestParam Map<String, Object> fwDeviceMaintainPlan, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDeviceMaintainPlanEntity> queryWrapper = Condition.getQueryWrapper(fwDeviceMaintainPlan, FwDeviceMaintainPlanEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDeviceMaintainPlan::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDeviceMaintainPlanEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDeviceMaintainPlanExcel> list = fwDeviceMaintainPlanService.exportFwDeviceMaintainPlan(queryWrapper);
        ExcelUtil.export(response, "设备维护计划表数据" + DateUtil.time(), "设备维护计划表数据表", list, FwDeviceMaintainPlanExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceMaintainRecordController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.device.entity.FwDeviceMaintainRecordEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainRecordVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainRecordExcel;
import org.sxkj.fw.device.wrapper.FwDeviceMaintainRecordWrapper;
import org.sxkj.fw.device.service.IFwDeviceMaintainRecordService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 设备维护记录表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("device/fwDeviceMaintainRecord")
@Api(value = "设备维护记录表", tags = "设备维护记录表接口")
public class FwDeviceMaintainRecordController extends BladeController {
    private final IFwDeviceMaintainRecordService fwDeviceMaintainRecordService;
    /**
     * 设备维护记录表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDeviceMaintainRecord")
    public R<FwDeviceMaintainRecordVO> detail(FwDeviceMaintainRecordEntity fwDeviceMaintainRecord) {
        FwDeviceMaintainRecordEntity detail = fwDeviceMaintainRecordService.getOne(Condition.getQueryWrapper(fwDeviceMaintainRecord));
        return R.data(FwDeviceMaintainRecordWrapper.build().entityVO(detail));
    }
    /**
     * 设备维护记录表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDeviceMaintainRecord")
    public R<IPage<FwDeviceMaintainRecordVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDeviceMaintainRecord, Query query) {
        IPage<FwDeviceMaintainRecordEntity> pages = fwDeviceMaintainRecordService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDeviceMaintainRecord, FwDeviceMaintainRecordEntity.class));
        return R.data(FwDeviceMaintainRecordWrapper.build().pageVO(pages));
    }
    /**
     * 设备维护记录表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDeviceMaintainRecord")
    public R<IPage<FwDeviceMaintainRecordVO>> page(FwDeviceMaintainRecordVO fwDeviceMaintainRecord, Query query) {
        IPage<FwDeviceMaintainRecordVO> pages = fwDeviceMaintainRecordService.selectFwDeviceMaintainRecordPage(Condition.getPage(query), fwDeviceMaintainRecord);
        return R.data(pages);
    }
    /**
     * 设备维护记录表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDeviceMaintainRecord")
    public R save(@Valid @RequestBody FwDeviceMaintainRecordEntity fwDeviceMaintainRecord) {
        return R.status(fwDeviceMaintainRecordService.save(fwDeviceMaintainRecord));
    }
    /**
     * 设备维护记录表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDeviceMaintainRecord")
    public R update(@Valid @RequestBody FwDeviceMaintainRecordEntity fwDeviceMaintainRecord) {
        return R.status(fwDeviceMaintainRecordService.updateById(fwDeviceMaintainRecord));
    }
    /**
     * 设备维护记录表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDeviceMaintainRecord")
    public R submit(@Valid @RequestBody FwDeviceMaintainRecordEntity fwDeviceMaintainRecord) {
        return R.status(fwDeviceMaintainRecordService.saveOrUpdate(fwDeviceMaintainRecord));
    }
    /**
     * 设备维护记录表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDeviceMaintainRecordService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDeviceMaintainRecord")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDeviceMaintainRecord")
    public void exportFwDeviceMaintainRecord(@ApiIgnore @RequestParam Map<String, Object> fwDeviceMaintainRecord, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDeviceMaintainRecordEntity> queryWrapper = Condition.getQueryWrapper(fwDeviceMaintainRecord, FwDeviceMaintainRecordEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDeviceMaintainRecord::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDeviceMaintainRecordEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDeviceMaintainRecordExcel> list = fwDeviceMaintainRecordService.exportFwDeviceMaintainRecord(queryWrapper);
        ExcelUtil.export(response, "设备维护记录表数据" + DateUtil.time(), "设备维护记录表数据表", list, FwDeviceMaintainRecordExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceScrapController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.device.entity.FwDeviceScrapEntity;
import org.sxkj.fw.device.vo.FwDeviceScrapVO;
import org.sxkj.fw.device.excel.FwDeviceScrapExcel;
import org.sxkj.fw.device.wrapper.FwDeviceScrapWrapper;
import org.sxkj.fw.device.service.IFwDeviceScrapService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 设备报废记录表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("device/fwDeviceScrap")
@Api(value = "设备报废记录表", tags = "设备报废记录表接口")
public class FwDeviceScrapController extends BladeController {
    private final IFwDeviceScrapService fwDeviceScrapService;
    /**
     * 设备报废记录表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDeviceScrap")
    public R<FwDeviceScrapVO> detail(FwDeviceScrapEntity fwDeviceScrap) {
        FwDeviceScrapEntity detail = fwDeviceScrapService.getOne(Condition.getQueryWrapper(fwDeviceScrap));
        return R.data(FwDeviceScrapWrapper.build().entityVO(detail));
    }
    /**
     * 设备报废记录表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDeviceScrap")
    public R<IPage<FwDeviceScrapVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDeviceScrap, Query query) {
        IPage<FwDeviceScrapEntity> pages = fwDeviceScrapService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDeviceScrap, FwDeviceScrapEntity.class));
        return R.data(FwDeviceScrapWrapper.build().pageVO(pages));
    }
    /**
     * 设备报废记录表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDeviceScrap")
    public R<IPage<FwDeviceScrapVO>> page(FwDeviceScrapVO fwDeviceScrap, Query query) {
        IPage<FwDeviceScrapVO> pages = fwDeviceScrapService.selectFwDeviceScrapPage(Condition.getPage(query), fwDeviceScrap);
        return R.data(pages);
    }
    /**
     * 设备报废记录表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDeviceScrap")
    public R save(@Valid @RequestBody FwDeviceScrapEntity fwDeviceScrap) {
        return R.status(fwDeviceScrapService.save(fwDeviceScrap));
    }
    /**
     * 设备报废记录表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDeviceScrap")
    public R update(@Valid @RequestBody FwDeviceScrapEntity fwDeviceScrap) {
        return R.status(fwDeviceScrapService.updateById(fwDeviceScrap));
    }
    /**
     * 设备报废记录表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDeviceScrap")
    public R submit(@Valid @RequestBody FwDeviceScrapEntity fwDeviceScrap) {
        return R.status(fwDeviceScrapService.saveOrUpdate(fwDeviceScrap));
    }
    /**
     * 设备报废记录表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDeviceScrapService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDeviceScrap")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDeviceScrap")
    public void exportFwDeviceScrap(@ApiIgnore @RequestParam Map<String, Object> fwDeviceScrap, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDeviceScrapEntity> queryWrapper = Condition.getQueryWrapper(fwDeviceScrap, FwDeviceScrapEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDeviceScrap::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDeviceScrapEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDeviceScrapExcel> list = fwDeviceScrapService.exportFwDeviceScrap(queryWrapper);
        ExcelUtil.export(response, "设备报废记录表数据" + DateUtil.time(), "设备报废记录表数据表", list, FwDeviceScrapExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceMaintainPlanDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.dto;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备维护计划表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceMaintainPlanDTO extends FwDeviceMaintainPlanEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceMaintainRecordDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.dto;
import org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备维护记录表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceMaintainRecordDTO extends FwDeviceMaintainRecordEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceScrapDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.dto;
import org.sxkj.fw.device.entity.FwDeviceScrapEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备报废记录表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceScrapDTO extends FwDeviceScrapEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceMaintainPlanEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 设备维护计划表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_device_maintain_plan")
@ApiModel(value = "FwDeviceMaintainPlan对象", description = "设备维护计划表")
@EqualsAndHashCode(callSuper = true)
public class FwDeviceMaintainPlanEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceMaintainRecordEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 设备维护记录表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_device_maintain_record")
@ApiModel(value = "FwDeviceMaintainRecord对象", description = "设备维护记录表")
@EqualsAndHashCode(callSuper = true)
public class FwDeviceMaintainRecordEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceScrapEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 设备报废记录表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_device_scrap")
@ApiModel(value = "FwDeviceScrap对象", description = "设备报废记录表")
@EqualsAndHashCode(callSuper = true)
public class FwDeviceScrapEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceMaintainPlanExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 设备维护计划表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDeviceMaintainPlanExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceMaintainRecordExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 设备维护记录表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDeviceMaintainRecordExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceScrapExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 设备报废记录表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDeviceScrapExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.mapper;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 设备维护计划表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDeviceMaintainPlanMapper extends BaseMapper<FwDeviceMaintainPlanEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceMaintainPlan
     * @return
     */
    List<FwDeviceMaintainPlanVO> selectFwDeviceMaintainPlanPage(IPage page, FwDeviceMaintainPlanVO fwDeviceMaintainPlan);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceMaintainPlanExcel> exportFwDeviceMaintainPlan(@Param("ew") Wrapper<FwDeviceMaintainPlanEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.device.mapper.FwDeviceMaintainPlanMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDeviceMaintainPlanResultMap" type="org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity">
    </resultMap>
    <select id="selectFwDeviceMaintainPlanPage" resultMap="fwDeviceMaintainPlanResultMap">
        select * from ja_fw_device_maintain_plan where is_deleted = 0
    </select>
    <select id="exportFwDeviceMaintainPlan" resultType="org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel">
        SELECT * FROM ja_fw_device_maintain_plan ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainRecordMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.mapper;
import org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainRecordVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainRecordExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 设备维护记录表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDeviceMaintainRecordMapper extends BaseMapper<FwDeviceMaintainRecordEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceMaintainRecord
     * @return
     */
    List<FwDeviceMaintainRecordVO> selectFwDeviceMaintainRecordPage(IPage page, FwDeviceMaintainRecordVO fwDeviceMaintainRecord);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceMaintainRecordExcel> exportFwDeviceMaintainRecord(@Param("ew") Wrapper<FwDeviceMaintainRecordEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainRecordMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.device.mapper.FwDeviceMaintainRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDeviceMaintainRecordResultMap" type="org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity">
    </resultMap>
    <select id="selectFwDeviceMaintainRecordPage" resultMap="fwDeviceMaintainRecordResultMap">
        select * from ja_fw_device_maintain_record where is_deleted = 0
    </select>
    <select id="exportFwDeviceMaintainRecord" resultType="org.sxkj.fw.device.excel.FwDeviceMaintainRecordExcel">
        SELECT * FROM ja_fw_device_maintain_record ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceScrapMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.mapper;
import org.sxkj.fw.device.entity.FwDeviceScrapEntity;
import org.sxkj.fw.device.vo.FwDeviceScrapVO;
import org.sxkj.fw.device.excel.FwDeviceScrapExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 设备报废记录表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDeviceScrapMapper extends BaseMapper<FwDeviceScrapEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceScrap
     * @return
     */
    List<FwDeviceScrapVO> selectFwDeviceScrapPage(IPage page, FwDeviceScrapVO fwDeviceScrap);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceScrapExcel> exportFwDeviceScrap(@Param("ew") Wrapper<FwDeviceScrapEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceScrapMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.device.mapper.FwDeviceScrapMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDeviceScrapResultMap" type="org.sxkj.fw.device.entity.FwDeviceScrapEntity">
    </resultMap>
    <select id="selectFwDeviceScrapPage" resultMap="fwDeviceScrapResultMap">
        select * from ja_fw_device_scrap where is_deleted = 0
    </select>
    <select id="exportFwDeviceScrap" resultType="org.sxkj.fw.device.excel.FwDeviceScrapExcel">
        SELECT * FROM ja_fw_device_scrap ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceMaintainPlanService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 设备维护计划表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDeviceMaintainPlanService extends BaseService<FwDeviceMaintainPlanEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceMaintainPlan
     * @return
     */
    IPage<FwDeviceMaintainPlanVO> selectFwDeviceMaintainPlanPage(IPage<FwDeviceMaintainPlanVO> page, FwDeviceMaintainPlanVO fwDeviceMaintainPlan);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceMaintainPlanExcel> exportFwDeviceMaintainPlan(Wrapper<FwDeviceMaintainPlanEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceMaintainRecordService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainRecordVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainRecordExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 设备维护记录表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDeviceMaintainRecordService extends BaseService<FwDeviceMaintainRecordEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceMaintainRecord
     * @return
     */
    IPage<FwDeviceMaintainRecordVO> selectFwDeviceMaintainRecordPage(IPage<FwDeviceMaintainRecordVO> page, FwDeviceMaintainRecordVO fwDeviceMaintainRecord);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceMaintainRecordExcel> exportFwDeviceMaintainRecord(Wrapper<FwDeviceMaintainRecordEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceScrapService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.device.entity.FwDeviceScrapEntity;
import org.sxkj.fw.device.vo.FwDeviceScrapVO;
import org.sxkj.fw.device.excel.FwDeviceScrapExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 设备报废记录表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDeviceScrapService extends BaseService<FwDeviceScrapEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDeviceScrap
     * @return
     */
    IPage<FwDeviceScrapVO> selectFwDeviceScrapPage(IPage<FwDeviceScrapVO> page, FwDeviceScrapVO fwDeviceScrap);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDeviceScrapExcel> exportFwDeviceScrap(Wrapper<FwDeviceScrapEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.service.impl;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel;
import org.sxkj.fw.device.mapper.FwDeviceMaintainPlanMapper;
import org.sxkj.fw.device.service.IFwDeviceMaintainPlanService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 设备维护计划表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDeviceMaintainPlanServiceImpl extends BaseServiceImpl<FwDeviceMaintainPlanMapper, FwDeviceMaintainPlanEntity> implements IFwDeviceMaintainPlanService {
    @Override
    public IPage<FwDeviceMaintainPlanVO> selectFwDeviceMaintainPlanPage(IPage<FwDeviceMaintainPlanVO> page, FwDeviceMaintainPlanVO fwDeviceMaintainPlan) {
        return page.setRecords(baseMapper.selectFwDeviceMaintainPlanPage(page, fwDeviceMaintainPlan));
    }
    @Override
    public List<FwDeviceMaintainPlanExcel> exportFwDeviceMaintainPlan(Wrapper<FwDeviceMaintainPlanEntity> queryWrapper) {
        List<FwDeviceMaintainPlanExcel> fwDeviceMaintainPlanList = baseMapper.exportFwDeviceMaintainPlan(queryWrapper);
        //fwDeviceMaintainPlanList.forEach(fwDeviceMaintainPlan -> {
        //    fwDeviceMaintainPlan.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDeviceMaintainPlan.getType()));
        //});
        return fwDeviceMaintainPlanList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainRecordServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.service.impl;
import org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainRecordVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainRecordExcel;
import org.sxkj.fw.device.mapper.FwDeviceMaintainRecordMapper;
import org.sxkj.fw.device.service.IFwDeviceMaintainRecordService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 设备维护记录表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDeviceMaintainRecordServiceImpl extends BaseServiceImpl<FwDeviceMaintainRecordMapper, FwDeviceMaintainRecordEntity> implements IFwDeviceMaintainRecordService {
    @Override
    public IPage<FwDeviceMaintainRecordVO> selectFwDeviceMaintainRecordPage(IPage<FwDeviceMaintainRecordVO> page, FwDeviceMaintainRecordVO fwDeviceMaintainRecord) {
        return page.setRecords(baseMapper.selectFwDeviceMaintainRecordPage(page, fwDeviceMaintainRecord));
    }
    @Override
    public List<FwDeviceMaintainRecordExcel> exportFwDeviceMaintainRecord(Wrapper<FwDeviceMaintainRecordEntity> queryWrapper) {
        List<FwDeviceMaintainRecordExcel> fwDeviceMaintainRecordList = baseMapper.exportFwDeviceMaintainRecord(queryWrapper);
        //fwDeviceMaintainRecordList.forEach(fwDeviceMaintainRecord -> {
        //    fwDeviceMaintainRecord.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDeviceMaintainRecord.getType()));
        //});
        return fwDeviceMaintainRecordList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceScrapServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.service.impl;
import org.sxkj.fw.device.entity.FwDeviceScrapEntity;
import org.sxkj.fw.device.vo.FwDeviceScrapVO;
import org.sxkj.fw.device.excel.FwDeviceScrapExcel;
import org.sxkj.fw.device.mapper.FwDeviceScrapMapper;
import org.sxkj.fw.device.service.IFwDeviceScrapService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 设备报废记录表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDeviceScrapServiceImpl extends BaseServiceImpl<FwDeviceScrapMapper, FwDeviceScrapEntity> implements IFwDeviceScrapService {
    @Override
    public IPage<FwDeviceScrapVO> selectFwDeviceScrapPage(IPage<FwDeviceScrapVO> page, FwDeviceScrapVO fwDeviceScrap) {
        return page.setRecords(baseMapper.selectFwDeviceScrapPage(page, fwDeviceScrap));
    }
    @Override
    public List<FwDeviceScrapExcel> exportFwDeviceScrap(Wrapper<FwDeviceScrapEntity> queryWrapper) {
        List<FwDeviceScrapExcel> fwDeviceScrapList = baseMapper.exportFwDeviceScrap(queryWrapper);
        //fwDeviceScrapList.forEach(fwDeviceScrap -> {
        //    fwDeviceScrap.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDeviceScrap.getType()));
        //});
        return fwDeviceScrapList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceMaintainPlanVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.vo;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备维护计划表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceMaintainPlanVO extends FwDeviceMaintainPlanEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceMaintainRecordVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.vo;
import org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备维护记录表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceMaintainRecordVO extends FwDeviceMaintainRecordEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceScrapVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.vo;
import org.sxkj.fw.device.entity.FwDeviceScrapEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 设备报废记录表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDeviceScrapVO extends FwDeviceScrapEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceMaintainPlanWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO;
import java.util.Objects;
/**
 * 设备维护计划表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDeviceMaintainPlanWrapper extends BaseEntityWrapper<FwDeviceMaintainPlanEntity, FwDeviceMaintainPlanVO>  {
    public static FwDeviceMaintainPlanWrapper build() {
        return new FwDeviceMaintainPlanWrapper();
     }
    @Override
    public FwDeviceMaintainPlanVO entityVO(FwDeviceMaintainPlanEntity fwDeviceMaintainPlan) {
        FwDeviceMaintainPlanVO fwDeviceMaintainPlanVO = Objects.requireNonNull(BeanUtil.copy(fwDeviceMaintainPlan, FwDeviceMaintainPlanVO.class));
        //User createUser = UserCache.getUser(fwDeviceMaintainPlan.getCreateUser());
        //User updateUser = UserCache.getUser(fwDeviceMaintainPlan.getUpdateUser());
        //fwDeviceMaintainPlanVO.setCreateUserName(createUser.getName());
        //fwDeviceMaintainPlanVO.setUpdateUserName(updateUser.getName());
        return fwDeviceMaintainPlanVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceMaintainRecordWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.device.entity.FwDeviceMaintainRecordEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainRecordVO;
import java.util.Objects;
/**
 * 设备维护记录表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDeviceMaintainRecordWrapper extends BaseEntityWrapper<FwDeviceMaintainRecordEntity, FwDeviceMaintainRecordVO>  {
    public static FwDeviceMaintainRecordWrapper build() {
        return new FwDeviceMaintainRecordWrapper();
     }
    @Override
    public FwDeviceMaintainRecordVO entityVO(FwDeviceMaintainRecordEntity fwDeviceMaintainRecord) {
        FwDeviceMaintainRecordVO fwDeviceMaintainRecordVO = Objects.requireNonNull(BeanUtil.copy(fwDeviceMaintainRecord, FwDeviceMaintainRecordVO.class));
        //User createUser = UserCache.getUser(fwDeviceMaintainRecord.getCreateUser());
        //User updateUser = UserCache.getUser(fwDeviceMaintainRecord.getUpdateUser());
        //fwDeviceMaintainRecordVO.setCreateUserName(createUser.getName());
        //fwDeviceMaintainRecordVO.setUpdateUserName(updateUser.getName());
        return fwDeviceMaintainRecordVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceScrapWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.device.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.device.entity.FwDeviceScrapEntity;
import org.sxkj.fw.device.vo.FwDeviceScrapVO;
import java.util.Objects;
/**
 * 设备报废记录表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDeviceScrapWrapper extends BaseEntityWrapper<FwDeviceScrapEntity, FwDeviceScrapVO>  {
    public static FwDeviceScrapWrapper build() {
        return new FwDeviceScrapWrapper();
     }
    @Override
    public FwDeviceScrapVO entityVO(FwDeviceScrapEntity fwDeviceScrap) {
        FwDeviceScrapVO fwDeviceScrapVO = Objects.requireNonNull(BeanUtil.copy(fwDeviceScrap, FwDeviceScrapVO.class));
        //User createUser = UserCache.getUser(fwDeviceScrap.getCreateUser());
        //User updateUser = UserCache.getUser(fwDeviceScrap.getUpdateUser());
        //fwDeviceScrapVO.setCreateUserName(createUser.getName());
        //fwDeviceScrapVO.setUpdateUserName(updateUser.getName());
        return fwDeviceScrapVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneAlarmRecordController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.record.entity.FwDroneAlarmRecordEntity;
import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO;
import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel;
import org.sxkj.fw.record.wrapper.FwDroneAlarmRecordWrapper;
import org.sxkj.fw.record.service.IFwDroneAlarmRecordService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 无人机告警表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("record/fwDroneAlarmRecord")
@Api(value = "无人机告警表", tags = "无人机告警表接口")
public class FwDroneAlarmRecordController extends BladeController {
    private final IFwDroneAlarmRecordService fwDroneAlarmRecordService;
    /**
     * 无人机告警表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDroneAlarmRecord")
    public R<FwDroneAlarmRecordVO> detail(FwDroneAlarmRecordEntity fwDroneAlarmRecord) {
        FwDroneAlarmRecordEntity detail = fwDroneAlarmRecordService.getOne(Condition.getQueryWrapper(fwDroneAlarmRecord));
        return R.data(FwDroneAlarmRecordWrapper.build().entityVO(detail));
    }
    /**
     * 无人机告警表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDroneAlarmRecord")
    public R<IPage<FwDroneAlarmRecordVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDroneAlarmRecord, Query query) {
        IPage<FwDroneAlarmRecordEntity> pages = fwDroneAlarmRecordService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDroneAlarmRecord, FwDroneAlarmRecordEntity.class));
        return R.data(FwDroneAlarmRecordWrapper.build().pageVO(pages));
    }
    /**
     * 无人机告警表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDroneAlarmRecord")
    public R<IPage<FwDroneAlarmRecordVO>> page(FwDroneAlarmRecordVO fwDroneAlarmRecord, Query query) {
        IPage<FwDroneAlarmRecordVO> pages = fwDroneAlarmRecordService.selectFwDroneAlarmRecordPage(Condition.getPage(query), fwDroneAlarmRecord);
        return R.data(pages);
    }
    /**
     * 无人机告警表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDroneAlarmRecord")
    public R save(@Valid @RequestBody FwDroneAlarmRecordEntity fwDroneAlarmRecord) {
        return R.status(fwDroneAlarmRecordService.save(fwDroneAlarmRecord));
    }
    /**
     * 无人机告警表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDroneAlarmRecord")
    public R update(@Valid @RequestBody FwDroneAlarmRecordEntity fwDroneAlarmRecord) {
        return R.status(fwDroneAlarmRecordService.updateById(fwDroneAlarmRecord));
    }
    /**
     * 无人机告警表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDroneAlarmRecord")
    public R submit(@Valid @RequestBody FwDroneAlarmRecordEntity fwDroneAlarmRecord) {
        return R.status(fwDroneAlarmRecordService.saveOrUpdate(fwDroneAlarmRecord));
    }
    /**
     * 无人机告警表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDroneAlarmRecordService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDroneAlarmRecord")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDroneAlarmRecord")
    public void exportFwDroneAlarmRecord(@ApiIgnore @RequestParam Map<String, Object> fwDroneAlarmRecord, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDroneAlarmRecordEntity> queryWrapper = Condition.getQueryWrapper(fwDroneAlarmRecord, FwDroneAlarmRecordEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDroneAlarmRecord::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDroneAlarmRecordEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDroneAlarmRecordExcel> list = fwDroneAlarmRecordService.exportFwDroneAlarmRecord(queryWrapper);
        ExcelUtil.export(response, "无人机告警表数据" + DateUtil.time(), "无人机告警表数据表", list, FwDroneAlarmRecordExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneFlightRecordController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.record.entity.FwDroneFlightRecordEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel;
import org.sxkj.fw.record.wrapper.FwDroneFlightRecordWrapper;
import org.sxkj.fw.record.service.IFwDroneFlightRecordService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 无人机飞行记录表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("record/fwDroneFlightRecord")
@Api(value = "无人机飞行记录表", tags = "无人机飞行记录表接口")
public class FwDroneFlightRecordController extends BladeController {
    private final IFwDroneFlightRecordService fwDroneFlightRecordService;
    /**
     * 无人机飞行记录表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDroneFlightRecord")
    public R<FwDroneFlightRecordVO> detail(FwDroneFlightRecordEntity fwDroneFlightRecord) {
        FwDroneFlightRecordEntity detail = fwDroneFlightRecordService.getOne(Condition.getQueryWrapper(fwDroneFlightRecord));
        return R.data(FwDroneFlightRecordWrapper.build().entityVO(detail));
    }
    /**
     * 无人机飞行记录表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDroneFlightRecord")
    public R<IPage<FwDroneFlightRecordVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDroneFlightRecord, Query query) {
        IPage<FwDroneFlightRecordEntity> pages = fwDroneFlightRecordService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDroneFlightRecord, FwDroneFlightRecordEntity.class));
        return R.data(FwDroneFlightRecordWrapper.build().pageVO(pages));
    }
    /**
     * 无人机飞行记录表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDroneFlightRecord")
    public R<IPage<FwDroneFlightRecordVO>> page(FwDroneFlightRecordVO fwDroneFlightRecord, Query query) {
        IPage<FwDroneFlightRecordVO> pages = fwDroneFlightRecordService.selectFwDroneFlightRecordPage(Condition.getPage(query), fwDroneFlightRecord);
        return R.data(pages);
    }
    /**
     * 无人机飞行记录表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDroneFlightRecord")
    public R save(@Valid @RequestBody FwDroneFlightRecordEntity fwDroneFlightRecord) {
        return R.status(fwDroneFlightRecordService.save(fwDroneFlightRecord));
    }
    /**
     * 无人机飞行记录表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDroneFlightRecord")
    public R update(@Valid @RequestBody FwDroneFlightRecordEntity fwDroneFlightRecord) {
        return R.status(fwDroneFlightRecordService.updateById(fwDroneFlightRecord));
    }
    /**
     * 无人机飞行记录表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDroneFlightRecord")
    public R submit(@Valid @RequestBody FwDroneFlightRecordEntity fwDroneFlightRecord) {
        return R.status(fwDroneFlightRecordService.saveOrUpdate(fwDroneFlightRecord));
    }
    /**
     * 无人机飞行记录表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDroneFlightRecordService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDroneFlightRecord")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDroneFlightRecord")
    public void exportFwDroneFlightRecord(@ApiIgnore @RequestParam Map<String, Object> fwDroneFlightRecord, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDroneFlightRecordEntity> queryWrapper = Condition.getQueryWrapper(fwDroneFlightRecord, FwDroneFlightRecordEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDroneFlightRecord::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDroneFlightRecordEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDroneFlightRecordExcel> list = fwDroneFlightRecordService.exportFwDroneFlightRecord(queryWrapper);
        ExcelUtil.export(response, "无人机飞行记录表数据" + DateUtil.time(), "无人机飞行记录表数据表", list, FwDroneFlightRecordExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/controller/FwDroneFlightRecordDetailController.java
New file
@@ -0,0 +1,151 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
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.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.record.entity.FwDroneFlightRecordDetailEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel;
import org.sxkj.fw.record.wrapper.FwDroneFlightRecordDetailWrapper;
import org.sxkj.fw.record.service.IFwDroneFlightRecordDetailService;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
/**
 * 无人机飞行记录详情表 控制器
 *
 * @author lw
 * @since 2026-01-07
 */
@RestController
@AllArgsConstructor
@RequestMapping("record/fwDroneFlightRecordDetail")
@Api(value = "无人机飞行记录详情表", tags = "无人机飞行记录详情表接口")
public class FwDroneFlightRecordDetailController extends BladeController {
    private final IFwDroneFlightRecordDetailService fwDroneFlightRecordDetailService;
    /**
     * 无人机飞行记录详情表 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入fwDroneFlightRecordDetail")
    public R<FwDroneFlightRecordDetailVO> detail(FwDroneFlightRecordDetailEntity fwDroneFlightRecordDetail) {
        FwDroneFlightRecordDetailEntity detail = fwDroneFlightRecordDetailService.getOne(Condition.getQueryWrapper(fwDroneFlightRecordDetail));
        return R.data(FwDroneFlightRecordDetailWrapper.build().entityVO(detail));
    }
    /**
     * 无人机飞行记录详情表 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入fwDroneFlightRecordDetail")
    public R<IPage<FwDroneFlightRecordDetailVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDroneFlightRecordDetail, Query query) {
        IPage<FwDroneFlightRecordDetailEntity> pages = fwDroneFlightRecordDetailService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDroneFlightRecordDetail, FwDroneFlightRecordDetailEntity.class));
        return R.data(FwDroneFlightRecordDetailWrapper.build().pageVO(pages));
    }
    /**
     * 无人机飞行记录详情表 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入fwDroneFlightRecordDetail")
    public R<IPage<FwDroneFlightRecordDetailVO>> page(FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail, Query query) {
        IPage<FwDroneFlightRecordDetailVO> pages = fwDroneFlightRecordDetailService.selectFwDroneFlightRecordDetailPage(Condition.getPage(query), fwDroneFlightRecordDetail);
        return R.data(pages);
    }
    /**
     * 无人机飞行记录详情表 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入fwDroneFlightRecordDetail")
    public R save(@Valid @RequestBody FwDroneFlightRecordDetailEntity fwDroneFlightRecordDetail) {
        return R.status(fwDroneFlightRecordDetailService.save(fwDroneFlightRecordDetail));
    }
    /**
     * 无人机飞行记录详情表 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入fwDroneFlightRecordDetail")
    public R update(@Valid @RequestBody FwDroneFlightRecordDetailEntity fwDroneFlightRecordDetail) {
        return R.status(fwDroneFlightRecordDetailService.updateById(fwDroneFlightRecordDetail));
    }
    /**
     * 无人机飞行记录详情表 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入fwDroneFlightRecordDetail")
    public R submit(@Valid @RequestBody FwDroneFlightRecordDetailEntity fwDroneFlightRecordDetail) {
        return R.status(fwDroneFlightRecordDetailService.saveOrUpdate(fwDroneFlightRecordDetail));
    }
    /**
     * 无人机飞行记录详情表 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(fwDroneFlightRecordDetailService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 导出数据
     */
    @GetMapping("/export-fwDroneFlightRecordDetail")
    @ApiOperationSupport(order = 9)
    @ApiOperation(value = "导出数据", notes = "传入fwDroneFlightRecordDetail")
    public void exportFwDroneFlightRecordDetail(@ApiIgnore @RequestParam Map<String, Object> fwDroneFlightRecordDetail, BladeUser bladeUser, HttpServletResponse response) {
        QueryWrapper<FwDroneFlightRecordDetailEntity> queryWrapper = Condition.getQueryWrapper(fwDroneFlightRecordDetail, FwDroneFlightRecordDetailEntity.class);
        //if (!AuthUtil.isAdministrator()) {
        //    queryWrapper.lambda().eq(FwDroneFlightRecordDetail::getTenantId, bladeUser.getTenantId());
        //}
        queryWrapper.lambda().eq(FwDroneFlightRecordDetailEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
        List<FwDroneFlightRecordDetailExcel> list = fwDroneFlightRecordDetailService.exportFwDroneFlightRecordDetail(queryWrapper);
        ExcelUtil.export(response, "无人机飞行记录详情表数据" + DateUtil.time(), "无人机飞行记录详情表数据表", list, FwDroneFlightRecordDetailExcel.class);
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneAlarmRecordDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
/**
 * 无人机告警表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDroneAlarmRecordDTO extends FwDroneAlarmRecordEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneFlightRecordDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.dto;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 无人机飞行记录表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDroneFlightRecordDTO extends FwDroneFlightRecordEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/dto/FwDroneFlightRecordDetailDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.dto;
import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 无人机飞行记录详情表 数据传输对象实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDroneFlightRecordDetailDTO extends FwDroneFlightRecordDetailEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneAlarmRecordEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 无人机告警表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_drone_alarm_record")
@ApiModel(value = "FwDroneAlarmRecord对象", description = "无人机告警表")
@EqualsAndHashCode(callSuper = true)
public class FwDroneAlarmRecordEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneFlightRecordDetailEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 无人机飞行记录详情表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_drone_flight_record_detail")
@ApiModel(value = "FwDroneFlightRecordDetail对象", description = "无人机飞行记录详情表")
@EqualsAndHashCode(callSuper = true)
public class FwDroneFlightRecordDetailEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/entity/FwDroneFlightRecordEntity.java
New file
@@ -0,0 +1,39 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 无人机飞行记录表 实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@TableName("ja_fw_drone_flight_record")
@ApiModel(value = "FwDroneFlightRecord对象", description = "无人机飞行记录表")
@EqualsAndHashCode(callSuper = true)
public class FwDroneFlightRecordEntity extends TenantEntity {
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/excel/FwDroneAlarmRecordExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 无人机告警表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDroneAlarmRecordExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/excel/FwDroneFlightRecordDetailExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 无人机飞行记录详情表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDroneFlightRecordDetailExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/excel/FwDroneFlightRecordExcel.java
New file
@@ -0,0 +1,44 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.excel;
import lombok.Data;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
/**
 * 无人机飞行记录表 Excel实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class FwDroneFlightRecordExcel implements Serializable {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneAlarmRecordMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.mapper;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO;
import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 无人机告警表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDroneAlarmRecordMapper extends BaseMapper<FwDroneAlarmRecordEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDroneAlarmRecord
     * @return
     */
    List<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage page, FwDroneAlarmRecordVO fwDroneAlarmRecord);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDroneAlarmRecordExcel> exportFwDroneAlarmRecord(@Param("ew") Wrapper<FwDroneAlarmRecordEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneAlarmRecordMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.record.mapper.FwDroneAlarmRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDroneAlarmRecordResultMap" type="org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity">
    </resultMap>
    <select id="selectFwDroneAlarmRecordPage" resultMap="fwDroneAlarmRecordResultMap">
        select * from ja_fw_drone_alarm_record where is_deleted = 0
    </select>
    <select id="exportFwDroneAlarmRecord" resultType="org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel">
        SELECT * FROM ja_fw_drone_alarm_record ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordDetailMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.mapper;
import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 无人机飞行记录详情表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDroneFlightRecordDetailMapper extends BaseMapper<FwDroneFlightRecordDetailEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDroneFlightRecordDetail
     * @return
     */
    List<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage page, FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDroneFlightRecordDetailExcel> exportFwDroneFlightRecordDetail(@Param("ew") Wrapper<FwDroneFlightRecordDetailEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordDetailMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.record.mapper.FwDroneFlightRecordDetailMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDroneFlightRecordDetailResultMap" type="org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity">
    </resultMap>
    <select id="selectFwDroneFlightRecordDetailPage" resultMap="fwDroneFlightRecordDetailResultMap">
        select * from ja_fw_drone_flight_record_detail where is_deleted = 0
    </select>
    <select id="exportFwDroneFlightRecordDetail" resultType="org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel">
        SELECT * FROM ja_fw_drone_flight_record_detail ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordMapper.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.mapper;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 无人机飞行记录表 Mapper 接口
 *
 * @author lw
 * @since 2026-01-07
 */
public interface FwDroneFlightRecordMapper extends BaseMapper<FwDroneFlightRecordEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDroneFlightRecord
     * @return
     */
    List<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage page, FwDroneFlightRecordVO fwDroneFlightRecord);
    /**
     * 获取导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDroneFlightRecordExcel> exportFwDroneFlightRecord(@Param("ew") Wrapper<FwDroneFlightRecordEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/mapper/FwDroneFlightRecordMapper.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.sxkj.fw.record.mapper.FwDroneFlightRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="fwDroneFlightRecordResultMap" type="org.sxkj.fw.record.entity.FwDroneFlightRecordEntity">
    </resultMap>
    <select id="selectFwDroneFlightRecordPage" resultMap="fwDroneFlightRecordResultMap">
        select * from ja_fw_drone_flight_record where is_deleted = 0
    </select>
    <select id="exportFwDroneFlightRecord" resultType="org.sxkj.fw.record.excel.FwDroneFlightRecordExcel">
        SELECT * FROM ja_fw_drone_flight_record ${ew.customSqlSegment}
    </select>
</mapper>
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneAlarmRecordService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO;
import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 无人机告警表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDroneAlarmRecordService extends BaseService<FwDroneAlarmRecordEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDroneAlarmRecord
     * @return
     */
    IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordVO fwDroneAlarmRecord);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDroneAlarmRecordExcel> exportFwDroneAlarmRecord(Wrapper<FwDroneAlarmRecordEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneFlightRecordDetailService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 无人机飞行记录详情表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDroneFlightRecordDetailService extends BaseService<FwDroneFlightRecordDetailEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDroneFlightRecordDetail
     * @return
     */
    IPage<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage<FwDroneFlightRecordDetailVO> page, FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDroneFlightRecordDetailExcel> exportFwDroneFlightRecordDetail(Wrapper<FwDroneFlightRecordDetailEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/IFwDroneFlightRecordService.java
New file
@@ -0,0 +1,52 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
/**
 * 无人机飞行记录表 服务类
 *
 * @author lw
 * @since 2026-01-07
 */
public interface IFwDroneFlightRecordService extends BaseService<FwDroneFlightRecordEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param fwDroneFlightRecord
     * @return
     */
    IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordVO fwDroneFlightRecord);
    /**
     * 导出数据
     *
     * @param queryWrapper
     * @return
     */
    List<FwDroneFlightRecordExcel> exportFwDroneFlightRecord(Wrapper<FwDroneFlightRecordEntity> queryWrapper);
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneAlarmRecordServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.service.impl;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO;
import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel;
import org.sxkj.fw.record.mapper.FwDroneAlarmRecordMapper;
import org.sxkj.fw.record.service.IFwDroneAlarmRecordService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 无人机告警表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDroneAlarmRecordServiceImpl extends BaseServiceImpl<FwDroneAlarmRecordMapper, FwDroneAlarmRecordEntity> implements IFwDroneAlarmRecordService {
    @Override
    public IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordVO fwDroneAlarmRecord) {
        return page.setRecords(baseMapper.selectFwDroneAlarmRecordPage(page, fwDroneAlarmRecord));
    }
    @Override
    public List<FwDroneAlarmRecordExcel> exportFwDroneAlarmRecord(Wrapper<FwDroneAlarmRecordEntity> queryWrapper) {
        List<FwDroneAlarmRecordExcel> fwDroneAlarmRecordList = baseMapper.exportFwDroneAlarmRecord(queryWrapper);
        //fwDroneAlarmRecordList.forEach(fwDroneAlarmRecord -> {
        //    fwDroneAlarmRecord.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDroneAlarmRecord.getType()));
        //});
        return fwDroneAlarmRecordList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordDetailServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.service.impl;
import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordDetailExcel;
import org.sxkj.fw.record.mapper.FwDroneFlightRecordDetailMapper;
import org.sxkj.fw.record.service.IFwDroneFlightRecordDetailService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 无人机飞行记录详情表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDroneFlightRecordDetailServiceImpl extends BaseServiceImpl<FwDroneFlightRecordDetailMapper, FwDroneFlightRecordDetailEntity> implements IFwDroneFlightRecordDetailService {
    @Override
    public IPage<FwDroneFlightRecordDetailVO> selectFwDroneFlightRecordDetailPage(IPage<FwDroneFlightRecordDetailVO> page, FwDroneFlightRecordDetailVO fwDroneFlightRecordDetail) {
        return page.setRecords(baseMapper.selectFwDroneFlightRecordDetailPage(page, fwDroneFlightRecordDetail));
    }
    @Override
    public List<FwDroneFlightRecordDetailExcel> exportFwDroneFlightRecordDetail(Wrapper<FwDroneFlightRecordDetailEntity> queryWrapper) {
        List<FwDroneFlightRecordDetailExcel> fwDroneFlightRecordDetailList = baseMapper.exportFwDroneFlightRecordDetail(queryWrapper);
        //fwDroneFlightRecordDetailList.forEach(fwDroneFlightRecordDetail -> {
        //    fwDroneFlightRecordDetail.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDroneFlightRecordDetail.getType()));
        //});
        return fwDroneFlightRecordDetailList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java
New file
@@ -0,0 +1,54 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.service.impl;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel;
import org.sxkj.fw.record.mapper.FwDroneFlightRecordMapper;
import org.sxkj.fw.record.service.IFwDroneFlightRecordService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
 * 无人机飞行记录表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 */
@Service
public class FwDroneFlightRecordServiceImpl extends BaseServiceImpl<FwDroneFlightRecordMapper, FwDroneFlightRecordEntity> implements IFwDroneFlightRecordService {
    @Override
    public IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordVO fwDroneFlightRecord) {
        return page.setRecords(baseMapper.selectFwDroneFlightRecordPage(page, fwDroneFlightRecord));
    }
    @Override
    public List<FwDroneFlightRecordExcel> exportFwDroneFlightRecord(Wrapper<FwDroneFlightRecordEntity> queryWrapper) {
        List<FwDroneFlightRecordExcel> fwDroneFlightRecordList = baseMapper.exportFwDroneFlightRecord(queryWrapper);
        //fwDroneFlightRecordList.forEach(fwDroneFlightRecord -> {
        //    fwDroneFlightRecord.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDroneFlightRecord.getType()));
        //});
        return fwDroneFlightRecordList;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.vo;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 无人机告警表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDroneAlarmRecordVO extends FwDroneAlarmRecordEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneFlightRecordDetailVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.vo;
import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 无人机飞行记录详情表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDroneFlightRecordDetailVO extends FwDroneFlightRecordDetailEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneFlightRecordVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.vo;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 无人机飞行记录表 视图实体类
 *
 * @author lw
 * @since 2026-01-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FwDroneFlightRecordVO extends FwDroneFlightRecordEntity {
    private static final long serialVersionUID = 1L;
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/wrapper/FwDroneAlarmRecordWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO;
import java.util.Objects;
/**
 * 无人机告警表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDroneAlarmRecordWrapper extends BaseEntityWrapper<FwDroneAlarmRecordEntity, FwDroneAlarmRecordVO>  {
    public static FwDroneAlarmRecordWrapper build() {
        return new FwDroneAlarmRecordWrapper();
     }
    @Override
    public FwDroneAlarmRecordVO entityVO(FwDroneAlarmRecordEntity fwDroneAlarmRecord) {
        FwDroneAlarmRecordVO fwDroneAlarmRecordVO = Objects.requireNonNull(BeanUtil.copy(fwDroneAlarmRecord, FwDroneAlarmRecordVO.class));
        //User createUser = UserCache.getUser(fwDroneAlarmRecord.getCreateUser());
        //User updateUser = UserCache.getUser(fwDroneAlarmRecord.getUpdateUser());
        //fwDroneAlarmRecordVO.setCreateUserName(createUser.getName());
        //fwDroneAlarmRecordVO.setUpdateUserName(updateUser.getName());
        return fwDroneAlarmRecordVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/wrapper/FwDroneFlightRecordDetailWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.record.entity.FwDroneFlightRecordDetailEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordDetailVO;
import java.util.Objects;
/**
 * 无人机飞行记录详情表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDroneFlightRecordDetailWrapper extends BaseEntityWrapper<FwDroneFlightRecordDetailEntity, FwDroneFlightRecordDetailVO>  {
    public static FwDroneFlightRecordDetailWrapper build() {
        return new FwDroneFlightRecordDetailWrapper();
     }
    @Override
    public FwDroneFlightRecordDetailVO entityVO(FwDroneFlightRecordDetailEntity fwDroneFlightRecordDetail) {
        FwDroneFlightRecordDetailVO fwDroneFlightRecordDetailVO = Objects.requireNonNull(BeanUtil.copy(fwDroneFlightRecordDetail, FwDroneFlightRecordDetailVO.class));
        //User createUser = UserCache.getUser(fwDroneFlightRecordDetail.getCreateUser());
        //User updateUser = UserCache.getUser(fwDroneFlightRecordDetail.getUpdateUser());
        //fwDroneFlightRecordDetailVO.setCreateUserName(createUser.getName());
        //fwDroneFlightRecordDetailVO.setUpdateUserName(updateUser.getName());
        return fwDroneFlightRecordDetailVO;
    }
}
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/wrapper/FwDroneFlightRecordWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.sxkj.fw.record.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
import org.sxkj.fw.record.vo.FwDroneFlightRecordVO;
import java.util.Objects;
/**
 * 无人机飞行记录表 包装类,返回视图层所需的字段
 *
 * @author lw
 * @since 2026-01-07
 */
public class FwDroneFlightRecordWrapper extends BaseEntityWrapper<FwDroneFlightRecordEntity, FwDroneFlightRecordVO>  {
    public static FwDroneFlightRecordWrapper build() {
        return new FwDroneFlightRecordWrapper();
     }
    @Override
    public FwDroneFlightRecordVO entityVO(FwDroneFlightRecordEntity fwDroneFlightRecord) {
        FwDroneFlightRecordVO fwDroneFlightRecordVO = Objects.requireNonNull(BeanUtil.copy(fwDroneFlightRecord, FwDroneFlightRecordVO.class));
        //User createUser = UserCache.getUser(fwDroneFlightRecord.getCreateUser());
        //User updateUser = UserCache.getUser(fwDroneFlightRecord.getUpdateUser());
        //fwDroneFlightRecordVO.setCreateUserName(createUser.getName());
        //fwDroneFlightRecordVO.setUpdateUserName(updateUser.getName());
        return fwDroneFlightRecordVO;
    }
}