Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
lmp_server
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lmp
lmp_server
Commits
ba70af16
Commit
ba70af16
authored
Mar 21, 2024
by
pengxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增标记数据统计接口。
parent
651b8ce3
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
794 additions
and
0 deletions
+794
-0
LlmModelConfig.java
...ain/java/com/yice/webadmin/app/config/LlmModelConfig.java
+33
-0
OtherConfig.java
...c/main/java/com/yice/webadmin/app/config/OtherConfig.java
+20
-0
KGManageController.java
.../com/yice/webadmin/app/controller/KGManageController.java
+150
-0
KGManageMapper.java
...c/main/java/com/yice/webadmin/app/dao/KGManageMapper.java
+33
-0
KGManageMapper.xml
.../java/com/yice/webadmin/app/dao/mapper/KGManageMapper.xml
+74
-0
DatasetDataSummaryDto.java
...java/com/yice/webadmin/app/dto/DatasetDataSummaryDto.java
+34
-0
KGManageDto.java
.../src/main/java/com/yice/webadmin/app/dto/KGManageDto.java
+70
-0
KGManage.java
...n/src/main/java/com/yice/webadmin/app/model/KGManage.java
+69
-0
KGManageService.java
...n/java/com/yice/webadmin/app/service/KGManageService.java
+68
-0
KGManageServiceImpl.java
...m/yice/webadmin/app/service/impl/KGManageServiceImpl.java
+140
-0
Neo4jUtil.java
...n/src/main/java/com/yice/webadmin/app/util/Neo4jUtil.java
+34
-0
KGManageVo.java
...in/src/main/java/com/yice/webadmin/app/vo/KGManageVo.java
+69
-0
No files found.
application-webadmin/src/main/java/com/yice/webadmin/app/config/LlmModelConfig.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
config
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
@Data
@Configuration
@ConfigurationProperties
(
prefix
=
"llm-model"
)
public
class
LlmModelConfig
{
/**
* 大模型管理接口地址
*/
private
String
llmModelInterface
;
/**
* 模型停止
*/
private
String
stop
;
/**
* 重新模型部署
*/
private
String
reload
;
/**
* 模型启动
*/
private
String
start
;
/**
* 列出当前已加载模型
*/
private
String
listRunningModels
;
}
application-webadmin/src/main/java/com/yice/webadmin/app/config/OtherConfig.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
config
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
@Data
@Configuration
@ConfigurationProperties
(
prefix
=
"other"
)
public
class
OtherConfig
{
/**
* 其他通用接口地址
*/
private
String
otherInterface
;
/**
* 获取GPU信息
*/
private
String
getGpuInfo
;
}
application-webadmin/src/main/java/com/yice/webadmin/app/controller/KGManageController.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
controller
;
import
com.yice.common.log.annotation.OperationLog
;
import
com.yice.common.log.model.constant.SysOperationLogType
;
import
com.github.pagehelper.page.PageMethod
;
import
com.yice.webadmin.app.vo.*
;
import
com.yice.webadmin.app.dto.*
;
import
com.yice.webadmin.app.model.*
;
import
com.yice.webadmin.app.service.*
;
import
com.yice.common.core.object.*
;
import
com.yice.common.core.util.*
;
import
com.yice.common.core.constant.*
;
import
com.yice.common.core.annotation.MyRequestBody
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
io.swagger.annotations.Api
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.*
;
/**
* 知识图谱管理操作控制器类。
*
* @author linking
* @date 2023-04-13
*/
@Api
(
tags
=
"知识图谱管理管理接口"
)
@Slf4j
@RestController
@RequestMapping
(
"/admin/app/kGManage"
)
public
class
KGManageController
{
@Autowired
private
KGManageService
kGManageService
;
/**
* 新增知识图谱管理数据。
*
* @param kGManageDto 新增对象。
* @return 应答结果对象,包含新增对象主键Id。
*/
@ApiOperationSupport
(
ignoreParameters
=
{
"kGManageDto.kgId"
})
@OperationLog
(
type
=
SysOperationLogType
.
ADD
)
@PostMapping
(
"/add"
)
public
ResponseResult
<
Long
>
add
(
@MyRequestBody
KGManageDto
kGManageDto
)
{
String
errorMessage
=
MyCommonUtil
.
getModelValidationError
(
kGManageDto
,
false
);
if
(
errorMessage
!=
null
)
{
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_VALIDATED_FAILED
,
errorMessage
);
}
KGManage
kGManage
=
MyModelUtil
.
copyTo
(
kGManageDto
,
KGManage
.
class
);
kGManage
=
kGManageService
.
saveNew
(
kGManage
);
return
ResponseResult
.
success
(
kGManage
.
getKgId
());
}
/**
* 更新知识图谱管理数据。
*
* @param kGManageDto 更新对象。
* @return 应答结果对象。
*/
@OperationLog
(
type
=
SysOperationLogType
.
UPDATE
)
@PostMapping
(
"/update"
)
public
ResponseResult
<
Void
>
update
(
@MyRequestBody
KGManageDto
kGManageDto
)
{
String
errorMessage
=
MyCommonUtil
.
getModelValidationError
(
kGManageDto
,
true
);
if
(
errorMessage
!=
null
)
{
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_VALIDATED_FAILED
,
errorMessage
);
}
KGManage
kGManage
=
MyModelUtil
.
copyTo
(
kGManageDto
,
KGManage
.
class
);
KGManage
originalKGManage
=
kGManageService
.
getById
(
kGManage
.
getKgId
());
if
(
originalKGManage
==
null
)
{
// NOTE: 修改下面方括号中的话述
errorMessage
=
"数据验证失败,当前 [数据] 并不存在,请刷新后重试!"
;
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_NOT_EXIST
,
errorMessage
);
}
if
(!
kGManageService
.
update
(
kGManage
,
originalKGManage
))
{
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_NOT_EXIST
);
}
return
ResponseResult
.
success
();
}
/**
* 删除知识图谱管理数据。
*
* @param kgId 删除对象主键Id。
* @return 应答结果对象。
*/
@OperationLog
(
type
=
SysOperationLogType
.
DELETE
)
@PostMapping
(
"/delete"
)
public
ResponseResult
<
Void
>
delete
(
@MyRequestBody
Long
kgId
)
{
if
(
MyCommonUtil
.
existBlankArgument
(
kgId
))
{
return
ResponseResult
.
error
(
ErrorCodeEnum
.
ARGUMENT_NULL_EXIST
);
}
return
this
.
doDelete
(
kgId
);
}
/**
* 列出符合过滤条件的知识图谱管理列表。
*
* @param kGManageDtoFilter 过滤对象。
* @param orderParam 排序参数。
* @param pageParam 分页参数。
* @return 应答结果对象,包含查询结果集。
*/
@PostMapping
(
"/list"
)
public
ResponseResult
<
MyPageData
<
KGManageVo
>>
list
(
@MyRequestBody
KGManageDto
kGManageDtoFilter
,
@MyRequestBody
MyOrderParam
orderParam
,
@MyRequestBody
MyPageParam
pageParam
)
{
if
(
pageParam
!=
null
)
{
PageMethod
.
startPage
(
pageParam
.
getPageNum
(),
pageParam
.
getPageSize
());
}
KGManage
kGManageFilter
=
MyModelUtil
.
copyTo
(
kGManageDtoFilter
,
KGManage
.
class
);
String
orderBy
=
MyOrderParam
.
buildOrderBy
(
orderParam
,
KGManage
.
class
);
List
<
KGManage
>
kGManageList
=
kGManageService
.
getKGManageListWithRelation
(
kGManageFilter
,
orderBy
);
return
ResponseResult
.
success
(
MyPageUtil
.
makeResponseData
(
kGManageList
,
KGManage
.
INSTANCE
));
}
/**
* 查看指定知识图谱管理对象详情。
*
* @param kgId 指定对象主键Id。
* @return 应答结果对象,包含对象详情。
*/
@GetMapping
(
"/view"
)
public
ResponseResult
<
KGManageVo
>
view
(
@RequestParam
Long
kgId
)
{
KGManage
kGManage
=
kGManageService
.
getByIdWithRelation
(
kgId
,
MyRelationParam
.
full
());
if
(
kGManage
==
null
)
{
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_NOT_EXIST
);
}
KGManageVo
kGManageVo
=
KGManage
.
INSTANCE
.
fromModel
(
kGManage
);
return
ResponseResult
.
success
(
kGManageVo
);
}
private
ResponseResult
<
Void
>
doDelete
(
Long
kgId
)
{
String
errorMessage
;
// 验证关联Id的数据合法性
KGManage
originalKGManage
=
kGManageService
.
getById
(
kgId
);
if
(
originalKGManage
==
null
)
{
// NOTE: 修改下面方括号中的话述
errorMessage
=
"数据验证失败,当前 [对象] 并不存在,请刷新后重试!"
;
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_NOT_EXIST
,
errorMessage
);
}
if
(!
kGManageService
.
remove
(
kgId
))
{
errorMessage
=
"数据操作失败,删除的对象不存在,请刷新后重试!"
;
return
ResponseResult
.
error
(
ErrorCodeEnum
.
DATA_NOT_EXIST
,
errorMessage
);
}
return
ResponseResult
.
success
();
}
}
application-webadmin/src/main/java/com/yice/webadmin/app/dao/KGManageMapper.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
dao
;
import
com.yice.common.core.base.dao.BaseDaoMapper
;
import
com.yice.webadmin.app.model.KGManage
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.*
;
/**
* 知识图谱管理数据操作访问接口。
*
* @author linking
* @date 2023-04-13
*/
public
interface
KGManageMapper
extends
BaseDaoMapper
<
KGManage
>
{
/**
* 批量插入对象列表。
*
* @param kGManageList 新增对象列表。
*/
void
insertList
(
List
<
KGManage
>
kGManageList
);
/**
* 获取过滤后的对象列表。
*
* @param kGManageFilter 主表过滤对象。
* @param orderBy 排序字符串,order by从句的参数。
* @return 对象列表。
*/
List
<
KGManage
>
getKGManageList
(
@Param
(
"kGManageFilter"
)
KGManage
kGManageFilter
,
@Param
(
"orderBy"
)
String
orderBy
);
}
application-webadmin/src/main/java/com/yice/webadmin/app/dao/mapper/KGManageMapper.xml
0 → 100644
View file @
ba70af16
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yice.webadmin.app.dao.KGManageMapper"
>
<resultMap
id=
"BaseResultMap"
type=
"com.yice.webadmin.app.model.KGManage"
>
<id
column=
"kg_id"
jdbcType=
"BIGINT"
property=
"kgId"
/>
<result
column=
"create_user_id"
jdbcType=
"BIGINT"
property=
"createUserId"
/>
<result
column=
"create_time"
jdbcType=
"TIMESTAMP"
property=
"createTime"
/>
<result
column=
"update_user_id"
jdbcType=
"BIGINT"
property=
"updateUserId"
/>
<result
column=
"update_time"
jdbcType=
"TIMESTAMP"
property=
"updateTime"
/>
<result
column=
"kg_name"
jdbcType=
"VARCHAR"
property=
"kgName"
/>
<result
column=
"kg_describe"
jdbcType=
"VARCHAR"
property=
"kgDescribe"
/>
<result
column=
"kg_url"
jdbcType=
"VARCHAR"
property=
"kgUrl"
/>
<result
column=
"kg_user_name"
jdbcType=
"VARCHAR"
property=
"kgUserName"
/>
<result
column=
"kg_password"
jdbcType=
"VARCHAR"
property=
"kgPassword"
/>
<result
column=
"kg_bower_url"
jdbcType=
"VARCHAR"
property=
"kgBowerUrl"
/>
<result
column=
"kg_type"
jdbcType=
"VARCHAR"
property=
"kgType"
/>
</resultMap>
<insert
id=
"insertList"
>
INSERT INTO lmp_kg_manage
(kg_id,
create_user_id,
create_time,
update_user_id,
update_time,
kg_name,
kg_describe,
kg_url,
kg_user_name,
kg_password,
kg_bower_url,
kg_type)
VALUES
<foreach
collection=
"list"
index=
"index"
item=
"item"
separator=
","
>
(#{item.kgId},
#{item.createUserId},
#{item.createTime},
#{item.updateUserId},
#{item.updateTime},
#{item.kgName},
#{item.kgDescribe},
#{item.kgUrl},
#{item.kgUserName},
#{item.kgPassword},
#{item.kgBowerUrl},
#{item.kgType})
</foreach>
</insert>
<!-- 如果有逻辑删除字段过滤,请写到这里 -->
<sql
id=
"filterRef"
>
<!-- 这里必须加上全包名,否则当filterRef被其他Mapper.xml包含引用的时候,就会调用Mapper.xml中的该SQL片段 -->
<include
refid=
"com.yice.webadmin.app.dao.KGManageMapper.inputFilterRef"
/>
</sql>
<!-- 这里仅包含调用接口输入的主表过滤条件 -->
<sql
id=
"inputFilterRef"
>
<if
test=
"kGManageFilter != null"
>
<if
test=
"kGManageFilter.kgName != null and kGManageFilter.kgName != ''"
>
AND lmp_kg_manage.kg_name = #{kGManageFilter.kgName}
</if>
</if>
</sql>
<select
id=
"getKGManageList"
resultMap=
"BaseResultMap"
parameterType=
"com.yice.webadmin.app.model.KGManage"
>
SELECT * FROM lmp_kg_manage
<where>
<include
refid=
"filterRef"
/>
</where>
<if
test=
"orderBy != null and orderBy != ''"
>
ORDER BY ${orderBy}
</if>
</select>
</mapper>
application-webadmin/src/main/java/com/yice/webadmin/app/dto/DatasetDataSummaryDto.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* DatasetDataSummaryDto视图对象。
*
* @author linking
* @date 2023-04-13
*/
@ApiModel
(
"DatasetDataSummaryDto视图对象"
)
@Data
public
class
DatasetDataSummaryDto
{
/**
* 全部标记数
*/
@ApiModelProperty
(
value
=
"全部标记数"
)
private
Long
allMarkCount
;
/**
* 未标记数
*/
@ApiModelProperty
(
value
=
"未标记数"
)
private
Long
unMarkCount
;
/**
* 已标记数
*/
@ApiModelProperty
(
value
=
"已标记数"
)
private
Long
markCount
;
}
application-webadmin/src/main/java/com/yice/webadmin/app/dto/KGManageDto.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
dto
;
import
com.yice.common.core.validator.UpdateGroup
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.*
;
/**
* KGManageDto对象。
*
* @author linking
* @date 2023-04-13
*/
@ApiModel
(
"KGManageDto对象"
)
@Data
public
class
KGManageDto
{
/**
* 知识图谱ID。
*/
@ApiModelProperty
(
value
=
"知识图谱ID"
,
required
=
true
)
@NotNull
(
message
=
"数据验证失败,知识图谱ID不能为空!"
,
groups
=
{
UpdateGroup
.
class
})
private
Long
kgId
;
/**
* 知识图谱名称。
*/
@ApiModelProperty
(
value
=
"知识图谱名称"
)
@NotNull
(
message
=
"数据验证失败,知识图谱名称不能为空!"
,
groups
=
{
UpdateGroup
.
class
})
private
String
kgName
;
/**
* 知识图谱描述。
*/
@ApiModelProperty
(
value
=
"知识图谱描述"
)
private
String
kgDescribe
;
/**
* 知识图谱地址。
*/
@ApiModelProperty
(
value
=
"知识图谱地址"
)
private
String
kgUrl
;
/**
* 知识图谱用户名。
*/
@ApiModelProperty
(
value
=
"知识图谱用户名"
)
private
String
kgUserName
;
/**
* 知识图谱密码。
*/
@ApiModelProperty
(
value
=
"知识图谱密码"
)
private
String
kgPassword
;
/**
* 知识图谱浏览地址。
*/
@ApiModelProperty
(
value
=
"知识图谱浏览地址"
)
private
String
kgBowerUrl
;
/**
* 知识图谱类型。
*/
@ApiModelProperty
(
value
=
"知识图谱类型"
)
private
String
kgType
;
}
application-webadmin/src/main/java/com/yice/webadmin/app/model/KGManage.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
model
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.yice.common.core.base.model.BaseModel
;
import
com.yice.common.core.base.mapper.BaseModelMapper
;
import
com.yice.webadmin.app.vo.KGManageVo
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.mapstruct.*
;
import
org.mapstruct.factory.Mappers
;
/**
* KGManage实体对象。
*
* @author linking
* @date 2023-04-13
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
value
=
"lmp_kg_manage"
)
public
class
KGManage
extends
BaseModel
{
/**
* 知识图谱ID。
*/
@TableId
(
value
=
"kg_id"
)
private
Long
kgId
;
/**
* 知识图谱名称。
*/
private
String
kgName
;
/**
* 知识图谱描述。
*/
private
String
kgDescribe
;
/**
* 知识图谱地址。
*/
private
String
kgUrl
;
/**
* 知识图谱用户名。
*/
private
String
kgUserName
;
/**
* 知识图谱密码。
*/
private
String
kgPassword
;
/**
* 知识图谱浏览地址。
*/
private
String
kgBowerUrl
;
/**
* 知识图谱类型。
*/
private
String
kgType
;
@Mapper
public
interface
KGManageModelMapper
extends
BaseModelMapper
<
KGManageVo
,
KGManage
>
{
}
public
static
final
KGManageModelMapper
INSTANCE
=
Mappers
.
getMapper
(
KGManageModelMapper
.
class
);
}
application-webadmin/src/main/java/com/yice/webadmin/app/service/KGManageService.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
service
;
import
com.yice.webadmin.app.model.*
;
import
com.yice.common.core.base.service.IBaseService
;
import
java.util.*
;
/**
* 知识图谱管理数据操作服务接口。
*
* @author linking
* @date 2023-04-13
*/
public
interface
KGManageService
extends
IBaseService
<
KGManage
,
Long
>
{
/**
* 保存新增对象。
*
* @param kGManage 新增对象。
* @return 返回新增对象。
*/
KGManage
saveNew
(
KGManage
kGManage
);
/**
* 利用数据库的insertList语法,批量插入对象列表。
*
* @param kGManageList 新增对象列表。
*/
void
saveNewBatch
(
List
<
KGManage
>
kGManageList
);
/**
* 更新数据对象。
*
* @param kGManage 更新的对象。
* @param originalKGManage 原有数据对象。
* @return 成功返回true,否则false。
*/
boolean
update
(
KGManage
kGManage
,
KGManage
originalKGManage
);
/**
* 删除指定数据。
*
* @param kgId 主键Id。
* @return 成功返回true,否则false。
*/
boolean
remove
(
Long
kgId
);
/**
* 获取单表查询结果。由于没有关联数据查询,因此在仅仅获取单表数据的场景下,效率更高。
* 如果需要同时获取关联数据,请移步(getKGManageListWithRelation)方法。
*
* @param filter 过滤对象。
* @param orderBy 排序参数。
* @return 查询结果集。
*/
List
<
KGManage
>
getKGManageList
(
KGManage
filter
,
String
orderBy
);
/**
* 获取主表的查询结果,以及主表关联的字典数据和一对一从表数据,以及一对一从表的字典数据。
* 该查询会涉及到一对一从表的关联过滤,或一对多从表的嵌套关联过滤,因此性能不如单表过滤。
* 如果仅仅需要获取主表数据,请移步(getKGManageList),以便获取更好的查询性能。
*
* @param filter 主表过滤对象。
* @param orderBy 排序参数。
* @return 查询结果集。
*/
List
<
KGManage
>
getKGManageListWithRelation
(
KGManage
filter
,
String
orderBy
);
}
application-webadmin/src/main/java/com/yice/webadmin/app/service/impl/KGManageServiceImpl.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
service
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.yice.webadmin.app.service.*
;
import
com.yice.webadmin.app.dao.*
;
import
com.yice.webadmin.app.model.*
;
import
com.yice.common.core.base.dao.BaseDaoMapper
;
import
com.yice.common.core.object.MyRelationParam
;
import
com.yice.common.core.base.service.BaseService
;
import
com.yice.common.core.util.MyModelUtil
;
import
com.yice.common.sequence.wrapper.IdGeneratorWrapper
;
import
com.github.pagehelper.Page
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
/**
* 知识图谱管理数据操作服务类。
*
* @author linking
* @date 2023-04-13
*/
@Slf4j
@Service
(
"kGManageService"
)
public
class
KGManageServiceImpl
extends
BaseService
<
KGManage
,
Long
>
implements
KGManageService
{
@Autowired
private
KGManageMapper
kGManageMapper
;
@Autowired
private
IdGeneratorWrapper
idGenerator
;
/**
* 返回当前Service的主表Mapper对象。
*
* @return 主表Mapper对象。
*/
@Override
protected
BaseDaoMapper
<
KGManage
>
mapper
()
{
return
kGManageMapper
;
}
/**
* 保存新增对象。
*
* @param kGManage 新增对象。
* @return 返回新增对象。
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
KGManage
saveNew
(
KGManage
kGManage
)
{
kGManageMapper
.
insert
(
this
.
buildDefaultValue
(
kGManage
));
return
kGManage
;
}
/**
* 利用数据库的insertList语法,批量插入对象列表。
*
* @param kGManageList 新增对象列表。
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
saveNewBatch
(
List
<
KGManage
>
kGManageList
)
{
if
(
CollUtil
.
isNotEmpty
(
kGManageList
))
{
kGManageList
.
forEach
(
this
::
buildDefaultValue
);
kGManageMapper
.
insertList
(
kGManageList
);
}
}
/**
* 更新数据对象。
*
* @param kGManage 更新的对象。
* @param originalKGManage 原有数据对象。
* @return 成功返回true,否则false。
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
boolean
update
(
KGManage
kGManage
,
KGManage
originalKGManage
)
{
MyModelUtil
.
fillCommonsForUpdate
(
kGManage
,
originalKGManage
);
// 这里重点提示,在执行主表数据更新之前,如果有哪些字段不支持修改操作,请用原有数据对象字段替换当前数据字段。
UpdateWrapper
<
KGManage
>
uw
=
this
.
createUpdateQueryForNullValue
(
kGManage
,
kGManage
.
getKgId
());
return
kGManageMapper
.
update
(
kGManage
,
uw
)
==
1
;
}
/**
* 删除指定数据。
*
* @param kgId 主键Id。
* @return 成功返回true,否则false。
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
boolean
remove
(
Long
kgId
)
{
return
kGManageMapper
.
deleteById
(
kgId
)
==
1
;
}
/**
* 获取单表查询结果。由于没有关联数据查询,因此在仅仅获取单表数据的场景下,效率更高。
* 如果需要同时获取关联数据,请移步(getKGManageListWithRelation)方法。
*
* @param filter 过滤对象。
* @param orderBy 排序参数。
* @return 查询结果集。
*/
@Override
public
List
<
KGManage
>
getKGManageList
(
KGManage
filter
,
String
orderBy
)
{
return
kGManageMapper
.
getKGManageList
(
filter
,
orderBy
);
}
/**
* 获取主表的查询结果,以及主表关联的字典数据和一对一从表数据,以及一对一从表的字典数据。
* 该查询会涉及到一对一从表的关联过滤,或一对多从表的嵌套关联过滤,因此性能不如单表过滤。
* 如果仅仅需要获取主表数据,请移步(getKGManageList),以便获取更好的查询性能。
*
* @param filter 主表过滤对象。
* @param orderBy 排序参数。
* @return 查询结果集。
*/
@Override
public
List
<
KGManage
>
getKGManageListWithRelation
(
KGManage
filter
,
String
orderBy
)
{
List
<
KGManage
>
resultList
=
kGManageMapper
.
getKGManageList
(
filter
,
orderBy
);
// 在缺省生成的代码中,如果查询结果resultList不是Page对象,说明没有分页,那么就很可能是数据导出接口调用了当前方法。
// 为了避免一次性的大量数据关联,规避因此而造成的系统运行性能冲击,这里手动进行了分批次读取,开发者可按需修改该值。
int
batchSize
=
resultList
instanceof
Page
?
0
:
1000
;
this
.
buildRelationForDataList
(
resultList
,
MyRelationParam
.
normal
(),
batchSize
);
return
resultList
;
}
private
KGManage
buildDefaultValue
(
KGManage
kGManage
)
{
if
(
kGManage
.
getKgId
()
==
null
)
{
kGManage
.
setKgId
(
idGenerator
.
nextLongId
());
}
MyModelUtil
.
fillCommonsForInsert
(
kGManage
);
return
kGManage
;
}
}
application-webadmin/src/main/java/com/yice/webadmin/app/util/Neo4jUtil.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
util
;
/*import org.neo4j.driver.Driver;
import org.neo4j.driver.GraphDatabase;
import org.neo4j.driver.AuthTokens;
import org.neo4j.driver.Config;*/
public
class
Neo4jUtil
{
public
void
test
()
{
// 配置 Neo4j 驱动程序
/* Config config = Config.builder().
.withCredentials(AuthTokens.basic("username", "password")) // 替换为你的用户名和密码
.build();
// 获取 Neo4j 驱动实例
Driver driver = Driver.builder()
.withConfig(config)
.build();
// 打开与 Neo4j 的连接
try (GraphDatabase graphDatabase = driver.session()) {
// 在此处执行你的数据库操作
// 例如,查询节点或关系
// 关闭会话
graphDatabase.shutdown();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭驱动程序
driver.close();
}*/
}
}
application-webadmin/src/main/java/com/yice/webadmin/app/vo/KGManageVo.java
0 → 100644
View file @
ba70af16
package
com
.
yice
.
webadmin
.
app
.
vo
;
import
com.yice.common.core.base.vo.BaseVo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
/**
* KGManageVO视图对象。
*
* @author linking
* @date 2023-04-13
*/
@ApiModel
(
"KGManageVO视图对象"
)
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
public
class
KGManageVo
extends
BaseVo
{
/**
* 知识图谱ID。
*/
@ApiModelProperty
(
value
=
"知识图谱ID"
)
private
Long
kgId
;
/**
* 知识图谱名称。
*/
@ApiModelProperty
(
value
=
"知识图谱名称"
)
private
String
kgName
;
/**
* 知识图谱描述。
*/
@ApiModelProperty
(
value
=
"知识图谱描述"
)
private
String
kgDescribe
;
/**
* 知识图谱地址。
*/
@ApiModelProperty
(
value
=
"知识图谱地址"
)
private
String
kgUrl
;
/**
* 知识图谱用户名。
*/
@ApiModelProperty
(
value
=
"知识图谱用户名"
)
private
String
kgUserName
;
/**
* 知识图谱密码。
*/
@ApiModelProperty
(
value
=
"知识图谱密码"
)
private
String
kgPassword
;
/**
* 知识图谱浏览地址。
*/
@ApiModelProperty
(
value
=
"知识图谱浏览地址"
)
private
String
kgBowerUrl
;
/**
* 知识图谱类型。
*/
@ApiModelProperty
(
value
=
"知识图谱类型"
)
private
String
kgType
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment