// src/services/clinicalNotes.ts
import api from "./api";
import { ClinicalNote } from "../types";

/* CREATE NOTE */
export const createClinicalNote = async (data: any): Promise<ClinicalNote> => {
  try {
    const res = await api.post("/clinicalnote", data);
    // Handle different response structures
    return res.data.data || res.data.clinicalNote || res.data;
  } catch (error: any) {
    console.error("Error creating clinical note:", error);
    throw error;
  }
};

/* GET ALL NOTES BY PATIENT BY ID */
export const getClinicalNotesByPatientId = async (
  patientId: string
): Promise<ClinicalNote[]> => {
  const res = await api.get(`/clinicalnote/patient/${patientId}`);
  return res.data.data;
};

/* -------------------- GET SINGLE NOTE -------------------- */
// export const getClinicalNoteById = async (id: number): Promise<ClinicalNote> => {
//   const res = await api.get(`/clinical-notes/${id}`);
//   return res.data.data;
// };

/*  UPDATE NOTE */
export const updateClinicalNote = async (
  id: number,
  data: any
): Promise<ClinicalNote> => {
  const res = await api.put(`/clinicalnote/${id}`, data);
  return res.data.data;
};

/* DELETE NOTE  */
export const deleteClinicalNote = async (id: number): Promise<string> => {
  const res = await api.delete(`/clinicalnote/${id}`);
  return res.data.message;
};
