Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
K
know-base
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
张京坤
know-base
Commits
d86f28c5
提交
d86f28c5
authored
8月 22, 2024
作者:
yanxin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
个人素材管理相关接口
上级
ad477b96
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
453 行增加
和
2 行删除
+453
-2
Constants.java
src/main/java/com/zzsn/knowbase/constant/Constants.java
+2
-0
KnowledgeUserController.java
...com/zzsn/knowbase/controller/KnowledgeUserController.java
+234
-0
Knowledge.java
src/main/java/com/zzsn/knowbase/entity/Knowledge.java
+4
-1
KnowledgeUserExcel.java
...ain/java/com/zzsn/knowbase/entity/KnowledgeUserExcel.java
+34
-0
LoginUser.java
src/main/java/com/zzsn/knowbase/entity/LoginUser.java
+133
-0
KbKnowledgeProjectService.java
.../com/zzsn/knowbase/service/KbKnowledgeProjectService.java
+2
-0
KbKnowledgeProjectServiceImpl.java
.../knowbase/service/impl/KbKnowledgeProjectServiceImpl.java
+8
-0
KnowledgeServiceImpl.java
.../com/zzsn/knowbase/service/impl/KnowledgeServiceImpl.java
+0
-0
AuthUtil.java
src/main/java/com/zzsn/knowbase/util/AuthUtil.java
+27
-0
KnowledgeParam.java
src/main/java/com/zzsn/knowbase/vo/KnowledgeParam.java
+9
-1
没有找到文件。
src/main/java/com/zzsn/knowbase/constant/Constants.java
浏览文件 @
d86f28c5
...
@@ -4,6 +4,8 @@ import java.util.HashMap;
...
@@ -4,6 +4,8 @@ import java.util.HashMap;
import
java.util.Map
;
import
java.util.Map
;
public
class
Constants
{
public
class
Constants
{
//个人素材知识库id
public
static
final
String
SC_USER
=
"1826201830565163010"
;
//redis缓存 key常量
//redis缓存 key常量
public
static
final
String
FINANCE
=
"SAVE_ES:"
;
public
static
final
String
FINANCE
=
"SAVE_ES:"
;
public
static
final
String
RESEARCH
=
"RESEARCH:"
;
public
static
final
String
RESEARCH
=
"RESEARCH:"
;
...
...
src/main/java/com/zzsn/knowbase/controller/KnowledgeUserController.java
0 → 100644
浏览文件 @
d86f28c5
package
com
.
zzsn
.
knowbase
.
controller
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.zzsn.knowbase.constant.Constants
;
import
com.zzsn.knowbase.entity.*
;
import
com.zzsn.knowbase.service.IKnowledgeService
;
import
com.zzsn.knowbase.service.ILocalFileService
;
import
com.zzsn.knowbase.service.KbKnowledgeProjectService
;
import
com.zzsn.knowbase.util.AuthUtil
;
import
com.zzsn.knowbase.util.ExcelExportUtil
;
import
com.zzsn.knowbase.util.SpringContextUtils
;
import
com.zzsn.knowbase.vo.KnowledgeParam
;
import
com.zzsn.knowbase.vo.KnowledgeVO
;
import
com.zzsn.knowbase.vo.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartHttpServletRequest
;
import
org.springframework.web.util.WebUtils
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.CompletableFuture
;
/**
* 知识
* @Author: chenshiqiang
* @Version: V1.0
*/
@Api
(
tags
=
"知识"
)
@RestController
@RequestMapping
(
"/api/knowledge/user"
)
@Slf4j
public
class
KnowledgeUserController
{
@Autowired
private
IKnowledgeService
knowledgeService
;
@Autowired
private
KbKnowledgeProjectService
knowledgeProjectService
;
@Autowired
private
ILocalFileService
localFileService
;
/**
* 新增用户分组
*/
@PostMapping
(
value
=
"/group/add"
)
public
Result
<?>
groupAdd
(
@RequestBody
KbKnowledgeProject
knowledgeProject
)
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
knowledgeProject
.
setPid
(
loginUser
.
getId
());
knowledgeProject
.
setFullPath
(
loginUser
.
getId
());
knowledgeProject
.
setHasChild
(
"0"
);
knowledgeProject
.
setCategory
(
"user"
);
knowledgeProject
.
setCreateTime
(
new
Date
());
log
.
info
(
"新增用户分组:{}"
,
knowledgeProject
);
knowledgeProjectService
.
save
(
knowledgeProject
);
return
Result
.
OK
(
"保存成功!"
);
}
/**
* 查询用户分组
*/
@GetMapping
(
value
=
"/group/list"
)
public
Result
<?>
groupList
()
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
List
<
KbKnowledgeProject
>
list
=
knowledgeProjectService
.
listByUserId
(
loginUser
.
getId
());
return
Result
.
OK
(
list
);
}
/**
* 查询用户分组
*/
@PutMapping
(
value
=
"/group/edit"
)
public
Result
<?>
groupEdit
(
@RequestBody
KbKnowledgeProject
knowledgeProject
)
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
KbKnowledgeProject
byId
=
knowledgeProjectService
.
getById
(
knowledgeProject
.
getId
());
if
(
byId
==
null
||
!
loginUser
.
getId
().
equals
(
byId
.
getPid
())){
return
Result
.
error
(
"分类不存在!"
);
}
byId
.
setTypeName
(
knowledgeProject
.
getTypeName
());
log
.
info
(
"编辑用户分组:{}"
,
byId
);
knowledgeProjectService
.
updateById
(
byId
);
return
Result
.
OK
(
"编辑成功!"
);
}
/**
* 查询用户分组
*/
@DeleteMapping
(
value
=
"/group/delete"
)
public
Result
<?>
groupDelete
(
String
id
)
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
KbKnowledgeProject
byId
=
knowledgeProjectService
.
getById
(
id
);
if
(
byId
==
null
||
!
loginUser
.
getId
().
equals
(
byId
.
getPid
())){
return
Result
.
error
(
"分类不存在!"
);
}
log
.
info
(
"删除用户分组:{}"
,
byId
);
knowledgeProjectService
.
removeById
(
id
);
return
Result
.
OK
(
"删除成功!"
);
}
/**
* 分页列表查询
*/
@GetMapping
(
value
=
"/list"
)
public
Result
<?>
queryPageList
(
KnowledgeParam
knowledgeParam
,
@RequestParam
(
name
=
"pageNo"
,
defaultValue
=
"1"
)
Integer
pageNo
,
@RequestParam
(
name
=
"pageSize"
,
defaultValue
=
"10"
)
Integer
pageSize
,
@RequestParam
(
name
=
"column"
,
defaultValue
=
"common"
)
String
column
,
@RequestParam
(
name
=
"order"
,
defaultValue
=
"desc"
)
String
order
,
HttpServletRequest
request
)
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
knowledgeParam
.
setKbKnowledgeId
(
Constants
.
SC_USER
);
knowledgeParam
.
setUserId
(
loginUser
.
getId
());
IPage
<
KnowledgeVO
>
pageList
=
knowledgeService
.
queryPageList
(
knowledgeParam
,
pageNo
,
pageSize
,
column
,
order
);
return
Result
.
OK
(
pageList
);
}
/**
* 添加
*
* @param knowledge
* @return
*/
@ApiOperation
(
value
=
"知识-添加"
,
notes
=
"知识-添加"
)
@PostMapping
(
value
=
"/uploadKnowledge"
)
public
Result
<?>
uploadKnowledge
(
HttpServletRequest
request
,
Knowledge
knowledge
)
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
knowledge
.
setUserId
(
loginUser
.
getId
());
//对应个人素材知识库
knowledge
.
setKbKnowledgeId
(
Constants
.
SC_USER
);
MultipartHttpServletRequest
multipartRequest
=
WebUtils
.
getNativeRequest
(
request
,
MultipartHttpServletRequest
.
class
);
Map
<
String
,
MultipartFile
>
fileMap
=
multipartRequest
.
getFileMap
();
Result
<
List
<
KnowFile
>>
result
=
localFileService
.
upload
(
fileMap
);
log
.
info
(
"upload result:{}"
,
result
);
if
(!
Integer
.
valueOf
(
"200"
).
equals
(
result
.
getCode
()))
{
return
Result
.
error
(
result
.
getMessage
());
}
List
<
KnowFile
>
resultList
=
result
.
getResult
();
KbAuthorizedUser
userInfo
=
SpringContextUtils
.
getUserInfo
();
knowledge
.
setImportData
(
0
);
CompletableFuture
.
runAsync
(()
->
this
.
add
(
resultList
,
knowledge
,
userInfo
));
return
Result
.
OK
(
"添加成功!"
);
}
private
void
add
(
List
<
KnowFile
>
resultList
,
Knowledge
knowledge
,
KbAuthorizedUser
userInfo
)
{
if
(
null
==
resultList
||
resultList
.
isEmpty
())
{
return
;
}
for
(
KnowFile
knowFileResult
:
resultList
)
{
knowledge
.
setId
(
null
);
knowledge
.
setTitle
(
null
);
knowledgeService
.
addKnowledge
(
knowFileResult
,
knowledge
,
userInfo
);
}
}
/**
* 编辑
*
* @param knowledge
* @return
*/
@ApiOperation
(
value
=
"信息源组类别-编辑"
,
notes
=
"信息源组类别-编辑"
)
@PutMapping
(
value
=
"/edit"
)
public
Result
<?>
edit
(
@RequestBody
Knowledge
knowledge
)
{
knowledgeService
.
updateKnowledge
(
knowledge
);
return
Result
.
OK
(
"编辑成功!"
);
}
/**
* 通过id删除
*
* @param
* @return
*/
@PostMapping
(
value
=
"/delete"
)
public
Result
<?>
delete
(
@RequestBody
DeleteParam
deleteParam
)
{
knowledgeService
.
deleteKnowledge
(
deleteParam
.
getKnowledgeList
());
return
Result
.
OK
(
"删除成功!"
);
}
/**
* 通过excel导入
*
* @return
*/
@RequestMapping
(
value
=
"/importInfo"
,
method
=
RequestMethod
.
POST
)
public
Result
<?>
importInfo
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
LoginUser
loginUser
=
AuthUtil
.
getLoginUser
();
if
(
loginUser
==
null
){
return
Result
.
error
(
"用户未登录!"
);
}
return
knowledgeService
.
doImportInfo
(
request
,
loginUser
.
getId
());
}
/**
* 下载导入模板
*/
@RequestMapping
(
value
=
"/download"
)
public
Result
<?>
download
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
try
{
List
<
KnowledgeUserExcel
>
dataList
=
new
ArrayList
<>();
String
filePath
=
Constants
.
TEMP_FILES_DIR
+
"template.xlsx"
;
ExcelExportUtil
.
writeExcelFront
(
dataList
,
"素材导入模板"
,
filePath
,
KnowledgeUserExcel
.
class
);
ExcelExportUtil
.
download
(
response
,
filePath
,
true
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
Result
.
OK
();
}
}
\ No newline at end of file
src/main/java/com/zzsn/knowbase/entity/Knowledge.java
浏览文件 @
d86f28c5
...
@@ -119,7 +119,10 @@ public class Knowledge implements Serializable {
...
@@ -119,7 +119,10 @@ public class Knowledge implements Serializable {
* 0word 1excel&subject 2ppt 3pdf
* 0word 1excel&subject 2ppt 3pdf
*/
*/
private
Integer
importData
;
private
Integer
importData
;
/**
* 个人素材所属用户id
*/
private
String
userId
;
}
}
src/main/java/com/zzsn/knowbase/entity/KnowledgeUserExcel.java
0 → 100644
浏览文件 @
d86f28c5
package
com
.
zzsn
.
knowbase
.
entity
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Description: 知识
* @Author: chenshiqiang
* @Version: V1.0
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
KnowledgeUserExcel
{
@ExcelProperty
(
value
=
"标题"
,
index
=
0
)
private
String
title
;
@ExcelProperty
(
value
=
"正文"
,
index
=
1
)
private
String
contentWithTag
;
@ExcelProperty
(
value
=
"作者"
,
index
=
2
)
private
String
author
;
@ExcelProperty
(
value
=
"来源"
,
index
=
3
)
private
String
origin
;
@ExcelProperty
(
value
=
"发布时间"
,
index
=
4
)
private
String
publishDate
;
@ExcelProperty
(
value
=
"原文链接"
,
index
=
5
)
private
String
sourceAddress
;
}
src/main/java/com/zzsn/knowbase/entity/LoginUser.java
0 → 100644
浏览文件 @
d86f28c5
package
com
.
zzsn
.
knowbase
.
entity
;
import
java.util.Date
;
import
java.util.List
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
/**
* <p>
* 在线用户信息
* </p>
*
* @Author scott
* @since 2018-12-20
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@Accessors
(
chain
=
true
)
public
class
LoginUser
{
/**
* 登录人id
*/
private
String
id
;
/**
* 登录人账号
*/
private
String
username
;
/**
* 登录人名字
*/
private
String
realname
;
/**
* 登录人密码
*/
private
String
password
;
/**
* md5密码盐
*/
private
String
salt
;
/**
* 当前登录部门code
*/
private
String
orgCode
;
/**
* 头像
*/
private
String
avatar
;
/**
* 生日
*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
birthday
;
/**
* 性别(1:男 2:女)
*/
private
Integer
sex
;
/**
* 电子邮件
*/
private
String
email
;
/**
* 电话
*/
private
String
phone
;
/**
* 状态(1:正常 2:冻结 )
*/
private
Integer
status
;
private
Integer
delFlag
;
/**
* 同步工作流引擎1同步0不同步
*/
private
Integer
activitiSync
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 身份(1 普通员工 2 上级)
*/
private
Integer
userIdentity
;
/**
* 管理部门ids
*/
private
String
departIds
;
/**
* 职务,关联职务表
*/
private
String
post
;
/**
* 座机号
*/
private
String
telephone
;
/**多租户id配置,编辑用户的时候设置*/
private
String
relTenantIds
;
/**设备id uniapp推送用*/
private
String
clientId
;
/**1-超级用户;2-普通用户;3-管理员用户(租户下)*/
private
Integer
category
;
private
List
<
String
>
roles
;
/**用户绑定的角色所属的项目的id集合*/
List
<
String
>
projectIds
;
}
src/main/java/com/zzsn/knowbase/service/KbKnowledgeProjectService.java
浏览文件 @
d86f28c5
...
@@ -47,4 +47,6 @@ public interface KbKnowledgeProjectService extends IService<KbKnowledgeProject>
...
@@ -47,4 +47,6 @@ public interface KbKnowledgeProjectService extends IService<KbKnowledgeProject>
List
<
String
>
getKnowledgeListByUserId
(
String
userId
,
List
<
String
>
knowProjectIdList
);
List
<
String
>
getKnowledgeListByUserId
(
String
userId
,
List
<
String
>
knowProjectIdList
);
List
<
KbAuthuserKnowledgeprojectMap
>
getKnowledgeProjectListByUserId
(
String
userId
);
List
<
KbAuthuserKnowledgeprojectMap
>
getKnowledgeProjectListByUserId
(
String
userId
);
List
<
KbKnowledgeProject
>
listByUserId
(
String
userid
);
}
}
src/main/java/com/zzsn/knowbase/service/impl/KbKnowledgeProjectServiceImpl.java
浏览文件 @
d86f28c5
...
@@ -354,6 +354,14 @@ public class KbKnowledgeProjectServiceImpl extends ServiceImpl<KbKnowledgeProjec
...
@@ -354,6 +354,14 @@ public class KbKnowledgeProjectServiceImpl extends ServiceImpl<KbKnowledgeProjec
.
eq
(
KbAuthuserKnowledgeprojectMap:
:
getAuthUserId
,
userId
));
.
eq
(
KbAuthuserKnowledgeprojectMap:
:
getAuthUserId
,
userId
));
}
}
@Override
public
List
<
KbKnowledgeProject
>
listByUserId
(
String
userid
)
{
LambdaQueryWrapper
<
KbKnowledgeProject
>
queryWrapper
=
Wrappers
.
lambdaQuery
();
queryWrapper
.
eq
(
KbKnowledgeProject:
:
getPid
,
userid
);
queryWrapper
.
orderByDesc
(
KbKnowledgeProject:
:
getCreateBy
);
return
this
.
list
(
queryWrapper
);
}
/**
/**
* 根据所传pid查询旧的父级节点的子节点并修改相应状态值
* 根据所传pid查询旧的父级节点的子节点并修改相应状态值
* @param pid
* @param pid
...
...
src/main/java/com/zzsn/knowbase/service/impl/KnowledgeServiceImpl.java
浏览文件 @
d86f28c5
差异被折叠。
点击展开。
src/main/java/com/zzsn/knowbase/util/AuthUtil.java
0 → 100644
浏览文件 @
d86f28c5
package
com
.
zzsn
.
knowbase
.
util
;
import
com.alibaba.fastjson.JSON
;
import
com.zzsn.knowbase.entity.LoginUser
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
javax.servlet.http.HttpServletRequest
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
public
class
AuthUtil
{
static
SimpleDateFormat
format
;
public
static
LoginUser
getLoginUser
()
{
try
{
HttpServletRequest
request
=
((
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
()).
getRequest
();
String
userInfo
=
request
.
getHeader
(
"loginUser"
);
return
JSON
.
parseObject
(
userInfo
,
LoginUser
.
class
);
}
catch
(
Exception
e
){
return
null
;
}
}
}
src/main/java/com/zzsn/knowbase/vo/KnowledgeParam.java
浏览文件 @
d86f28c5
...
@@ -42,7 +42,7 @@ public class KnowledgeParam {
...
@@ -42,7 +42,7 @@ public class KnowledgeParam {
*/
*/
private
String
verifierName
;
private
String
verifierName
;
/**
/**
*
知识库
id
*
分类
id
*/
*/
private
String
knowledgeProjectId
;
private
String
knowledgeProjectId
;
/**
/**
...
@@ -77,7 +77,15 @@ public class KnowledgeParam {
...
@@ -77,7 +77,15 @@ public class KnowledgeParam {
* 审核结束时间
* 审核结束时间
*/
*/
private
String
verifyEndTime
;
private
String
verifyEndTime
;
/**
* 知识库id
*/
private
String
kbKnowledgeId
;
private
String
kbKnowledgeId
;
private
String
subjectId
;
private
String
subjectId
;
/**
* 个人素材所属用户id
*/
private
String
userId
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论