diff --git a/src/features/orders/components/SearchBar.tsx b/src/features/orders/components/SearchBar.tsx
index 7ef05c8..e3df32f 100644
--- a/src/features/orders/components/SearchBar.tsx
+++ b/src/features/orders/components/SearchBar.tsx
@@ -57,6 +57,7 @@ interface LocalFilters {
sellerName: string | null;
deliveryType: string[] | null;
statusTransfer: string[] | null;
+ markName: string | null;
}
const DELIVERY_TYPES = ['RI', 'EN', 'EF', 'RP'];
@@ -81,6 +82,7 @@ const getInitialLocalFilters = (
sellerName: urlFilters.sellerName ?? null,
deliveryType: urlFilters.deliveryType ?? null,
statusTransfer: urlFilters.statusTransfer ?? null,
+ markName: urlFilters.markName ?? null,
});
export const SearchBar = () => {
@@ -144,6 +146,7 @@ export const SearchBar = () => {
productName: null,
deliveryType: null,
statusTransfer: null,
+ markName: null,
};
setLocalFilters(getInitialLocalFilters(resetState));
@@ -210,6 +213,7 @@ export const SearchBar = () => {
localFilters.productId,
localFilters.deliveryType?.length,
localFilters.statusTransfer?.length,
+ localFilters.markName,
].filter(Boolean).length;
const toggleDrawer = (open: boolean) => (event: React.KeyboardEvent | React.MouseEvent) => {
@@ -311,6 +315,19 @@ export const SearchBar = () => {
Limpar
+ : }
+ fullWidth
+ sx={{ textTransform: 'none', minWidth: { xs: '100%', sm: 100 } }}
+ >
+ Buscar
+
+
-
- : }
- fullWidth
- sx={{ textTransform: 'none', minWidth: { xs: '100%', sm: 100 } }}
- >
- Buscar
-
@@ -430,8 +434,17 @@ export const SearchBar = () => {
updateLocalFilter('sellerId', newValue?.seller.id.toString() || null);
updateLocalFilter('sellerName', newValue?.seller.name || null);
}}
+ isOptionEqualToValue={(option, value) => option.value === value.value}
loading={sellers.isLoading}
renderInput={(params) => }
+ renderOption={(props, option) => {
+ const { key, ...restProps } = props;
+ return (
+
+ {option.label}
+
+ );
+ }}
/>
{/* Parceiro */}
@@ -468,6 +481,16 @@ export const SearchBar = () => {
filterOptions={(x) => x}
/>
+ {/* Marca */}
+ updateLocalFilter('markName', newValue || null)}
+ renderInput={(params) => }
+ />
+
{/* Tipo de Entrega */}
{
searchTriggered: parseAsBoolean.withDefault(false),
deliveryType: parseAsArrayOf(parseAsString, ','),
statusTransfer: parseAsArrayOf(parseAsString, ','),
+ markName: parseAsString,
},
{
shallow: true,
diff --git a/src/features/orders/schemas/order-filters.schema.ts b/src/features/orders/schemas/order-filters.schema.ts
index 0ad9fed..ce8f4b5 100644
--- a/src/features/orders/schemas/order-filters.schema.ts
+++ b/src/features/orders/schemas/order-filters.schema.ts
@@ -130,6 +130,7 @@ export const orderApiParamsSchema = findOrdersSchema
if (filters.partnerId) queryParams.partnerId = filters.partnerId;
if (filters.productId) queryParams.productId = filters.productId;
+ if (filters.markName) queryParams.markName = filters.markName;
return queryParams;
})