feat(user): añadida función para buscar usuarios por nombre o email en services y stores

parent cc2eaa74
Showing with 25 additions and 0 deletions
...@@ -42,5 +42,14 @@ export const userService = { ...@@ -42,5 +42,14 @@ export const userService = {
changeRole: async (id, role) => { changeRole: async (id, role) => {
const response = await api.patch(`/user/${id}/role`, role); const response = await api.patch(`/user/${id}/role`, role);
return response.data; return response.data;
},
search: async (query, page, size) => {
const params = new URLSearchParams();
if (query) params.append('query', query);
if (page) params.append('page', page);
if (size) params.append('size', size);
const response = await api.get(`/user/search?${params.toString()}`)
return response.data;
} }
} }
\ No newline at end of file
...@@ -84,6 +84,21 @@ export const useUserStore = defineStore('user', { ...@@ -84,6 +84,21 @@ export const useUserStore = defineStore('user', {
} catch (error) { } catch (error) {
throw error; throw error;
} }
},
async search(query, page, size) {
try {
const response = await userService.search(query, page, size);
this.users = response.content;
this.totalElements = response.totalElements;
this.totalPages = response.totalPages;
this.currentPage = response.number;
} catch (error) {
console.error('Error en la búsqueda de usuarios:', error);
this.users = [];
this.totalElements = 0;
this.totalPages = 0;
throw error;
}
} }
} }
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment