fix filter

This commit is contained in:
Wikzyy
2025-03-17 16:59:56 +07:00
parent ce97994299
commit 7772252bab
4 changed files with 24 additions and 20 deletions

View File

@ -142,15 +142,17 @@ const ManageAldeiasContextProvider = ({ children }: { children: React.ReactNode
const getAldeiasLists = async (page: number, limit: number, sorting: any, filter: any) => { const getAldeiasLists = async (page: number, limit: number, sorting: any, filter: any) => {
try { try {
sorting = sorting.length == 0 ? [{ id: 'name', desc: false }] : sorting;
filter = filter.length == 0 ? {} : { any: filter[0].value?.toLowerCase() };
const response = await GetData(`${API_URL}/aldeias/list`, { const response = await GetData(`${API_URL}/aldeias/list`, {
limit, limit,
page: page + 1, page: page + 1,
with_deleted: true, with_deleted: false,
order_field: sorting[0].id, order_field: sorting[0].id,
order_direction: sorting[0].desc == false ? 'ASC' : 'DESC', order_direction: sorting[0].desc == false ? 'ASC' : 'DESC',
filter: JSON.stringify(filter) filter: JSON.stringify(filter)
}); });
// console.log(response?.data); console.log(response?.data);
setAldeias(response?.data.list); setAldeias(response?.data.list);
return { data: response?.data.list, totalCount: response?.data.total_count }; return { data: response?.data.list, totalCount: response?.data.total_count };
} catch (error) { } catch (error) {

View File

@ -17,9 +17,9 @@ const ListToolbar = () => {
<input <input
type="text" type="text"
placeholder="Search Postu" placeholder="Search Postu"
value={(table.getColumn('posto_adms_name')?.getFilterValue() as string) ?? ''} value={(table.getColumn('PostoAdms_name')?.getFilterValue() as string) ?? ''}
onChange={(event) => onChange={(event) =>
table.getColumn('posto_adms_name')?.setFilterValue(event.target.value) table.getColumn('PostoAdms_name')?.setFilterValue(event.target.value)
} }
/> />
</label> </label>

View File

@ -128,17 +128,17 @@ const SearchDialog = () => {
<CommandGroup> <CommandGroup>
{postoAdms.map((postoAdm) => ( {postoAdms.map((postoAdm) => (
<CommandItem <CommandItem
key={postoAdm.posto_adms_id} key={postoAdm.PostoAdms_id}
value={postoAdm.posto_adms_name} value={postoAdm.PostoAdms_name}
onSelect={() => { onSelect={() => {
setFormField({ setFormField({
id: postoAdm.posto_adms_id, id: postoAdm.PostoAdms_id,
name: postoAdm.posto_adms_name name: postoAdm.PostoAdms_name
}); });
setOpen(false); setOpen(false);
}} }}
> >
{postoAdm.posto_adms_name} {postoAdm.PostoAdms_name}
</CommandItem> </CommandItem>
))} ))}
</CommandGroup> </CommandGroup>

View File

@ -9,8 +9,8 @@ import ListToolbar from '../blocks/ListToolbar';
import { useCallApi } from '@/hooks'; import { useCallApi } from '@/hooks';
interface PostoAdmsProps { interface PostoAdmsProps {
posto_adms_id: number; PostoAdms_id: number;
posto_adms_name: string; PostoAdms_name: string;
municipios_name: string; municipios_name: string;
} }
@ -84,8 +84,9 @@ const ManagePostoAdmsContextProvider = ({ children }: { children: React.ReactNod
const columns = useMemo<ColumnDef<any>[]>( const columns = useMemo<ColumnDef<any>[]>(
() => [ () => [
{ {
accessorFn: (row) => row.posto_adms_id, // accessorFn: (row) => row.PostoAdms_id,
id: 'id', // id: 'PostoAdms_id',
accessorKey: 'PostoAdms_id',
header: ({ column }) => <DataGridColumnHeader title="ID" column={column} />, header: ({ column }) => <DataGridColumnHeader title="ID" column={column} />,
enableSorting: true, enableSorting: true,
enableHiding: false, enableHiding: false,
@ -96,7 +97,7 @@ const ManagePostoAdmsContextProvider = ({ children }: { children: React.ReactNod
{ {
// accessorFn: (row) => row.posto_adms_name, // accessorFn: (row) => row.posto_adms_name,
// id: 'posto_adms_name', // id: 'posto_adms_name',
accessorKey: 'posto_adms_name', accessorKey: 'PostoAdms_name',
header: ({ column }) => ( header: ({ column }) => (
<DataGridColumnHeader title="Posto Administrativo Name" column={column} /> <DataGridColumnHeader title="Posto Administrativo Name" column={column} />
), ),
@ -127,13 +128,13 @@ const ManagePostoAdmsContextProvider = ({ children }: { children: React.ReactNod
<> <>
<button <button
className="btn btn-sm btn-icon btn-clear btn-light" className="btn btn-sm btn-icon btn-clear btn-light"
onClick={() => handleEditDialog(true, row.posto_adms_id)} onClick={() => handleEditDialog(true, row.PostoAdms_id)}
> >
<KeenIcon icon="notepad-edit" /> <KeenIcon icon="notepad-edit" />
</button> </button>
<button <button
className="btn btn-sm btn-icon btn-clear btn-light" className="btn btn-sm btn-icon btn-clear btn-light"
onClick={() => handleDeleteDialog(true, row.posto_adms_id)} onClick={() => handleDeleteDialog(true, row.PostoAdms_id)}
> >
<KeenIcon icon="trash" /> <KeenIcon icon="trash" />
</button> </button>
@ -151,16 +152,17 @@ const ManagePostoAdmsContextProvider = ({ children }: { children: React.ReactNod
const getPostoAdmsLists = async (page: number, limit: number, sorting: any, filter: any) => { const getPostoAdmsLists = async (page: number, limit: number, sorting: any, filter: any) => {
try { try {
sorting: sorting.length == 0 ? [{ id: 'name', desc: false }] : sorting; sorting = sorting.length == 0 ? [{ id: 'name', desc: false }] : sorting;
filter = filter.length == 0 ? {} : { any: filter[0].value?.toLowerCase() }; filter = filter.length == 0 ? {} : { any: filter[0].value?.toLowerCase() };
const response = await GetData(`${API_URL}/postoadms/list`, { const response = await GetData(`${API_URL}/postoadms/list`, {
limit, limit,
page: page + 1, page: page + 1,
with_deleted: false, with_deleted: false,
order_field: sorting[0].id, order_field: sorting[0].id,
order_direction: sorting[0].desc ? 'DESC' : 'ASC' order_direction: sorting[0].desc ? 'DESC' : 'ASC',
filter: JSON.stringify(filter)
}); });
// console.log(response.data); console.log(response?.data);
// const sortedList = response.data.data.list.sort((a: PostoAdmsProps, b: PostoAdmsProps) => { // const sortedList = response.data.data.list.sort((a: PostoAdmsProps, b: PostoAdmsProps) => {
// if (a.name < b.name) return -1; // if (a.name < b.name) return -1;
// if (a.name > b.name) return 1; // if (a.name > b.name) return 1;