多媒体后台接口-liyuchen
This commit is contained in:
parent
392831be1e
commit
39c3c6bcea
|
@ -0,0 +1,20 @@
|
|||
package com.kening.vordm.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 热点区域统计实体类
|
||||
* @author liyuchen
|
||||
* @date 2023/04/05
|
||||
*/
|
||||
@Data
|
||||
public class HotspotArea {
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 频次
|
||||
*/
|
||||
private Integer value;
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package com.kening.vordm.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 推特数量统计实体
|
||||
* @author liyuchen
|
||||
* @date 2023/04/05
|
||||
*/
|
||||
@Data
|
||||
public class Tweets {
|
||||
/**
|
||||
* 时间
|
||||
*/
|
||||
private String date;
|
||||
/**
|
||||
* 数量
|
||||
*/
|
||||
private Integer num;
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
package com.kening.vordm.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 词云图表统计实体
|
||||
* @author liyuchen
|
||||
* @date 2023/04/05
|
||||
*/
|
||||
@Data
|
||||
public class WorldCharts {
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
private String date;
|
||||
/**
|
||||
* 词名
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 频次
|
||||
*/
|
||||
private Integer value;
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
package com.kening.vordm.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.News;
|
||||
import com.kening.vordm.service.NewsService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springblade.core.mp.support.Condition;
|
||||
import org.springblade.core.mp.support.Query;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
/**
|
||||
* 新闻UI前端控制器
|
||||
* @author liyuchen
|
||||
* @date 2023/04/04
|
||||
*/
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/ui/news")
|
||||
public class NewsController {
|
||||
|
||||
private NewsService newsService;
|
||||
|
||||
/**
|
||||
* VordmUI-新闻列表分页查询
|
||||
* @param params
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/pages")
|
||||
public R<IPage<News>> pages(@RequestParam Map<String,Object> params, Query query){
|
||||
return R.data(newsService.page(Condition.getPage(query),Condition.getQueryWrapper(params,News.class)));
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
package com.kening.vordm.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.kening.vordm.entity.SocialMedia;
|
||||
import com.kening.vordm.entity.Tweets;
|
||||
import com.kening.vordm.service.SocialMediaService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springblade.core.mp.support.Condition;
|
||||
import org.springblade.core.mp.support.Query;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 多媒体社交数据-前端UI控制器
|
||||
* @author liyuchen
|
||||
* @date 2023/04/05
|
||||
*/
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/ui/socialMedia")
|
||||
public class SocialMediaController {
|
||||
|
||||
private SocialMediaService service;
|
||||
|
||||
/**
|
||||
* 媒体社交数据分页展示
|
||||
* @param params
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/pages")
|
||||
public R<IPage<SocialMedia>> pages(@RequestParam Map<String,Object> params, Query query){
|
||||
return R.data(service.page(Condition.getPage(query),Condition.getQueryWrapper(params,SocialMedia.class)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 推文统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/tweetsCount")
|
||||
public R<List<Tweets>> tweetsCount(@RequestParam Long disasterId){
|
||||
return R.data(service.tweetsCount(disasterId));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
package com.kening.vordm.controller;
|
||||
|
||||
import com.kening.vordm.entity.Tweets;
|
||||
import com.kening.vordm.entity.WordColuds;
|
||||
import com.kening.vordm.entity.WorldCharts;
|
||||
import com.kening.vordm.service.WordColudsService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springblade.core.tool.api.R;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 词云-UI前端控制器
|
||||
* @author liyuchen
|
||||
* @date 2023/04/05
|
||||
*/
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/ui/word")
|
||||
public class WordColudsController {
|
||||
|
||||
private WordColudsService service;
|
||||
|
||||
/**
|
||||
* 词云统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/wordCount")
|
||||
public R<Map<String,List<WorldCharts>>> wordCount(@RequestParam Long disasterId){
|
||||
return R.data(service.wordCount(disasterId));
|
||||
}
|
||||
}
|
|
@ -3,6 +3,10 @@ package com.kening.vordm.mapper;
|
|||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.kening.vordm.entity.SocialMedia;
|
||||
import com.kening.vordm.entity.Tweets;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
|
@ -12,5 +16,10 @@ import com.kening.vordm.entity.SocialMedia;
|
|||
*/
|
||||
public interface SocialMediaMapper extends BaseMapper<SocialMedia> {
|
||||
|
||||
|
||||
/**
|
||||
* 推文统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
List<Tweets> tweetsCount(@Param("disasterId") Long disasterId);
|
||||
}
|
||||
|
|
|
@ -36,4 +36,20 @@
|
|||
disaster_id,type,status,
|
||||
manager_id,review_time
|
||||
</sql>
|
||||
|
||||
<select id="tweetsCount" resultType="com.kening.vordm.entity.Tweets" parameterType="java.lang.Long">
|
||||
select
|
||||
DATE_FORMAT(time,'%Y-%m-%d %HH') date,
|
||||
count(id) num
|
||||
from social_media
|
||||
<where>
|
||||
and type = 0
|
||||
and status = 1
|
||||
<if test="disasterId!=null">
|
||||
and disaster_id = #{disasterId}
|
||||
</if>
|
||||
</where>
|
||||
group by date
|
||||
order by date
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
@ -3,6 +3,10 @@ package com.kening.vordm.mapper;
|
|||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.kening.vordm.entity.WordColuds;
|
||||
import com.kening.vordm.entity.WorldCharts;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
|
@ -13,4 +17,10 @@ import com.kening.vordm.entity.WordColuds;
|
|||
public interface WordColudsMapper extends BaseMapper<WordColuds> {
|
||||
|
||||
|
||||
/**
|
||||
* 词云统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
List<WorldCharts> wordCount(@Param("disasterId") Long disasterId);
|
||||
}
|
||||
|
|
|
@ -21,4 +21,17 @@
|
|||
word,disaster_id,create_time,
|
||||
status,manager_id,review_time
|
||||
</sql>
|
||||
<select id="wordCount" resultType="com.kening.vordm.entity.WorldCharts" parameterType="java.lang.Long">
|
||||
select
|
||||
DATE_FORMAT(time,'%Y-%m-%d') date,
|
||||
frequency value,
|
||||
word name
|
||||
from word_coluds
|
||||
<where>
|
||||
and `status` = 1
|
||||
<if test="disasterId!=null">
|
||||
and disaster_id = #{disasterId}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
@ -3,6 +3,9 @@ package com.kening.vordm.service;
|
|||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.kening.vordm.entity.SocialMedia;
|
||||
import com.kening.vordm.entity.Tweets;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
|
@ -10,5 +13,10 @@ import com.kening.vordm.entity.SocialMedia;
|
|||
* @createDate 2023-04-04 15:54:31
|
||||
*/
|
||||
public interface SocialMediaService extends IService<SocialMedia> {
|
||||
|
||||
/**
|
||||
* 推文统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
List<Tweets> tweetsCount(Long disasterId);
|
||||
}
|
||||
|
|
|
@ -3,6 +3,10 @@ package com.kening.vordm.service;
|
|||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.kening.vordm.entity.WordColuds;
|
||||
import com.kening.vordm.entity.WorldCharts;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
|
@ -11,4 +15,10 @@ import com.kening.vordm.entity.WordColuds;
|
|||
*/
|
||||
public interface WordColudsService extends IService<WordColuds> {
|
||||
|
||||
/**
|
||||
* 词云统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
Map<String, List<WorldCharts>> wordCount(Long disasterId);
|
||||
}
|
||||
|
|
|
@ -2,10 +2,13 @@ package com.kening.vordm.service.impl;
|
|||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.kening.vordm.entity.SocialMedia;
|
||||
import com.kening.vordm.entity.Tweets;
|
||||
import com.kening.vordm.mapper.SocialMediaMapper;
|
||||
import com.kening.vordm.service.SocialMediaService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
* @description 针对表【social_media(社交媒体数据表,主要指twitter,facebook,微博等数据来源,重要字段 time-content)】的数据库操作Service实现
|
||||
|
@ -15,4 +18,13 @@ import org.springframework.stereotype.Service;
|
|||
public class SocialMediaServiceImpl extends ServiceImpl<SocialMediaMapper, SocialMedia>
|
||||
implements SocialMediaService {
|
||||
|
||||
/**
|
||||
* 推文统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Tweets> tweetsCount(Long disasterId) {
|
||||
return baseMapper.tweetsCount(disasterId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,10 +2,15 @@ package com.kening.vordm.service.impl;
|
|||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.kening.vordm.entity.WordColuds;
|
||||
import com.kening.vordm.entity.WorldCharts;
|
||||
import com.kening.vordm.mapper.WordColudsMapper;
|
||||
import com.kening.vordm.service.WordColudsService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author G1393
|
||||
* @description 针对表【word_coluds(词云数据)】的数据库操作Service实现
|
||||
|
@ -15,4 +20,14 @@ import org.springframework.stereotype.Service;
|
|||
public class WordColudsServiceImpl extends ServiceImpl<WordColudsMapper, WordColuds>
|
||||
implements WordColudsService {
|
||||
|
||||
/**
|
||||
* 词云统计
|
||||
* @param disasterId 灾害id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Map<String, List<WorldCharts>> wordCount(Long disasterId) {
|
||||
List<WorldCharts> wordColudsList = baseMapper.wordCount(disasterId);
|
||||
return wordColudsList.stream().collect(Collectors.groupingBy(WorldCharts::getDate));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue