Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
E
event
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
陈世强
event
Commits
2f88b7b1
提交
2f88b7b1
authored
1月 08, 2025
作者:
925993793@qq.com
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
自定义专题-部分逻辑调整、bug修改以及研究中心补充接口
上级
9425dabd
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
190 行增加
和
32 行删除
+190
-32
MybatisInterceptor.java
src/main/java/com/zzsn/event/config/MybatisInterceptor.java
+7
-1
SubjectManageController.java
...va/com/zzsn/event/controller/SubjectManageController.java
+21
-5
SubjectTypeController.java
...m/zzsn/event/controller/common/SubjectTypeController.java
+34
-18
SubjectMapper.java
src/main/java/com/zzsn/event/mapper/SubjectMapper.java
+9
-0
SubjectMapper.xml
src/main/java/com/zzsn/event/mapper/xml/SubjectMapper.xml
+46
-8
ISubjectTypeService.java
...main/java/com/zzsn/event/service/ISubjectTypeService.java
+9
-0
SubjectService.java
src/main/java/com/zzsn/event/service/SubjectService.java
+9
-0
SubjectServiceImpl.java
.../java/com/zzsn/event/service/impl/SubjectServiceImpl.java
+5
-0
SubjectTypeServiceImpl.java
...a/com/zzsn/event/service/impl/SubjectTypeServiceImpl.java
+5
-0
SysDictItemServiceImpl.java
...a/com/zzsn/event/service/impl/SysDictItemServiceImpl.java
+2
-0
SubjectSampleFileInfoVO.java
src/main/java/com/zzsn/event/vo/SubjectSampleFileInfoVO.java
+43
-0
没有找到文件。
src/main/java/com/zzsn/event/config/MybatisInterceptor.java
浏览文件 @
2f88b7b1
package
com
.
zzsn
.
event
.
config
;
import
com.zzsn.event.util.user.AuthUtil
;
import
com.zzsn.event.util.user.UserVo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.ibatis.binding.MapperMethod.ParamMap
;
...
...
@@ -101,7 +102,12 @@ public class MybatisInterceptor implements Interceptor {
}
private
String
getLoginUsername
()
{
return
AuthUtil
.
getLoginUser
().
getUsername
();
String
username
=
null
;
UserVo
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
!=
null
){
username
=
loginUser
.
getUsername
();
}
return
username
;
}
//修改对应字段的值
...
...
src/main/java/com/zzsn/event/controller/SubjectManageController.java
浏览文件 @
2f88b7b1
...
...
@@ -57,8 +57,6 @@ public class SubjectManageController {
private
ISubjectKeywordsMapService
subjectKeywordsMapService
;
@Autowired
private
IXxlJobInfoService
xxlJobInfoService
;
@Resource
private
KafkaTemplate
<
String
,
String
>
kafkaTemplate
;
@Autowired
private
IInfoSourceService
infoSourceService
;
@Autowired
...
...
@@ -76,14 +74,17 @@ public class SubjectManageController {
@Autowired
private
ISubjectInfoSourceMapService
subjectInfoSourceMapService
;
@Autowired
private
ObsUtil
obsUtil
;
@Autowired
private
SubjectSampleFileService
subjectSampleFileService
;
@Autowired
private
SubjectInfoSourceMiddleMapService
subjectInfoSourceMiddleMapService
;
@Autowired
private
SysDictItemService
sysDictItemService
;
@Autowired
private
ObsUtil
obsUtil
;
@Resource
private
KafkaTemplate
<
String
,
String
>
kafkaTemplate
;
@Value
(
"${hotWords.extractUrl}"
)
private
String
extractHotWordsUrl
;
...
...
@@ -126,6 +127,8 @@ public class SubjectManageController {
public
Result
<?>
researchCenterPageList
(
SubjectCondition
subjectCondition
,
@RequestParam
(
name
=
"pageNo"
,
defaultValue
=
"1"
)
Integer
pageNo
,
@RequestParam
(
name
=
"pageSize"
,
defaultValue
=
"10"
)
Integer
pageSize
)
{
UserVo
loginUser
=
AuthUtil
.
getLoginUser
();
subjectCondition
.
setUsername
(
loginUser
.
getUsername
());
Page
<
SubjectPage
>
pageList
=
subjectService
.
researchCenterPageList
(
subjectCondition
,
pageNo
,
pageSize
);
return
Result
.
OK
(
pageList
);
}
...
...
@@ -206,7 +209,7 @@ public class SubjectManageController {
try
{
for
(
MultipartFile
file
:
files
)
{
InputStream
inputStream
=
file
.
getInputStream
();
PutObjectResult
putObjectResult
=
obsUtil
.
uploadFile
(
"subjectSampleFile
"
,
inputStream
);
PutObjectResult
putObjectResult
=
obsUtil
.
uploadFile
(
"subjectSampleFile
/"
+
file
.
getOriginalFilename
()
,
inputStream
);
String
filePath
=
putObjectResult
.
getObjectKey
();
SubjectSampleFile
subjectSampleFile
=
new
SubjectSampleFile
();
subjectSampleFile
.
setSubjectId
(
subjectId
);
...
...
@@ -225,6 +228,19 @@ public class SubjectManageController {
}
/**
* 获取专题详情(包含样例文章信息)
*
* @param subjectId 专题id
* @author lkg
* @date 2025/1/8
*/
@GetMapping
(
"/queryInfo"
)
public
Result
<?>
queryInfo
(
@RequestParam
String
subjectId
){
SubjectSampleFileInfoVO
info
=
subjectService
.
queryInfo
(
subjectId
);
return
Result
.
OK
(
info
);
}
/**
* 添加
*
* @param subjectPage
...
...
src/main/java/com/zzsn/event/controller/common/SubjectTypeController.java
浏览文件 @
2f88b7b1
...
...
@@ -8,6 +8,8 @@ import com.zzsn.event.service.ISubjectTypeMapService;
import
com.zzsn.event.service.ISubjectTypeService
;
import
com.zzsn.event.util.tree.Node
;
import
com.zzsn.event.util.tree.TreeUtil
;
import
com.zzsn.event.util.user.AuthUtil
;
import
com.zzsn.event.util.user.UserVo
;
import
com.zzsn.event.vo.SubjectTreeVO
;
import
com.zzsn.event.vo.SubjectTypeVo
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -96,24 +98,6 @@ public class SubjectTypeController {
}
/**
* 专题和分类树型结构-研究中心专题页左侧树
*
* @param facePublic 是否公开(1-是;0-否)
* @author lkg
* @date 2025/1/7
*/
@GetMapping
(
"/subjectAndTypeTree"
)
public
Result
<?>
subjectAndTypeTree
(
@RequestParam
(
required
=
false
)
Integer
facePublic
)
{
List
<
SubjectTreeVO
>
dataList
=
null
;
if
(
facePublic
==
null
)
{
dataList
=
subjectTypeService
.
subjectAndTypeTree
();
}
else
if
(
facePublic
==
1
)
{
dataList
=
subjectTypeService
.
subjectsByFacePublic
(
facePublic
);
}
return
Result
.
OK
(
dataList
);
}
/**
* 通过父级id列表查询-专题页左侧异步树
*
* @return
...
...
@@ -146,4 +130,36 @@ public class SubjectTypeController {
List
<
SubjectTypeVo
>
allList
=
subjectTypeService
.
eventListByType
(
parentId
);
return
Result
.
OK
(
allList
);
}
/**
* 专题和分类树型结构-研究中心专题页左侧树
*
* @param facePublic 是否公开(1-是;0-否)
* @author lkg
* @date 2025/1/7
*/
@GetMapping
(
"/subjectAndTypeTree"
)
public
Result
<?>
subjectAndTypeTree
(
@RequestParam
(
required
=
false
)
Integer
facePublic
)
{
List
<
SubjectTreeVO
>
dataList
=
null
;
if
(
facePublic
==
null
)
{
dataList
=
subjectTypeService
.
subjectAndTypeTree
();
}
else
if
(
facePublic
==
1
)
{
dataList
=
subjectTypeService
.
subjectsByFacePublic
(
facePublic
);
}
return
Result
.
OK
(
dataList
);
}
/**
* 分类列表-树型结构-研究中心
*
* @author lkg
* @date 2024/12/17
*/
@GetMapping
(
"/typeList"
)
public
Result
<?>
typeTreeList
()
{
UserVo
loginUser
=
AuthUtil
.
getLoginUser
();
List
<
Node
>
nodes
=
subjectTypeService
.
researchCenterEnableList
(
loginUser
.
getUsername
());
List
<
Node
>
tree
=
TreeUtil
.
tree
(
nodes
,
"0"
);
return
Result
.
OK
(
tree
);
}
}
src/main/java/com/zzsn/event/mapper/SubjectMapper.java
浏览文件 @
2f88b7b1
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.zzsn.event.entity.Subject
;
import
com.zzsn.event.vo.SubjectCondition
;
import
com.zzsn.event.vo.SubjectPage
;
import
com.zzsn.event.vo.SubjectSampleFileInfoVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -38,6 +39,14 @@ public interface SubjectMapper extends BaseMapper<Subject> {
Page
<
SubjectPage
>
researchCenterPageList
(
@Param
(
"subjectCondition"
)
SubjectCondition
subjectCondition
,
Page
<
SubjectPage
>
page
);
/**
* 获取专题详情(包含样例文章信息)
*
* @param subjectId 专题id
* @author lkg
* @date 2025/1/8
*/
SubjectSampleFileInfoVO
queryInfo
(
@Param
(
"subjectId"
)
String
subjectId
);
/**
* 专题详情
*
* @param subjectId 专题id
...
...
src/main/java/com/zzsn/event/mapper/xml/SubjectMapper.xml
浏览文件 @
2f88b7b1
...
...
@@ -3,8 +3,9 @@
<mapper
namespace=
"com.zzsn.event.mapper.SubjectMapper"
>
<select
id=
"pageList"
resultType=
"com.zzsn.event.vo.SubjectPage"
>
SELECT distinct d.*, c.id as subjectTypeId, c.type_name as subjectTypeName, g.id as projectId, g.project_name as
projectName from subject d
SELECT distinct d.*, c.id as subjectTypeId, c.type_name as subjectTypeName, g.id as projectId,
g.project_name as projectName
from subject d
INNER JOIN subject_type_map b ON b.subject_id = d.id
INNER JOIN subject_type c ON b.type_id = c.id
LEFT JOIN project_subject_map f ON f.subject_id = d.id
...
...
@@ -76,13 +77,14 @@
<select
id=
"researchCenterPageList"
resultType=
"com.zzsn.event.vo.SubjectPage"
>
SELECT d.id,
d.subject_name,
d.remark,
d.create_time,
d.status c.type_name as subjectTypeName,
d.subject_name,
d.remark,
d.create_time,
d.status,
c.type_name as subjectTypeName
from subject d
LEFT JOIN subject_type_map b ON b.subject_id = d.id
LEFT JOIN subject_type c ON b.type_id = c.id
LEFT JOIN subject_type_map b ON b.subject_id = d.id
LEFT JOIN subject_type c ON b.type_id = c.id
where 1 = 1
<if
test=
"subjectCondition.typeIds!=null and subjectCondition.typeIds.size()>0"
>
and b.type_id in
...
...
@@ -107,4 +109,40 @@
</if>
order by d.create_time desc
</select>
<resultMap
id=
"subjectSampleFileInfoVOMap"
type=
"com.zzsn.event.vo.SubjectSampleFileInfoVO"
>
<result
column=
"subject_name"
property=
"subjectName"
/>
<result
column=
"subjectTypeName"
property=
"subjectTypeName"
/>
<result
column=
"remark"
property=
"remark"
/>
<result
column=
"data_source"
property=
"dataSource"
/>
<result
column=
"time_enable"
property=
"timeEnable"
/>
<result
column=
"time_disable"
property=
"timeDisable"
/>
<result
column=
"library"
property=
"library"
/>
<result
column=
"face_public"
property=
"facePublic"
/>
<collection
property=
"sampleFileList"
ofType=
"com.zzsn.event.entity.SubjectSampleFile"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"file_name"
property=
"fileName"
/>
<result
column=
"file_path"
property=
"filePath"
/>
</collection>
</resultMap>
<select
id=
"queryInfo"
resultMap=
"subjectSampleFileInfoVOMap"
>
select s.subject_name,
s.remark,
s.status,
s.time_enable,
s.time_disable,
s.data_source,
s.face_public,
s.library,
c.type_name as subjectTypeName,
f.id,
f.file_name,
f.file_path
from subject s
inner join subject_type_map b ON b.subject_id = s.id
inner join subject_type c ON b.type_id = c.id
left join subject_sample_file f on s.id = f.subject_id
where s.id = #{subjectId}
</select>
</mapper>
src/main/java/com/zzsn/event/service/ISubjectTypeService.java
浏览文件 @
2f88b7b1
...
...
@@ -26,6 +26,15 @@ public interface ISubjectTypeService extends IService<SubjectType> {
List
<
Node
>
enableList
(
Integer
category
);
/**
* 可用的专题分类列表-研究中心
*
* @param username 创建人
* @author lkg
* @date 2024/4/29
*/
List
<
Node
>
researchCenterEnableList
(
String
username
);
/**
* 获取分类下的所有节点id集合
*
* @param typeId 分类id
...
...
src/main/java/com/zzsn/event/service/SubjectService.java
浏览文件 @
2f88b7b1
...
...
@@ -39,6 +39,15 @@ public interface SubjectService extends IService<Subject> {
Page
<
SubjectPage
>
researchCenterPageList
(
SubjectCondition
subjectCondition
,
Integer
pageNo
,
Integer
pageSize
);
/**
* 获取专题详情(包含样例文章信息)
*
* @param subjectId 专题id
* @author lkg
* @date 2025/1/8
*/
SubjectSampleFileInfoVO
queryInfo
(
String
subjectId
);
/**
* 新增专题
*
* @param subjectPage 参数
...
...
src/main/java/com/zzsn/event/service/impl/SubjectServiceImpl.java
浏览文件 @
2f88b7b1
...
...
@@ -153,6 +153,11 @@ public class SubjectServiceImpl extends ServiceImpl<SubjectMapper, Subject> impl
}
@Override
public
SubjectSampleFileInfoVO
queryInfo
(
String
subjectId
)
{
return
baseMapper
.
queryInfo
(
subjectId
);
}
@Override
@Transactional
public
Subject
saveMain
(
SubjectPage
subjectPage
)
{
Subject
subject
=
new
Subject
();
...
...
src/main/java/com/zzsn/event/service/impl/SubjectTypeServiceImpl.java
浏览文件 @
2f88b7b1
...
...
@@ -38,6 +38,11 @@ public class SubjectTypeServiceImpl extends ServiceImpl<SubjectTypeMapper, Subje
}
@Override
public
List
<
Node
>
researchCenterEnableList
(
String
username
)
{
return
baseMapper
.
enableList
(
1
,
username
);
}
@Override
public
List
<
String
>
belowIdList
(
String
typeId
,
Integer
category
)
{
List
<
Node
>
nodes
=
this
.
enableList
(
category
);
return
TreeUtil
.
belowList
(
nodes
,
typeId
,
true
);
...
...
src/main/java/com/zzsn/event/service/impl/SysDictItemServiceImpl.java
浏览文件 @
2f88b7b1
package
com
.
zzsn
.
event
.
service
.
impl
;
import
com.baomidou.dynamic.datasource.annotation.DS
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.event.entity.SysDictItem
;
import
com.zzsn.event.mapper.SysDictItemMapper
;
...
...
@@ -17,6 +18,7 @@ import java.util.List;
* @since 2018-12-28
*/
@Service
@DS
(
"multi-datasource2"
)
public
class
SysDictItemServiceImpl
extends
ServiceImpl
<
SysDictItemMapper
,
SysDictItem
>
implements
SysDictItemService
{
@Override
...
...
src/main/java/com/zzsn/event/vo/SubjectSampleFileInfoVO.java
0 → 100644
浏览文件 @
2f88b7b1
package
com
.
zzsn
.
event
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.zzsn.event.entity.SubjectSampleFile
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.util.Date
;
import
java.util.List
;
/**
* 专题详情信息(包含样例文章)
*
* @author lkg
* @date 2025/1/8
*/
@Data
public
class
SubjectSampleFileInfoVO
{
/**专题名称*/
private
String
subjectName
;
/**专题描述*/
private
String
remark
;
/**开始时间*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
timeEnable
;
/**结束时间*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
timeDisable
;
/**是否公开(0-未公开;1-已公开)*/
private
Integer
facePublic
;
/**数据来源(0-平台数据;1-全网搜)*/
private
Integer
dataSource
;
/**划分专题库*/
private
String
library
;
/**专题分类名称*/
private
String
subjectTypeName
;
/**专题下的样例文章*/
private
List
<
SubjectSampleFile
>
sampleFileList
;
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论