Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
31 kB
4
Indexable
Never
import * as React from "react";
import {Row, Col, Checkbox, Input, Collapse, Typography, Radio, theme} from "antd";
import "./consultationsCardPage.scss";
import {CaretRightOutlined} from "@ant-design/icons";
const {TextArea} = Input;
const {Panel} = Collapse;

const activeKeysOnFirstAppointment = ["1", "2", "3", "4", "5", "6", "7", "8", "9"];
const activeKeysOnSecondAppointment = ["6", "7", "8", "9"];

const ConsultationCardPage: React.FC = () => {
    const {token} = theme.useToken();
    const panelStyle = {
        marginBottom: 24,
        background: token.colorFillAlter,
        borderRadius: token.borderRadiusLG,
        border: "none"
    };
    const [isFirstAppointment, setIsFirstAppointment] = React.useState<boolean>(true);
    const [secondaryChecked, setSecondaryChecked] = React.useState(false);
    const [collapsed, setCollapsed] = React.useState(false);
    const [disabled, setDisabled] = React.useState(false);
    const [activeKeys, setActiveKeys] = React.useState<string[]>(activeKeysOnFirstAppointment);

    const handleCollapseChange = (keys: string | string[]) => {
        if (typeof keys === "string" || keys instanceof String) {
            return;
        }

        setActiveKeys(keys);
    };

    React.useEffect(() => {
        if (!isFirstAppointment) {
            setActiveKeys(activeKeysOnSecondAppointment);
        } else {
            setActiveKeys(activeKeysOnFirstAppointment);
        }
    }, [isFirstAppointment]);

    return (
        <>
            <Typography.Title
                className="title"
                level={4}
                style={{
                    color: "#464F60",
                    fontSize: "17px",
                    fontWeight: "500",
                    lineHeight: "20px",
                    letterSpacing: "0.02em"
                }}
            >
                {" "}
                <div>
                    <span>Дата приема: </span> 23.04.2023
                </div>
                <div>
                    <span>Имя пациента: </span> имя пациента
                </div>
                <div>
                    <span>Имя специалиста: </span> имя специалиста
                </div>
            </Typography.Title>
            <h3>Статус приема:</h3>
            <Radio className="regular-radio" onClick={() => setIsFirstAppointment(true)} checked={isFirstAppointment}>
                Первичный
            </Radio>
            <Radio className="regular-radio" onClick={() => setIsFirstAppointment(false)} checked={!isFirstAppointment}>
                Вторичный
            </Radio>
            <h3>Жалобы пациента:</h3>
            <span className="text_question">Психо-эмоциональные жалобы</span>
            <TextArea className="input_para" placeholder="Введите текст" />
            <span className="text_question">Социальные жалобы</span>
            <TextArea className="input_para" placeholder="Введите текст" />
            <span className="text_question">Соматические жалобы</span>
            <TextArea className="input_para " placeholder="Введите текст" />
            <Collapse
                bordered={false}
                style={{background: "#F5F5F5"}}
                defaultActiveKey={["1", "2"]}
                onChange={handleCollapseChange}
                expandIcon={({isActive}) => <CaretRightOutlined rotate={isActive ? 90 : 0} />}
                activeKey={activeKeys}
            >
                <Panel header="Анамнез заболевания" key="1">
                    <Row>
                        <Col span={24}>
                            <span className="text_question">Как долго живет с онкологическим диагнозом</span>
                            <TextArea className="input_para" placeholder="Введите текст" disabled={disabled} />
                        </Col>
                    </Row>
                    <Row>
                        <Col span={24}>
                            <span className="text_question">
                                Какие эмоциональные реакции были в момент первого озвучивания подтверждения диагноза
                            </span>
                            <TextArea className="input_para" placeholder="Введите текст" disabled={disabled} />
                        </Col>
                    </Row>
                    <Row>
                        <Col span={24}>
                            <span className="text_question">Как справлялся с теми реакциями</span>
                            <TextArea className="input_para" placeholder="Введите текст" disabled={disabled} />
                        </Col>
                    </Row>
                    <Row>
                        <Col span={24}>
                            <span className="text_question">
                                Что помогает обычно справляться с эмоциональными реакциями
                            </span>
                            <TextArea className="input_para" placeholder="Введите текст" disabled={disabled} />
                        </Col>
                    </Row>
                    <Row>
                        <Col span={24}>
                            <span className="text_question">
                                Что не помогает вообще или в конкретном случае не помогло
                            </span>
                            <TextArea className="input_para" placeholder="Введите текст" disabled={disabled} />
                        </Col>
                    </Row>
                    <Row>
                        <Col span={24}>
                            <span className="text_question">Есть ли связь с психотравмой</span>
                        </Col>
                    </Row>
                    <Checkbox className="regular_item" onChange={() => changeValue("Да")}>
                        Да
                    </Checkbox>
                    <TextArea className="input_para" placeholder="Введите текст" disabled={disabled} />
                    <Checkbox className="regular_item" onChange={() => changeValue("Нет")}>
                        Нет
                    </Checkbox>
                </Panel>

                <Panel
                    header="Объективный статус"
                    key="2"
                    // collapsible={{collapsed: collapsed, onChange: handleCollapseChange}}
                >
                    <Row>
                        <Col span={24}>
                            <span className="text_question">Особенности беседы</span>
                            <TextArea className="input_para" placeholder="Введите текст" />
                        </Col>
                    </Row>
                    <Row justify="start">
                        <Col span={24}>
                            <span className="regular_item">Тревога</span>
                        </Col>
                        <Col span={24}>
                            <Checkbox className="regular_item" onChange={() => changeValue("Есть")}>
                                Есть
                            </Checkbox>
                        </Col>
                        <Col span={24}>
                            <Checkbox className="regular_item" onChange={() => changeValue("Нет")}>
                                Нет
                            </Checkbox>
                        </Col>
                        <Col span={24}>
                            <span className="mini_title">Непрерывная длительность</span>
                            <Col span={24}>
                                <Checkbox className="regular_item" onChange={() => changeValue("Более 2 недель")}>
                                    Более 2 недель
                                </Checkbox>
                            </Col>

                            <Checkbox className="regular_item" onChange={() => changeValue("Менее 2 недель")}>
                                Менее 2 недель
                            </Checkbox>
                            <span className="mini_title">Группа 1</span>
                            <Col span={24}>
                                <Checkbox
                                    className="regular_item"
                                    onChange={() => changeValue("Постоянное снижение настроения")}
                                >
                                    Постоянное снижение настроения
                                </Checkbox>
                            </Col>

                            <Col>
                                <Checkbox className="regular_item" onChange={() => changeValue("Утрата интересов")}>
                                    Утрата интересов
                                </Checkbox>
                            </Col>

                            <Checkbox
                                className="regular_item"
                                onChange={() => changeValue("Снижение энергии или усталости после минимальных усилий")}
                            >
                                Снижение энергии или усталось после минимальных усилий
                            </Checkbox>
                            <span className="mini_title">Группа 2</span>
                            <Col>
                                <Checkbox
                                    className="regular_item"
                                    onChange={() => changeValue("Снижение концентрации внимания")}
                                >
                                    Снижение концентрации внимания
                                </Checkbox>
                            </Col>
                            <Col span={24}>
                                <Checkbox
                                    className="regular_item"
                                    onChange={() => changeValue("Чувство вины и никчемность")}
                                >
                                    Чувство вины и никчемность
                                </Checkbox>
                            </Col>
                            <Col span={24}>
                                <Checkbox
                                    className="regular_item"
                                    onChange={() => changeValue("Снижение самооценки и уверенности в себе")}
                                >
                                    Снижение самооценки и уверенности в себе
                                </Checkbox>
                            </Col>
                            <Col span={24}>
                                <Checkbox
                                    className="regular_item"
                                    onChange={() => changeValue("Изменение аппетита и веса")}
                                >
                                    Изменение аппетита и веса
                                </Checkbox>
                            </Col>
                            <Col span={24}>
                                <Checkbox className="regular_item" onChange={() => changeValue("Нарушение сна")}>
                                    Нарушение сна
                                </Checkbox>
                            </Col>
                            <Col span={24}>
                                <Checkbox
                                    className="regular_item"
                                    onChange={() => changeValue("Пессимистические мысли и погружение в себя")}
                                >
                                    Пессимистические мысли и погружение в себя
                                </Checkbox>
                            </Col>
                            <Col span={24}>
                                {" "}
                                <Checkbox className="regular_item" onChange={() => changeValue("Безнадежность")}>
                                    Безнадежность
                                </Checkbox>
                            </Col>

                            <Checkbox
                                className="regular_item"
                                onChange={() => changeValue("Суицидальные мысли и действия")}
                            >
                                Суицидальные мысли и действия
                            </Checkbox>
                        </Col>
                    </Row>
                </Panel>
                <Panel header="Внутренняя картина болезни" key="3">
                    <span className="text_question">Отношение пациента к болезни</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">С чем пациент связывает начало болезни</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Отношение пациента к лечению</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Что пациент думает о будущем</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <h3 className="mini_title">Копинг</h3>
                    <span className="text_question">Копинги ведущие</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Активные копинги")}>
                            Активные копинги
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Пассивные копинги")}>
                            Пассивные копинги
                        </Checkbox>
                    </Col>

                    <span className="text_question">Копинги развиты</span>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Хорошо")}>
                            Хорошо
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Плохо")}>
                            Плохо
                        </Checkbox>
                    </Col>

                    <span className="mini_title">Алексетимия</span>
                    <Checkbox className="regular_item" onChange={() => changeValue("Предполагается")}>
                        Предполагается
                    </Checkbox>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <Checkbox className="regular_item" onChange={() => changeValue("Не предполагается")}>
                        Не предполагается
                    </Checkbox>
                    <TextArea className="input_para" placeholder="Введите текст" />
                </Panel>
                <Panel header="Нарушение сна" key="4">
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Нарушение засыпания")}>
                            Нарушение засыпания
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Частое пробуждение")}>
                            Частое пробуждение
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Проснуться рано")}>
                            Проснуться рано
                        </Checkbox>
                    </Col>

                    <TextArea placeholder="Введите текст" />
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Чувство после сна, что не выспался")}
                        >
                            Чувство после сна, что не выспался
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Повышение сонливости: много спит и ночью и днем")}
                        >
                            Повышение сонливости: много спит и ночью и днем
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Radio className="regular_item" onChange={() => changeValue("Справляется с нарушением сна")}>
                            Справляется с нарушением сна
                        </Radio>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Справляется сам с помощью")}>
                            Справляется сам с помощью
                        </Checkbox>
                    </Col>

                    <TextArea className="input_para" placeholder="Введите текст" />
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("С помощью медикаментов")}>
                            С помощью медикаментов
                        </Checkbox>
                    </Col>

                    <TextArea className="input_para" placeholder="Введите текст" />
                    <Col span={24}>
                        <Radio className="regular_item" onChange={() => changeValue("Не справляется с нарушением сна")}>
                            Не справляется с нарушением сна
                        </Radio>
                    </Col>
                    <TextArea placeholder="Введите текст" />
                </Panel>
                <Panel header="Аппетит" key="5">
                    <span className="regular_item">Нарушение аппетита</span>
                    <Col span={24}>
                        <Radio className="regular_item" onChange={() => changeValue("Снижен")}>
                            Снижен
                        </Radio>
                    </Col>
                    <Col span={24}>
                        <Radio className="regular_item" onChange={() => changeValue("Повышен")}>
                            Повышен
                        </Radio>
                    </Col>

                    <span className="text_question">Что пациент делает, чтобы отрегулировать нарушение</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                </Panel>
                <Panel header="Когнитивные функции" key="6">
                    <span className="text_question">Понимание информации</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Запоминание информации</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Речь</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Праксис</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Социальный интеллект</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                </Panel>
                <Panel header="В беседе использовалась терапия" key="7">
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Когнитивно-поведенческая")}>
                            Когнитивно-поведенческая
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Экзистенцильная")}>
                            Экзистенцильная
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Работа с внутренними образами")}
                        >
                            Работа с внутренними образами
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Сфокусированная на решении")}>
                            Сфокусированная на решении
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Сфокусированная на приянятии")}>
                            Сфокусированная на принятии
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Арт-терапия")}>
                            Арт-терапия
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Телесно-ориентированная")}>
                            Телесно-ориентированная
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Другая")}>
                            Другая
                        </Checkbox>
                    </Col>
                    <TextArea className="input_para" placeholder="Введите текст" />
                </Panel>
                <Panel header="Заключение" key="8">
                    <span className="text_question">Заметки</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="mini_title">Предположительно:</span>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Расстройство адаптации")}>
                            Расстройство адаптации
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Тревожное расстройство")}>
                            Тревожное расстройство
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Депрессия клиническая")}>
                            Депрессия клиническая
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Острая психологическая реакция")}
                        >
                            Острая психологическая реакция
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Посттравматическое расстройство")}
                        >
                            Посттравматическое расстройство
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Другое")}>
                            Другое
                        </Checkbox>
                    </Col>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">На первый план выходит</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">На фоне</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                    <span className="text_question">Внутренная картина болезни</span>
                    <Col span={24}>
                        <Radio className="regular_item">Сформирована</Radio>
                    </Col>
                    <Col span={24}>
                        <Radio className="regular_item">Не сформирована</Radio>
                    </Col>

                    <span className="text_question">Мишени психотерапии</span>
                    <TextArea className="input_para" placeholder="Введите текст" />
                </Panel>
                <Panel header="Рекомендации" key="9">
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Пройти дополнительное нейропсихологическое исследование")}
                        >
                            Пройти дополнительное нейропсихологическое исследование
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Пройти дополнительное патопсихологическое исследование")}
                        >
                            Пройти дополнительное патопсихологическое исследование
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Обратиться к врачу-психотерапевту/психиатру")}
                        >
                            Обратиться к врачу-психотерапевту/психиатру
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Пройти тренинг")}>
                            Пройти тренинг
                        </Checkbox>
                    </Col>

                    <TextArea className="input_para" placeholder="Введите текст" />
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Домашнее задание")}>
                            Домашнее задание
                        </Checkbox>
                    </Col>

                    <TextArea className="input_para" placeholder="Введите текст" />
                    <Col span={24}>
                        <Checkbox className="regular_item" onChange={() => changeValue("Психокоррекция по запросу")}>
                            Психокоррекция по запросу
                        </Checkbox>
                    </Col>
                    <Col span={24}>
                        <Checkbox
                            className="regular_item"
                            onChange={() => changeValue("Пройти дополнительную психометрию")}
                        >
                            Пройти дополнительную психометрию
                        </Checkbox>
                    </Col>
                </Panel>
            </Collapse>
        </>
    );
};

export default ConsultationCardPage;