diff --git a/src/main/java/com/steadon/saber/service/impl/TemplateServiceImpl.java b/src/main/java/com/steadon/saber/service/impl/TemplateServiceImpl.java
index e6a69cc3ef82b95746a7e4e288aa02e595ace3c8..ab2a4fa7bd018f7275fd27d39035efbbcbac12bf 100644
--- a/src/main/java/com/steadon/saber/service/impl/TemplateServiceImpl.java
+++ b/src/main/java/com/steadon/saber/service/impl/TemplateServiceImpl.java
@@ -114,11 +114,17 @@ public class TemplateServiceImpl implements TemplateService {
     @Override
     public PageData<Template> searchTemplate(TemplateSearchRequest request, Integer pageNo, Integer pageSize) {
         String keyword = request.getKeyword();
-        QueryWrapper<Template> wrapper = new QueryWrapper<Template>()
-                .eq("create_by", request.getCreateBy())
-                .like("name", keyword)
-                .or().like("content", keyword)
-                .or().like("description", keyword);
+        QueryWrapper<Template> wrapper = new QueryWrapper<>();
+        // 给出筛选条件:keyword
+        if(!StringUtils.isEmpty(keyword)){
+            wrapper = wrapper.and(w -> w.like("name", keyword)
+                    .or().like("content", keyword)
+                    .or().like("description", keyword));
+        }
+        // 给出筛选条件:create_by
+        if (!StringUtils.isEmpty(request.getCreateBy())){
+            wrapper = wrapper.and(w -> w.eq("create_by", request.getCreateBy()));
+        }
         // 分页返回数据
         Page<Template> page = new Page<>(pageNo, pageSize);
         Page<Template> pageData = templateMapper.selectPage(page, wrapper);