import React, { useState, useEffect } from "react"; import { useNavigate } from "react-router-dom"; import onInput from "../../../utils/onInput"; import { user, file, publicApi } from "../../../redux/actions"; import { connect } from "react-redux"; import Select from "../../../components/Select"; import Input from "../../../components/Input"; import TextArea from "../../../components/Textarea"; import Upload from "./Upload"; import Gender from "./GenderSwitch"; import Birthdate from "./Birthdate"; import MultipleSelector from "./MultipleSelector"; import Document from "./Document"; function Profile({ profile, uploads, getProvince, getCity, setDone, upload, setProfile, province, provinceList, cityList, }) { let navigate = useNavigate(); const [render, setRender] = useState(false); const [formData, setFormData] = useState({ file: uploads["file"] || profile.picFileId || null, picFileId: uploads["file"] || profile.picFileId || null, docFileIds: uploads["docFileIds"] || profile.docFileIds || "", firstName: profile.firstName || "", lastName: profile.lastName || "", password: profile.password || "", username: profile.username || "", address: profile.address || "", email: profile.email || "", birthDate: profile.birthDate || "", gender: profile.gender || 1, status: profile.status || 1, nationalId: profile.nationalId || "", phone: profile.phone || "", schools: profile.schools || null, zoneId: profile.zoneId || "", schoolId: profile.schoolId || "", postalCode: profile.postalCode || "", gradeIds: profile.gradeIds || [], provinceId: profile.provinceId || null, cityId: profile.cityId || null, }); useEffect(() => { getProvince(); getCity({ provinceId: profile.provinceId }); }, []); useEffect(() => { if (setDone) { navigate("/"); } }, [setDone]); const grades = [ { name: "پیش دبستانی", value: 0, }, { name: "اول", value: 1, }, { name: "دوم", value: 2, }, { name: "سوم", value: 3, }, { name: "چهارم", value: 4, }, { name: "پنجم", value: 5, }, { name: "ششم", value: 6, }, { name: "هفتم", value: 7, }, { name: "هشتم", value: 8, }, { name: "نهم", value: 9, }, { name: "دهم", value: 10, }, { name: "یازدهم", value: 11, }, { name: "دوازدهم", value: 12, }, ]; const onChange = (name, value) => { if (name === "provinceId") { getCity({ provinceId: value }); setFormData({ ...formData, cityId: null, [name]: value }); } else if (name === "status") { setFormData({ ...formData, gradeIds: formData.gradeIds?.slice(0, 1) || [], [name]: value, }); } else if (name === "docFileIds") { upload({ file: value, target: name }); setFormData({ ...formData, [name]: value }); } else if (name === "file") { upload({ file: value, target: name }); setFormData({ ...formData, [name]: value }); } else { setFormData({ ...formData, [name]: value }); } }; const onSubmit = async () => { const { firstName, lastName, username, //cellphone, password, postalCode, address, email, phone, picFileId, gender, nationalId, birthDate, schools, gradeIds, status, provinceId, cityId, docFileIds, } = formData; const data = { firstName: firstName || profile.firstName, lastName: lastName || profile.lastName, username: username || profile.username, cellphone: profile.cellphone, password: password || profile.password, postalCode: postalCode || profile.postalCode, address: address || profile.address, email: email || profile.email, phone: phone || profile.phone, nationalId: nationalId || profile.nationalId, picFileId: uploads["file"] || picFileId || profile.picFileId, gender: gender || profile.gender, birthDate: birthDate || profile.birthDate, schools: schools || profile.schools, gradeIds: gradeIds || profile.gradeIds, status: status || profile.status, provinceId: provinceId || profile.provinceId, cityId: cityId || profile.cityId, docFileIds: uploads["docFileIds"] || docFileIds || profile.docFileIds, }; await setProfile(data); }; // if (setDone) return ; return (

حساب کاربری

لطفا مشخصات خود را به صورت کامل نمایید.

onSubmit()}>
{formData.status === 1 ? (
) : null} {console.log(province)}
{/*
) : null} {formData.status == 2 ? (
) : null} {formData.status == 2 ? ( ) : null}