This commit is contained in:
parent
609c82c13e
commit
622140bfd4
|
@ -0,0 +1,127 @@
|
||||||
|
package com.kening.vordm.vo;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.Date;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @TableName disaster_info_vo
|
||||||
|
*/
|
||||||
|
@TableName(value ="disaster_info_vo")
|
||||||
|
@Data
|
||||||
|
public class DisasterInfoVo implements Serializable {
|
||||||
|
/**
|
||||||
|
* 唯一值
|
||||||
|
*/
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害类型
|
||||||
|
*/
|
||||||
|
private String disasterType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害关键词
|
||||||
|
*/
|
||||||
|
private String disasterKeyword;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害发生时间
|
||||||
|
*/
|
||||||
|
private LocalDate disasterTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害发起时间
|
||||||
|
*/
|
||||||
|
private LocalDateTime uploadTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害区域地理字段
|
||||||
|
*/
|
||||||
|
private String geometry;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害强度或震级
|
||||||
|
*/
|
||||||
|
private String disasterLevel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 受灾国家
|
||||||
|
*/
|
||||||
|
private String disasterCountry;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 响应状态,0未审批,1审批未通过。2审批通过并正在响应,3审批通过并且响应完成
|
||||||
|
*/
|
||||||
|
private Integer respondStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本灾害的用户访问次数
|
||||||
|
*/
|
||||||
|
private Integer visitCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本灾害的数据下载次数
|
||||||
|
*/
|
||||||
|
private Integer downloadCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 爬虫类型
|
||||||
|
*/
|
||||||
|
private Integer spiderType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 爬虫起始时间
|
||||||
|
*/
|
||||||
|
private Date tempendTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 爬虫终止时间
|
||||||
|
*/
|
||||||
|
private Date tempStartTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数据条目创建时间
|
||||||
|
*/
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害id,审批通过后生成
|
||||||
|
*/
|
||||||
|
private String vordmId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害响应时间
|
||||||
|
*/
|
||||||
|
private Date respondTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 灾害申请组织
|
||||||
|
*/
|
||||||
|
private String sponsorOrganization;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private String disasterImg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 字典名称
|
||||||
|
*/
|
||||||
|
private String dictValue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private Long size;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
}
|
|
@ -1,22 +1,21 @@
|
||||||
package com.kening.vordm.controller;
|
package com.kening.vordm.controller;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import com.kening.vordm.entity.*;
|
import com.kening.vordm.entity.*;
|
||||||
import com.kening.vordm.service.*;
|
import com.kening.vordm.service.*;
|
||||||
import com.kening.vordm.vo.DisasterMangerInfo;
|
import com.kening.vordm.vo.DisasterInfoVo;
|
||||||
import com.kening.vordm.vo.GroupByUse;
|
import com.kening.vordm.vo.GroupByUse;
|
||||||
import com.kening.vordm.vo.UserTenantVo;
|
import com.kening.vordm.vo.UserTenantVo;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
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.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.time.LocalDate;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
@ -32,9 +31,7 @@ public class DisasterInfoController {
|
||||||
|
|
||||||
private final NewsService newsService;
|
private final NewsService newsService;
|
||||||
private final PictureInfoService pictureInfoService;
|
private final PictureInfoService pictureInfoService;
|
||||||
|
private final DisasterInfoVoService disasterInfoVoService;
|
||||||
//下载次数记录
|
|
||||||
private final DownloadRecordService downloadRecordService;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 首页数据,轮播和定位相关
|
* 首页数据,轮播和定位相关
|
||||||
|
@ -49,22 +46,8 @@ public class DisasterInfoController {
|
||||||
@GetMapping("/getPicInfoByDisasterId")
|
@GetMapping("/getPicInfoByDisasterId")
|
||||||
public R<List<PictureInfo>> getPicInfoByDisasterInfoId(Long disasterId){
|
public R<List<PictureInfo>> getPicInfoByDisasterInfoId(Long disasterId){
|
||||||
return R.data(pictureInfoService.list(Wrappers.<PictureInfo>lambdaQuery()
|
return R.data(pictureInfoService.list(Wrappers.<PictureInfo>lambdaQuery()
|
||||||
.eq(PictureInfo::getDisasterId,disasterId)));
|
.eq(PictureInfo::getDisasterId,disasterId)
|
||||||
}
|
.eq(PictureInfo::getIsMain, 1)));
|
||||||
|
|
||||||
/**
|
|
||||||
* 灾害查询条件,时间,类型,灾害联动
|
|
||||||
* @param disasterInfo
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
@GetMapping("/selectCondition")
|
|
||||||
public R<List<GroupByUse>> getSelectCondition1(DisasterInfo disasterInfo){
|
|
||||||
String disaster_time=null;
|
|
||||||
if (disasterInfo.getDisasterTime()!=null){
|
|
||||||
disaster_time=disasterInfo.getDisasterTime().toString();
|
|
||||||
}
|
|
||||||
return R.data(disasterInfoService.getConditionData(disasterInfo.getDisasterType(),disasterInfo.getDisasterCountry(),disaster_time,disasterInfo.getName()
|
|
||||||
));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -75,6 +58,26 @@ public class DisasterInfoController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/select-condition")
|
@GetMapping("/select-condition")
|
||||||
public R<List<GroupByUse>> getSelectCondition(DisasterInfo disasterInfo) {
|
public R<List<GroupByUse>> getSelectCondition(DisasterInfo disasterInfo) {
|
||||||
|
//String dateType = String.valueOf(params.get("dateTyle"));
|
||||||
|
// LocalDate date = LocalDate.now();
|
||||||
|
// if(StringUtils.isNotBlank(dateType)){
|
||||||
|
// switch (dateType){
|
||||||
|
// case "1" :
|
||||||
|
// //Latest week 上一周
|
||||||
|
// date = LocalDate.now().minusWeeks(1);
|
||||||
|
// break;
|
||||||
|
// case "2":
|
||||||
|
// //Latest month 上一个月
|
||||||
|
// date = LocalDate.now().minusMonths(1);
|
||||||
|
// break;
|
||||||
|
// case "3":
|
||||||
|
// //Latest six month 上6个月
|
||||||
|
// date = LocalDate.now().minusMonths(6);
|
||||||
|
// break;
|
||||||
|
// default:
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
String disaster_time = null;
|
String disaster_time = null;
|
||||||
if (disasterInfo.getDisasterTime() != null) {
|
if (disasterInfo.getDisasterTime() != null) {
|
||||||
disaster_time = disasterInfo.getDisasterTime().toString();
|
disaster_time = disasterInfo.getDisasterTime().toString();
|
||||||
|
@ -84,19 +87,7 @@ public class DisasterInfoController {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 指定条件返回数据
|
|
||||||
*
|
|
||||||
* @param query
|
|
||||||
* @param disasterInfo
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
|
|
||||||
@GetMapping("/test")
|
|
||||||
public R<IPage<News>> getdata(Query query, DisasterInfo disasterInfo) {
|
|
||||||
List<Long> disasterIds = disasterInfoService.getDisasterId(disasterInfo);
|
|
||||||
return R.data(newsService.page(Condition.getPage(query), new QueryWrapper<News>().in("disaster_id", disasterIds)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 灾害信息统计 国家/灾害类型 左边栏
|
* 灾害信息统计 国家/灾害类型 左边栏
|
||||||
|
@ -125,7 +116,6 @@ public class DisasterInfoController {
|
||||||
// }else{
|
// }else{
|
||||||
// groupByUseList = disasterInfoService.getDisasterStatistics(name);
|
// groupByUseList = disasterInfoService.getDisasterStatistics(name);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
return R.data(dataMap);
|
return R.data(dataMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -133,15 +123,22 @@ public class DisasterInfoController {
|
||||||
* 首页数据展示,包括响应中和未响应
|
* 首页数据展示,包括响应中和未响应
|
||||||
*
|
*
|
||||||
* @param query
|
* @param query
|
||||||
* @param respondStatus
|
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@GetMapping("/homeDisasterInfo")
|
@GetMapping("/homeDisasterInfo")
|
||||||
public R<BladePage<DisasterMangerInfo>> gethomeDisasterInfo(Query query, Integer respondStatus) {
|
public R<IPage<DisasterInfoVo>> gethomeDisasterInfo(Query query, @RequestParam Map<String, String> params) {
|
||||||
IPage<DisasterMangerInfo> pages = disasterInfoService.getHomeDisaster(Condition.getPage(query), respondStatus);
|
return R.data(disasterInfoVoService.page(Condition.getPage(query),Wrappers.<DisasterInfoVo>lambdaQuery()
|
||||||
return R.data(BladePage.of(pages));
|
.eq(DisasterInfoVo::getRespondStatus, Integer.valueOf(params.get("respondStatus")))
|
||||||
|
.ge(StringUtils.isNotBlank(String.valueOf(params.get("startTime"))),DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("startTime"))))
|
||||||
|
.le(StringUtils.isNotBlank(String.valueOf(params.get("endTime"))),DisasterInfoVo::getDisasterTime,LocalDate.parse(String.valueOf(params.get("endTime"))))
|
||||||
|
.eq(StringUtils.isNotBlank(String.valueOf(params.get("disasterType"))),DisasterInfoVo::getDisasterType, String.valueOf(params.get("disasterType")))
|
||||||
|
.orderByDesc(DisasterInfoVo::getDisasterTime)
|
||||||
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println(LocalDate.now().minusMonths(6).toString());
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 获取债害详情信息
|
* 获取债害详情信息
|
||||||
*
|
*
|
||||||
|
|
|
@ -78,7 +78,7 @@
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getHomeDisaster" resultType="com.kening.vordm.vo.DisasterMangerInfo">
|
<select id="getHomeDisaster" resultType="com.kening.vordm.vo.DisasterMangerInfo">
|
||||||
select <include refid="Home_Disaster_Info"></include>
|
select *
|
||||||
from (select distinct manager_id,disaster_id from guest_mamanager_info
|
from (select distinct manager_id,disaster_id from guest_mamanager_info
|
||||||
on g.manager_id=m.id and g.disaster_id=d.id
|
on g.manager_id=m.id and g.disaster_id=d.id
|
||||||
where d.respond_status=#{respondStatus}
|
where d.respond_status=#{respondStatus}
|
||||||
|
@ -94,14 +94,14 @@
|
||||||
GROUP BY bu.organization
|
GROUP BY bu.organization
|
||||||
</select>
|
</select>
|
||||||
<select id="getLeft3Data" resultType="com.kening.vordm.vo.GroupByUse">
|
<select id="getLeft3Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||||
select t.sponsor_organization as `name`, count(*) as cnt from disaster_info t 'sponsorOrganization' as `type` GROUP BY t.sponsor_organization ORDER BY cnt desc LIMIT 3
|
select t.sponsor_organization as `name`, count(*) as cnt , 'sponsorOrganization' as `type` from disaster_info t GROUP BY t.sponsor_organization ORDER BY cnt desc LIMIT 3
|
||||||
</select>
|
</select>
|
||||||
<select id="getLeft4Data" resultType="com.kening.vordm.vo.GroupByUse">
|
<select id="getLeft4Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||||
select t.response_organization as `name`, count(*) as cnt, 'responseOrganization' as `type` from guest_manage_disaster_ref t GROUP BY t.response_organization ORDER BY cnt desc LIMIT 3
|
select t.response_organization as `name`, count(*) as cnt, 'responseOrganization' as `type` from guest_manage_disaster_ref t GROUP BY t.response_organization ORDER BY cnt desc LIMIT 3
|
||||||
</select>
|
</select>
|
||||||
<select id="getLeft1Data" resultType="com.kening.vordm.vo.GroupByUse">
|
<select id="getLeft1Data" resultType="com.kening.vordm.vo.GroupByUse">
|
||||||
select b.dict_key, b.dict_value as name, count(t.disaster_type) as cnt, 'type' as `type`,
|
select b.dict_key, b.dict_value as name, count(t.disaster_type) as cnt, 'type' as `type`,
|
||||||
CONCAT('@/assets/home/icon-',b.dict_key,'.png') as icon
|
CONCAT('/icon_disastertype/icon-',b.dict_key,'.png') as icon
|
||||||
from blade_dict_biz b left join disaster_info t on b.dict_key = t.disaster_type
|
from blade_dict_biz b left join disaster_info t on b.dict_key = t.disaster_type
|
||||||
where b.`code` = 'disaster' and b.dict_key is not null
|
where b.`code` = 'disaster' and b.dict_key is not null
|
||||||
group by b.dict_key, b.dict_value
|
group by b.dict_key, b.dict_value
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
package com.kening.vordm.mapper;
|
||||||
|
|
||||||
|
import com.kening.vordm.vo.DisasterInfoVo;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangns
|
||||||
|
* @description 针对表【disaster_info_vo】的数据库操作Mapper
|
||||||
|
* @createDate 2023-04-10 17:33:26
|
||||||
|
* @Entity com.kening.vordm.vo.DisasterInfoVo
|
||||||
|
*/
|
||||||
|
public interface DisasterInfoVoMapper extends BaseMapper<DisasterInfoVo> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
package com.kening.vordm.service;
|
||||||
|
|
||||||
|
import com.kening.vordm.vo.DisasterInfoVo;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangns
|
||||||
|
* @description 针对表【disaster_info_vo】的数据库操作Service
|
||||||
|
* @createDate 2023-04-10 17:33:26
|
||||||
|
*/
|
||||||
|
public interface DisasterInfoVoService extends IService<DisasterInfoVo> {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
package com.kening.vordm.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.kening.vordm.vo.DisasterInfoVo;
|
||||||
|
import com.kening.vordm.service.DisasterInfoVoService;
|
||||||
|
import com.kening.vordm.mapper.DisasterInfoVoMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangns
|
||||||
|
* @description 针对表【disaster_info_vo】的数据库操作Service实现
|
||||||
|
* @createDate 2023-04-10 17:33:26
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class DisasterInfoVoServiceImpl extends ServiceImpl<DisasterInfoVoMapper, DisasterInfoVo>
|
||||||
|
implements DisasterInfoVoService{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
<?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="com.kening.vordm.mapper.DisasterInfoVoMapper">
|
||||||
|
|
||||||
|
<resultMap id="BaseResultMap" type="com.kening.vordm.vo.DisasterInfoVo">
|
||||||
|
<result property="id" column="id" jdbcType="BIGINT"/>
|
||||||
|
<result property="disasterType" column="disaster_type" jdbcType="VARCHAR"/>
|
||||||
|
<result property="disasterKeyword" column="disaster_keyword" jdbcType="VARCHAR"/>
|
||||||
|
<result property="disasterTime" column="disaster_time" jdbcType="DATE"/>
|
||||||
|
<result property="uploadTime" column="upload_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="geometry" column="geometry" jdbcType="VARCHAR"/>
|
||||||
|
<result property="disasterLevel" column="disaster_level" jdbcType="VARCHAR"/>
|
||||||
|
<result property="disasterCountry" column="disaster_country" jdbcType="VARCHAR"/>
|
||||||
|
<result property="respondStatus" column="respond_status" jdbcType="SMALLINT"/>
|
||||||
|
<result property="visitCount" column="visit_count" jdbcType="INTEGER"/>
|
||||||
|
<result property="downloadCount" column="download_count" jdbcType="INTEGER"/>
|
||||||
|
<result property="spiderType" column="spider_type" jdbcType="INTEGER"/>
|
||||||
|
<result property="tempendTime" column="tempend_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="tempStartTime" column="temp_start_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="vordmId" column="vordm_id" jdbcType="VARCHAR"/>
|
||||||
|
<result property="respondTime" column="respond_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="sponsorOrganization" column="sponsor_organization" jdbcType="VARCHAR"/>
|
||||||
|
<result property="disasterImg" column="disaster_img" jdbcType="VARCHAR"/>
|
||||||
|
<result property="dictValue" column="dict_value" jdbcType="VARCHAR"/>
|
||||||
|
<result property="size" column="size" jdbcType="DECIMAL"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
id,disaster_type,disaster_keyword,
|
||||||
|
disaster_time,upload_time,geometry,
|
||||||
|
disaster_level,disaster_country,respond_status,
|
||||||
|
visit_count,download_count,spider_type,
|
||||||
|
tempend_time,temp_start_time,create_time,
|
||||||
|
vordm_id,respond_time,sponsor_organization,
|
||||||
|
disaster_img,dict_value,size
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
Loading…
Reference in New Issue