增加了前端灾害数据的统计信息接口

This commit is contained in:
zxh 2023-04-05 18:27:32 +08:00
parent 39c3c6bcea
commit ff04cc156a
7 changed files with 69 additions and 30 deletions

View File

@ -0,0 +1,22 @@
package com.kening.vordm.vo;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import javax.swing.*;
@Data
@Getter
@Setter
public class groupByUse {
/**
* 名称
*/
private String name;
/**
* 数量
*/
private String count;
}

View File

@ -4,12 +4,10 @@ import lombok.Data;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import javax.swing.*;
@Data @Data
@Getter @Getter
@Setter @Setter
public class groupByUse { public class GroupByUse {
/** /**
* 名称 * 名称
*/ */
@ -19,4 +17,9 @@ public class groupByUse {
* 数量 * 数量
*/ */
private String count; private String count;
/**
* 图标
*/
private String icon;
} }

View File

@ -1,9 +1,9 @@
package com.kening.vordm.controller; package com.kening.vordm.controller;
import com.kening.vordm.vo.GroupByUse;
import org.springblade.core.mp.support.Query; import org.springblade.core.mp.support.Query;
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.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.kening.vordm.entity.DisasterInfo; import com.kening.vordm.entity.DisasterInfo;
import com.kening.vordm.entity.News; import com.kening.vordm.entity.News;
import com.kening.vordm.service.DisasterInfoService; import com.kening.vordm.service.DisasterInfoService;
@ -15,8 +15,6 @@ 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;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
@RestController @RestController
@RequiredArgsConstructor @RequiredArgsConstructor
@ -33,7 +31,7 @@ public class DisasterInfoController {
* @return * @return
*/ */
@GetMapping("/select-condition") @GetMapping("/select-condition")
public R<List<DisasterInfo>> 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=disasterInfo.getDisasterTime().toString();
@ -43,14 +41,6 @@ public class DisasterInfoController {
} }
/**
* 测试
* @return
*/
@GetMapping("/getAllData")
public R<List<DisasterInfo>> getalldata(){
return R.data(disasterInfoService.getAllData());
}
/** /**
* 指定条件返回数据 * 指定条件返回数据
* @param query * @param query
@ -63,4 +53,9 @@ public class DisasterInfoController {
List<Long> disasterIds = disasterInfoService.getDisasterId(disasterInfo); List<Long> disasterIds = disasterInfoService.getDisasterId(disasterInfo);
return R.data(newsService.page(Condition.getPage(query),new QueryWrapper<News>().in("disaster_id",disasterIds))); return R.data(newsService.page(Condition.getPage(query),new QueryWrapper<News>().in("disaster_id",disasterIds)));
} }
@GetMapping("/disasterStatistics")
public R<List<GroupByUse>> getDisasterStatistics(String name){
return R.data(disasterInfoService.getDisasterStatistics(name));
}
} }

View File

@ -3,6 +3,7 @@ package com.kening.vordm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.kening.vordm.entity.DisasterInfo; import com.kening.vordm.entity.DisasterInfo;
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;
@ -15,9 +16,12 @@ import java.util.List;
*/ */
public interface DisasterInfoMapper extends BaseMapper<DisasterInfo> { public interface DisasterInfoMapper extends BaseMapper<DisasterInfo> {
List<DisasterInfo> getSelectCondition(@Param("disaster_type") String disaster_type, List<GroupByUse> getSelectCondition(@Param("disaster_type") String disaster_type,
@Param("disaster_country") String disaster_country, @Param("disaster_country") String disaster_country,
@Param("disaster_time") String disaster_time, @Param("disaster_time") String disaster_time,
@Param("name") String name); @Param("name") String name);
List<DisasterInfo> getHomeDisasterInfo(); List<DisasterInfo> getHomeDisasterInfo();
List<GroupByUse> getDisasterStatistics(@Param("name" ) String name );
} }

View File

@ -36,10 +36,10 @@
select * select *
from new_vordm.disaster_info from new_vordm.disaster_info
</select> </select>
<select id="getSelectCondition" resultType="com.kening.vordm.vo.groupByUse"> <select id="getSelectCondition" resultType="com.kening.vordm.vo.GroupByUse">
select distinct ${name} as name select distinct ${name} as name
from disaster_info from disaster_info
<if test="disaster_time!=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=#{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>
@ -47,4 +47,12 @@
<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>
<if test="disaster_time!=null"> disaster_time like concat('%',#{disaster_time},'%')</if> <if test="disaster_time!=null"> disaster_time like concat('%',#{disaster_time},'%')</if>
</select> </select>
<select id="getDisasterStatistics" resultType="com.kening.vordm.vo.GroupByUse">
select ${name} as name,count(*) as cnt
from disaster_info
group by ${name}
order by cnt desc
limit 0,7
</select>
</mapper> </mapper>

View File

@ -3,6 +3,7 @@ package com.kening.vordm.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.kening.vordm.entity.DisasterInfo; import com.kening.vordm.entity.DisasterInfo;
import com.kening.vordm.vo.GroupByUse;
import java.util.List; import java.util.List;
@ -14,7 +15,7 @@ import java.util.List;
public interface DisasterInfoService extends IService<DisasterInfo> { public interface DisasterInfoService extends IService<DisasterInfo> {
List<DisasterInfo> getAllData(); List<DisasterInfo> getAllData();
List<DisasterInfo> getConditionData(String type,String country,String time,String name); List<GroupByUse> getConditionData(String type, String country, String time, String name);
// Long getDisasterId(DisasterInfo disasterInfo); // Long getDisasterId(DisasterInfo disasterInfo);
/** /**
@ -23,4 +24,6 @@ public interface DisasterInfoService extends IService<DisasterInfo> {
* @return * @return
*/ */
List<Long> getDisasterId(DisasterInfo disasterInfo); List<Long> getDisasterId(DisasterInfo disasterInfo);
List<GroupByUse> getDisasterStatistics( String name);
} }

View File

@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.kening.vordm.entity.DisasterInfo; import com.kening.vordm.entity.DisasterInfo;
import com.kening.vordm.mapper.DisasterInfoMapper; import com.kening.vordm.mapper.DisasterInfoMapper;
import com.kening.vordm.service.DisasterInfoService; import com.kening.vordm.service.DisasterInfoService;
import com.kening.vordm.vo.GroupByUse;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springblade.core.mp.support.Condition;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
@ -29,11 +29,16 @@ implements DisasterInfoService {
public List<DisasterInfo> getAllData(){ public List<DisasterInfo> getAllData(){
return this.baseMapper.getHomeDisasterInfo(); return this.baseMapper.getHomeDisasterInfo();
} }
public List<DisasterInfo> getConditionData(String type,String country,String time,String name){ public List<GroupByUse> getConditionData(String type, String country, String time, String name){
List<DisasterInfo> disasterInfos=this.baseMapper.getSelectCondition(type,country,time,name); List<GroupByUse> disasterInfos=this.baseMapper.getSelectCondition(type,country,time,name);
return disasterInfos; return disasterInfos;
} }
/**
* 用于获取灾害id类型
* @param disasterInfo
* @return
*/
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){
@ -56,9 +61,8 @@ implements DisasterInfoService {
} }
return null; return null;
} }
// public Long getDisasterId(DisasterInfo disasterInfo){
// QueryWrapper qw=new QueryWrapper<>(disasterInfo); public List<GroupByUse> getDisasterStatistics(String name){
// Long va=; return this.baseMapper.getDisasterStatistics(name);
// return va; }
//// }
} }