zqq:遥感影像接口
This commit is contained in:
parent
6b3056fd08
commit
bf2b77b657
|
@ -3,10 +3,12 @@ package com.kening.vordm.entity;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.kening.vordm.vo.productResolutionVo;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 遥感影像源数据
|
* 遥感影像源数据
|
||||||
|
@ -154,7 +156,40 @@ public class RemoteSensingSourceData implements Serializable {
|
||||||
*/
|
*/
|
||||||
private String sourceOrganization;
|
private String sourceOrganization;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分辨率集合最大值
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Double productResolutionMax;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分辨率集合最小值
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Double productResolutionMin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 卫星类型集合
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String satelliteCodeList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 卫星类型集合
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private List<String> satelliteCodeListNew;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 卫星类型集合
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private List<productResolutionVo> productResolutionVos;
|
||||||
|
|
||||||
|
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.kening.vordm.vo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class productResolutionVo {
|
||||||
|
|
||||||
|
private Double productResolutionMin;
|
||||||
|
|
||||||
|
|
||||||
|
private Double productResolutionMax;
|
||||||
|
}
|
|
@ -1,10 +1,9 @@
|
||||||
package com.kening.vordm.controller;
|
package com.kening.vordm.controller;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.kening.vordm.entity.DisasterInfo;
|
import com.kening.vordm.entity.*;
|
||||||
import com.kening.vordm.entity.EntityData;
|
|
||||||
import com.kening.vordm.entity.RemoteSensingSourceData;
|
|
||||||
import com.kening.vordm.service.DisasterInfoService;
|
import com.kening.vordm.service.DisasterInfoService;
|
||||||
import com.kening.vordm.service.RemoteSensingSourceDataService;
|
import com.kening.vordm.service.RemoteSensingSourceDataService;
|
||||||
import com.kening.vordm.vo.GroupByUse;
|
import com.kening.vordm.vo.GroupByUse;
|
||||||
|
@ -13,11 +12,10 @@ import org.springblade.core.mp.support.Condition;
|
||||||
import org.springblade.core.mp.support.Query;
|
import org.springblade.core.mp.support.Query;
|
||||||
import org.springblade.core.tool.api.R;
|
import org.springblade.core.tool.api.R;
|
||||||
import org.springblade.core.tool.utils.DateUtil;
|
import org.springblade.core.tool.utils.DateUtil;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
|
@ -45,23 +43,27 @@ public class RemoteSensingSourceDataController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实体数据列表信息
|
* 实体数据列表信息
|
||||||
* @param remoteSensingSourceData 实体数据条件信息
|
* @param optionsJson 实体数据条件信息
|
||||||
* @param query current当前页 size 每页数据量
|
* @param query current当前页 size 每页数据量
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@GetMapping("/Condition")
|
@GetMapping("/Condition")
|
||||||
public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition(RemoteSensingSourceData remoteSensingSourceData, Query query) {
|
public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition( String optionsJson, Query query) {
|
||||||
|
RemoteSensingSourceData remoteSensingSourceData = new RemoteSensingSourceData();
|
||||||
|
if (optionsJson!=null){
|
||||||
|
remoteSensingSourceData = (RemoteSensingSourceData)JSON.parseObject(optionsJson, RemoteSensingSourceData.class);
|
||||||
|
}
|
||||||
return R.data(remoteSensingSourceDataService.getRemoteSensingSourceDataByCondition(Condition.getPage(query), remoteSensingSourceData));
|
return R.data(remoteSensingSourceDataService.getRemoteSensingSourceDataByCondition(Condition.getPage(query), remoteSensingSourceData));
|
||||||
}
|
}
|
||||||
|
|
||||||
// /**
|
/**
|
||||||
// * 根据页码和灾害信息查出遥感影像源数据,可多个灾害
|
* 实体数据列表信息
|
||||||
// * @param remoteSensingSourceData
|
* @param params
|
||||||
// * @param query
|
* @param query
|
||||||
// * @return
|
* @return
|
||||||
// */
|
*/
|
||||||
// @GetMapping("/Condition1")
|
@GetMapping("/PagesData")
|
||||||
// public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition(RemoteSensingSourceData remoteSensingSourceData, Query query){
|
public R<IPage<RemoteSensingSourceData>> Pages(@RequestParam Map<String,Object> params, Query query){
|
||||||
// return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),Condition.getQueryWrapper(remoteSensingSourceData)));
|
return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),Condition.getQueryWrapper(params,RemoteSensingSourceData.class)));
|
||||||
// }
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,5 +21,4 @@ public interface RemoteSensingSourceDataMapper extends BaseMapper<RemoteSensingS
|
||||||
List<RemoteSensingSourceData> getRemoteSensingSourceData(@Param("disasterType") String disasterType,@Param("disasterCountry") String disasterCountry,@Param("disasterTime") String disasterTime);
|
List<RemoteSensingSourceData> getRemoteSensingSourceData(@Param("disasterType") String disasterType,@Param("disasterCountry") String disasterCountry,@Param("disasterTime") String disasterTime);
|
||||||
|
|
||||||
IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(@Param("remoteSensingSourceData") RemoteSensingSourceData remoteSensingSourceData, IPage<Object> page);
|
IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(@Param("remoteSensingSourceData") RemoteSensingSourceData remoteSensingSourceData, IPage<Object> page);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,11 +71,17 @@
|
||||||
<if test="remoteSensingSourceData.disasterId != null and remoteSensingSourceData.disasterId != ''">
|
<if test="remoteSensingSourceData.disasterId != null and remoteSensingSourceData.disasterId != ''">
|
||||||
r.disaster_id = #{remoteSensingSourceData.disasterId}
|
r.disaster_id = #{remoteSensingSourceData.disasterId}
|
||||||
</if>
|
</if>
|
||||||
<if test="remoteSensingSourceData.productResolution != null and remoteSensingSourceData.productResolution != ''">
|
<if test="remoteSensingSourceData.productResolutionMax != null and remoteSensingSourceData.productResolutionMin != null">
|
||||||
and r.product_resolution = #{remoteSensingSourceData.productResolution}
|
and r.product_resolution >= #{remoteSensingSourceData.productResolutionMin} and r.product_resolution < #{remoteSensingSourceData.productResolutionMax}
|
||||||
</if>
|
</if>
|
||||||
<if test="remoteSensingSourceData.satelliteCode != null and remoteSensingSourceData.satelliteCode != ''">
|
<if test="remoteSensingSourceData.productResolutionMax == null and remoteSensingSourceData.productResolutionMin != null">
|
||||||
and r.satellite_code = #{remoteSensingSourceData.satelliteCode}
|
and r.product_resolution > #{remoteSensingSourceData.productResolutionMin}
|
||||||
|
</if>
|
||||||
|
<if test="remoteSensingSourceData.satelliteCodeListNew != null and remoteSensingSourceData.satelliteCodeListNew != '' and remoteSensingSourceData.satelliteCodeListNew.size() != 0">
|
||||||
|
and r.satellite_code in
|
||||||
|
<foreach item="AList" index="index" collection="remoteSensingSourceData.satelliteCodeListNew"
|
||||||
|
open="(" separator="," close=")">#{AList}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -1,15 +1,19 @@
|
||||||
package com.kening.vordm.service.impl;
|
package com.kening.vordm.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.kening.vordm.entity.EntityData;
|
|
||||||
import com.kening.vordm.entity.RemoteSensingSourceData;
|
import com.kening.vordm.entity.RemoteSensingSourceData;
|
||||||
import com.kening.vordm.mapper.RemoteSensingSourceDataMapper;
|
import com.kening.vordm.mapper.RemoteSensingSourceDataMapper;
|
||||||
import com.kening.vordm.service.RemoteSensingSourceDataService;
|
import com.kening.vordm.service.RemoteSensingSourceDataService;
|
||||||
import com.kening.vordm.vo.GroupByUse;
|
import com.kening.vordm.vo.productResolutionVo;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.concurrent.atomic.AtomicReference;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author G1393
|
* @author G1393
|
||||||
|
@ -27,6 +31,35 @@ implements RemoteSensingSourceDataService {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(IPage<Object> page, RemoteSensingSourceData remoteSensingSourceData) {
|
public IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(IPage<Object> page, RemoteSensingSourceData remoteSensingSourceData) {
|
||||||
return this.baseMapper.getRemoteSensingSourceDataByCondition(remoteSensingSourceData, page);
|
List<productResolutionVo> productResolutionVos = remoteSensingSourceData.getProductResolutionVos();
|
||||||
|
String satelliteCodeList = remoteSensingSourceData.getSatelliteCodeList();
|
||||||
|
List<String> result = new ArrayList<>();
|
||||||
|
if (satelliteCodeList!=null) {
|
||||||
|
result = Arrays.asList(satelliteCodeList.split(","));
|
||||||
|
remoteSensingSourceData.setSatelliteCodeListNew(result);
|
||||||
|
}
|
||||||
|
IPage<RemoteSensingSourceData> remoteSensingSourceDataByCondition = new Page<>();
|
||||||
|
|
||||||
|
if (productResolutionVos != null && !productResolutionVos.isEmpty()){
|
||||||
|
List<RemoteSensingSourceData> remoteSensingSourceData1 = new ArrayList<>();
|
||||||
|
|
||||||
|
productResolutionVos.stream().forEach(productResolutionVo -> {
|
||||||
|
if (Objects.equals(productResolutionVo.getProductResolutionMax(), new Double("1000"))){
|
||||||
|
remoteSensingSourceData.setProductResolutionMax(null);
|
||||||
|
remoteSensingSourceData.setProductResolutionMin(productResolutionVo.getProductResolutionMin());
|
||||||
|
}else {
|
||||||
|
remoteSensingSourceData.setProductResolutionMin(productResolutionVo.getProductResolutionMin());
|
||||||
|
remoteSensingSourceData.setProductResolutionMax(productResolutionVo.getProductResolutionMax());
|
||||||
|
}
|
||||||
|
IPage<RemoteSensingSourceData> remoteSensingSourceDataByConditionNew = this.baseMapper.getRemoteSensingSourceDataByCondition(remoteSensingSourceData, page);
|
||||||
|
remoteSensingSourceData1.addAll(remoteSensingSourceDataByConditionNew.getRecords());
|
||||||
|
});
|
||||||
|
|
||||||
|
remoteSensingSourceDataByCondition.setRecords(remoteSensingSourceData1);
|
||||||
|
remoteSensingSourceDataByCondition.setTotal(remoteSensingSourceData1.size());
|
||||||
|
}else {
|
||||||
|
remoteSensingSourceDataByCondition = this.baseMapper.getRemoteSensingSourceDataByCondition(remoteSensingSourceData, page);
|
||||||
|
}
|
||||||
|
return remoteSensingSourceDataByCondition;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue