zqq:遥感影像检索

This commit is contained in:
qqGroup0 2023-04-11 00:04:19 +08:00
parent ef795818c1
commit 7cadff6440
9 changed files with 74 additions and 12 deletions

View File

@ -17,6 +17,7 @@ import org.springblade.core.mp.support.BladePage;
import org.springblade.core.mp.support.Condition; 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.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.ArrayList; import java.util.ArrayList;
@ -82,7 +83,7 @@ public class DisasterInfoController {
public R<List<GroupByUse>> getSelectCondition(DisasterInfo disasterInfo) { public R<List<GroupByUse>> getSelectCondition(DisasterInfo disasterInfo) {
String disaster_time = null; String disaster_time = null;
if (disasterInfo.getDisasterTime() != null) { if (disasterInfo.getDisasterTime() != null) {
disaster_time = disasterInfo.getDisasterTime().toString(); disaster_time = DateUtil.format(disasterInfo.getDisasterTime(),"yyyy-MM-dd");
} }
return R.data(disasterInfoService.getConditionData(disasterInfo.getDisasterType(), disasterInfo.getDisasterCountry(), disaster_time, disasterInfo.getName() return R.data(disasterInfoService.getConditionData(disasterInfo.getDisasterType(), disasterInfo.getDisasterCountry(), disaster_time, disasterInfo.getName()
)); ));

View File

@ -3,13 +3,16 @@ package com.kening.vordm.controller;
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.DisasterInfo;
import com.kening.vordm.entity.EntityData;
import com.kening.vordm.entity.RemoteSensingSourceData; 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 lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springblade.core.mp.support.Condition; 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.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
@ -37,4 +40,25 @@ public class RemoteSensingSourceDataController {
return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),new QueryWrapper<RemoteSensingSourceData>().in("disaster_id",disasterIds))); return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),new QueryWrapper<RemoteSensingSourceData>().in("disaster_id",disasterIds)));
} }
/**
* 实体数据列表信息
* @param remoteSensingSourceData 实体数据条件信息
* @param query current当前页 size 每页数据量
* @return
*/
@GetMapping("/Condition")
public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition(RemoteSensingSourceData remoteSensingSourceData, Query query) {
return R.data(remoteSensingSourceDataService.getRemoteSensingSourceDataByCondition(Condition.getPage(query), remoteSensingSourceData));
}
// /**
// * 根据页码和灾害信息查出遥感影像源数据可多个灾害
// * @param remoteSensingSourceData
// * @param query
// * @return
// */
// @GetMapping("/Condition1")
// public R<IPage<RemoteSensingSourceData>> getRemoteSensingSourceDataByCondition(RemoteSensingSourceData remoteSensingSourceData, Query query){
// return R.data(remoteSensingSourceDataService.page(Condition.getPage(query),Condition.getQueryWrapper(remoteSensingSourceData)));
// }
} }

View File

@ -62,7 +62,7 @@
from disaster_info from disaster_info
<if test="disaster_type!=null or disaster_country!=null or disaster_time!=null"> where </if> <if test="disaster_type!=null or disaster_country!=null or disaster_time!=null"> where </if>
<if test="disaster_type!=null"> disaster_type=#{disaster_type} </if> <if test="disaster_type!=null"> disaster_type like concat('%',#{disaster_type},'%') </if>
<if test="disaster_type!=null and (disaster_country!=null or disaster_time!=null)"> and </if> <if test="disaster_type!=null and (disaster_country!=null or disaster_time!=null)"> and </if>
<if test="disaster_country!=null"> disaster_country like concat('%',#{disaster_country},'%') </if> <if test="disaster_country!=null"> disaster_country like concat('%',#{disaster_country},'%') </if>
<if test="disaster_time!=null and disaster_country!=null and disaster_time!=null"> and </if> <if test="disaster_time!=null and disaster_country!=null and disaster_time!=null"> and </if>

View File

@ -2,7 +2,10 @@ package com.kening.vordm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.kening.vordm.entity.EntityData;
import com.kening.vordm.entity.RemoteSensingSourceData; import com.kening.vordm.entity.RemoteSensingSourceData;
import com.kening.vordm.vo.GroupByUse;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -16,4 +19,7 @@ import java.util.List;
public interface RemoteSensingSourceDataMapper extends BaseMapper<RemoteSensingSourceData> { public interface RemoteSensingSourceDataMapper extends BaseMapper<RemoteSensingSourceData> {
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);
} }

View File

