drone-service/drone-fw/pom.xml
@@ -30,6 +30,10 @@ <groupId>org.springblade</groupId> <artifactId>blade-starter-swagger</artifactId> </dependency> <dependency> <groupId>org.springblade</groupId> <artifactId>drone-system-api</artifactId> </dependency> </dependencies> <build> drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceController.java
@@ -33,7 +33,7 @@ import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.Func; import org.springframework.web.bind.annotation.*; import org.sxkj.fw.device.dto.FwDeviceAndTrackDTO; import org.sxkj.fw.device.dto.FwDeviceDTO; import org.sxkj.fw.device.entity.FwDeviceEntity; import org.sxkj.fw.device.excel.FwDeviceExcel; import org.sxkj.fw.device.service.IFwDeviceService; @@ -49,7 +49,7 @@ /** * 设备表 控制器 * * @author Aix * @author aix * @since 2026-01-08 */ @RestController @@ -66,8 +66,13 @@ @GetMapping("/detail") @ApiOperationSupport(order = 1) @ApiOperation(value = "详情", notes = "传入fwDevice") public R<FwDeviceVO> detail(FwDeviceEntity fwDevice) { FwDeviceEntity detail = fwDeviceService.getOne(Condition.getQueryWrapper(fwDevice)); public R<FwDeviceVO> detail(FwDeviceDTO fwDevice) { FwDeviceEntity detail = fwDeviceService.getOne(Condition.getQueryWrapper(FwDeviceWrapper.build().entityDTO(fwDevice))); if (detail == null) { return R.fail("该设备不存在"); } return R.data(FwDeviceWrapper.build().entityVO(detail)); } @@ -75,29 +80,28 @@ * 设备表 自定义分页 */ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入fwDevice") public R<IPage<FwDeviceVO>> page(FwDeviceVO fwDevice, Query query) { IPage<FwDeviceVO> pages = fwDeviceService.selectFwDevicePage(Condition.getPage(query), fwDevice); return R.data(pages); public R<IPage<FwDeviceVO>> page(FwDeviceDTO fwDevice, Query query) { IPage<FwDeviceEntity> pages = fwDeviceService.selectFwDevicePage(Condition.getPage(query), fwDevice); return R.data(FwDeviceWrapper.build().pageVO(pages)); } /** * 设备表 新增或修改 */ @PostMapping("/submit") @ApiOperationSupport(order = 6) @ApiOperationSupport(order = 3) @ApiOperation(value = "新增或修改", notes = "传入fwDevice") public R submit(@Valid @RequestBody FwDeviceAndTrackDTO dto) { return R.status(fwDeviceService.saveFwDevice(dto)); public R submit(@Valid @RequestBody FwDeviceDTO fwDevice) { return R.status(fwDeviceService.saveOrUpdate(FwDeviceWrapper.build().entityDTO(fwDevice))); } /** * 设备表 删除 */ @PostMapping("/remove") @ApiOperationSupport(order = 7) @ApiOperationSupport(order = 4) @ApiOperation(value = "逻辑删除", notes = "传入ids") public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { return R.status(fwDeviceService.deleteLogic(Func.toLongList(ids))); @@ -108,8 +112,9 @@ * 导出数据 */ @GetMapping("/export-fwDevice") @ApiOperationSupport(order = 9) @ApiOperationSupport(order = 5) @ApiOperation(value = "导出数据", notes = "传入fwDevice") @ApiIgnore public void exportFwDevice(@ApiIgnore @RequestParam Map<String, Object> fwDevice, BladeUser bladeUser, HttpServletResponse response) { QueryWrapper<FwDeviceEntity> queryWrapper = Condition.getQueryWrapper(fwDevice, FwDeviceEntity.class); //if (!AuthUtil.isAdministrator()) { drone-service/drone-fw/src/main/java/org/sxkj/fw/device/controller/FwDeviceTrackController.java
@@ -16,39 +16,40 @@ */ package org.sxkj.fw.device.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; 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.boot.ctrl.BladeController; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.secure.BladeUser; import org.springblade.core.tool.api.R; import org.springblade.core.tool.constant.BladeConstant; import org.springblade.core.tool.utils.DateUtil; 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.dto.FwDeviceTrackDTO; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.vo.FwDeviceTrackVO; import org.sxkj.fw.device.excel.FwDeviceTrackExcel; import org.sxkj.fw.device.wrapper.FwDeviceTrackWrapper; import org.sxkj.fw.device.service.IFwDeviceTrackService; 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 org.sxkj.fw.device.vo.FwDeviceTrackVO; import org.sxkj.fw.device.wrapper.FwDeviceTrackWrapper; import springfox.documentation.annotations.ApiIgnore; import java.util.Map; import java.util.List; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.util.List; import java.util.Map; /** * 设备跟踪流转表 控制器 * * @author Aix * @author aix * @since 2026-01-08 */ @RestController @@ -65,50 +66,25 @@ @GetMapping("/detail") @ApiOperationSupport(order = 1) @ApiOperation(value = "详情", notes = "传入fwDeviceTrack") public R<FwDeviceTrackVO> detail(FwDeviceTrackEntity fwDeviceTrack) { FwDeviceTrackEntity detail = fwDeviceTrackService.getOne(Condition.getQueryWrapper(fwDeviceTrack)); public R<FwDeviceTrackVO> detail(FwDeviceTrackDTO fwDeviceTrack) { FwDeviceTrackEntity detail = fwDeviceTrackService.getOne(Condition.getQueryWrapper(FwDeviceTrackWrapper.build().entityDTO(fwDeviceTrack))); if (detail == null) { return R.fail("该记录不存在"); } return R.data(FwDeviceTrackWrapper.build().entityVO(detail)); } /** * 设备跟踪流转表 分页 */ @GetMapping("/list") @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入fwDeviceTrack") public R<IPage<FwDeviceTrackVO>> list(@ApiIgnore @RequestParam Map<String, Object> fwDeviceTrack, Query query) { IPage<FwDeviceTrackEntity> pages = fwDeviceTrackService.page(Condition.getPage(query), Condition.getQueryWrapper(fwDeviceTrack, FwDeviceTrackEntity.class)); return R.data(FwDeviceTrackWrapper.build().pageVO(pages)); } /** * 设备跟踪流转表 自定义分页 */ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入fwDeviceTrack") public R<IPage<FwDeviceTrackVO>> page(FwDeviceTrackVO fwDeviceTrack, Query query) { IPage<FwDeviceTrackVO> pages = fwDeviceTrackService.selectFwDeviceTrackPage(Condition.getPage(query), fwDeviceTrack); return R.data(pages); } /** * 设备跟踪流转表 新增 */ @PostMapping("/save") @ApiOperationSupport(order = 4) @ApiOperation(value = "新增", notes = "传入fwDeviceTrack") public R save(@Valid @RequestBody FwDeviceTrackEntity fwDeviceTrack) { return R.status(fwDeviceTrackService.save(fwDeviceTrack)); } /** * 设备跟踪流转表 修改 */ @PostMapping("/update") @ApiOperationSupport(order = 5) @ApiOperation(value = "修改", notes = "传入fwDeviceTrack") public R update(@Valid @RequestBody FwDeviceTrackEntity fwDeviceTrack) { return R.status(fwDeviceTrackService.updateById(fwDeviceTrack)); public R<IPage<FwDeviceTrackVO>> page(FwDeviceTrackDTO fwDeviceTrack, Query query) { IPage<FwDeviceTrackEntity> pages = fwDeviceTrackService.selectFwDeviceTrackPage(Condition.getPage(query), fwDeviceTrack); return R.data(FwDeviceTrackWrapper.build().pageVO(pages)); } /** @@ -117,8 +93,8 @@ @PostMapping("/submit") @ApiOperationSupport(order = 6) @ApiOperation(value = "新增或修改", notes = "传入fwDeviceTrack") public R submit(@Valid @RequestBody FwDeviceTrackEntity fwDeviceTrack) { return R.status(fwDeviceTrackService.saveOrUpdate(fwDeviceTrack)); public R submit(@Valid @RequestBody FwDeviceTrackDTO fwDeviceTrack) { return R.status(fwDeviceTrackService.saveOrUpdate(FwDeviceTrackWrapper.build().entityDTO(fwDeviceTrack))); } /** @@ -138,6 +114,7 @@ @GetMapping("/export-fwDeviceTrack") @ApiOperationSupport(order = 9) @ApiOperation(value = "导出数据", notes = "传入fwDeviceTrack") @ApiIgnore public void exportFwDeviceTrack(@ApiIgnore @RequestParam Map<String, Object> fwDeviceTrack, BladeUser bladeUser, HttpServletResponse response) { QueryWrapper<FwDeviceTrackEntity> queryWrapper = Condition.getQueryWrapper(fwDeviceTrack, FwDeviceTrackEntity.class); //if (!AuthUtil.isAdministrator()) { drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceAndTrackDTO.java
File was deleted drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceDTO.java
@@ -17,20 +17,23 @@ package org.sxkj.fw.device.dto; import io.swagger.annotations.ApiModelProperty; import org.sxkj.fw.device.entity.FwDeviceEntity; import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serializable; /** * 设备表 数据传输对象实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data public class FwDeviceDTO { public class FwDeviceDTO implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "主键") private Long id; /** * 设备名称 @@ -68,9 +71,24 @@ @ApiModelProperty(value = "来源") private String source; /** * 备注 * 用途 */ @ApiModelProperty(value = "备注") private String remark; @ApiModelProperty(value = "用途") private String purpose; /** * 所属部门 */ @ApiModelProperty(value = "所属部门") private Long belongDept; /** * 负责人 */ @ApiModelProperty(value = "负责人") private String charger; /** * 联系电话 */ @ApiModelProperty(value = "联系电话") private String contactPhone; } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/dto/FwDeviceTrackDTO.java
@@ -21,25 +21,33 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serializable; import java.util.Date; /** * 设备跟踪流转表 数据传输对象实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data public class FwDeviceTrackDTO { public class FwDeviceTrackDTO implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "主键") private Long id; /** * 设备ID */ @ApiModelProperty(value = "设备ID") private Long deviceId; /** * 出库时间 */ @ApiModelProperty(value = "出库时间") private Date outTime; /** * 出库去向 */ @@ -60,10 +68,5 @@ */ @ApiModelProperty(value = "联系电话") private String contactPhone; /** * 部门名称 */ @ApiModelProperty(value = "部门名称") private String deptName; } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceEntity.java
@@ -17,18 +17,18 @@ 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 java.math.BigDecimal; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.mp.base.BaseEntity; import org.springblade.core.tenant.mp.TenantEntity; import java.math.BigDecimal; /** * 设备表 实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data @@ -73,6 +73,26 @@ @ApiModelProperty(value = "来源") private String source; /** * 用途 */ @ApiModelProperty(value = "用途") private String purpose; /** * 所属部门 */ @ApiModelProperty(value = "所属部门") private Long belongDept; /** * 负责人 */ @ApiModelProperty(value = "负责人") private String charger; /** * 联系电话 */ @ApiModelProperty(value = "联系电话") private String contactPhone; /** * 备注 */ @ApiModelProperty(value = "备注") drone-service/drone-fw/src/main/java/org/sxkj/fw/device/entity/FwDeviceTrackEntity.java
@@ -17,18 +17,18 @@ 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 java.util.Date; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.mp.base.BaseEntity; import org.springblade.core.tenant.mp.TenantEntity; import java.util.Date; /** * 设备跟踪流转表 实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data @@ -67,11 +67,6 @@ */ @ApiModelProperty(value = "联系电话") private String contactPhone; /** * 部门名称 */ @ApiModelProperty(value = "部门名称") private String deptName; /** * 区域编码 */ drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceExcel.java
@@ -17,20 +17,20 @@ package org.sxkj.fw.device.excel; import lombok.Data; import java.math.BigDecimal; 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 lombok.Data; import java.io.Serializable; import java.math.BigDecimal; /** * 设备表 Excel实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data @@ -84,6 +84,30 @@ @ExcelProperty("来源") private String source; /** * 用途 */ @ColumnWidth(20) @ExcelProperty("用途") private String purpose; /** * 所属部门 */ @ColumnWidth(20) @ExcelProperty("所属部门") private Long belongDept; /** * 负责人 */ @ColumnWidth(20) @ExcelProperty("负责人") private String charger; /** * 联系电话 */ @ColumnWidth(20) @ExcelProperty("联系电话") private String contactPhone; /** * 备注 */ @ColumnWidth(20) drone-service/drone-fw/src/main/java/org/sxkj/fw/device/excel/FwDeviceTrackExcel.java
@@ -30,7 +30,7 @@ /** * 设备跟踪流转表 Excel实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data @@ -77,12 +77,6 @@ @ColumnWidth(20) @ExcelProperty("联系电话") private String contactPhone; /** * 部门名称 */ @ColumnWidth(20) @ExcelProperty("部门名称") private String deptName; /** * 区域编码 */ drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.device.mapper; import org.sxkj.fw.device.dto.FwDeviceDTO; import org.sxkj.fw.device.entity.FwDeviceEntity; import org.sxkj.fw.device.vo.FwDeviceVO; import org.sxkj.fw.device.excel.FwDeviceExcel; @@ -28,7 +29,7 @@ /** * 设备表 Mapper 接口 * * @author Aix * @author aix * @since 2026-01-08 */ public interface FwDeviceMapper extends BaseMapper<FwDeviceEntity> { @@ -40,7 +41,7 @@ * @param fwDevice * @return */ List<FwDeviceVO> selectFwDevicePage(IPage page, FwDeviceVO fwDevice); List<FwDeviceEntity> selectFwDevicePage(IPage page, FwDeviceDTO fwDevice); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml
@@ -12,6 +12,10 @@ <result column="device_specification" property="deviceSpecification"/> <result column="manufacturer" property="manufacturer"/> <result column="source" property="source"/> <result column="purpose" property="purpose"/> <result column="belong_dept" property="belongDept"/> <result column="charger" property="charger"/> <result column="contact_phone" property="contactPhone"/> <result column="remark" property="remark"/> <result column="battery_pct" property="batteryPct"/> <result column="azimuth" property="azimuth"/> @@ -26,7 +30,7 @@ <result column="update_user" property="updateUser"/> <result column="update_time" property="updateTime"/> <result column="status" property="status"/> <result column="is_deleted" property="isDeleted"/> <!-- <result column="is_deleted" property="isDeleted"/>--> </resultMap> @@ -38,7 +42,7 @@ and id = #{param2.id} </if> <if test="param2.deviceName != null and param2.deviceName != ''"> and device_name = #{param2.deviceName} and device_name like concat('%',#{param2.deviceName},'%') </if> <if test="param2.deviceType != null and param2.deviceType != ''"> and device_type = #{param2.deviceType} @@ -55,29 +59,8 @@ <if test="param2.source != null and param2.source != ''"> and source = #{param2.source} </if> <if test="param2.remark != null and param2.remark != ''"> and remark = #{param2.remark} </if> <if test="param2.createUser != null and param2.createUser != ''"> and create_user = #{param2.createUser} </if> <if test="param2.createDept != null and param2.createDept != ''"> and create_dept = #{param2.createDept} </if> <if test="param2.createTime != null and param2.createTime != ''"> and create_time = #{param2.createTime} </if> <if test="param2.updateUser != null and param2.updateUser != ''"> and update_user = #{param2.updateUser} </if> <if test="param2.updateTime != null and param2.updateTime != ''"> and update_time = #{param2.updateTime} </if> <if test="param2.status != null and param2.status != ''"> and status = #{param2.status} </if> <if test="param2.isDeleted != null and param2.isDeleted != ''"> and is_deleted = #{param2.isDeleted} <if test="param2.belongDept != null and param2.belongDept != ''"> and belong_dept = #{param2.belongDept} </if> </where> </select> drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceTrackMapper.java
@@ -16,19 +16,20 @@ */ package org.sxkj.fw.device.mapper; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.vo.FwDeviceTrackVO; import org.sxkj.fw.device.excel.FwDeviceTrackExcel; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import org.sxkj.fw.device.dto.FwDeviceTrackDTO; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.excel.FwDeviceTrackExcel; import java.util.List; /** * 设备跟踪流转表 Mapper 接口 * * @author Aix * @author aix * @since 2026-01-08 */ public interface FwDeviceTrackMapper extends BaseMapper<FwDeviceTrackEntity> { @@ -40,7 +41,7 @@ * @param fwDeviceTrack * @return */ List<FwDeviceTrackVO> selectFwDeviceTrackPage(IPage page, FwDeviceTrackVO fwDeviceTrack); List<FwDeviceTrackEntity> selectFwDeviceTrackPage(IPage page, FwDeviceTrackDTO fwDeviceTrack); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceTrackMapper.xml
@@ -11,7 +11,6 @@ <result column="purpose" property="purpose"/> <result column="charger" property="charger"/> <result column="contact_phone" property="contactPhone"/> <result column="dept_name" property="deptName"/> <result column="area_code" property="areaCode"/> <result column="create_user" property="createUser"/> <result column="create_dept" property="createDept"/> @@ -24,7 +23,16 @@ <select id="selectFwDeviceTrackPage" resultMap="fwDeviceTrackResultMap"> select * from ja_fw_device_track where is_deleted = 0 select * from ja_fw_device_track <where> is_deleted = 0 <if test="param2.id != null and param2.id != ''"> and id = #{param2.id} </if> <if test="param2.deviceId != null and param2.deviceId != ''"> and device_id = #{param2.deviceId} </if> </where> </select> drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceService.java
@@ -17,7 +17,7 @@ package org.sxkj.fw.device.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.sxkj.fw.device.dto.FwDeviceAndTrackDTO; import org.sxkj.fw.device.dto.FwDeviceDTO; import org.sxkj.fw.device.entity.FwDeviceEntity; import org.sxkj.fw.device.vo.FwDeviceVO; import org.sxkj.fw.device.excel.FwDeviceExcel; @@ -28,7 +28,7 @@ /** * 设备表 服务类 * * @author Aix * @author aix * @since 2026-01-08 */ public interface IFwDeviceService extends BaseService<FwDeviceEntity> { @@ -39,7 +39,7 @@ * @param fwDevice * @return */ IPage<FwDeviceVO> selectFwDevicePage(IPage<FwDeviceVO> page, FwDeviceVO fwDevice); IPage<FwDeviceEntity> selectFwDevicePage(IPage<FwDeviceEntity> page, FwDeviceDTO fwDevice); /** @@ -49,12 +49,5 @@ * @return */ List<FwDeviceExcel> exportFwDevice(Wrapper<FwDeviceEntity> queryWrapper); /** * 添加或更新 * @param dto * @return */ Boolean saveFwDevice(FwDeviceAndTrackDTO dto); } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/IFwDeviceTrackService.java
@@ -17,6 +17,7 @@ package org.sxkj.fw.device.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.sxkj.fw.device.dto.FwDeviceTrackDTO; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.vo.FwDeviceTrackVO; import org.sxkj.fw.device.excel.FwDeviceTrackExcel; @@ -27,7 +28,7 @@ /** * 设备跟踪流转表 服务类 * * @author Aix * @author aix * @since 2026-01-08 */ public interface IFwDeviceTrackService extends BaseService<FwDeviceTrackEntity> { @@ -38,7 +39,7 @@ * @param fwDeviceTrack * @return */ IPage<FwDeviceTrackVO> selectFwDeviceTrackPage(IPage<FwDeviceTrackVO> page, FwDeviceTrackVO fwDeviceTrack); IPage<FwDeviceTrackEntity> selectFwDeviceTrackPage(IPage<FwDeviceTrackEntity> page, FwDeviceTrackDTO fwDeviceTrack); /** drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceServiceImpl.java
@@ -16,11 +16,8 @@ */ package org.sxkj.fw.device.service.impl; import lombok.AllArgsConstructor; import org.sxkj.fw.device.dto.FwDeviceAndTrackDTO; import org.sxkj.fw.device.dto.FwDeviceDTO; import org.sxkj.fw.device.entity.FwDeviceEntity; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.service.IFwDeviceTrackService; import org.sxkj.fw.device.vo.FwDeviceVO; import org.sxkj.fw.device.excel.FwDeviceExcel; import org.sxkj.fw.device.mapper.FwDeviceMapper; @@ -29,25 +26,19 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; import org.sxkj.fw.device.wrapper.FwDeviceTrackWrapper; import org.sxkj.fw.device.wrapper.FwDeviceWrapper; import java.util.List; /** * 设备表 服务实现类 * * @author Aix * @author aix * @since 2026-01-08 */ @Service @AllArgsConstructor public class FwDeviceServiceImpl extends BaseServiceImpl<FwDeviceMapper, FwDeviceEntity> implements IFwDeviceService { private final IFwDeviceTrackService fwDeviceTrackService; @Override public IPage<FwDeviceVO> selectFwDevicePage(IPage<FwDeviceVO> page, FwDeviceVO fwDevice) { public IPage<FwDeviceEntity> selectFwDevicePage(IPage<FwDeviceEntity> page, FwDeviceDTO fwDevice) { return page.setRecords(baseMapper.selectFwDevicePage(page, fwDevice)); } @@ -61,16 +52,4 @@ return fwDeviceList; } @Override public Boolean saveFwDevice(FwDeviceAndTrackDTO dto) { // 保存设备信息 FwDeviceEntity entity = FwDeviceWrapper.build().entityDTO(dto.getFwDeviceDTO()); save(entity); // 保存设备跟踪信息 FwDeviceTrackEntity trackEntity = FwDeviceTrackWrapper.build().entityDTO(dto.getFwDeviceTrackDTO()); trackEntity.setDeviceId(entity.getId()); return fwDeviceTrackService.save(trackEntity); } } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceTrackServiceImpl.java
@@ -16,6 +16,7 @@ */ package org.sxkj.fw.device.service.impl; import org.sxkj.fw.device.dto.FwDeviceTrackDTO; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.vo.FwDeviceTrackVO; import org.sxkj.fw.device.excel.FwDeviceTrackExcel; @@ -30,14 +31,14 @@ /** * 设备跟踪流转表 服务实现类 * * @author Aix * @author aix * @since 2026-01-08 */ @Service public class FwDeviceTrackServiceImpl extends BaseServiceImpl<FwDeviceTrackMapper, FwDeviceTrackEntity> implements IFwDeviceTrackService { @Override public IPage<FwDeviceTrackVO> selectFwDeviceTrackPage(IPage<FwDeviceTrackVO> page, FwDeviceTrackVO fwDeviceTrack) { public IPage<FwDeviceTrackEntity> selectFwDeviceTrackPage(IPage<FwDeviceTrackEntity> page, FwDeviceTrackDTO fwDeviceTrack) { return page.setRecords(baseMapper.selectFwDeviceTrackPage(page, fwDeviceTrack)); } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceTrackVO.java
@@ -16,20 +16,58 @@ */ package org.sxkj.fw.device.vo; import io.swagger.annotations.ApiModelProperty; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.springblade.core.tool.node.INode; import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serializable; import java.util.Date; /** * 设备跟踪流转表 视图实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data @EqualsAndHashCode(callSuper = true) public class FwDeviceTrackVO extends FwDeviceTrackEntity { public class FwDeviceTrackVO implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "主键") private Long id; /** * 设备ID */ @ApiModelProperty(value = "设备ID") private Long deviceId; /** * 出库时间 */ @ApiModelProperty(value = "出库时间") private Date outTime; /** * 出库去向 */ @ApiModelProperty(value = "出库去向") private String outTarget; /** * 用途 */ @ApiModelProperty(value = "用途") private String purpose; /** * 负责人 */ @ApiModelProperty(value = "负责人") private String charger; /** * 联系电话 */ @ApiModelProperty(value = "联系电话") private String contactPhone; } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/vo/FwDeviceVO.java
@@ -16,20 +16,101 @@ */ package org.sxkj.fw.device.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import org.sxkj.fw.device.entity.FwDeviceEntity; import org.springblade.core.tool.node.INode; import lombok.Data; import lombok.EqualsAndHashCode; import org.sxkj.system.cache.SysCache; import java.io.Serializable; /** * 设备表 视图实体类 * * @author Aix * @author aix * @since 2026-01-08 */ @Data @EqualsAndHashCode(callSuper = true) public class FwDeviceVO extends FwDeviceEntity { @Getter public class FwDeviceVO implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "主键") private Long id; /** * 设备名称 */ @ApiModelProperty(value = "设备名称") private String deviceName; /** * 设备类型(察打一体/便捷侦测箱/反制枪) */ @ApiModelProperty(value = "设备类型(察打一体/便捷侦测箱/反制枪)") private String deviceType; /** * 设备属性(无线电/光电/雷达) */ @ApiModelProperty(value = "设备属性(无线电/光电/雷达)") private String deviceAtt; /** * 型号 */ @ApiModelProperty(value = "型号") private String deviceModel; /** * 规格 */ @ApiModelProperty(value = "规格") private String deviceSpecification; /** * 生产厂商 */ @ApiModelProperty(value = "生产厂商") private String manufacturer; /** * 来源 */ @ApiModelProperty(value = "来源") private String source; /** * 用途 */ @ApiModelProperty(value = "用途") private String purpose; /** * 所属部门 */ @ApiModelProperty(value = "所属部门id") private Long belongDept; /** * 负责人 */ @ApiModelProperty(value = "负责人") private String charger; /** * 联系电话 */ @ApiModelProperty(value = "联系电话") private String contactPhone; /** * 备注 */ @ApiModelProperty(value = "备注") private String remark; @ApiModelProperty("运行状态(0:在线/1:离线/2:故障/3:报废)") private Integer status; @ApiModelProperty(value = "所属部门名称") public String getBelongDeptName() { if (belongDept == null) { return null; } return SysCache.getDeptName(belongDept); } } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceTrackWrapper.java
@@ -21,12 +21,13 @@ import org.sxkj.fw.device.dto.FwDeviceTrackDTO; import org.sxkj.fw.device.entity.FwDeviceTrackEntity; import org.sxkj.fw.device.vo.FwDeviceTrackVO; import java.util.Objects; /** * 设备跟踪流转表 包装类,返回视图层所需的字段 * * @author Aix * @author aix * @since 2026-01-08 */ public class FwDeviceTrackWrapper extends BaseEntityWrapper<FwDeviceTrackEntity, FwDeviceTrackVO> { @@ -40,8 +41,9 @@ return Objects.requireNonNull(BeanUtil.copy(fwDeviceTrack, FwDeviceTrackVO.class)); } public FwDeviceTrackEntity entityDTO(FwDeviceTrackDTO fwDevice) { return Objects.requireNonNull(BeanUtil.copy(fwDevice, FwDeviceTrackEntity.class)); } public FwDeviceTrackEntity entityDTO(FwDeviceTrackDTO fwDeviceTrackDTO) { return Objects.requireNonNull(BeanUtil.copy(fwDeviceTrackDTO, FwDeviceTrackEntity.class)); } } drone-service/drone-fw/src/main/java/org/sxkj/fw/device/wrapper/FwDeviceWrapper.java
@@ -18,7 +18,6 @@ import org.springblade.core.mp.support.BaseEntityWrapper; import org.springblade.core.tool.utils.BeanUtil; import org.sxkj.fw.device.dto.FwDeviceAndTrackDTO; import org.sxkj.fw.device.dto.FwDeviceDTO; import org.sxkj.fw.device.entity.FwDeviceEntity; import org.sxkj.fw.device.vo.FwDeviceVO; @@ -27,7 +26,7 @@ /** * 设备表 包装类,返回视图层所需的字段 * * @author Aix * @author aix * @since 2026-01-08 */ public class FwDeviceWrapper extends BaseEntityWrapper<FwDeviceEntity, FwDeviceVO> { @@ -41,8 +40,8 @@ return Objects.requireNonNull(BeanUtil.copy(fwDevice, FwDeviceVO.class)); } public FwDeviceEntity entityDTO(FwDeviceDTO dto) { return Objects.requireNonNull(BeanUtil.copy(dto, FwDeviceEntity.class)); public FwDeviceEntity entityDTO(FwDeviceDTO fwDevice) { return Objects.requireNonNull(BeanUtil.copy(fwDevice, FwDeviceEntity.class)); }