浏览代码

add consistency level on query page (#367)

Signed-off-by: ryjiang <jiangruiyi@gmail.com>
ryjiang 1 年之前
父节点
当前提交
7bfe2ca735
共有 3 个文件被更改,包括 24 次插入8 次删除
  1. 20 8
      client/src/pages/query/Query.tsx
  2. 3 0
      client/src/pages/query/Styles.ts
  3. 1 0
      client/src/pages/query/Types.ts

+ 20 - 8
client/src/pages/query/Query.tsx

@@ -15,7 +15,12 @@ import DeleteTemplate from '@/components/customDialog/DeleteDialogTemplate';
 import CustomToolBar from '@/components/grid/ToolBar';
 import { getLabelDisplayedRows } from '../search/Utils';
 import { getQueryStyles } from './Styles';
-import { DYNAMIC_FIELD, DataTypeStringEnum } from '@/consts';
+import {
+  DYNAMIC_FIELD,
+  DataTypeStringEnum,
+  CONSISTENCY_LEVEL_OPTIONS,
+} from '@/consts';
+import CustomSelector from '@/components/customSelector/CustomSelector';
 
 const Query: FC<{
   collectionName: string;
@@ -28,6 +33,7 @@ const Query: FC<{
   const [primaryKey, setPrimaryKey] = useState<{ value: string; type: string }>(
     { value: '', type: DataTypeStringEnum.Int64 }
   );
+  const [consistency_level, setConsistency_level] = useState<string>('');
 
   // latency
   const [latency, setLatency] = useState<number>(0);
@@ -83,6 +89,7 @@ const Query: FC<{
 
     const primaryKey = schemaList.find(v => v.isPrimaryKey === true)!;
     setPrimaryKey({ value: primaryKey['name'], type: primaryKey['fieldType'] });
+    setConsistency_level(collection.consistency_level);
 
     setFields(nameList);
   };
@@ -120,6 +127,7 @@ const Query: FC<{
         output_fields: fields.map(i => i.name),
         offset: 0,
         limit: 16384,
+        consistency_level: consistency_level,
         // travel_timestamp: timeTravelInfo.timestamp,
       });
       const result = res.data;
@@ -233,13 +241,17 @@ const Query: FC<{
             showTooltip={false}
           />
           {/* </div> */}
-
-          {/* <CustomDatePicker
-            label={timeTravelInfo.label}
-            onChange={handleDateTimeChange}
-            date={timeTravel}
-            setDate={setTimeTravel}
-          /> */}
+          <CustomSelector
+            options={CONSISTENCY_LEVEL_OPTIONS}
+            value={consistency_level}
+            label={collectionTrans('consistencyLevel')}
+            wrapperClass={classes.selector}
+            variant="filled"
+            onChange={(e: { target: { value: unknown } }) => {
+              const consistency = e.target.value as string;
+              setConsistency_level(consistency);
+            }}
+          />
         </div>
         <div className="right">
           <CustomButton

+ 3 - 0
client/src/pages/query/Styles.ts

@@ -56,6 +56,9 @@ export const getQueryStyles = makeStyles((theme: Theme) => ({
       gap: theme.spacing(2),
     },
   },
+  selector: {
+    width: 180,
+  },
   vectorTableCell: {
     '& >div': {
       maxWidth: theme.spacing(50),

+ 1 - 0
client/src/pages/query/Types.ts

@@ -5,4 +5,5 @@ export interface QueryParam {
   travel_timestamp?: string;
   limit?: number;
   offset?: number;
+  consistency_level: string;
 }