@ -62,4 +62,22 @@
AND d.disaster_country = #{disasterCountry} AND d.disaster_country = #{disasterCountry}
AND d.disaster_time = #{disasterTime} AND d.disaster_time = #{disasterTime}
</select> </select>
<select id="getRemoteSensingSourceDataByCondition" resultType="com.kening.vordm.entity.RemoteSensingSourceData">
select
<include refid="Base_Column_List"/>
from remote_sensing_source_data r
<where>
<if test="remoteSensingSourceData.disasterId != null and remoteSensingSourceData.disasterId != ''">
r.disaster_id = #{remoteSensingSourceData.disasterId}
</if>
<if test="remoteSensingSourceData.productResolution != null and remoteSensingSourceData.productResolution != ''">
and r.product_resolution = #{remoteSensingSourceData.productResolution}
</if>
<if test="remoteSensingSourceData.satelliteCode != null and remoteSensingSourceData.satelliteCode != ''">
and r.satellite_code = #{remoteSensingSourceData.satelliteCode}
</if>
</where>
</select>
</mapper> </mapper>

View File

@ -1,8 +1,11 @@
package com.kening.vordm.service; package com.kening.vordm.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.kening.vordm.entity.EntityData;
import com.kening.vordm.entity.RemoteSensingSourceData; import com.kening.vordm.entity.RemoteSensingSourceData;
import com.kening.vordm.vo.GroupByUse;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@ -15,4 +18,6 @@ import java.util.List;
public interface RemoteSensingSourceDataService extends IService<RemoteSensingSourceData> { public interface RemoteSensingSourceDataService extends IService<RemoteSensingSourceData> {
List<RemoteSensingSourceData> getRemoteSensingSourceData(String disasterType,String disasterCountry, String disasterTime); List<RemoteSensingSourceData> getRemoteSensingSourceData(String disasterType,String disasterCountry, String disasterTime);
IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(IPage<Object> page, RemoteSensingSourceData remoteSensingSourceData);
} }

View File

@ -46,13 +46,13 @@ implements DisasterInfoService {
public List<Long> getDisasterId(DisasterInfo disasterInfo){ public List<Long> getDisasterId(DisasterInfo disasterInfo){
QueryWrapper<DisasterInfo> qw = new QueryWrapper<>(); QueryWrapper<DisasterInfo> qw = new QueryWrapper<>();
if (disasterInfo.getDisasterType()!=null){ if (disasterInfo.getDisasterType()!=null){
qw.like("disaster_type",disasterInfo.getDisasterType()); qw.eq("disaster_type",disasterInfo.getDisasterType());
} }
if (disasterInfo.getDisasterCountry()!=null){ if (disasterInfo.getDisasterCountry()!=null){
qw.like("disaster_country",disasterInfo.getDisasterCountry()); qw.eq("disaster_country",disasterInfo.getDisasterCountry());
} }
if (disasterInfo.getDisasterTime()!=null){ if (disasterInfo.getDisasterTime()!=null){
qw.like("disaster_time",disasterInfo.getDisasterTime()); qw.eq("disaster_time",disasterInfo.getDisasterTime());
} }
List<DisasterInfo> disasterInfos = this.baseMapper.selectList(qw); List<DisasterInfo> disasterInfos = this.baseMapper.selectList(qw);
if (!disasterInfos.isEmpty()){ if (!disasterInfos.isEmpty()){
@ -63,6 +63,7 @@ implements DisasterInfoService {
return ids; return ids;
} }
return null; return null;
// return new ArrayList<>();
} }
/** /**

View File

@ -1,9 +1,12 @@
package com.kening.vordm.service.impl; package com.kening.vordm.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
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 org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@ -22,4 +25,8 @@ implements RemoteSensingSourceDataService {
return this.baseMapper.getRemoteSensingSourceData(disasterType, disasterCountry, disasterTime); return this.baseMapper.getRemoteSensingSourceData(disasterType, disasterCountry, disasterTime);
} }
@Override
public IPage<RemoteSensingSourceData> getRemoteSensingSourceDataByCondition(IPage<Object> page, RemoteSensingSourceData remoteSensingSourceData) {
return this.baseMapper.getRemoteSensingSourceDataByCondition(remoteSensingSourceData, page);
}
} }

View File

@ -1,5 +1,5 @@
spring: spring:
datasource: datasource:
url: ${kn.datasource.vordm.url} url: ${blade.datasource.dev.url}
username: ${kn.datasource.vordm.username} username: ${blade.datasource.dev.username}
password: ${kn.datasource.vordm.password} password: ${blade.datasource.dev.password}