diff --git a/frontend/src/pages/AddDishes2.tsx b/frontend/src/pages/AddDishes2.tsx index d8aa62c..6f48baf 100644 --- a/frontend/src/pages/AddDishes2.tsx +++ b/frontend/src/pages/AddDishes2.tsx @@ -31,35 +31,36 @@ import { Add as AddIcon, Delete as DeleteIcon, ShoppingBasket as ShoppingBasketIcon, SoupKitchen as SoupKitchenIcon } from '@mui/icons-material'; -import { Task } from '../types/types'; +import { Task, ToBuy } from '../types/types'; import { TASK_ERRORS } from '../constants/errorMessages'; import { GENERAL_ERRORS } from '../constants/errorMessages'; import CategoryDropDown from "../components/CategoryDropDown"; // 新規タスクの初期状態(画面表示用) -const EMPTY_TASK = { id: 0, title: '', amount: 0, completed: false }; +const EMPTY_TOBUY: Omit & { stuff_id: number | null, category: string } & { newAddition: boolean } = { + stuff_id: null, + stuff_name: '', + amount: 0, + shop: '', + category: '', + newAddition: false, +} // 新規タスクの初期状態(データベース登録用) const EMPTY_TASK_DATA_BASE = { id: 0, title: '', amount: 0, completed: false }; -interface Empty_Task { - title: string; // 食材名 - amount: number; // 食材の個数 - completed: boolean; // -} - const AddDishes2: React.FC = () => { const receivedData = localStorage.getItem("dishName"); // タスク一覧の状態管理 const [tasks, setTasks] = useState([]); - const [addtasks, setAddTasks] = useState([]); + const [addtasks, setAddTasks] = useState([]); // エラーメッセージの状態管理 const [error, setError] = useState(false); // 新規タスク作成ダイアログの表示状態 const [openDialog, setOpenDialog] = useState(false); // 新規タスクの入力内容 - const [newTask, setNewTask] = useState(EMPTY_TASK); + const [newTask, setNewTask] = useState(EMPTY_TOBUY); // コンポーネントマウント時にタスク一覧を取得 useEffect(() => { @@ -117,7 +118,7 @@ const AddDishes2: React.FC = () => { newAddTasks.push(newTask); setAddTasks(newAddTasks); setOpenDialog(false); // ダイアログを閉じる - setNewTask(EMPTY_TASK); // 入力内容をリセット + setNewTask(EMPTY_TOBUY); // 入力内容をリセット // fetchTasks(); // 作成後のタスク一覧を再取得 } catch (error) { console.error(`${TASK_ERRORS.CREATE_FAILED}:`, error); @@ -126,12 +127,12 @@ const AddDishes2: React.FC = () => { const handleCreateTask_DataBase = async () => { try { - // for (let i = 0; i < addtasks.length; i++) { - // // await taskApi.createTask(addtasks[i]); - // await toBuyApi.addToBuy(addtasks[i]); - // } + for (let i = 0; i < addtasks.length; i++) { + // await taskApi.createTask(addtasks[i]); + await toBuyApi.addToBuy(addtasks[i]); + } setOpenDialog(false); // ダイアログを閉じる - setNewTask(EMPTY_TASK); // 入力内容をリセット + setNewTask(EMPTY_TOBUY); // 入力内容をリセット // fetchTasks(); // 作成後のタスク一覧を再取得 } catch (error) { console.error(`${TASK_ERRORS.CREATE_FAILED}:`, error);