Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
elleai
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
ai-tech
E
ellehuis-group
backend
elleai
Commits
ba28a800
Commit
ba28a800
authored
Oct 24, 2024
by
杨翌文
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/feature/20240918_chain' into feature/20240918_chain
parents
a2db1885
d4a1e3b9
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
341 additions
and
25 deletions
+341
-25
AppExamineService.java
.../breeze/elleai/application/service/AppExamineService.java
+57
-8
ExamineMobileController.java
...eeze/elleai/controller/front/ExamineMobileController.java
+2
-3
WikiMobileController.java
.../breeze/elleai/controller/front/WikiMobileController.java
+3
-3
WikiSaveModel.java
...e/elleai/domain/sparring/model/request/WikiSaveModel.java
+0
-1
WikiUserViewSaveModel.java
.../domain/sparring/model/request/WikiUserViewSaveModel.java
+27
-0
WikiUserViewResponseModel.java
...in/sparring/model/response/WikiUserViewResponseModel.java
+29
-0
ExamineServiceImpl.java
...ze/elleai/domain/sparring/service/ExamineServiceImpl.java
+9
-10
WikiUserViewService.java
...e/elleai/domain/sparring/service/WikiUserViewService.java
+28
-0
WikiUserViewServiceImpl.java
...leai/domain/sparring/service/WikiUserViewServiceImpl.java
+51
-0
WikiUserViewEntity.java
...ava/cn/breeze/elleai/infra/entity/WikiUserViewEntity.java
+51
-0
WikiUserViewTableDef.java
...reeze/elleai/infra/entity/table/WikiUserViewTableDef.java
+68
-0
WikiUserViewMapper.java
...ava/cn/breeze/elleai/infra/mapper/WikiUserViewMapper.java
+16
-0
No files found.
src/main/java/cn/breeze/elleai/application/service/AppExamineService.java
View file @
ba28a800
...
...
@@ -8,6 +8,7 @@ import cn.breeze.elleai.domain.sparring.model.request.*;
import
cn.breeze.elleai.domain.sparring.model.response.*
;
import
cn.breeze.elleai.domain.sparring.service.CommonService
;
import
cn.breeze.elleai.domain.sparring.service.ExamineService
;
import
cn.breeze.elleai.domain.sparring.service.WikiUserViewService
;
import
cn.breeze.elleai.exception.InternalException
;
import
cn.breeze.elleai.util.Codes
;
import
cn.breeze.elleai.util.UserPrincipal
;
...
...
@@ -56,6 +57,8 @@ public class AppExamineService {
private
final
CommonService
commonService
;
private
final
WikiUserViewService
viewService
;
/************************************************** 场景分类 **************************************************/
...
...
@@ -484,7 +487,7 @@ public class AppExamineService {
if
(
CollectionUtil
.
isNotEmpty
(
recordList
))
{
examCount
=
recordList
.
stream
().
filter
(
v
->
Objects
.
equals
(
v
.
getExamineMode
(),
1
)).
count
();
examTotalCount
=
recordList
.
size
();
practiceCount
=
examTotalCount
-
exam
Total
Count
;
practiceCount
=
examTotalCount
-
examCount
;
maxOverallScore
=
recordList
.
stream
().
filter
(
v
->
Objects
.
nonNull
(
v
.
getOverallScore
())).
mapToDouble
(
ExamineRecordResponseModel:
:
getOverallScore
).
max
().
getAsDouble
();
}
...
...
@@ -651,7 +654,7 @@ public class AppExamineService {
* @param request
* @return
*/
public
PageResult
<
ExamineMobileDto
>
examineMobilePaginQuery
(
ExamineRequestDto
request
)
{
public
PageResult
<
ExamineMobileDto
>
examineMobilePaginQuery
(
UserPrincipal
userPrincipal
,
ExamineRequestDto
request
)
{
ExamineRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
ExamineRequestModel
.
class
);
requestModel
.
setStatus
(
1
);
...
...
@@ -667,14 +670,32 @@ public class AppExamineService {
ExamineMobileDto
dto
=
BeanUtil
.
copyProperties
(
v
,
ExamineMobileDto
.
class
);
// 已考人数
long
examTotalCount
=
0
;
// 考试次数
long
examCount
=
0
;
long
practiceCount
=
0
;
double
maxOverallScore
=
0
;
ExamineRecordRequestModel
req
=
new
ExamineRecordRequestModel
();
req
.
setExamineId
(
v
.
getId
());
List
<
ExamineRecordResponseModel
>
recordList
=
examineService
.
examineRecordList
(
req
);
if
(
CollectionUtil
.
isNotEmpty
(
recordList
))
{
examCount
=
recordList
.
size
();
examTotalCount
=
recordList
.
size
();
examCount
=
recordList
.
stream
().
filter
(
r
->
Objects
.
equals
(
r
.
getExamineMode
(),
1
)).
count
();
practiceCount
=
examTotalCount
-
examCount
;
maxOverallScore
=
recordList
.
stream
().
filter
(
r
->
Objects
.
nonNull
(
r
.
getOverallScore
())).
mapToDouble
(
ExamineRecordResponseModel:
:
getOverallScore
).
max
().
getAsDouble
();
// 是否已考
long
count
=
recordList
.
stream
().
filter
(
r
->
Objects
.
equals
(
r
.
getUserId
(),
userPrincipal
.
getUserId
())).
count
();
if
(
count
>
0
)
{
dto
.
setExamFlag
(
true
);
}
}
dto
.
setExamTotalCount
(
examCount
);
dto
.
setExamTotalCount
(
examTotalCount
);
dto
.
setMaxOverallScore
(
maxOverallScore
);
dto
.
setExamCount
(
examCount
);
dto
.
setPracticeCount
(
practiceCount
);
return
dto
;
}).
collect
(
Collectors
.
toList
());
...
...
@@ -709,11 +730,12 @@ public class AppExamineService {
* @param request
* @return
*/
public
PageResult
<
ExamineRecordMobileDto
>
examineRecordMobilePaginQuery
(
ExamineRecordMobileRequestDto
request
)
{
public
PageResult
<
ExamineRecordMobileDto
>
examineRecordMobilePaginQuery
(
UserPrincipal
userPrincipal
,
ExamineRecordMobileRequestDto
request
)
{
ExamineRecordRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
ExamineRecordRequestModel
.
class
);
requestModel
.
setSortColumn
(
"create_time"
);
requestModel
.
setSortAsc
(
false
);
requestModel
.
setUserId
(
userPrincipal
.
getUserId
());
Page
<
ExamineRecordResponseModel
>
page
=
examineService
.
examineRecordPaginQuery
(
requestModel
);
...
...
@@ -744,8 +766,15 @@ public class AppExamineService {
* @return
*/
public
PageResult
<
ExamineRecordDto
>
examineRecordPaginQuery
(
ExamineRecordRequestDto
request
)
{
ExamineRecordRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
ExamineRecordRequestModel
.
class
);
ExamineRequestModel
rm
=
new
ExamineRequestModel
();
rm
.
setName
(
request
.
getUserName
());
examineService
.
examineList
(
rm
);
Page
<
ExamineRecordResponseModel
>
page
=
examineService
.
examineRecordPaginQuery
(
requestModel
);
PageResult
<
ExamineRecordDto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
if
(
CollectionUtil
.
isNotEmpty
(
page
.
getRecords
()))
{
...
...
@@ -920,8 +949,22 @@ public class AppExamineService {
return
BeanUtil
.
copyProperties
(
model
,
WikiDto
.
class
);
}
public
WikiMobileDto
wikiMobileDetail
(
Integer
id
)
{
public
WikiMobileDto
wikiMobileDetail
(
UserPrincipal
userPrincipal
,
Integer
id
)
{
WikiResponseModel
model
=
examineService
.
wikiDetail
(
id
);
if
(
Objects
.
nonNull
(
model
))
{
// 保存浏览记录
WikiUserViewSaveModel
saveModel
=
new
WikiUserViewSaveModel
();
saveModel
.
setWikiId
(
id
);
saveModel
.
setUserId
(
userPrincipal
.
getUserId
());
saveModel
.
setViewCount
(
1
);
WikiUserViewResponseModel
view
=
viewService
.
viewDetail
(
userPrincipal
.
getUserId
(),
id
);
if
(
Objects
.
nonNull
(
view
))
{
saveModel
.
setViewCount
(
view
.
getViewCount
()
+
1
);
saveModel
.
setId
(
view
.
getId
());
}
viewService
.
saveView
(
saveModel
);
}
return
BeanUtil
.
copyProperties
(
model
,
WikiMobileDto
.
class
);
}
...
...
@@ -977,7 +1020,7 @@ public class AppExamineService {
* @param request
* @return
*/
public
PageResult
<
WikiListMobileDto
>
wikiMobilePaginQuery
(
WikiRequestDto
request
)
{
public
PageResult
<
WikiListMobileDto
>
wikiMobilePaginQuery
(
UserPrincipal
userPrincipal
,
WikiRequestDto
request
)
{
WikiRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
WikiRequestModel
.
class
);
requestModel
.
setStatus
(
1
);
...
...
@@ -987,6 +1030,9 @@ public class AppExamineService {
PageResult
<
WikiListMobileDto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
if
(
CollectionUtil
.
isNotEmpty
(
page
.
getRecords
()))
{
List
<
WikiUserViewResponseModel
>
viewList
=
viewService
.
viewList
(
userPrincipal
.
getUserId
());
List
<
WikiListMobileDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
WikiListMobileDto
dto
=
BeanUtil
.
copyProperties
(
v
,
WikiListMobileDto
.
class
);
...
...
@@ -994,7 +1040,10 @@ public class AppExamineService {
if
(
Objects
.
nonNull
(
wikiCategoryDto
))
{
dto
.
setWikiCategoryName
(
wikiCategoryDto
.
getName
());
}
long
count
=
viewList
.
stream
().
filter
(
w
->
Objects
.
equals
(
w
.
getWikiId
(),
v
.
getId
())).
count
();
if
(
count
>
0
)
{
dto
.
setViewFlag
(
true
);
}
return
dto
;
}).
collect
(
Collectors
.
toList
());
...
...
src/main/java/cn/breeze/elleai/controller/front/ExamineMobileController.java
View file @
ba28a800
...
...
@@ -44,7 +44,7 @@ public class ExamineMobileController {
public
ApiResponse
<
PageResult
<
ExamineMobileDto
>>
list
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
,
@QueryParam
ExamineRequestDto
request
)
{
PageResult
<
ExamineMobileDto
>
pageResult
=
examineService
.
examineMobilePaginQuery
(
request
);
PageResult
<
ExamineMobileDto
>
pageResult
=
examineService
.
examineMobilePaginQuery
(
userPrincipal
,
request
);
return
ApiResponse
.
ok
(
pageResult
);
}
...
...
@@ -60,8 +60,7 @@ public class ExamineMobileController {
public
ApiResponse
<
PageResult
<
ExamineRecordMobileDto
>>
recordList
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
,
@QueryParam
ExamineRecordMobileRequestDto
request
)
{
PageResult
<
ExamineRecordMobileDto
>
pageResult
=
examineService
.
examineRecordMobilePaginQuery
(
request
);
PageResult
<
ExamineRecordMobileDto
>
pageResult
=
examineService
.
examineRecordMobilePaginQuery
(
userPrincipal
,
request
);
return
ApiResponse
.
ok
(
pageResult
);
}
...
...
src/main/java/cn/breeze/elleai/controller/front/WikiMobileController.java
View file @
ba28a800
...
...
@@ -37,14 +37,14 @@ public class WikiMobileController {
public
ApiResponse
<
PageResult
<
WikiListMobileDto
>>
list
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
,
@QueryParam
WikiRequestDto
request
)
{
PageResult
<
WikiListMobileDto
>
pageResult
=
examineService
.
wikiMobilePaginQuery
(
request
);
PageResult
<
WikiListMobileDto
>
pageResult
=
examineService
.
wikiMobilePaginQuery
(
userPrincipal
,
request
);
return
ApiResponse
.
ok
(
pageResult
);
}
@Operation
(
summary
=
"获取资料详情"
)
@GetMapping
(
"/detail/{id}"
)
public
ApiResponse
<
WikiMobileDto
>
detail
(
@Schema
(
description
=
"资料ID"
)
@PathVariable
(
"id"
)
Integer
id
)
{
WikiMobileDto
detail
=
examineService
.
wikiMobileDetail
(
id
);
public
ApiResponse
<
WikiMobileDto
>
detail
(
UserPrincipal
userPrincipal
,
@Schema
(
description
=
"资料ID"
)
@PathVariable
(
"id"
)
Integer
id
)
{
WikiMobileDto
detail
=
examineService
.
wikiMobileDetail
(
userPrincipal
,
id
);
return
ApiResponse
.
ok
(
detail
);
}
}
src/main/java/cn/breeze/elleai/domain/sparring/model/request/WikiSaveModel.java
View file @
ba28a800
...
...
@@ -10,7 +10,6 @@ import java.util.Date;
@Data
public
class
WikiSaveModel
implements
Serializable
{
@Id
(
keyType
=
KeyType
.
Auto
)
private
Integer
id
;
/**
...
...
src/main/java/cn/breeze/elleai/domain/sparring/model/request/WikiUserViewSaveModel.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
domain
.
sparring
.
model
.
request
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
WikiUserViewSaveModel
implements
Serializable
{
private
Integer
id
;
/**
* 资料ID
*/
private
Integer
wikiId
;
/**
* 用户ID
*/
private
String
userId
;
/**
* 浏览次数
*/
private
Integer
viewCount
;
}
src/main/java/cn/breeze/elleai/domain/sparring/model/response/WikiUserViewResponseModel.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
domain
.
sparring
.
model
.
response
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
WikiUserViewResponseModel
implements
Serializable
{
private
Integer
id
;
/**
* 资料ID
*/
private
Integer
wikiId
;
/**
* 用户ID
*/
private
String
userId
;
/**
* 浏览次数
*/
private
Integer
viewCount
;
private
Date
createTime
;
}
src/main/java/cn/breeze/elleai/domain/sparring/service/ExamineServiceImpl.java
View file @
ba28a800
...
...
@@ -465,17 +465,17 @@ public class ExamineServiceImpl implements ExamineService {
Integer
pageNo
=
ObjectUtil
.
defaultIfNull
(
request
.
getPageNo
(),
1
);
Integer
pageSize
=
ObjectUtil
.
defaultIfNull
(
request
.
getPageSize
(),
10
);
QueryWrapper
queryWrapper
=
QueryWrapper
.
create
();
QueryWrapper
queryWrapper
=
QueryWrapper
.
create
()
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
DELETED
.
eq
(
0
));
if
(
StrUtil
.
isNotEmpty
(
request
.
getUserId
()))
{
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
USER_ID
.
eq
(
request
.
getUserId
()));
queryWrapper
.
and
(
USER_EXAMINE_RECORD_ENTITY
.
USER_ID
.
eq
(
request
.
getUserId
()));
}
if
(
Objects
.
nonNull
(
request
.
getExamineMode
()))
{
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_MODE
.
eq
(
request
.
getExamineMode
()));
queryWrapper
.
and
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_MODE
.
eq
(
request
.
getExamineMode
()));
}
if
(
Objects
.
nonNull
(
request
.
getExamineId
()))
{
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_ID
.
eq
(
request
.
getExamineId
()));
queryWrapper
.
and
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_ID
.
eq
(
request
.
getExamineId
()));
}
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
DELETED
.
eq
(
0
));
queryWrapper
.
orderBy
(
USER_EXAMINE_RECORD_ENTITY
.
CREATE_TIME
,
false
);
Page
<
ExamineRecordResponseModel
>
page
=
userExamineRecordMapper
.
paginateAs
(
pageNo
,
pageSize
,
queryWrapper
,
ExamineRecordResponseModel
.
class
);
...
...
@@ -486,17 +486,16 @@ public class ExamineServiceImpl implements ExamineService {
@Override
public
List
<
ExamineRecordResponseModel
>
examineRecordList
(
ExamineRecordRequestModel
request
)
{
QueryWrapper
queryWrapper
=
QueryWrapper
.
create
();
QueryWrapper
queryWrapper
=
QueryWrapper
.
create
()
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
DELETED
.
eq
(
0
))
;
if
(
StrUtil
.
isNotEmpty
(
request
.
getUserId
()))
{
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
USER_ID
.
eq
(
request
.
getUserId
()));
queryWrapper
.
and
(
USER_EXAMINE_RECORD_ENTITY
.
USER_ID
.
eq
(
request
.
getUserId
()));
}
if
(
Objects
.
nonNull
(
request
.
getExamineMode
()))
{
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_MODE
.
eq
(
request
.
getExamineMode
()));
queryWrapper
.
and
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_MODE
.
eq
(
request
.
getExamineMode
()));
}
if
(
Objects
.
nonNull
(
request
.
getExamineId
()))
{
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_ID
.
eq
(
request
.
getExamineId
()));
queryWrapper
.
and
(
USER_EXAMINE_RECORD_ENTITY
.
EXAMINE_ID
.
eq
(
request
.
getExamineId
()));
}
queryWrapper
.
where
(
USER_EXAMINE_RECORD_ENTITY
.
DELETED
.
eq
(
0
));
return
userExamineRecordMapper
.
selectListByQueryAs
(
queryWrapper
,
ExamineRecordResponseModel
.
class
);
}
...
...
src/main/java/cn/breeze/elleai/domain/sparring/service/WikiUserViewService.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
domain
.
sparring
.
service
;
import
cn.breeze.elleai.domain.sparring.model.request.KbVectorRequestModel
;
import
cn.breeze.elleai.domain.sparring.model.request.KbVectorSaveModel
;
import
cn.breeze.elleai.domain.sparring.model.request.WikiUserViewSaveModel
;
import
cn.breeze.elleai.domain.sparring.model.response.KbVectorResponseModel
;
import
cn.breeze.elleai.domain.sparring.model.response.WikiUserViewResponseModel
;
import
com.mybatisflex.core.paginate.Page
;
import
com.mybatisflex.core.service.IService
;
import
cn.breeze.elleai.infra.entity.WikiUserViewEntity
;
import
java.util.List
;
/**
* 服务层。
*
* @author breeze
* @since 2024-10-24
*/
public
interface
WikiUserViewService
extends
IService
<
WikiUserViewEntity
>
{
/***************************************** 知识库集合 *****************************************/
List
<
WikiUserViewResponseModel
>
viewList
(
String
userId
);
WikiUserViewResponseModel
viewDetail
(
String
userId
,
Integer
wikiId
);
void
saveView
(
WikiUserViewSaveModel
dto
);
}
src/main/java/cn/breeze/elleai/domain/sparring/service/WikiUserViewServiceImpl.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
domain
.
sparring
.
service
;
import
cn.breeze.elleai.domain.sparring.model.request.WikiUserViewSaveModel
;
import
cn.breeze.elleai.domain.sparring.model.response.WikiUserViewResponseModel
;
import
cn.breeze.elleai.infra.entity.WikiUserViewEntity
;
import
cn.breeze.elleai.infra.mapper.WikiUserViewMapper
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.mybatisflex.core.query.QueryWrapper
;
import
com.mybatisflex.spring.service.impl.ServiceImpl
;
import
org.springframework.stereotype.Service
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Objects
;
import
static
cn
.
breeze
.
elleai
.
infra
.
entity
.
table
.
WikiUserViewTableDef
.
WIKI_USER_VIEW_ENTITY
;
/**
* 服务层实现。
*
* @author breeze
* @since 2024-10-24
*/
@Service
public
class
WikiUserViewServiceImpl
extends
ServiceImpl
<
WikiUserViewMapper
,
WikiUserViewEntity
>
implements
WikiUserViewService
{
@Override
public
List
<
WikiUserViewResponseModel
>
viewList
(
String
userId
)
{
QueryWrapper
queryWrapper
=
QueryWrapper
.
create
();
queryWrapper
.
where
(
WIKI_USER_VIEW_ENTITY
.
USER_ID
.
eq
(
userId
));
queryWrapper
.
orderBy
(
WIKI_USER_VIEW_ENTITY
.
CREATE_TIME
,
false
);
return
mapper
.
selectListByQueryAs
(
queryWrapper
,
WikiUserViewResponseModel
.
class
);
}
@Override
public
void
saveView
(
WikiUserViewSaveModel
dto
)
{
WikiUserViewEntity
entity
=
BeanUtil
.
toBean
(
dto
,
WikiUserViewEntity
.
class
);
if
(
Objects
.
isNull
(
entity
.
getId
()))
{
entity
.
setCreateTime
(
new
Date
());
}
mapper
.
insertOrUpdateSelective
(
entity
);
}
@Override
public
WikiUserViewResponseModel
viewDetail
(
String
userId
,
Integer
wikiId
)
{
QueryWrapper
queryWrapper
=
QueryWrapper
.
create
();
queryWrapper
.
where
(
WIKI_USER_VIEW_ENTITY
.
USER_ID
.
eq
(
userId
));
queryWrapper
.
and
(
WIKI_USER_VIEW_ENTITY
.
WIKI_ID
.
eq
(
wikiId
));
return
mapper
.
selectOneByQueryAs
(
queryWrapper
,
WikiUserViewResponseModel
.
class
);
}
}
src/main/java/cn/breeze/elleai/infra/entity/WikiUserViewEntity.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
infra
.
entity
;
import
com.mybatisflex.annotation.Id
;
import
com.mybatisflex.annotation.KeyType
;
import
com.mybatisflex.annotation.Table
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 实体类。
*
* @author breeze
* @since 2024-10-24
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table
(
"ai_wiki_user_view"
)
public
class
WikiUserViewEntity
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
1L
;
@Id
(
keyType
=
KeyType
.
Auto
)
private
Integer
id
;
/**
* 资料ID
*/
private
Integer
wikiId
;
/**
* 用户ID
*/
private
String
userId
;
/**
* 浏览次数
*/
private
Integer
viewCount
;
private
Date
createTime
;
}
src/main/java/cn/breeze/elleai/infra/entity/table/WikiUserViewTableDef.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
infra
.
entity
.
table
;
import
com.mybatisflex.core.query.QueryColumn
;
import
com.mybatisflex.core.table.TableDef
;
import
java.io.Serial
;
/**
* 表定义层。
*
* @author breeze
* @since 2024-10-24
*/
public
class
WikiUserViewTableDef
extends
TableDef
{
@Serial
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
public
static
final
WikiUserViewTableDef
WIKI_USER_VIEW_ENTITY
=
new
WikiUserViewTableDef
();
public
final
QueryColumn
ID
=
new
QueryColumn
(
this
,
"id"
);
/**
* 用户ID
*/
public
final
QueryColumn
USER_ID
=
new
QueryColumn
(
this
,
"user_id"
);
/**
* 资料ID
*/
public
final
QueryColumn
WIKI_ID
=
new
QueryColumn
(
this
,
"wiki_id"
);
/**
* 浏览次数
*/
public
final
QueryColumn
VIEW_COUNT
=
new
QueryColumn
(
this
,
"view_count"
);
public
final
QueryColumn
CREATE_TIME
=
new
QueryColumn
(
this
,
"create_time"
);
/**
* 所有字段。
*/
public
final
QueryColumn
ALL_COLUMNS
=
new
QueryColumn
(
this
,
"*"
);
/**
* 默认字段,不包含逻辑删除或者 large 等字段。
*/
public
final
QueryColumn
[]
DEFAULT_COLUMNS
=
new
QueryColumn
[]{
ID
,
WIKI_ID
,
USER_ID
,
VIEW_COUNT
,
CREATE_TIME
};
public
WikiUserViewTableDef
()
{
super
(
""
,
"ai_wiki_user_view"
);
}
private
WikiUserViewTableDef
(
String
schema
,
String
name
,
String
alisa
)
{
super
(
schema
,
name
,
alisa
);
}
public
WikiUserViewTableDef
as
(
String
alias
)
{
String
key
=
getNameWithSchema
()
+
"."
+
alias
;
return
getCache
(
key
,
k
->
new
WikiUserViewTableDef
(
""
,
"ai_wiki_user_view"
,
alias
));
}
}
src/main/java/cn/breeze/elleai/infra/mapper/WikiUserViewMapper.java
0 → 100644
View file @
ba28a800
package
cn
.
breeze
.
elleai
.
infra
.
mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
com.mybatisflex.core.BaseMapper
;
import
cn.breeze.elleai.infra.entity.WikiUserViewEntity
;
/**
* 映射层。
*
* @author breeze
* @since 2024-10-24
*/
@Mapper
public
interface
WikiUserViewMapper
extends
BaseMapper
<
WikiUserViewEntity
>
{
}
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