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 = "路线文件是否已加为收藏?")
private Boolean favorited;
@JsonProperty("device_sn")
@Parameter(name = "deviceSn", description = "设备sn")
private String deviceSn;
@ -105,6 +106,7 @@ public class GetWaylineListRequest {
", actionType=" + actionType +
", droneModelKeys=" + droneModelKeys +
", payloadModelKey=" + payloadModelKey +
", deviceSn=" + deviceSn +
", key='" + key + '\'' +
'}';
}
@ -189,4 +191,13 @@ public class GetWaylineListRequest {
this.key = key;
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() {
}
@JsonProperty("device_name")
@Parameter(name = "device_name", description = "设备名称", example = "1")
private String deviceName;
@Override
public String toString() {
return "GetWaylineListResponse{" +
@ -124,6 +128,7 @@ public class GetWaylineListResponse extends BaseModel {
", updateTime=" + updateTime +
", createTime=" + createTime +
", actionType=" + actionType +
", deviceName=" + deviceName +
'}';
}
@ -234,4 +239,14 @@ public class GetWaylineListResponse extends BaseModel {
this.actionType = actionType;
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;
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;
/**
@ -9,4 +15,6 @@ import org.dromara.sample.wayline.model.entity.WaylineFileEntity;
* @date 2021/12/22
*/
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)
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()
.map(this::entityConvertToDTO)
.collect(Collectors.toList());
return new PaginationData<>(records, new Pagination(page.getCurrent(), page.getSize(), page.getTotal()));
}
@ -227,7 +226,16 @@ public class WaylineFileServiceImpl implements IWaylineFileService {
@Override
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) {
@ -298,6 +306,7 @@ public class WaylineFileServiceImpl implements IWaylineFileService {
.setUsername(entity.getUsername())
.setObjectKey(entity.getObjectKey())
.setSign(entity.getSign())
.setDeviceName(entity.getDeviceName())
.setUpdateTime(entity.getUpdateTime())
.setCreateTime(entity.getCreateTime())
.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