Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
yubinCloud
fairy-wiki
提交
b2e8b673
F
fairy-wiki
项目概览
yubinCloud
/
fairy-wiki
通知
4
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
fairy-wiki
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b2e8b673
编写于
4月 20, 2021
作者:
yubinCloud
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6-12 完成电子书根据 name 进行查询的功能
上级
874cc485
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
81 addition
and
16 deletion
+81
-16
src/main/java/io/github/yubincloud/fairywiki/controller/EbookController.java
...thub/yubincloud/fairywiki/controller/EbookController.java
+3
-6
src/main/java/io/github/yubincloud/fairywiki/dto/req/EbookQueryReqDto.java
...github/yubincloud/fairywiki/dto/req/EbookQueryReqDto.java
+0
-2
src/main/java/io/github/yubincloud/fairywiki/service/EbookService.java
.../io/github/yubincloud/fairywiki/service/EbookService.java
+11
-4
web/src/views/admin/admin-ebook.vue
web/src/views/admin/admin-ebook.vue
+67
-4
未找到文件。
src/main/java/io/github/yubincloud/fairywiki/controller/EbookController.java
浏览文件 @
b2e8b673
...
...
@@ -30,12 +30,9 @@ public class EbookController {
return
new
RestfulModel
<>(
ErrorCode
.
SUCCESS
,
""
,
bookList
);
}
/**
* 根据书名进行电子书的模糊查询接口
*/
@GetMapping
(
"/list2"
)
public
RestfulModel
<
List
<
EbookQueryRespDto
>>
list
(
EbookQueryReqDto
ebookQueryReqDto
)
{
List
<
EbookQueryRespDto
>
bookList
=
ebookService
.
fuzzyQueryByName
(
ebookQueryReqDto
.
getName
());
@GetMapping
(
"/query"
)
public
RestfulModel
<
PageRespDto
<
EbookQueryRespDto
>>
queryEbooks
(
@Valid
EbookQueryReqDto
ebookQueryReqDto
)
{
PageRespDto
<
EbookQueryRespDto
>
bookList
=
ebookService
.
fuzzyQueryByName
(
ebookQueryReqDto
);
return
new
RestfulModel
<>(
ErrorCode
.
SUCCESS
,
""
,
bookList
);
}
...
...
src/main/java/io/github/yubincloud/fairywiki/dto/req/EbookQueryReqDto.java
浏览文件 @
b2e8b673
...
...
@@ -8,7 +8,5 @@ import lombok.EqualsAndHashCode;
@EqualsAndHashCode
(
callSuper
=
true
)
public
class
EbookQueryReqDto
extends
PageReqDto
{
private
Long
id
;
private
String
name
;
}
src/main/java/io/github/yubincloud/fairywiki/service/EbookService.java
浏览文件 @
b2e8b673
...
...
@@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper;
import
com.github.pagehelper.PageInfo
;
import
io.github.yubincloud.fairywiki.domain.Ebook
;
import
io.github.yubincloud.fairywiki.domain.EbookExample
;
import
io.github.yubincloud.fairywiki.dto.req.EbookQueryReqDto
;
import
io.github.yubincloud.fairywiki.dto.req.EbookSaveReqDto
;
import
io.github.yubincloud.fairywiki.dto.resp.EbookQueryRespDto
;
import
io.github.yubincloud.fairywiki.dto.resp.PageRespDto
;
...
...
@@ -42,16 +43,22 @@ public class EbookService {
/**
* 根据 ebook 的 name 进行模糊查询
* @param name ebook的书名
*/
public
List
<
EbookQueryRespDto
>
fuzzyQueryByName
(
String
name
)
{
public
PageRespDto
<
EbookQueryRespDto
>
fuzzyQueryByName
(
EbookQueryReqDto
ebookQueryReqDto
)
{
// 对数据库进行模糊查询
EbookExample
ebookExample
=
new
EbookExample
();
EbookExample
.
Criteria
criteria
=
ebookExample
.
createCriteria
();
criteria
.
andNameLike
(
"%"
+
name
+
"%"
);
criteria
.
andNameLike
(
"%"
+
ebookQueryReqDto
.
getName
()
+
"%"
);
PageHelper
.
startPage
(
ebookQueryReqDto
.
getPageNum
(),
ebookQueryReqDto
.
getPageSize
());
// 对接下来遇到的第一个 SELECT 产生作用
List
<
Ebook
>
ebookList
=
ebookMapper
.
selectByExample
(
ebookExample
);
// 将 ebookList 拷贝至 dto 对象列表并返回
return
CopyUtil
.
copyList
(
ebookList
,
EbookQueryRespDto
.
class
);
PageInfo
<
Ebook
>
pageInfo
=
new
PageInfo
<>(
ebookList
);
List
<
EbookQueryRespDto
>
ebookQueryRespDtoList
=
CopyUtil
.
copyList
(
ebookList
,
EbookQueryRespDto
.
class
);
PageRespDto
<
EbookQueryRespDto
>
pageRespDto
=
new
PageRespDto
<>();
pageRespDto
.
setTotal
(
pageInfo
.
getTotal
());
pageRespDto
.
setList
(
ebookQueryRespDtoList
);
return
pageRespDto
;
}
/**
...
...
web/src/views/admin/admin-ebook.vue
浏览文件 @
b2e8b673
...
...
@@ -4,9 +4,30 @@
:style=
"
{ background: '#fff', padding: '24px', margin: 0, minHeight: '280px' }"
>
<p>
<a-button
type=
"primary"
@
click=
"add()"
size=
"large"
>
新增
</a-button>
<a-form
layout=
"inline"
:model=
"ebookQueryForm"
@
finish=
"handleQueryFormSubmit(ebookQueryForm)"
>
<a-form-item>
<a-input
v-model:value=
"ebookQueryForm.name"
placeholder=
"ebook name"
>
<template
#prefix
><EyeOutlined
style=
"color: rgba(0, 0, 0, 0.25)"
/></
template
>
</a-input>
</a-form-item>
<a-form-item>
<a-button
type=
"primary"
html-type=
"submit"
size=
"large"
:disabled=
"ebookQueryForm.name === ''"
>
查询
</a-button>
</a-form-item>
<a-form-item>
<a-button
type=
"primary"
@
click=
"add()"
size=
"large"
>
新增
</a-button>
</a-form-item>
</a-form>
</p>
<a-table
:columns=
"columns"
...
...
@@ -65,13 +86,21 @@
</template>
<
script
lang=
"ts"
>
import
{
defineComponent
,
onMounted
,
ref
}
from
'
vue
'
;
import
{
defineComponent
,
onMounted
,
ref
,
UnwrapRef
,
reactive
}
from
'
vue
'
;
import
axios
from
'
axios
'
;
import
{
message
}
from
'
ant-design-vue
'
interface
EbookQueryForm
{
name
:
string
;
}
export
default
defineComponent
({
name
:
'
AdminEbook
'
,
setup
()
{
const
ebookQueryForm
:
UnwrapRef
<
EbookQueryForm
>
=
reactive
({
name
:
''
});
const
ebooks
=
ref
();
const
pagination
=
ref
({
current
:
1
,
...
...
@@ -118,6 +147,35 @@ export default defineComponent({
}
];
/**
* 根据表单提交的数据进行查询
**/
const
handleQueryFormSubmit
=
(
ebookForm
:
EbookQueryForm
)
=>
{
loading
.
value
=
true
;
axios
.
get
(
"
/ebook/query
"
,
{
params
:
{
name
:
ebookForm
.
name
,
pageNum
:
1
,
pageSize
:
4
}
}).
then
((
response
)
=>
{
loading
.
value
=
false
;
const
respData
=
response
.
data
;
if
(
respData
.
code
==
0
)
{
const
pageData
=
respData
.
data
;
ebooks
.
value
=
pageData
.
list
;
// 重置分页按钮
pagination
.
value
.
current
=
1
;
pagination
.
value
.
total
=
pageData
.
total
;
}
else
{
message
.
error
(
respData
.
msg
);
}
});
};
/**
* 数据查询
**/
...
...
@@ -218,6 +276,10 @@ export default defineComponent({
});
return
{
ebookQueryForm
,
labelCol
:
{
span
:
4
},
wrapperCol
:
{
span
:
14
},
ebooks
,
pagination
,
columns
,
...
...
@@ -227,6 +289,7 @@ export default defineComponent({
edit
,
add
,
handleDeleteEbook
,
handleQueryFormSubmit
,
ebook
,
modalVisible
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录