visuddhinanda 2 лет назад
Родитель
Сommit
572e073fd5
1 измененных файлов с 31 добавлено и 5 удалено
  1. 31 5
      dashboard/src/pages/library/search/search.tsx

+ 31 - 5
dashboard/src/pages/library/search/search.tsx

@@ -9,6 +9,8 @@ import FullTextSearchResult, {
 import FtsBookList from "../../../components/fts/FtsBookList";
 import FtsBookList from "../../../components/fts/FtsBookList";
 import FtsSetting from "../../../components/fts/FtsSetting";
 import FtsSetting from "../../../components/fts/FtsSetting";
 import CaseList from "../../../components/dict/CaseList";
 import CaseList from "../../../components/dict/CaseList";
+import PageNumberList from "../../../components/fts/PageNumberList";
+import { Key } from "antd/es/table/interface";
 
 
 const Widget = () => {
 const Widget = () => {
   const { key } = useParams();
   const { key } = useParams();
@@ -142,11 +144,35 @@ const Widget = () => {
               </Space>
               </Space>
             </Col>
             </Col>
             <Col xs={0} sm={0} md={5}>
             <Col xs={0} sm={0} md={5}>
-              <CaseList
-                word={key}
-                lines={5}
-                onChange={(value: string[]) => setCaseWord(value)}
-              />
+              {key && parseInt(key) ? (
+                <PageNumberList
+                  keyWord={key}
+                  onSelect={(selectedKeys: Key[]) => {
+                    console.log("selectedKeys", selectedKeys);
+                    if (selectedKeys.length > 0) {
+                      if (typeof selectedKeys[0] === "string") {
+                        const queryString = selectedKeys[0].split("-");
+                        if (queryString.length === 3) {
+                          setCaseWord(queryString[1].split(","));
+                          if (parseInt(queryString[2]) === 0) {
+                            searchParams.delete("book");
+                          } else {
+                            searchParams.set("book", queryString[2]);
+                          }
+                          setSearchParams(searchParams);
+                        }
+                      }
+                    }
+                  }}
+                />
+              ) : (
+                <CaseList
+                  word={key}
+                  lines={5}
+                  onChange={(value: string[]) => setCaseWord(value)}
+                />
+              )}
+
               <FtsBookList
               <FtsBookList
                 view={view}
                 view={view}
                 keyWord={key}
                 keyWord={key}