提交 6bf23b02 作者: 925993793@qq.com

事件列表也查询逻辑重构

上级 4d32e6e5
package com.zzsn.event.controller;
import com.zzsn.event.entity.EventCategory;
import com.zzsn.event.service.IEventCategoryService;
import com.zzsn.event.constant.Result;
import com.zzsn.event.service.IEventCategoryService;
import com.zzsn.event.util.tree.Node;
import com.zzsn.event.util.tree.TreeUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
......@@ -12,8 +13,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 事件分类
......@@ -37,20 +36,9 @@ public class EventCategoryController {
@ApiOperation(value="获取树状数据", notes="获取树状数据")
@GetMapping(value = "/treeData")
public Result<?> treeData() {
Map<String, List<EventCategory>> collect = eventCategoryService.list().stream().collect(Collectors.groupingBy(EventCategory::getPid));
EventCategory parent = EventCategory.builder().id("0").typeName("所有").hasChild(1).build();
buildData(parent,collect);
return Result.OK(parent);
}
private void buildData(EventCategory parent, Map<String, List<EventCategory>> collect) {
if(parent.getHasChild()==1){
parent.setChildren(collect.get(parent.getId()));
collect.remove(parent.getId());
for (EventCategory child : parent.getChildren()) {
buildData(child,collect);
}
}
List<Node> nodes = eventCategoryService.categoryList();
List<Node> tree = TreeUtil.tree(nodes, "0");
return Result.OK(tree);
}
}
......@@ -7,6 +7,8 @@ import com.zzsn.event.entity.Event;
import com.zzsn.event.es.EsService;
import com.zzsn.event.service.EventSimpleService;
import com.zzsn.event.service.IEventService;
import com.zzsn.event.util.user.UserUtil;
import com.zzsn.event.util.user.UserVo;
import com.zzsn.event.vo.*;
import com.zzsn.event.xxljob.service.IXxlJobInfoService;
import io.swagger.annotations.Api;
......@@ -44,6 +46,7 @@ public class EventDataController {
/**
* 事件分页列表-门户
*
* @param category 栏目类型(1-全部;2-自动追踪;3-人工创建;4-我创建的)
* @param eventId 事件id
* @param eventName 事件名称
* @param eventType 事件分类id
......@@ -58,7 +61,8 @@ public class EventDataController {
*/
@ApiOperation(value = "事件-分页列表查询", notes = "事件-分页列表查询")
@GetMapping(value = "/pageList")
public Result<?> pageList(@RequestParam(name = "eventId", required = false) String eventId,
public Result<?> pageList(@RequestParam(name = "category") Integer category,
@RequestParam(name = "eventId", required = false) String eventId,
@RequestParam(name = "eventName", required = false) String eventName,
@RequestParam(name = "eventType", required = false) String eventType,
@RequestParam(name = "labelField", required = false) String labelField,
......@@ -67,7 +71,12 @@ public class EventDataController {
@RequestParam(name = "orderType", required = false) String orderType,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
IPage<EventFrontVO> pageList = eventService.frontPageList(eventId, eventName, eventType, labelField, labelName, order, orderType, pageNo, pageSize);
String username = null;
if (category == 4) {
UserVo currentUser = UserUtil.getLoginUser();
username = currentUser.getUsername();
}
IPage<EventFrontVO> pageList = eventService.frontPageList(category, username, eventId, eventName, eventType, labelField, labelName, order, orderType, pageNo, pageSize);
return Result.OK(pageList);
}
......@@ -79,7 +88,7 @@ public class EventDataController {
* @date 2024/7/22
*/
@PostMapping("/simpleSaveEvent")
public Result<?> addEvent(@RequestBody AddEventVO addEventVO){
public Result<?> addEvent(@RequestBody AddEventVO addEventVO) {
Event event = eventSimpleService.simpleSave(addEventVO);
iXxlJobInfoService.subjectInsert(event);
return Result.OK();
......
......@@ -173,7 +173,7 @@ public class EventExportController {
}
contents.add(content);
contentSortMap.put(docTitle, contents);//文档结构图中,文章标题
Map<String, Object> catalog = new HashMap();
Map<String, Object> catalog = new HashMap<>();
catalog.put("index", num);
catalog.put("title", title);
catalog.put("id", rid + "-" + (num - 1));
......
......@@ -114,6 +114,7 @@ public class EventManageController {
UserVo currentUser = UserUtil.getLoginUser();
eventParam.setCreateTime(new Date());
eventParam.setUpdateTime(new Date());
eventParam.setCreateBy(currentUser.getUsername());
Event event = eventService.saveMain(eventParam);
//新建的专题授权给自己和客户
if (currentUser.getCategory().equals(Constants.ADMIN_USER)) {
......@@ -137,7 +138,9 @@ public class EventManageController {
@ApiOperation(value = "事件-编辑", notes = "事件-编辑")
@PostMapping(value = "/edit")
public Result<?> edit(@RequestBody AddEventParam addEventParam) {
UserVo currentUser = UserUtil.getLoginUser();
addEventParam.setUpdateTime(new Date());
addEventParam.setUpdateBy(currentUser.getUsername());
eventService.updateMain(addEventParam);
//更新xxljob
List<String> subjectCodes = new ArrayList<>();
......
package com.zzsn.event.controller.plat;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zzsn.event.constant.Constants;
......@@ -290,7 +289,7 @@ public class PlatEventManageController {
/**
* 事件对应专题库的资讯分页列表
* 事件对应采集库的资讯分页列表
*
* @param eventDataCondition 筛选条件
* @param sourceId 信息源id
......
......@@ -65,9 +65,12 @@ public interface EventMapper extends BaseMapper<Event> {
/**
* 分页列表-后台管理
*
* @param createBy 创建人
* @param facePublic 是否公开(0-未公开;1-已公开)
* @param category 事件创建方式(1-用户创建;2-事件挖掘)
* @param eventId 事件id
* @param eventName 事件名称
* @param eventTypes 事件分类id集合
* @param eventTypes 事件分类id集合
* @param labelField 搜索字段
* @param labelName 搜索词
* @param type 类别(1-自定义标签;2-抽取标签)
......@@ -78,7 +81,9 @@ public interface EventMapper extends BaseMapper<Event> {
* @author lkg
* @date 2024/4/8
*/
List<EventFrontVO> frontPageList(@Param("eventId") String eventId, @Param("eventName") String eventName,
List<EventFrontVO> frontPageList(@Param("createBy") String createBy, @Param("facePublic") Integer facePublic,
@Param("category") Integer category,
@Param("eventId") String eventId, @Param("eventName") String eventName,
@Param("eventTypes") List<String> eventTypes, @Param("labelField") String labelField,
@Param("labelName") String labelName, @Param("type") Integer type,
@Param("order") String order, @Param("orderType") String orderType,
......@@ -87,16 +92,21 @@ public interface EventMapper extends BaseMapper<Event> {
/**
* 总数量-后台管理
*
* @param createBy 创建人
* @param facePublic 是否公开(0-未公开;1-已公开)
* @param category 事件创建方式(1-用户创建;2-事件挖掘)
* @param eventId 事件id
* @param eventName 事件名称
* @param eventTypes 事件分类id集合
* @param eventTypes 事件分类id集合
* @param labelField 搜索字段
* @param labelName 搜索词
* @param type 类别(1-自定义标签;2-抽取标签)
* @author lkg
* @date 2024/4/8
*/
Integer frontTotalCount(@Param("eventId") String eventId, @Param("eventName") String eventName,
Integer frontTotalCount(@Param("createBy") String createBy, @Param("facePublic") Integer facePublic,
@Param("category") Integer category,
@Param("eventId") String eventId, @Param("eventName") String eventName,
@Param("eventTypes") List<String> eventTypes, @Param("labelField") String labelField,
@Param("labelName") String labelName, @Param("type") Integer type);
......
......@@ -3,6 +3,6 @@
<mapper namespace="com.zzsn.event.mapper.EventCategoryMapper">
<select id="categoryList" resultType="com.zzsn.event.util.tree.Node">
select id,type_name as name,pid from event_category
select id,type_name as name,pid,has_child from event_category
</select>
</mapper>
\ No newline at end of file
......@@ -6,6 +6,8 @@ import com.zzsn.event.enums.CodePrefixEnum;
import com.zzsn.event.util.CodeGenerateUtil;
import com.zzsn.event.util.CronUtil;
import com.zzsn.event.util.DateUtil;
import com.zzsn.event.util.user.UserUtil;
import com.zzsn.event.util.user.UserVo;
import com.zzsn.event.vo.AddEventVO;
import com.zzsn.event.vo.RegionVO;
import com.zzsn.event.vo.SubjectKeywordsMap;
......@@ -77,6 +79,8 @@ public class EventSimpleService {
event.setSpace(2);
event.setCron(CronUtil.generateCron("2",2));
event.setCreateTime(new Date());
UserVo currentUser = UserUtil.getLoginUser();
event.setCreateBy(currentUser.getUsername());
eventService.save(event);
String eventId = event.getId();
saveMapMain(eventId);
......
......@@ -50,6 +50,8 @@ public interface IEventService extends IService<Event> {
/**
* 分页列表-后台管理
*
* @param columnType 栏目类型(1-全部;2-自动追踪;3-人工创建;4-我创建的)
* @param username 登录用户的账号
* @param eventId 事件id
* @param eventName 事件名称
* @param eventType 事件分类id
......@@ -62,7 +64,7 @@ public interface IEventService extends IService<Event> {
* @author lkg
* @date 2024/4/8
*/
IPage<EventFrontVO> frontPageList(String eventId, String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize);
IPage<EventFrontVO> frontPageList(Integer columnType, String username, String eventId, String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize);
/**
* 分页列表(专题类别)-新平台管理
......
......@@ -112,7 +112,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
}
@Override
public IPage<EventFrontVO> frontPageList(String eventId,String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize) {
public IPage<EventFrontVO> frontPageList(Integer columnType,String username,String eventId,String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize) {
int offset = (pageNo - 1) * pageSize;
Integer type = null;
if (StringUtils.isNotEmpty(labelField) && labelField.equals("event_label")) {
......@@ -123,7 +123,20 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
List<Node> nodes = eventCategoryService.categoryList();
eventTypes = TreeUtil.belowList(nodes, eventType, true);
}
List<EventFrontVO> pageList = baseMapper.frontPageList(eventId,eventName, eventTypes, labelField, labelName, type, order, orderType, offset, pageSize);
Integer facePublic = null;
Integer category = null;
if (columnType == 1) {
facePublic = 1;
} else if (columnType == 2) {
facePublic = 1;
category = 2;
} else if (columnType == 3) {
facePublic = 1;
category = 1;
} else {
category = 1;
}
List<EventFrontVO> pageList = baseMapper.frontPageList(username,facePublic,category,eventId,eventName, eventTypes, labelField, labelName, type, order, orderType, offset, pageSize);
if (CollectionUtils.isNotEmpty(pageList)) {
//获取专题资讯的首发来源
Map<String, String> map = getFirstMap(pageList);
......@@ -135,7 +148,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
}
}
//获取总条数
Integer count = baseMapper.frontTotalCount(eventId,eventName, eventTypes, labelField, labelName, type);
Integer count = baseMapper.frontTotalCount(username,facePublic,category,eventId,eventName, eventTypes, labelField, labelName, type);
IPage<EventFrontVO> pageData = new Page<>(pageNo, pageSize, count);
pageData.setRecords(pageList);
return pageData;
......
......@@ -3,7 +3,9 @@ package com.zzsn.event.task;
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.zzsn.event.entity.Event;
import com.zzsn.event.service.EsStatisticsService;
import com.zzsn.event.service.IEventService;
......@@ -53,7 +55,9 @@ public class EventHotTask {
*/
@Scheduled(cron = "0 0 0/3 * * ?")
public void hot() {
List<Event> list = eventService.list();
LambdaQueryWrapper<Event> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.eq(Event::getFacePublic,1).eq(Event::getPublishStatus,1);
List<Event> list = eventService.list(queryWrapper);
List<HotVO> countList = new ArrayList<>();
for (Event event : list) {
CompletableFuture<HotVO> async = CompletableFuture.supplyAsync(() -> {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论