Ignore:
Timestamp:
09/04/26 19:08:08 (3 weeks ago)
Author:
MBK <marija.karapandzova@…>
Branches:
master
Children:
cdcff72
Parents:
e1f74f6
Message:

Fix frontend appearance

File:
1 edited

Legend:

Unmodified
Added
Removed
  • frontend/src/pages/medical-records/MedicalRecordDetail.js

    re1f74f6 r9af201e  
    1 import React, { useState, useEffect } from 'react';
     1import React, { useState, useEffect, useCallback } from 'react';
    22import { useParams, useNavigate } from 'react-router-dom';
    33import { medicalRecordService } from '../../services/medicalRecordService';
    … …  
    7777  const [procedureResults, setProcedureResults] = useState([]);
    7878
    79   useEffect(() => {
    80     fetchRecord();
    81     fetchDoctors();
    82     fetchDropdownOptions();
    83   }, [id]);
    84 
    85   const fetchDropdownOptions = async () => {
    86     try {
    87       console.log('Fetching dropdown options...');
    88       const diagnosesRes = await apiClient.get('/medical-records/dropdown/diagnoses');
    89       console.log('Diagnoses:', diagnosesRes.data);
    90 
    91       const symptomsRes = await apiClient.get('/medical-records/dropdown/symptoms');
    92       console.log('Symptoms:', symptomsRes.data);
    93 
    94       const allergiesRes = await apiClient.get('/medical-records/dropdown/allergies');
    95       console.log('Allergies:', allergiesRes.data);
    96 
    97       const prescriptionsRes = await apiClient.get('/medical-records/dropdown/prescriptions');
    98       console.log('Prescriptions:', prescriptionsRes.data);
    99 
    100       const testsRes = await labService.getAllLabTests();
    101       console.log('Lab Tests:', testsRes.data);
    102 
    103       const proceduresRes = await procedureService.getAllProcedures();
    104       console.log('Procedures:', proceduresRes.data);
    105 
    106       setDiagnoses(diagnosesRes.data || []);
    107       setSymptoms(symptomsRes.data || []);
    108       setAllergies(allergiesRes.data || []);
    109       setPrescriptions(prescriptionsRes.data || []);
    110       setLabTests(testsRes.data || []);
    111       setProcedures(proceduresRes.data || []);
    112       console.log('Dropdown options set successfully');
    113     } catch (err) {
    114       console.error('Error fetching dropdown options:', err);
    115       setError('Failed to load dropdown options: ' + (err.response?.data?.error || err.message));
    116     }
    117   };
    118 
    119   const fetchRecord = async () => {
     79  const fetchRecord = useCallback(async () => {
    12080    try {
    12181      setLoading(true);
    … …  
    146106      setLoading(false);
    147107    }
    148   };
    149 
    150   const fetchDoctors = async () => {
    151     try {
    152       if (!isDoctor) {
    153         const response = await doctorService.getAllDoctors();
    154         setDoctors(response.data);
    155         if (response.data.length > 0 && !selectedDoctorId) {
    156           setSelectedDoctorId(response.data[0].doctorId);
     108  }, [id]);
     109
     110  useEffect(() => {
     111    const fetchDoctors = async () => {
     112      try {
     113        if (!isDoctor) {
     114          const response = await doctorService.getAllDoctors();
     115          setDoctors(response.data);
     116          if (response.data.length > 0 && !selectedDoctorId) {
     117            setSelectedDoctorId(response.data[0].doctorId);
     118          }
    157119        }
    158       }
    159     } catch (err) {
    160       console.error('Failed to fetch doctors', err);
    161     }
    162   };
     120      } catch (err) {
     121        console.error('Failed to fetch doctors', err);
     122      }
     123    };
     124
     125    const fetchDropdownOptions = async () => {
     126      try {
     127        console.log('Fetching dropdown options...');
     128        const diagnosesRes = await apiClient.get('/medical-records/dropdown/diagnoses');
     129        console.log('Diagnoses:', diagnosesRes.data);
     130
     131        const symptomsRes = await apiClient.get('/medical-records/dropdown/symptoms');
     132        console.log('Symptoms:', symptomsRes.data);
     133
     134        const allergiesRes = await apiClient.get('/medical-records/dropdown/allergies');
     135        console.log('Allergies:', allergiesRes.data);
     136
     137        const prescriptionsRes = await apiClient.get('/medical-records/dropdown/prescriptions');
     138        console.log('Prescriptions:', prescriptionsRes.data);
     139
     140        const testsRes = await labService.getAllLabTests();
     141        console.log('Lab Tests:', testsRes.data);
     142
     143        const proceduresRes = await procedureService.getAllProcedures();
     144        console.log('Procedures:', proceduresRes.data);
     145
     146        setDiagnoses(diagnosesRes.data || []);
     147        setSymptoms(symptomsRes.data || []);
     148        setAllergies(allergiesRes.data || []);
     149        setPrescriptions(prescriptionsRes.data || []);
     150        setLabTests(testsRes.data || []);
     151        setProcedures(proceduresRes.data || []);
     152        console.log('Dropdown options set successfully');
     153      } catch (err) {
     154        console.error('Error fetching dropdown options:', err);
     155        setError('Failed to load dropdown options: ' + (err.response?.data?.error || err.message));
     156      }
     157    };
     158
     159    fetchRecord();
     160    fetchDoctors();
     161    fetchDropdownOptions();
     162  }, [id, isDoctor, fetchRecord, selectedDoctorId]);
    163163
    164164  const handleAddDiagnosis = async (e) => {
    … …  
    857857            try {
    858858              setLoading(true);
    859               const doctorId = localStorage.getItem('doctorId') || 1;
     859              const doctorId = user.doctorId || 1;
    860860
    861861              const request = {
    … …  
    964964            try {
    965965              setLoading(true);
    966               const doctorId = localStorage.getItem('doctorId') || 1;
     966              const doctorId = user.doctorId || 1;
    967967
    968968              const request = {
Note: See TracChangeset for help on using the changeset viewer.