Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
E
event
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
陈世强
event
Commits
f2cacf07
提交
f2cacf07
authored
9月 23, 2025
作者:
925993793@qq.com
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
【事件分析】-企业案例增加标记功能优化
上级
a2206a18
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
213 行增加
和
9 行删除
+213
-9
EventAnalysisController.java
...va/com/zzsn/event/controller/EventAnalysisController.java
+20
-1
LLmConfigController.java
...com/zzsn/event/controller/common/LLmConfigController.java
+20
-1
EventWebSearchArticle.java
...ain/java/com/zzsn/event/entity/EventWebSearchArticle.java
+68
-0
EventWebSearchArticleMapper.java
...va/com/zzsn/event/mapper/EventWebSearchArticleMapper.java
+18
-0
AnalysisService.java
src/main/java/com/zzsn/event/service/AnalysisService.java
+2
-1
EventWebSearchArticleService.java
.../com/zzsn/event/service/EventWebSearchArticleService.java
+13
-0
AnalysisServiceImpl.java
...java/com/zzsn/event/service/impl/AnalysisServiceImpl.java
+24
-4
EventWebSearchArticleServiceImpl.java
.../event/service/impl/EventWebSearchArticleServiceImpl.java
+22
-0
NetWorkEventTask.java
src/main/java/com/zzsn/event/task/NetWorkEventTask.java
+3
-2
DocUtil.java
src/main/java/com/zzsn/event/util/DocUtil.java
+23
-0
没有找到文件。
src/main/java/com/zzsn/event/controller/EventAnalysisController.java
浏览文件 @
f2cacf07
...
@@ -82,6 +82,8 @@ public class EventAnalysisController {
...
@@ -82,6 +82,8 @@ public class EventAnalysisController {
private
CommonService
commonService
;
private
CommonService
commonService
;
@Autowired
@Autowired
private
IEventService
eventService
;
private
IEventService
eventService
;
@Autowired
private
EventWebSearchArticleService
eventWebSearchArticleService
;
/**
/**
...
@@ -634,7 +636,7 @@ public class EventAnalysisController {
...
@@ -634,7 +636,7 @@ public class EventAnalysisController {
}
}
String
versionData
=
eventAnalysisVersionRecordService
.
getVersionData
(
versionId
,
AnalysisColumnEnum
.
COUNTRY_POLICY
.
getCode
());
String
versionData
=
eventAnalysisVersionRecordService
.
getVersionData
(
versionId
,
AnalysisColumnEnum
.
COUNTRY_POLICY
.
getCode
());
//String result = analysisService.llmResult(eventId, startTime, endTime, AnalysisColumnEnum.COUNTRY_POLICY.getCode());
//String result = analysisService.llmResult(eventId, startTime, endTime, AnalysisColumnEnum.COUNTRY_POLICY.getCode());
return
Result
.
OK
(
JSON
.
parseArray
(
versionData
,
JSONObject
.
class
));
return
Result
.
OK
(
JSON
.
parseArray
(
versionData
,
JSONObject
.
class
));
}
}
...
@@ -928,6 +930,23 @@ public class EventAnalysisController {
...
@@ -928,6 +930,23 @@ public class EventAnalysisController {
}
}
/**
/**
* 大模型接口引用资讯详情
*
* @param versionId 版本id
* @param refer 引用资讯id
* @author lkg
* @date 2025/9/23
*/
@GetMapping
(
"/webSearchArticleInfo"
)
private
Result
<?>
webSearchArticleInfo
(
String
versionId
,
String
refer
)
{
LambdaQueryWrapper
<
EventWebSearchArticle
>
queryWrapper
=
Wrappers
.
lambdaQuery
();
queryWrapper
.
eq
(
EventWebSearchArticle:
:
getVersionId
,
versionId
)
.
eq
(
EventWebSearchArticle:
:
getRefer
,
refer
);
EventWebSearchArticle
one
=
eventWebSearchArticleService
.
getOne
(
queryWrapper
);
return
Result
.
OK
(
one
);
}
/**
* 获取事件分析报告详细信息
* 获取事件分析报告详细信息
*
*
* @param eventId 事件id
* @param eventId 事件id
...
...
src/main/java/com/zzsn/event/controller/common/LLmConfigController.java
浏览文件 @
f2cacf07
...
@@ -2,6 +2,8 @@ package com.zzsn.event.controller.common;
...
@@ -2,6 +2,8 @@ package com.zzsn.event.controller.common;
import
com.alibaba.fastjson2.JSON
;
import
com.alibaba.fastjson2.JSON
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.zzsn.event.constant.Result
;
import
com.zzsn.event.constant.Result
;
import
com.zzsn.event.entity.Event
;
import
com.zzsn.event.entity.Event
;
import
com.zzsn.event.entity.EventAnalysisVersionRecord
;
import
com.zzsn.event.entity.EventAnalysisVersionRecord
;
...
@@ -57,6 +59,23 @@ public class LLmConfigController {
...
@@ -57,6 +59,23 @@ public class LLmConfigController {
}
}
/**
/**
* 某栏目的默认配置信息
*
* @param columnCode 栏目编码
* @author lkg
* @date 2025/9/23
*/
@GetMapping
(
"/defaultConfigInfo"
)
public
Result
<?>
configInfo
(
@RequestParam
String
columnCode
)
{
LambdaQueryWrapper
<
EventLlmConfig
>
queryWrapper
=
Wrappers
.
lambdaQuery
();
queryWrapper
.
eq
(
EventLlmConfig:
:
getColumnCode
,
columnCode
)
.
eq
(
EventLlmConfig:
:
getYnDefault
,
1
)
.
eq
(
EventLlmConfig:
:
getStatus
,
1
);
EventLlmConfig
config
=
llmConfigService
.
getOne
(
queryWrapper
);
return
Result
.
OK
(
config
);
}
/**
* 批量编辑事件的大模型配置信息
* 批量编辑事件的大模型配置信息
*
*
* @param eventLlmConfigList 大模型配置信息
* @param eventLlmConfigList 大模型配置信息
...
@@ -103,7 +122,7 @@ public class LLmConfigController {
...
@@ -103,7 +122,7 @@ public class LLmConfigController {
if
(
Objects
.
equals
(
columnCode
,
AnalysisColumnEnum
.
ENTERPRISE_CASE
.
getCode
()))
{
if
(
Objects
.
equals
(
columnCode
,
AnalysisColumnEnum
.
ENTERPRISE_CASE
.
getCode
()))
{
//企业案例,需要传入资讯且补联网查询
//企业案例,需要传入资讯且补联网查询
webSearch
=
false
;
webSearch
=
false
;
List
<
SpecialInformation
>
informationList
=
analysisService
.
modelAnalysisInformationList
(
eventId
,
eventName
);
List
<
SpecialInformation
>
informationList
=
analysisService
.
modelAnalysisInformationList
(
eventId
,
eventName
,
versionId
);
if
(
CollectionUtils
.
isNotEmpty
(
informationList
))
{
if
(
CollectionUtils
.
isNotEmpty
(
informationList
))
{
content
.
append
(
"\n参考资讯:"
).
append
(
JSON
.
toJSONString
(
informationList
));
content
.
append
(
"\n参考资讯:"
).
append
(
JSON
.
toJSONString
(
informationList
));
}
}
...
...
src/main/java/com/zzsn/event/entity/EventWebSearchArticle.java
0 → 100644
浏览文件 @
f2cacf07
package
com
.
zzsn
.
event
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 事件分析-网络搜索资讯表
* @TableName event_web_search_article
*/
@Data
@TableName
(
"event_web_search_article"
)
@EqualsAndHashCode
(
callSuper
=
false
)
@Accessors
(
chain
=
true
)
public
class
EventWebSearchArticle
implements
Serializable
{
/**
* 主键id
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
private
String
id
;
/**
* 事件分析版本id
*/
private
String
versionId
;
/**
* 角标序号
*/
private
String
refer
;
/**
* 标题
*/
private
String
title
;
/**
* 内容摘要
*/
private
String
content
;
/**
* 网站名称
*/
private
String
origin
;
/**
* 发布时间
*/
private
String
publishDate
;
/**
* 原文链接
*/
private
String
sourceAddress
;
/**
* 网站图标
*/
private
String
icon
;
/**
* 创建时间
*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createTime
;
}
src/main/java/com/zzsn/event/mapper/EventWebSearchArticleMapper.java
0 → 100644
浏览文件 @
f2cacf07
package
com
.
zzsn
.
event
.
mapper
;
import
com.zzsn.event.entity.EventWebSearchArticle
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
/**
* @author lenovo
* @description 针对表【event_web_search_article(事件分析-网络搜索资讯表)】的数据库操作Mapper
* @createDate 2025-09-23 16:26:19
* @Entity com.zzsn.event.entity.EventWebSearchArticle
*/
public
interface
EventWebSearchArticleMapper
extends
BaseMapper
<
EventWebSearchArticle
>
{
}
src/main/java/com/zzsn/event/service/AnalysisService.java
浏览文件 @
f2cacf07
...
@@ -124,8 +124,9 @@ public interface AnalysisService {
...
@@ -124,8 +124,9 @@ public interface AnalysisService {
*
*
* @param eventId 事件id
* @param eventId 事件id
* @param eventName 事件名称
* @param eventName 事件名称
* @param versionId 事件分析版本id
* @author lkg
* @author lkg
* @date 2025/7/19
* @date 2025/7/19
*/
*/
List
<
SpecialInformation
>
modelAnalysisInformationList
(
String
eventId
,
String
eventName
);
List
<
SpecialInformation
>
modelAnalysisInformationList
(
String
eventId
,
String
eventName
,
String
versionId
);
}
}
src/main/java/com/zzsn/event/service/EventWebSearchArticleService.java
0 → 100644
浏览文件 @
f2cacf07
package
com
.
zzsn
.
event
.
service
;
import
com.zzsn.event.entity.EventWebSearchArticle
;
import
com.baomidou.mybatisplus.extension.service.IService
;
/**
* @author lenovo
* @description 针对表【event_web_search_article(事件分析-网络搜索资讯表)】的数据库操作Service
* @createDate 2025-09-23 16:26:19
*/
public
interface
EventWebSearchArticleService
extends
IService
<
EventWebSearchArticle
>
{
}
src/main/java/com/zzsn/event/service/impl/AnalysisServiceImpl.java
浏览文件 @
f2cacf07
...
@@ -33,6 +33,7 @@ import java.io.InputStream;
...
@@ -33,6 +33,7 @@ import java.io.InputStream;
import
java.net.URL
;
import
java.net.URL
;
import
java.net.URLConnection
;
import
java.net.URLConnection
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.CompletableFuture
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -66,6 +67,8 @@ public class AnalysisServiceImpl implements AnalysisService {
...
@@ -66,6 +67,8 @@ public class AnalysisServiceImpl implements AnalysisService {
private
EventLlmConfigService
eventLlmConfigService
;
private
EventLlmConfigService
eventLlmConfigService
;
@Autowired
@Autowired
private
PythonUtil
pythonUtil
;
private
PythonUtil
pythonUtil
;
@Autowired
private
EventWebSearchArticleService
eventWebSearchArticleService
;
/*
/*
* 优先级:事件脉络 > 伪事件脉络 > 资讯
* 优先级:事件脉络 > 伪事件脉络 > 资讯
...
@@ -473,7 +476,7 @@ public class AnalysisServiceImpl implements AnalysisService {
...
@@ -473,7 +476,7 @@ public class AnalysisServiceImpl implements AnalysisService {
boolean
webSearch
=
true
;
boolean
webSearch
=
true
;
if
(
Objects
.
equals
(
columnCode
,
AnalysisColumnEnum
.
ENTERPRISE_CASE
.
getCode
()))
{
if
(
Objects
.
equals
(
columnCode
,
AnalysisColumnEnum
.
ENTERPRISE_CASE
.
getCode
()))
{
webSearch
=
false
;
webSearch
=
false
;
List
<
SpecialInformation
>
informationList
=
modelAnalysisInformationList
(
eventId
,
eventName
);
List
<
SpecialInformation
>
informationList
=
modelAnalysisInformationList
(
eventId
,
eventName
,
versionId
);
if
(
CollectionUtils
.
isNotEmpty
(
informationList
))
{
if
(
CollectionUtils
.
isNotEmpty
(
informationList
))
{
realContent
+=
"\n参考资讯:"
+
JSON
.
toJSONString
(
informationList
);
realContent
+=
"\n参考资讯:"
+
JSON
.
toJSONString
(
informationList
);
}
}
...
@@ -488,10 +491,10 @@ public class AnalysisServiceImpl implements AnalysisService {
...
@@ -488,10 +491,10 @@ public class AnalysisServiceImpl implements AnalysisService {
}
}
@Override
@Override
public
List
<
SpecialInformation
>
modelAnalysisInformationList
(
String
eventId
,
String
eventName
)
{
public
List
<
SpecialInformation
>
modelAnalysisInformationList
(
String
eventId
,
String
eventName
,
String
versionId
)
{
List
<
SpecialInformation
>
informationList
=
enterpriseCaseDataList
(
eventId
);
List
<
SpecialInformation
>
informationList
=
enterpriseCaseDataList
(
eventId
);
if
(
CollectionUtils
.
isEmpty
(
informationList
))
{
if
(
CollectionUtils
.
isEmpty
(
informationList
))
{
informationList
=
webSearchCaseDataList
(
eventName
);
informationList
=
webSearchCaseDataList
(
eventName
,
versionId
);
}
}
return
informationList
;
return
informationList
;
}
}
...
@@ -547,7 +550,7 @@ public class AnalysisServiceImpl implements AnalysisService {
...
@@ -547,7 +550,7 @@ public class AnalysisServiceImpl implements AnalysisService {
* @author lkg
* @author lkg
* @date 2025/9/19
* @date 2025/9/19
*/
*/
private
List
<
SpecialInformation
>
webSearchCaseDataList
(
String
eventName
)
{
private
List
<
SpecialInformation
>
webSearchCaseDataList
(
String
eventName
,
String
versionId
)
{
List
<
SpecialInformation
>
infoList
=
new
ArrayList
<>();
List
<
SpecialInformation
>
infoList
=
new
ArrayList
<>();
Map
<
String
,
String
>
headers
=
new
HashMap
<>();
Map
<
String
,
String
>
headers
=
new
HashMap
<>();
headers
.
put
(
"Authorization"
,
"c5a53bd5f95a4e37a8997deb5d0c6031.orXyRRPNvZiqRaxF"
);
headers
.
put
(
"Authorization"
,
"c5a53bd5f95a4e37a8997deb5d0c6031.orXyRRPNvZiqRaxF"
);
...
@@ -573,6 +576,23 @@ public class AnalysisServiceImpl implements AnalysisService {
...
@@ -573,6 +576,23 @@ public class AnalysisServiceImpl implements AnalysisService {
}
catch
(
IOException
e
)
{
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
CompletableFuture
.
runAsync
(()
->{
if
(
CollectionUtils
.
isNotEmpty
(
infoList
))
{
List
<
EventWebSearchArticle
>
dataList
=
new
ArrayList
<>();
for
(
SpecialInformation
info
:
infoList
)
{
EventWebSearchArticle
eventWebSearchArticle
=
new
EventWebSearchArticle
();
eventWebSearchArticle
.
setVersionId
(
versionId
);
eventWebSearchArticle
.
setRefer
(
info
.
getId
());
eventWebSearchArticle
.
setTitle
(
info
.
getTitle
());
eventWebSearchArticle
.
setContent
(
info
.
getContent
());
eventWebSearchArticle
.
setOrigin
(
info
.
getOrigin
());
eventWebSearchArticle
.
setSourceAddress
(
info
.
getSourceAddress
());
eventWebSearchArticle
.
setPublishDate
(
info
.
getPublishDate
());
dataList
.
add
(
eventWebSearchArticle
);
}
eventWebSearchArticleService
.
saveBatch
(
dataList
);
}
});
return
infoList
;
return
infoList
;
}
}
...
...
src/main/java/com/zzsn/event/service/impl/EventWebSearchArticleServiceImpl.java
0 → 100644
浏览文件 @
f2cacf07
package
com
.
zzsn
.
event
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.event.entity.EventWebSearchArticle
;
import
com.zzsn.event.service.EventWebSearchArticleService
;
import
com.zzsn.event.mapper.EventWebSearchArticleMapper
;
import
org.springframework.stereotype.Service
;
/**
* @author lenovo
* @description 针对表【event_web_search_article(事件分析-网络搜索资讯表)】的数据库操作Service实现
* @createDate 2025-09-23 16:26:19
*/
@Service
public
class
EventWebSearchArticleServiceImpl
extends
ServiceImpl
<
EventWebSearchArticleMapper
,
EventWebSearchArticle
>
implements
EventWebSearchArticleService
{
}
src/main/java/com/zzsn/event/task/NetWorkEventTask.java
浏览文件 @
f2cacf07
...
@@ -46,8 +46,9 @@ public class NetWorkEventTask {
...
@@ -46,8 +46,9 @@ public class NetWorkEventTask {
"2. 按照指定格式返回符合经济领域条件的网络事件集合,且无需额外解释。\n"
+
"2. 按照指定格式返回符合经济领域条件的网络事件集合,且无需额外解释。\n"
+
"3. 必须严格依据事件标题-【title】字段进行判断。\n"
+
"3. 必须严格依据事件标题-【title】字段进行判断。\n"
+
"4. 禁止返回不符合经济领域条件的事件。\n"
+
"4. 禁止返回不符合经济领域条件的事件。\n"
+
"5. 最少返回10条。\n"
+
"5. 禁止返回娱乐类的新闻事件。\n"
+
"6. 严格按照以下json格式返回数据:\n"
+
"6. 最少返回10条。\n"
+
"7. 严格按照以下json格式返回数据:\n"
+
"[\n"
+
"[\n"
+
" {\n"
+
" {\n"
+
" \"title\": \"经济\"\n"
+
" \"title\": \"经济\"\n"
+
...
...
src/main/java/com/zzsn/event/util/DocUtil.java
浏览文件 @
f2cacf07
...
@@ -145,4 +145,27 @@ public class DocUtil {
...
@@ -145,4 +145,27 @@ public class DocUtil {
// 将文档保存到输出流(PDF)
// 将文档保存到输出流(PDF)
doc
.
save
(
outputStream
,
saveOptions
);
doc
.
save
(
outputStream
,
saveOptions
);
}
}
/**
* word转png 直接转
*
* @param wordInputStream 输入流
* @author lkg
* @date 2025/9/16
*/
public
static
byte
[]
convertWordToPng
(
InputStream
wordInputStream
)
throws
Exception
{
getLicense
();
ImageSaveOptions
saveOptions
=
new
ImageSaveOptions
(
SaveFormat
.
PNG
);
if
(
org
.
apache
.
commons
.
lang3
.
SystemUtils
.
IS_OS_LINUX
)
{
FontSettings
fontSettings
=
new
FontSettings
();
//true 表示递归查询子文件夹
fontSettings
.
setFontsFolder
(
fontsPath
,
true
);
}
// 从输入流加载Word文档
Document
doc
=
new
Document
(
wordInputStream
);
DataByteArrayOutputStream
outputStream
=
new
DataByteArrayOutputStream
();
// 将文档保存到输出流(PNG)
doc
.
save
(
outputStream
,
saveOptions
);
return
outputStream
.
getData
();
}
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论