import React, { useMemo, useEffect, useCallback } from "react"; import { connect } from "react-redux"; import { userProduct, comment, file, form, dialog, } from "../../../redux/actions"; import onInput from "../../../utils/onInput"; //components import Input from "../../../components/Input"; import Textarea from "../../../components/Textarea"; import Button from "../../../components/Button"; import Select from "../../../components/Select"; import Upload from "./Upload"; export const Ticket = ({ isDark, myProductList, status, ticket, getUserProductList, submit, upload, setTicket, grades, setDialog, }) => { let opt = useMemo( () => ["واحد مورد نظر", "واحد فروش", "واحد فنی", "واحد محتوایی"], [status] ); useEffect(() => { if (myProductList.length === 0 && status) { getUserProductList(); } }, []); const addFile = useCallback( (name, value) => { upload({ file: value, target: name }); setTicket({ name, value }); }, [status] ); const send = useCallback(async () => { if (!ticket?.subject) { setDialog({ text: "موضوع پیام خود را وارد کنید.", type: "alert", accept: () => {}, open: true, }); }else if(!ticket?.unit){ setDialog({ text: "واحد مورد نظر خود را وارد نکرده اید.", type: "alert", accept: () => {}, open: true, }); } else { const data = { fileId: null, text: ticket?.text, name: !status ? ticket?.name : status.firstName + " " + status.lastName, cellphone: !status ? ticket?.cellphone : status?.cellphone, unit: ticket?.unit, bookId: ticket?.bookId, subject: ticket?.subject, userId: status?.userId, }; await submit(data); } }, [status]); return (