add filter for min and max price
This commit is contained in:
parent
dadb56aa16
commit
70460bee5d
2 changed files with 22 additions and 7 deletions
|
|
@ -35,15 +35,18 @@ function App() {
|
||||||
const accessToken = user?.access_token;
|
const accessToken = user?.access_token;
|
||||||
const queryString = new URLSearchParams();
|
const queryString = new URLSearchParams();
|
||||||
queryString.append('listing_type', parameters.listing_type)
|
queryString.append('listing_type', parameters.listing_type)
|
||||||
if (parameters.max_price) {
|
|
||||||
queryString.append("max_price", parameters.max_price.toString());
|
|
||||||
}
|
|
||||||
if (parameters.min_bedrooms) {
|
if (parameters.min_bedrooms) {
|
||||||
queryString.append('min_bedrooms', parameters.min_bedrooms.toString());
|
queryString.append('min_bedrooms', parameters.min_bedrooms.toString());
|
||||||
}
|
}
|
||||||
if (parameters.max_bedrooms) {
|
if (parameters.max_bedrooms) {
|
||||||
queryString.append('max_bedrooms', parameters.max_bedrooms.toString())
|
queryString.append('max_bedrooms', parameters.max_bedrooms.toString())
|
||||||
}
|
}
|
||||||
|
if (parameters.max_price) {
|
||||||
|
queryString.append("max_price", parameters.max_price.toString());
|
||||||
|
}
|
||||||
|
if (parameters.min_price) {
|
||||||
|
queryString.append("min_price", parameters.min_price.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ export interface ParameterValues {
|
||||||
listing_type: ListingType
|
listing_type: ListingType
|
||||||
min_bedrooms?: number
|
min_bedrooms?: number
|
||||||
max_bedrooms?: number
|
max_bedrooms?: number
|
||||||
|
min_price?: number
|
||||||
max_price?: number
|
max_price?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -46,6 +47,7 @@ export function Parameters(
|
||||||
min_bedrooms: z.number().min(1).max(10).optional(),
|
min_bedrooms: z.number().min(1).max(10).optional(),
|
||||||
max_bedrooms: z.number().min(1).max(10).optional(),
|
max_bedrooms: z.number().min(1).max(10).optional(),
|
||||||
max_price: z.number().optional(),
|
max_price: z.number().optional(),
|
||||||
|
min_price: z.number().optional(),
|
||||||
})
|
})
|
||||||
const form = useForm<z.infer<typeof formSchema>>({
|
const form = useForm<z.infer<typeof formSchema>>({
|
||||||
resolver: zodResolver(formSchema),
|
resolver: zodResolver(formSchema),
|
||||||
|
|
@ -54,6 +56,7 @@ export function Parameters(
|
||||||
min_bedrooms: 1,
|
min_bedrooms: 1,
|
||||||
max_bedrooms: 3,
|
max_bedrooms: 3,
|
||||||
max_price: 3000,
|
max_price: 3000,
|
||||||
|
min_price: 0,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
// 2. Define a submit handler.
|
// 2. Define a submit handler.
|
||||||
|
|
@ -120,7 +123,6 @@ export function Parameters(
|
||||||
</Select>
|
</Select>
|
||||||
</FormControl>
|
</FormControl>
|
||||||
<FormMessage />
|
<FormMessage />
|
||||||
|
|
||||||
</FormItem>
|
</FormItem>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
|
@ -134,7 +136,6 @@ export function Parameters(
|
||||||
<Input type="number" placeholder={"# bedrooms"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
<Input type="number" placeholder={"# bedrooms"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
||||||
</FormControl>
|
</FormControl>
|
||||||
<FormMessage />
|
<FormMessage />
|
||||||
|
|
||||||
</FormItem>
|
</FormItem>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
|
@ -148,7 +149,6 @@ export function Parameters(
|
||||||
<Input type="number" placeholder={"# bedrooms"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
<Input type="number" placeholder={"# bedrooms"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
||||||
</FormControl>
|
</FormControl>
|
||||||
<FormMessage />
|
<FormMessage />
|
||||||
|
|
||||||
</FormItem>
|
</FormItem>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
|
@ -162,7 +162,19 @@ export function Parameters(
|
||||||
<Input type="number" placeholder={"£"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
<Input type="number" placeholder={"£"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
||||||
</FormControl>
|
</FormControl>
|
||||||
<FormMessage />
|
<FormMessage />
|
||||||
|
</FormItem>
|
||||||
|
)}
|
||||||
|
/>
|
||||||
|
<FormField
|
||||||
|
control={form.control}
|
||||||
|
name="min_price"
|
||||||
|
render={({ field }) => (
|
||||||
|
<FormItem>
|
||||||
|
<FormLabel>Min price</FormLabel>
|
||||||
|
<FormControl >
|
||||||
|
<Input type="number" placeholder={"£"} {...field} onChange={(e) => field.onChange(Number(e.target.value))} />
|
||||||
|
</FormControl>
|
||||||
|
<FormMessage />
|
||||||
</FormItem>
|
</FormItem>
|
||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue