Commit 84dd078d authored by 周健威's avatar 周健威

添加标准数据 几何范围、地区 检索

parent 003d8bf7
package com.upyuns.platform.rs.datacenter.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Table;
import java.math.BigDecimal;
@Data
@Table(name = "rscp_area_image_total")
@ApiModel(description = "")
public class RscpAreaImageTotal implements java.io.Serializable {
/** 版本号 */
private static final long serialVersionUID = -8852026183751785469L;
/* This code was generated by TableGo tools, mark 1 begin. */
/** id */
@ApiModelProperty(value = "")
private String id;
/** areaNo */
@ApiModelProperty(value = "")
private String areaNo;
/** areaNoDetail */
@ApiModelProperty(value = "")
private String areaNoDetail;
/** imageRowCol */
@ApiModelProperty(value = "")
private String imageRowCol;
/** imageSatelliteType */
@ApiModelProperty(value = "")
private String imageSatelliteType;
/** imageResolution */
@ApiModelProperty(value = "")
private String imageResolution;
/** imageSpectrumType */
@ApiModelProperty(value = "")
private String imageSpectrumType;
/** imageSensorType */
@ApiModelProperty(value = "")
private String imageSensorType;
/** beginTime */
@ApiModelProperty(value = "")
private String beginTime;
/** updateTime */
@ApiModelProperty(value = "")
private String updateTime;
/** gemo */
@ApiModelProperty(value = "")
private String gemo;
/** range */
@ApiModelProperty(value = "")
private String range;
/** num */
@ApiModelProperty(value = "")
private Integer num;
/** isCover */
@ApiModelProperty(value = "")
private String isCover;
/** imageArea */
@ApiModelProperty(value = "")
private String imageArea;
/** dataId */
@ApiModelProperty(value = "")
private String dataId;
/** imageCloudage */
@ApiModelProperty(value = "")
private BigDecimal imageCloudage;
/** imageProductType */
@ApiModelProperty(value = "")
private String imageProductType;
/** name */
@ApiModelProperty(value = "")
private String name;
/** thumbnailPath */
@ApiModelProperty(value = "")
private String thumbnailPath;
/** isDel */
@ApiModelProperty(value = "")
private Integer isDel;
/** imageIsSave */
@ApiModelProperty(value = "")
private Integer imageIsSave;
/* This code was generated by TableGo tools, mark 1 end. */
/* This code was generated by TableGo tools, mark 2 begin. */
/**
* 获取id
*
* @return id
*/
public String getId() {
return this.id;
}
/**
* 设置id
*
* @param id
*/
public void setId(String id) {
this.id = id;
}
/**
* 获取areaNo
*
* @return areaNo
*/
public String getAreaNo() {
return this.areaNo;
}
/**
* 设置areaNo
*
* @param areaNo
*/
public void setAreaNo(String areaNo) {
this.areaNo = areaNo;
}
/**
* 获取areaNoDetail
*
* @return areaNoDetail
*/
public String getAreaNoDetail() {
return this.areaNoDetail;
}
/**
* 设置areaNoDetail
*
* @param areaNoDetail
*/
public void setAreaNoDetail(String areaNoDetail) {
this.areaNoDetail = areaNoDetail;
}
/**
* 获取imageRowCol
*
* @return imageRowCol
*/
public String getImageRowCol() {
return this.imageRowCol;
}
/**
* 设置imageRowCol
*
* @param imageRowCol
*/
public void setImageRowCol(String imageRowCol) {
this.imageRowCol = imageRowCol;
}
/**
* 获取imageSatelliteType
*
* @return imageSatelliteType
*/
public String getImageSatelliteType() {
return this.imageSatelliteType;
}
/**
* 设置imageSatelliteType
*
* @param imageSatelliteType
*/
public void setImageSatelliteType(String imageSatelliteType) {
this.imageSatelliteType = imageSatelliteType;
}
/**
* 获取imageResolution
*
* @return imageResolution
*/
public String getImageResolution() {
return this.imageResolution;
}
/**
* 设置imageResolution
*
* @param imageResolution
*/
public void setImageResolution(String imageResolution) {
this.imageResolution = imageResolution;
}
/**
* 获取imageSpectrumType
*
* @return imageSpectrumType
*/
public String getImageSpectrumType() {
return this.imageSpectrumType;
}
/**
* 设置imageSpectrumType
*
* @param imageSpectrumType
*/
public void setImageSpectrumType(String imageSpectrumType) {
this.imageSpectrumType = imageSpectrumType;
}
/**
* 获取imageSensorType
*
* @return imageSensorType
*/
public String getImageSensorType() {
return this.imageSensorType;
}
/**
* 设置imageSensorType
*
* @param imageSensorType
*/
public void setImageSensorType(String imageSensorType) {
this.imageSensorType = imageSensorType;
}
/**
* 获取beginTime
*
* @return beginTime
*/
public String getBeginTime() {
return this.beginTime;
}
/**
* 设置beginTime
*
* @param beginTime
*/
public void setBeginTime(String beginTime) {
this.beginTime = beginTime;
}
/**
* 获取updateTime
*
* @return updateTime
*/
public String getUpdateTime() {
return this.updateTime;
}
/**
* 设置updateTime
*
* @param updateTime
*/
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime;
}
/**
* 获取gemo
*
* @return gemo
*/
public String getGemo() {
return this.gemo;
}
/**
* 设置gemo
*
* @param gemo
*/
public void setGemo(String gemo) {
this.gemo = gemo;
}
/**
* 获取range
*
* @return range
*/
public String getRange() {
return this.range;
}
/**
* 设置range
*
* @param range
*/
public void setRange(String range) {
this.range = range;
}
/**
* 获取num
*
* @return num
*/
public Integer getNum() {
return this.num;
}
/**
* 设置num
*
* @param num
*/
public void setNum(Integer num) {
this.num = num;
}
/**
* 获取isCover
*
* @return isCover
*/
public String getIsCover() {
return this.isCover;
}
/**
* 设置isCover
*
* @param isCover
*/
public void setIsCover(String isCover) {
this.isCover = isCover;
}
/**
* 获取imageArea
*
* @return imageArea
*/
public String getImageArea() {
return this.imageArea;
}
/**
* 设置imageArea
*
* @param imageArea
*/
public void setImageArea(String imageArea) {
this.imageArea = imageArea;
}
/**
* 获取dataId
*
* @return dataId
*/
public String getDataId() {
return this.dataId;
}
/**
* 设置dataId
*
* @param dataId
*/
public void setDataId(String dataId) {
this.dataId = dataId;
}
/**
* 获取imageCloudage
*
* @return imageCloudage
*/
public BigDecimal getImageCloudage() {
return this.imageCloudage;
}
/**
* 设置imageCloudage
*
* @param imageCloudage
*/
public void setImageCloudage(BigDecimal imageCloudage) {
this.imageCloudage = imageCloudage;
}
/**
* 获取imageProductType
*
* @return imageProductType
*/
public String getImageProductType() {
return this.imageProductType;
}
/**
* 设置imageProductType
*
* @param imageProductType
*/
public void setImageProductType(String imageProductType) {
this.imageProductType = imageProductType;
}
/**
* 获取name
*
* @return name
*/
public String getName() {
return this.name;
}
/**
* 设置name
*
* @param name
*/
public void setName(String name) {
this.name = name;
}
/**
* 获取thumbnailPath
*
* @return thumbnailPath
*/
public String getThumbnailPath() {
return this.thumbnailPath;
}
/**
* 设置thumbnailPath
*
* @param thumbnailPath
*/
public void setThumbnailPath(String thumbnailPath) {
this.thumbnailPath = thumbnailPath;
}
/**
* 获取isDel
*
* @return isDel
*/
public Integer getIsDel() {
return this.isDel;
}
/**
* 设置isDel
*
* @param isDel
*/
public void setIsDel(Integer isDel) {
this.isDel = isDel;
}
/**
* 获取imageIsSave
*
* @return imageIsSave
*/
public Integer getImageIsSave() {
return this.imageIsSave;
}
/**
* 设置imageIsSave
*
* @param imageIsSave
*/
public void setImageIsSave(Integer imageIsSave) {
this.imageIsSave = imageIsSave;
}
/* This code was generated by TableGo tools, mark 2 end. */
}
\ No newline at end of file
package com.upyuns.platform.rs.datacenter.biz;
import cn.hutool.core.collection.CollUtil;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.upyuns.platform.rs.datacenter.entity.RscpAreaImageTotal;
import com.upyuns.platform.rs.datacenter.entity.RscpImageDataTotal;
import com.upyuns.platform.rs.datacenter.mapper.RscpAreaImageTotalMapper;
import com.upyuns.platform.rs.datacenter.rest.RscpImageDataTotalController;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class RscpAreaImageTotalBiz extends BaseBiz<RscpAreaImageTotalMapper, RscpAreaImageTotal> {
public List<RscpAreaImageTotal> queryDataList(RscpImageDataTotalController.QueryDTO dto) {
return mapper.queryDataList(dto);
}
}
package com.upyuns.platform.rs.datacenter.biz;
import cn.hutool.core.collection.CollUtil;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.upyuns.platform.rs.datacenter.entity.RscpImageDataTotal;
import com.upyuns.platform.rs.datacenter.mapper.RscpImageDataTotalMapper;
......@@ -10,7 +11,10 @@ import java.util.List;
@Service
public class RscpImageDataTotalBiz extends BaseBiz<RscpImageDataTotalMapper, RscpImageDataTotal> {
public List<RscpImageDataTotal> queryDataList(RscpImageDataTotalController.QueryDTO dto) {
return mapper.queryDataList(dto);
}
}
package com.upyuns.platform.rs.datacenter.mapper;
import com.upyuns.platform.rs.datacenter.entity.RscpAreaImageTotal;
import com.upyuns.platform.rs.datacenter.entity.RscpImageDataTotal;
import com.upyuns.platform.rs.datacenter.rest.RscpImageDataTotalController;
import tk.mybatis.mapper.common.Mapper;
import java.util.List;
public interface RscpAreaImageTotalMapper extends Mapper<RscpAreaImageTotal> {
public List<RscpAreaImageTotal> queryDataList(RscpImageDataTotalController.QueryDTO dto);
}
\ No newline at end of file
package com.upyuns.platform.rs.datacenter.rest;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
......@@ -9,11 +11,13 @@ import com.github.wxiaoqi.security.common.util.UserAgentUtil;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
import com.github.wxiaoqi.security.common.vo.PageParam;
import com.upyuns.platform.rs.datacenter.biz.RscpAreaImageTotalBiz;
import com.upyuns.platform.rs.datacenter.biz.RscpImageDataTotalBiz;
import com.upyuns.platform.rs.datacenter.entity.RscpImageDataTotal;
import io.swagger.annotations.ApiOperation;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import sun.nio.cs.ext.Big5;
......@@ -26,6 +30,9 @@ import java.util.List;
@RequestMapping("imageData")
public class RscpImageDataTotalController extends BaseController<RscpImageDataTotalBiz, RscpImageDataTotal> {
@Autowired
RscpAreaImageTotalBiz rscpAreaImageTotalBiz;
@RequestMapping(value = "/app/unauth/query", method = RequestMethod.GET)
public ObjectRestResponse unauthQuery(PageParam pageParam) {
return ObjectRestResponse.succ(baseBiz.selectByQuery(new Query(pageParam)));
......@@ -61,19 +68,51 @@ public class RscpImageDataTotalController extends BaseController<RscpImageDataTo
@RequestMapping(value = "/app/unauth/queryDataList", method = RequestMethod.POST)
public ObjectRestResponse queryDataList(@RequestBody QueryDTO dto) {
return ObjectRestResponse.succ(baseBiz.queryDataList(dto));
if(RscpImageDataTotalController.QueryDTO.TYPE_AREA == dto.getType()) {
return ObjectRestResponse.succ(rscpAreaImageTotalBiz.queryDataList(dto));
}else {
return ObjectRestResponse.succ(baseBiz.queryDataList(dto));
}
}
@Data
static public class QueryDTO {
public static final int TYPE_AREA = 1;
public static final int TYPE_GEOM = 2;
Integer type;
String startDate;
String endDate;
String startDateTime;
String endDateTime;
String geom;
Double leftLon;
Double rightLon;
Double topLat;
Double bottomLat;
String areaNo;
String areaName;
String provinceNo;
List<satelliteDTO> saSensor;
BigDecimal cloud;
public void setStartDate(String startDate) {
this.startDate = startDate;
this.startDateTime = DateUtil.beginOfDay(DateUtil.parseDate(startDate)).toString();
}
public void setEndDate(String endDate) {
this.endDate = endDate;
this.endDateTime = DateUtil.endOfDay(DateUtil.parseDate(endDate)).toString();
}
public void setAreaNo(String areaNo) {
this.areaNo = areaNo;
if(StrUtil.isNotBlank(areaNo)) {
if(!areaNo.substring(2, 6).equals("0000")){
provinceNo = areaNo.substring(0, 2);
}
}
}
}
@Data
......
<?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">
<!-- rscp_area_image_total -->
<mapper namespace="com.upyuns.platform.rs.datacenter.mapper.RscpAreaImageTotalMapper">
<!-- This code was generated by TableGo tools, mark 1 begin. -->
<!-- 字段映射 -->
<resultMap id="rscpAreaImageTotalMap" type="com.upyuns.platform.rs.datacenter.entity.RscpAreaImageTotal">
<result column="id" property="id" jdbcType="VARCHAR" />
<result column="area_no" property="areaNo" jdbcType="VARCHAR" />
<result column="area_no_detail" property="areaNoDetail" jdbcType="VARCHAR" />
<result column="image_row_col" property="imageRowCol" jdbcType="VARCHAR" />
<result column="image_satellite_type" property="imageSatelliteType" jdbcType="VARCHAR" />
<result column="image_resolution" property="imageResolution" jdbcType="VARCHAR" />
<result column="image_spectrum_type" property="imageSpectrumType" jdbcType="VARCHAR" />
<result column="image_sensor_type" property="imageSensorType" jdbcType="VARCHAR" />
<result column="begin_time" property="beginTime" jdbcType="VARCHAR" />
<result column="update_time" property="updateTime" jdbcType="VARCHAR" />
<result column="gemo" property="gemo" jdbcType="VARCHAR" />
<result column="range" property="range" jdbcType="VARCHAR" />
<result column="num" property="num" jdbcType="INTEGER" />
<result column="is_cover" property="isCover" jdbcType="VARCHAR" />
<result column="image_area" property="imageArea" jdbcType="VARCHAR" />
<result column="data_id" property="dataId" jdbcType="VARCHAR" />
<result column="image_cloudage" property="imageCloudage" jdbcType="INTEGER" />
<result column="image_product_type" property="imageProductType" jdbcType="VARCHAR" />
<result column="name" property="name" jdbcType="VARCHAR" />
<result column="thumbnail_path" property="thumbnailPath" jdbcType="VARCHAR" />
<result column="is_del" property="isDel" jdbcType="INTEGER" />
<result column="image_is_save" property="imageIsSave" jdbcType="INTEGER" />
</resultMap>
<!-- This code was generated by TableGo tools, mark 1 end. -->
<!-- This code was generated by TableGo tools, mark 2 begin. -->
<!-- 表查询字段 -->
<sql id="allColumns">
rait.id, rait.area_no, rait.area_no_detail, rait.image_row_col, rait.image_satellite_type, rait.image_resolution, rait.image_spectrum_type, rait.image_sensor_type,
rait.begin_time, rait.update_time, rait.gemo, rait.range, rait.num, rait.is_cover, rait.image_area, rait.data_id,
rait.image_cloudage, rait.image_product_type, rait.name, rait.thumbnail_path, rait.is_del, rait.image_is_save
</sql>
<!-- This code was generated by TableGo tools, mark 2 end. -->
<select id="queryDataList" resultType="com.upyuns.platform.rs.datacenter.entity.RscpAreaImageTotal">
select st_asgeojson(range,16,0) as range, *
<include refid="geomSelectSql" />
limit 5000
offset 0;
</select>
<sql id="geomSelectSql" >
from rscp_area_image_total
<where>
<if test="saSensor != null">
and
<foreach collection="saSensor" item="sa" open="(" separator=" or " close=")">
image_satellite_type = #{sa.satellite}
<if test="sa.sensors != null and sa.sensors.size > 0">
and image_sensor_type in
<foreach collection="sa.sensors" item="sensor" open="(" separator="," close=")">
#{sensor}
</foreach>
</if>
</foreach>
</if>
<if test="startDateTime != null">
and begin_time &gt;= #{startDateTime}
</if>
<if test="endDateTime != null">
and begin_time &lt;= #{endDateTime}
</if>
<if test="cloud != null">
and image_cloudage &lt;= #{cloud}
</if>
<if test="areaNo != null">
<if test="provinceNo != null">
and area_no = #{provinceNo} and #{areaNo} = any(area_no_detail)
</if>
<if test="provinceNo == null">
and area_no = #{areaNo}
</if>
</if>
</where>
</sql>
</mapper>
\ No newline at end of file
......@@ -91,34 +91,39 @@
<select id="queryDataList" resultType="com.upyuns.platform.rs.datacenter.entity.RscpImageDataTotal">
select st_asgeojson(range,16,0) as range, *
from rscp_image_data_total
<where>
<if test="saSensor != null">
and
<foreach collection="saSensor" item="sa" open="(" separator=" or " close=")">
image_satellite_type = #{sa.satellite}
<if test="sa.sensors != null and sa.sensors.size > 0">
and image_sensor_type in
<foreach collection="sa.sensors" item="sensor" open="(" separator="," close=")">
#{sensor}
</foreach>
</if>
</foreach>
</if>
<if test="startDate != null">
and start_date &gt;= #{startDate}
</if>
<if test="endDate != null">
and endDate &lt;= #{endDate}
</if>
<if test="cloud != null">
and image_cloudage &lt;= #{cloud}
</if>
<if test="geom != null">
and ST_Intersects(geojsontowkt(#{geom}, 'true'),range)
</if>
</where>
<include refid="geomSelectSql" />
limit 5000
offset 0;
</select>
<sql id="geomSelectSql" >
from rscp_image_data_total
<where>
<if test="saSensor != null">
and
<foreach collection="saSensor" item="sa" open="(" separator=" or " close=")">
image_satellite_type = #{sa.satellite}
<if test="sa.sensors != null and sa.sensors.size > 0">
and image_sensor_type in
<foreach collection="sa.sensors" item="sensor" open="(" separator="," close=")">
#{sensor}
</foreach>
</if>
</foreach>
</if>
<if test="startDateTime != null">
and image_take_time &gt;= #{startDateTime}
</if>
<if test="endDateTime != null">
and image_take_time &lt;= #{endDateTime}
</if>
<if test="cloud != null">
and image_cloudage &lt;= #{cloud}
</if>
<if test="geom != null">
and ST_Intersects(geojsontowkt(#{geom}, 'true'),range)
</if>
</where>
</sql>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment