// 2. Страница создания организации (Organization Creation Page) // Поля для ввода: Предоставить поля для ввода названия организации и дополнительной информации, такой как адрес и контактные данные. // Кнопка создания: Иметь кнопку "Создать", которая активируется только после заполнения всех необходимых полей. // Обратная связь: Показывать сообщения об ошибках или подтверждение успешного создания организации. //*

{seed.join("\n")}

*/shtuchka kak map "use client"; import React, { useEffect } from "react"; import { Button, Modal } from "antd"; import { useState } from "react"; import { apiService } from "../axios/global.service"; import { OrgForm } from "./OrgForm"; import { OrganizationCard } from "./OrgCard"; import { FolderOpenTwoTone } from "@ant-design/icons"; import useOrganizationsHooks from "@/hooks/organizations"; import { Organization, NewOrgResponse, OrganizationsResponse, } from "../axios/api-types"; import Cookies from "js-cookie"; export function OrgCreatePage() { //const [organizations, setOrganizations] = useState([]); const { organizations, setOrganizations } = useOrganizationsHooks(); const [isModalOpen, setIsModalOpen] = useState(false); const [formData, setFormData] = useState({ name: "", address: "", }); const onFinish = async (values: any) => { handleOk(); setOrganizations((prev: any) => [...prev, formData]); // setFormData({}); const result = await apiService.newOrganization( formData.name, formData.address ); if (result) { loadOrganizations(); } }; const showModal = () => { setIsModalOpen(true); }; const handleOk = () => { setIsModalOpen(false); }; console.log(organizations); const handleCancel = () => { setIsModalOpen(false); }; useEffect(() => { loadOrganizations(); }, []); const loadOrganizations = async () => { const result = await apiService.getOrganizations(); if (result) { setOrganizations(result.data.items || []); } }; return ( <>

Your Organizations

{organizations.length && ( )} {organizations.length ? ( organizations.map((element: any) => { return (
); }) ) : ( Your Organization list is currently empty. )}
); }