Commit b50c3c60 by 阮思源

Merge branch 'feature-lz-cut-word-search' into 'master'

平台端书刊添加分词搜索

See merge request rays/pcloud-book!252
parents cf7d1a2b 177396ea
......@@ -632,6 +632,12 @@ public class BookBizImpl implements BookBiz {
paramMap.put("isCurrentMonth", isCurrentMonth);
paramMap.put("currentPage", currentPage * numPerPage);
paramMap.put("numPerPage", numPerPage);
if(!StringUtil.isEmpty(bookName)){
String[] bookNameList = bookName.trim().split("\\s+");
paramMap.put("bookNameList",Lists.newArrayList(bookNameList));
}
List<BookDto> bookList = bookDao.getListPage4Platform(paramMap);
// 获取平台端所有账号用户名
......
......@@ -23,6 +23,8 @@ import com.pcloud.common.permission.PermissionException;
import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.SessionUtil;
import com.pcloud.common.utils.cookie.Cookie;
import com.pcloud.common.utils.string.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -633,6 +635,10 @@ public class BookFacadeImpl implements BookFacade {
paramMap.put("bookName", bookName);
paramMap.put("secondTempletId", secondTempletId);
paramMap.put("secondTempletIds",Optional.ofNullable(paramMap.get("secondTempletId")).map(Lists::newArrayList).orElse(Lists.newArrayList()));
if(!StringUtil.isEmpty(bookName)){
String[] bookNameList = bookName.trim().split("\\s+");
paramMap.put("bookNameList",Lists.newArrayList(bookNameList));
}
PageBean pageBean = bookBiz.listBookClassify(new PageParam(currentPage, numPerPage), paramMap);
return new ResponseDto<>(pageBean);
}
......
......@@ -376,8 +376,14 @@
B.SERIAL_NUMBER LIKE CONCAT('%', #{serialNumber},'%')
</if>
<if test="bookName!=null">
AND
AND (
B.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
<if test="bookNameList != null and bookNameList.size > 0">
<foreach collection="bookNameList" item="item" open=" " separator=" " close=" ">
OR B.BOOK_NAME LIKE CONCAT('%', '${item}','%')
</foreach>
</if>
)
</if>
<if test="isbn!=null">
AND
......@@ -429,8 +435,14 @@
B.SERIAL_NUMBER LIKE CONCAT('%', #{serialNumber},'%')
</if>
<if test="bookName!=null">
AND
B.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
AND (
B.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
<if test="bookNameList != null and bookNameList.size > 0">
<foreach collection="bookNameList" item="item" open=" " separator=" " close=" ">
OR B.BOOK_NAME LIKE CONCAT('%', '${item}','%')
</foreach>
</if>
)
</if>
<if test="isbn!=null">
AND
......@@ -440,10 +452,6 @@
AND
B.PUBLISH LIKE CONCAT('%', #{publish},'%')
</if>
<if test="fundName!=null">
AND
BF.FUND_NAME LIKE CONCAT('%', #{fundName},'%')
</if>
) a
</select>
......@@ -1309,7 +1317,15 @@
AND ba.CREATED_DATE <![CDATA[ > ]]> #{startDate} AND ba.CREATED_DATE <![CDATA[ < ]]> #{endDate}
</if>
<if test="bookName!=null">
AND b.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
AND (
(b.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
<if test="bookNameList != null and bookNameList.size > 0">
<foreach collection="bookNameList" item="item" open=" " separator=" " close=" ">
OR b.BOOK_NAME LIKE CONCAT('%', '${item}','%')
</foreach>
</if>
)
)
</if>
</select>
......@@ -1347,8 +1363,16 @@
AND ba.CREATED_DATE <![CDATA[ > ]]> #{startDate} AND ba.CREATED_DATE <![CDATA[ < ]]> #{endDate}
</if>
<if test="bookName!=null">
AND b.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
</if>
AND (
(b.BOOK_NAME LIKE CONCAT('%', #{bookName},'%')
<if test="bookNameList != null and bookNameList.size > 0">
<foreach collection="bookNameList" item="item" open=" " separator=" " close=" ">
OR b.BOOK_NAME LIKE CONCAT('%', '${item}','%')
</foreach>
</if>
)
)
</if>
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment