吉安感知网项目-后端
linwei
2026-01-23 24f5335edb12454ae0d59baf95ed0f21bc5107ed
飞手优化
4 files modified
3 files added
207 ■■■■ changed files
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/controller/GdFlyerController.java 63 ●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/mapper/GdFlyerMapper.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/param/GdFlyerAddParam.java 66 ●●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/param/GdFlyerPageParam.java 53 ●●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/param/GdFlyerParam.java 16 ●●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/service/IGdFlyerService.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/service/impl/GdFlyerServiceImpl.java 3 ●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/controller/GdFlyerController.java
@@ -31,7 +31,11 @@
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.sxkj.gd.common.GenericConverter;
import org.sxkj.gd.flyer.entity.GdFlyerEntity;
import org.sxkj.gd.flyer.param.GdFlyerAddParam;
import org.sxkj.gd.flyer.param.GdFlyerPageParam;
import org.sxkj.gd.flyer.param.GdFlyerParam;
import org.sxkj.gd.flyer.vo.GdFlyerVO;
import org.sxkj.gd.flyer.excel.GdFlyerExcel;
import org.sxkj.gd.flyer.wrapper.GdFlyerWrapper;
@@ -65,20 +69,11 @@
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入gdFlyer")
    public R<GdFlyerVO> detail(GdFlyerEntity gdFlyer) {
        GdFlyerEntity detail = gdFlyerService.getOne(Condition.getQueryWrapper(gdFlyer));
    public R<GdFlyerVO> detail(GdFlyerParam gdFlyer) {
        GdFlyerEntity detail = gdFlyerService.getOne(Condition.getQueryWrapper(GenericConverter.convert(gdFlyer, GdFlyerEntity.class)));
        return R.data(GdFlyerWrapper.build().entityVO(detail));
    }
    /**
     * 飞手表 分页
     */
    // @GetMapping("/list")
    // @ApiOperationSupport(order = 2)
    // @ApiOperation(value = "分页", notes = "传入gdFlyer")
    // public R<IPage<GdFlyerVO>> list(@ApiIgnore @RequestParam Map<String, Object> gdFlyer, Query query) {
    //     IPage<GdFlyerEntity> pages = gdFlyerService.page(Condition.getPage(query), Condition.getQueryWrapper(gdFlyer, GdFlyerEntity.class));
    //     return R.data(GdFlyerWrapper.build().pageVO(pages));
    // }
    /**
     * 飞手表 自定义分页
@@ -86,30 +81,10 @@
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入gdFlyer")
    public R<IPage<GdFlyerVO>> page(GdFlyerVO gdFlyer, Query query) {
    public R<IPage<GdFlyerVO>> page(GdFlyerPageParam gdFlyer, Query query) {
        IPage<GdFlyerVO> pages = gdFlyerService.selectGdFlyerPage(Condition.getPage(query), gdFlyer);
        return R.data(pages);
    }
    /**
     * 飞手表 新增
     */
    // @PostMapping("/save")
    // @ApiOperationSupport(order = 4)
    // @ApiOperation(value = "新增", notes = "传入gdFlyer")
    // public R save(@Valid @RequestBody GdFlyerEntity gdFlyer) {
    //     return R.status(gdFlyerService.save(gdFlyer));
    // }
    /**
     * 飞手表 修改
     */
    // @PostMapping("/update")
    // @ApiOperationSupport(order = 5)
    // @ApiOperation(value = "修改", notes = "传入gdFlyer")
    // public R update(@Valid @RequestBody GdFlyerEntity gdFlyer) {
    //     return R.status(gdFlyerService.updateById(gdFlyer));
    // }
    /**
     * 飞手表 新增或修改
@@ -117,8 +92,8 @@
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入gdFlyer")
    public R submit(@Valid @RequestBody GdFlyerEntity gdFlyer) {
        return R.status(gdFlyerService.saveOrUpdate(gdFlyer));
    public R submit(@Valid @RequestBody GdFlyerAddParam gdFlyer) {
        return R.status(gdFlyerService.saveOrUpdate(GenericConverter.convert(gdFlyer, GdFlyerEntity.class)));
    }
    /**
@@ -130,23 +105,5 @@
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(gdFlyerService.deleteLogic(Func.toLongList(ids)));
    }
//
//    /**
//     * 导出数据
//     */
//    @GetMapping("/export-gdFlyer")
//    @ApiOperationSupport(order = 9)
//    @ApiOperation(value = "导出数据", notes = "传入gdFlyer")
//    @ApiIgnore
//    public void exportGdFlyer(@ApiIgnore @RequestParam Map<String, Object> gdFlyer, BladeUser bladeUser, HttpServletResponse response) {
//        QueryWrapper<GdFlyerEntity> queryWrapper = Condition.getQueryWrapper(gdFlyer, GdFlyerEntity.class);
//        //if (!AuthUtil.isAdministrator()) {
//        //    queryWrapper.lambda().eq(GdFlyer::getTenantId, bladeUser.getTenantId());
//        //}
//        queryWrapper.lambda().eq(GdFlyerEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
//        List<GdFlyerExcel> list = gdFlyerService.exportGdFlyer(queryWrapper);
//        ExcelUtil.export(response, "飞手表数据" + DateUtil.time(), "飞手表数据表", list, GdFlyerExcel.class);
//    }
}
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/mapper/GdFlyerMapper.java
@@ -17,6 +17,7 @@
package org.sxkj.gd.flyer.mapper;
import org.sxkj.gd.flyer.entity.GdFlyerEntity;
import org.sxkj.gd.flyer.param.GdFlyerPageParam;
import org.sxkj.gd.flyer.vo.GdFlyerVO;
import org.sxkj.gd.flyer.excel.GdFlyerExcel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -40,7 +41,7 @@
     * @param gdFlyer
     * @return
     */
    List<GdFlyerVO> selectGdFlyerPage(IPage page, GdFlyerVO gdFlyer);
    List<GdFlyerVO> selectGdFlyerPage(IPage page, GdFlyerPageParam gdFlyer);
    /**
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/param/GdFlyerAddParam.java
New file
@@ -0,0 +1,66 @@
package org.sxkj.gd.flyer.param;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
public class GdFlyerAddParam {
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * 飞手姓名
     */
    @ApiModelProperty(value = "飞手姓名")
    private String flyerName;
    /**
     * 飞手电话(唯一)
     */
    @ApiModelProperty(value = "飞手电话(唯一)")
    private String flyerPhone;
    /**
     * 飞行时长(小时)
     */
    @ApiModelProperty(value = "飞行时长(小时)")
    private BigDecimal flightHours;
    /**
     * 项目经验
     */
    @ApiModelProperty(value = "项目经验")
    private String projectExperience;
    /**
     * 技术专长(0:农业植保 1:电力巡检 2:航拍测绘)
     */
    @ApiModelProperty(value = "技术专长(0:农业植保 1:电力巡检 2:航拍测绘)")
    private String technicalStrength;
    /**
     * 擅长机型(0:微型无人机 1:轻型无人机等 2:小型无人机 3:中型无人机等 4:大型无人机)
     */
    @ApiModelProperty(value = "擅长机型(0:微型无人机 1:轻型无人机等 2:小型无人机 3:中型无人机等 4:大型无人机)")
    private String skilledUavType;
    /**
     * 擅长任务类型(0:巡查类 1:安保类 2:文旅类 3:采集数据类)
     */
    @ApiModelProperty(value = "擅长任务类型(0:巡查类 1:安保类 2:文旅类 3:采集数据类)")
    private String skilledTaskType;
    /**
     * 区域编码
     */
    @ApiModelProperty(value = "区域编码")
    private String areaCode;
    /**
     * 飞手地址
     */
    @ApiModelProperty(value = "飞手地址")
    private String flyerAddress;
    /**
     * 飞手资质证书地址列表
     */
    @ApiModelProperty(value = "飞手资质证书地址列表")
    private List<String> certification;
}
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/param/GdFlyerPageParam.java
New file
@@ -0,0 +1,53 @@
package org.sxkj.gd.flyer.param;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
public class GdFlyerPageParam {
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * 飞手姓名
     */
    @ApiModelProperty(value = "飞手姓名")
    private String flyerName;
    /**
     * 飞手电话(唯一)
     */
    @ApiModelProperty(value = "飞手电话(唯一)")
    private String flyerPhone;
    /**
     * 飞行时长(小时)
     */
    @ApiModelProperty(value = "飞行时长(小时)")
    private BigDecimal flightHours;
    /**
     * 技术专长(0:农业植保 1:电力巡检 2:航拍测绘)
     */
    @ApiModelProperty(value = "技术专长(0:农业植保 1:电力巡检 2:航拍测绘)")
    private String technicalStrength;
    /**
     * 擅长机型(0:微型无人机 1:轻型无人机等 2:小型无人机 3:中型无人机等 4:大型无人机)
     */
    @ApiModelProperty(value = "擅长机型(0:微型无人机 1:轻型无人机等 2:小型无人机 3:中型无人机等 4:大型无人机)")
    private String skilledUavType;
    /**
     * 擅长任务类型(0:巡查类 1:安保类 2:文旅类 3:采集数据类)
     */
    @ApiModelProperty(value = "擅长任务类型(0:巡查类 1:安保类 2:文旅类 3:采集数据类)")
    private String skilledTaskType;
      // 经度
    @ApiModelProperty(value = "经度")
    private String longitude;
    // 纬度
    @ApiModelProperty(value = "纬度")
    private String latitude;
}
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/param/GdFlyerParam.java
New file
@@ -0,0 +1,16 @@
package org.sxkj.gd.flyer.param;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
public class GdFlyerParam {
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
}
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/service/IGdFlyerService.java
@@ -18,6 +18,7 @@
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import org.sxkj.gd.flyer.entity.GdFlyerEntity;
import org.sxkj.gd.flyer.param.GdFlyerPageParam;
import org.sxkj.gd.flyer.vo.GdFlyerVO;
import org.sxkj.gd.flyer.excel.GdFlyerExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -38,7 +39,7 @@
     * @param gdFlyer
     * @return
     */
    IPage<GdFlyerVO> selectGdFlyerPage(IPage<GdFlyerVO> page, GdFlyerVO gdFlyer);
    IPage<GdFlyerVO> selectGdFlyerPage(IPage<GdFlyerVO> page, GdFlyerPageParam gdFlyer);
    /**
drone-service/drone-gd/src/main/java/org/sxkj/gd/flyer/service/impl/GdFlyerServiceImpl.java
@@ -17,6 +17,7 @@
package org.sxkj.gd.flyer.service.impl;
import org.sxkj.gd.flyer.entity.GdFlyerEntity;
import org.sxkj.gd.flyer.param.GdFlyerPageParam;
import org.sxkj.gd.flyer.vo.GdFlyerVO;
import org.sxkj.gd.flyer.excel.GdFlyerExcel;
import org.sxkj.gd.flyer.mapper.GdFlyerMapper;
@@ -37,7 +38,7 @@
public class GdFlyerServiceImpl extends BaseServiceImpl<GdFlyerMapper, GdFlyerEntity> implements IGdFlyerService {
    @Override
    public IPage<GdFlyerVO> selectGdFlyerPage(IPage<GdFlyerVO> page, GdFlyerVO gdFlyer) {
    public IPage<GdFlyerVO> selectGdFlyerPage(IPage<GdFlyerVO> page, GdFlyerPageParam gdFlyer) {
        return page.setRecords(baseMapper.selectGdFlyerPage(page, gdFlyer));
    }