Browse Source

航线筛选

pull/1/head
李克 3 months ago
parent
commit
2e43b5b940
  1. 11
      dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/GetWaylineListRequest.java
  2. 15
      dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/GetWaylineListResponse.java
  3. 8
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/mapper/IWaylineFileMapper.java
  4. 3
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineFileEntity.java
  5. 13
      dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java
  6. 23
      dk-modules/sample/src/main/resources/mapper/WaylineDeviceMapper.xml

11
dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/GetWaylineListRequest.java

@ -25,6 +25,7 @@ public class GetWaylineListRequest {
@Parameter(name = "favorited", description = "路线文件是否已加为收藏?") @Parameter(name = "favorited", description = "路线文件是否已加为收藏?")
private Boolean favorited; private Boolean favorited;
@JsonProperty("device_sn")
@Parameter(name = "deviceSn", description = "设备sn") @Parameter(name = "deviceSn", description = "设备sn")
private String deviceSn; private String deviceSn;
@ -105,6 +106,7 @@ public class GetWaylineListRequest {
", actionType=" + actionType + ", actionType=" + actionType +
", droneModelKeys=" + droneModelKeys + ", droneModelKeys=" + droneModelKeys +
", payloadModelKey=" + payloadModelKey + ", payloadModelKey=" + payloadModelKey +
", deviceSn=" + deviceSn +
", key='" + key + '\'' + ", key='" + key + '\'' +
'}'; '}';
} }
@ -189,4 +191,13 @@ public class GetWaylineListRequest {
this.key = key; this.key = key;
return this; return this;
} }
public String getDeviceSn() {
return deviceSn;
}
public GetWaylineListRequest setDeviceSn(String deviceSn) {
this.deviceSn = deviceSn;
return this;
}
} }

15
dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/GetWaylineListResponse.java

@ -109,6 +109,10 @@ public class GetWaylineListResponse extends BaseModel {
public GetWaylineListResponse() { public GetWaylineListResponse() {
} }
@JsonProperty("device_name")
@Parameter(name = "device_name", description = "设备名称", example = "1")
private String deviceName;
@Override @Override
public String toString() { public String toString() {
return "GetWaylineListResponse{" + return "GetWaylineListResponse{" +
@ -124,6 +128,7 @@ public class GetWaylineListResponse extends BaseModel {
", updateTime=" + updateTime + ", updateTime=" + updateTime +
", createTime=" + createTime + ", createTime=" + createTime +
", actionType=" + actionType + ", actionType=" + actionType +
", deviceName=" + deviceName +
'}'; '}';
} }
@ -234,4 +239,14 @@ public class GetWaylineListResponse extends BaseModel {
this.actionType = actionType; this.actionType = actionType;
return this; return this;
} }
public String getDeviceName() {
return deviceName;
}
public GetWaylineListResponse setDeviceName(String deviceName) {
this.deviceName = deviceName;
return this;
}
} }

8
dk-modules/sample/src/main/java/org/dromara/sample/wayline/mapper/IWaylineFileMapper.java

@ -1,6 +1,12 @@
package org.dromara.sample.wayline.mapper; package org.dromara.sample.wayline.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.sdk.cloudapi.wayline.GetWaylineListRequest;
import org.dromara.sample.wayline.model.dto.AiCompareQueueDTO;
import org.dromara.sample.wayline.model.entity.AiCompareQueueEntity;
import org.dromara.sample.wayline.model.entity.WaylineFileEntity; import org.dromara.sample.wayline.model.entity.WaylineFileEntity;
/** /**
@ -9,4 +15,6 @@ import org.dromara.sample.wayline.model.entity.WaylineFileEntity;
* @date 2021/12/22 * @date 2021/12/22
*/ */
public interface IWaylineFileMapper extends BaseMapper<WaylineFileEntity> { public interface IWaylineFileMapper extends BaseMapper<WaylineFileEntity> {
Page<WaylineFileEntity> getPage(@Param("param") GetWaylineListRequest param, @Param("page") Page<?> page);
} }

3
dk-modules/sample/src/main/java/org/dromara/sample/wayline/model/entity/WaylineFileEntity.java

@ -60,4 +60,7 @@ public class WaylineFileEntity implements Serializable {
@TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE) @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
private Date updateTime; private Date updateTime;
@TableField(exist = false)
private String deviceName;
} }

13
dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java

@ -95,7 +95,6 @@ public class WaylineFileServiceImpl implements IWaylineFileService {
.stream() .stream()
.map(this::entityConvertToDTO) .map(this::entityConvertToDTO)
.collect(Collectors.toList()); .collect(Collectors.toList());
return new PaginationData<>(records, new Pagination(page.getCurrent(), page.getSize(), page.getTotal())); return new PaginationData<>(records, new Pagination(page.getCurrent(), page.getSize(), page.getTotal()));
} }
@ -227,7 +226,16 @@ public class WaylineFileServiceImpl implements IWaylineFileService {
@Override @Override
public PaginationData<GetWaylineListResponse> getWaylinesByParamNew(String workspaceId, GetWaylineListRequest param) { public PaginationData<GetWaylineListResponse> getWaylinesByParamNew(String workspaceId, GetWaylineListRequest param) {
return null; Page<WaylineFileEntity> waylineFileEntityPage = new Page<>(param.getPage(), param.getPageSize());
Page<WaylineFileEntity> page = mapper.getPage(param,waylineFileEntityPage);
// Wrap the results of a paging query into a custom paging object.
List<GetWaylineListResponse> records = page.getRecords()
.stream()
.map(this::entityConvertToDTO)
.collect(Collectors.toList());
return new PaginationData<>(records, new Pagination(page.getCurrent(), page.getSize(), page.getTotal()));
} }
private Optional<WaylineFileDTO> validKmzFile(MultipartFile file) { private Optional<WaylineFileDTO> validKmzFile(MultipartFile file) {
@ -298,6 +306,7 @@ public class WaylineFileServiceImpl implements IWaylineFileService {
.setUsername(entity.getUsername()) .setUsername(entity.getUsername())
.setObjectKey(entity.getObjectKey()) .setObjectKey(entity.getObjectKey())
.setSign(entity.getSign()) .setSign(entity.getSign())
.setDeviceName(entity.getDeviceName())
.setUpdateTime(entity.getUpdateTime()) .setUpdateTime(entity.getUpdateTime())
.setCreateTime(entity.getCreateTime()) .setCreateTime(entity.getCreateTime())
.setId(entity.getWaylineId()); .setId(entity.getWaylineId());

23
dk-modules/sample/src/main/resources/mapper/WaylineDeviceMapper.xml

@ -0,0 +1,23 @@
<?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.dromara.sample.wayline.mapper.IWaylineFileMapper">
<select id="getPage"
resultType="org.dromara.sample.wayline.model.entity.WaylineFileEntity">
SELECT
wf.* ,GROUP_CONCAT(md.device_name SEPARATOR ',') AS deviceName
FROM
wayline_file wf
LEFT JOIN wayline_device wd ON wd.wayline_id = wf.wayline_id
LEFT JOIN manage_device md ON md.device_sn = wd.device_sn
where 1=1
<if test="param.deviceSn != null and param.deviceSn != ''">
AND wd.device_sn = #{param.deviceSn}
</if>
GROUP BY wf.wayline_id
</select>
</mapper>
Loading…
Cancel
Save