44 lines
898 B
JavaScript
44 lines
898 B
JavaScript
import api from "./api/client";
|
|
|
|
const model = {
|
|
getBooks() {
|
|
return api.getAll("books");
|
|
},
|
|
|
|
addBook(book) {
|
|
return api.create("books", book);
|
|
},
|
|
|
|
updateBook(id, data) {
|
|
return api.update("books", id, data);
|
|
},
|
|
|
|
getAuthors() {
|
|
return api.getAll("authors");
|
|
},
|
|
|
|
getUsers() {
|
|
return api.getAll("users");
|
|
},
|
|
|
|
addUser(user) {
|
|
return api.create("users", user);
|
|
},
|
|
|
|
updateUser(id, data) {
|
|
return api.update("users", id, data);
|
|
},
|
|
|
|
addReaderToBook(userId, bookId) {
|
|
return api.getById("users", userId).then((user) => {
|
|
const readBooks = user.readBooks || [];
|
|
if (!readBooks.includes(bookId)) {
|
|
readBooks.push(bookId);
|
|
}
|
|
return api.update("users", userId, { readBooks });
|
|
});
|
|
},
|
|
};
|
|
|
|
export default model;
|