46 lines
1.5 KiB
JavaScript
46 lines
1.5 KiB
JavaScript
import api from "./axios";
|
|
|
|
export const getList = () => api.get("/list");
|
|
export const getItemByName = (itemName) => api.get("/list/item-by-name", { params: { itemName: itemName } });
|
|
|
|
export const addItem = (itemName, quantity, imageFile = null) => {
|
|
const formData = new FormData();
|
|
formData.append("itemName", itemName);
|
|
formData.append("quantity", quantity);
|
|
|
|
if (imageFile) {
|
|
formData.append("image", imageFile);
|
|
}
|
|
|
|
return api.post("/list/add", formData, {
|
|
headers: {
|
|
"Content-Type": "multipart/form-data",
|
|
},
|
|
});
|
|
};
|
|
export const getClassification = (id) => api.get(`/list/item/${id}/classification`);
|
|
|
|
export const updateItemWithClassification = (id, itemName, quantity, classification) => {
|
|
return api.put(`/list/item/${id}`, {
|
|
itemName,
|
|
quantity,
|
|
classification
|
|
});
|
|
};
|
|
export const markBought = (id) => api.post("/list/mark-bought", { id });
|
|
export const getSuggestions = (query) => api.get("/list/suggest", { params: { query: query } });
|
|
export const getRecentlyBought = () => api.get("/list/recently-bought");
|
|
|
|
export const updateItemImage = (id, itemName, quantity, imageFile) => {
|
|
const formData = new FormData();
|
|
formData.append("id", id);
|
|
formData.append("itemName", itemName);
|
|
formData.append("quantity", quantity);
|
|
formData.append("image", imageFile);
|
|
|
|
return api.post("/list/update-image", formData, {
|
|
headers: {
|
|
"Content-Type": "multipart/form-data",
|
|
},
|
|
});
|
|
}; |