M

MediControl

Agregar Item al Inventario

Registrar nuevo producto o medicamento

Editar Item de Inventario

Actualizar información del producto

Nueva Factura

Generar factura de servicios médicos

Conceptos

Subtotal: ${{ newInvoice.subtotal.toFixed(2) }}
IVA (19%): ${{ newInvoice.tax.toFixed(2) }}
TOTAL: ${{ newInvoice.total.toFixed(2) }}

Factura {{ selectedInvoice.invoice_number }}

{{ selectedInvoice.patient_name }}

Paciente

{{ selectedInvoice.patient_name }}

Código

{{ selectedInvoice.patient_code }}

Fecha

{{ formatDate(selectedInvoice.date) }}

Estado

{{ selectedInvoice.payment_status }}

Conceptos Facturados

Descripción Cantidad Precio Unit. Total
{{ item.description }} {{ item.quantity }} ${{ item.unitPrice.toFixed(2) }} ${{ item.total.toFixed(2) }}
Subtotal: ${{ selectedInvoice.subtotal.toFixed(2) }}
IVA (19%): ${{ selectedInvoice.tax.toFixed(2) }}
Descuento: -${{ selectedInvoice.discount.toFixed(2) }}
TOTAL: ${{ selectedInvoice.total.toFixed(2) }}

Método de Pago

{{ selectedInvoice.payment_method }}

Estado

{{ selectedInvoice.payment_status }}

Notas

{{ selectedInvoice.notes }}

Subir Documento Médico

Cargar exámenes, historias clínicas y documentos

{{ selectedDocument.title }}

{{ selectedDocument.type }}

Paciente

{{ selectedDocument.patient_name }}

Código

{{ selectedDocument.patient_code }}

Fecha de Carga

{{ formatDate(selectedDocument.created_at?.split('T')[0]) }}

Información del Archivo

Nombre del Archivo

{{ selectedDocument.file_name }}

Tamaño

{{ selectedDocument.file_size }}

Tipo

{{ selectedDocument.file_type?.split('/')[1]?.toUpperCase() || 'N/A' }}

Descripción

{{ selectedDocument.description }}

Metadatos

Subido por: {{ selectedDocument.uploaded_by }}
Fecha y hora: {{ new Date(selectedDocument.created_at).toLocaleString('es-ES') }}
ID Documento: #{{ selectedDocument.id }}

{{ selectedDocument.file_name }}

Vista previa del documento (en desarrollo)

Nueva Receta Médica

Prescripción electrónica de medicamentos

Medicamentos Prescritos

Receta Médica

RX{{ String(selectedPrescription.id).padStart(4, '0') }}

Paciente

{{ getPatientName(selectedPrescription.patient_id) }}

Médico

{{ selectedPrescription.doctor }}

Fecha de Emisión

{{ formatDate(selectedPrescription.date) }}

Válida Hasta

{{ formatDate(selectedPrescription.duration) }}

Medicamentos Prescritos

{{ selectedPrescription.medications }}

Instrucciones Generales

{{ selectedPrescription.instructions }}

Estado de la Receta

{{ selectedPrescription.status === 'active' ? 'ACTIVA' : 'VENCIDA' }}

Nueva Consulta Médica

Registro completo de consulta y evaluación

Información del Paciente

Motivo de Consulta

Signos Vitales

Diagnóstico

Tratamiento

Medicamentos Prescritos

Opcional: Fecha para próxima consulta

Consulta Médica

{{ getPatientName(selectedConsultation.patient_id) }} - {{ formatDate(selectedConsultation.date?.split(' ')[0]) }}

Médico

{{ selectedConsultation.doctor }}

Fecha

{{ formatDate(selectedConsultation.date?.split(' ')[0]) }}

Hora

{{ selectedConsultation.date?.split(' ')[1] || 'N/A' }}

ID Consulta

#{{ selectedConsultation.id }}

Motivo de Consulta

{{ selectedConsultation.chief_complaint }}

Signos Vitales

Temperatura

{{ JSON.parse(selectedConsultation.vital_signs).temperature }}°C

Presión

{{ JSON.parse(selectedConsultation.vital_signs).bloodPressure }}

FC

{{ JSON.parse(selectedConsultation.vital_signs).heartRate }} lpm

Peso

{{ JSON.parse(selectedConsultation.vital_signs).weight }} kg

Altura

{{ JSON.parse(selectedConsultation.vital_signs).height }} cm

Diagnóstico

{{ selectedConsultation.diagnosis }}

Tratamiento

{{ selectedConsultation.treatment }}

Notas Adicionales

{{ selectedConsultation.notes }}

Nueva Cita Médica

Agenda una nueva cita para el paciente

Selección de Paciente

Fecha y Hora

Información Médica

{{ selectedPatient.initials }}

{{ selectedPatient.name }}

{{ selectedPatient.code }} - {{ selectedPatient.id_number }}

Información Personal

Edad

{{ selectedPatient.age }} años

Género

{{ selectedPatient.gender }}

Fecha de Nacimiento

{{ selectedPatient.birth_date }}

Tipo de Sangre

{{ selectedPatient.blood_type || 'No especificado' }}

Contacto

Teléfono

{{ selectedPatient.phone }}

Email

{{ selectedPatient.email || 'No especificado' }}

Dirección

{{ selectedPatient.address || 'No especificado' }}

Información Médica

Seguro Médico

{{ selectedPatient.insurance || 'No especificado' }}

Alergias

{{ selectedPatient.allergies || 'Ninguna' }}

Condiciones Médicas

{{ selectedPatient.medical_conditions || 'Ninguna' }}

Contacto de Emergencia

Nombre

{{ selectedPatient.emergency_name || 'No especificado' }}

Relación

{{ selectedPatient.emergency_relation || 'No especificado' }}

Teléfono

{{ selectedPatient.emergency_phone || 'No especificado' }}

Última Visita

{{ selectedPatient.last_visit }}

Editar Paciente

Actualiza la información del paciente

Información Personal

Información de Contacto

Nuevo Paciente

Registra la información del paciente

Información Personal

Información de Contacto

Información Médica

Contacto de Emergencia

Dashboard

Resumen general del sistema médico

Citas Hoy

{{ stats.appointmentsToday }}

{{ todayAppointments.length }} citas programadas

Pacientes Nuevos

{{ stats.newPatientsThisMonth }}

Este mes

Total Pacientes

{{ patients.length }}

Pacientes registrados

Citas Pendientes

{{ stats.pendingAlerts }}

Por confirmar

Próximas Citas

No hay citas próximas programadas

{{ apt.patient }}

{{ apt.reason }}

{{ apt.time }}

Actividad Reciente

{{ activity.description }}

{{ activity.time }}

Accesos Rápidos

Alertas del Sistema

Stock Bajo

Citas Pendientes

Gestión de Pacientes

Administra la información de tus pacientes

ID Paciente Acciones
{{ patient.code }}
{{ patient.initials }}

{{ patient.name }}

{{ patient.id_number }}

{{ patient.age }} años • {{ patient.phone }}

Citas Médicas

Gestiona las citas y agendamientos

Hoy

{{ todayAppointments.length }}

Pendientes

{{ appointments.filter(a => a.status === 'Pendiente').length }}

Confirmadas

{{ appointments.filter(a => a.status === 'Confirmada').length }}

Total

{{ appointments.length }}

Fecha/Hora Paciente Estado Acciones

{{ formatDate(appointment.date) }}

{{ appointment.time }} ({{ appointment.duration }}min)

{{ appointment.patientName }}

{{ appointment.patientCode }}

{{ appointment.doctor }}

Consultas Médicas

Registro de consultas y seguimiento de pacientes

Total

{{ consultations.length }}

Hoy

{{ consultations.filter(c => c.date?.split(' ')[0] === new Date().toISOString().split('T')[0]).length }}

Este Mes

{{ consultations.filter(c => c.date?.startsWith(new Date().toISOString().slice(0, 7))).length }}

Pacientes

{{ new Set(consultations.map(c => c.patient_id)).size }}

No hay consultas registradas

Comienza registrando tu primera consulta médica

{{ getPatientName(consultation.patient_id) }}

{{ consultation.chief_complaint?.substring(0, 80) }}{{ consultation.chief_complaint?.length > 80 ? '...' : '' }}

{{ consultation.doctor }} {{ formatDate(consultation.date?.split(' ')[0]) }}

Recetas Médicas

Gestión de recetas electrónicas y medicamentos

Total

{{ prescriptions.length }}

Activas

{{ prescriptions.filter(p => p.status === 'active').length }}

Este Mes

{{ prescriptions.filter(p => p.date?.startsWith(new Date().toISOString().slice(0, 7))).length }}

Pacientes

{{ new Set(prescriptions.map(p => p.patient_id)).size }}

No hay recetas registradas

Genera tu primera receta médica electrónica

{{ getPatientName(prescription.patient_id) }}

{{ prescription.status === 'active' ? 'Activa' : 'Vencida' }}

{{ prescription.medications?.substring(0, 100) }}{{ prescription.medications?.length > 100 ? '...' : '' }}

{{ prescription.doctor }} {{ formatDate(prescription.date) }} Válida hasta {{ formatDate(prescription.duration) }}

Documentos Médicos

Gestión de historias clínicas, exámenes y archivos médicos

Total

{{ documents.length }}

Exámenes

{{ documents.filter(d => d.type === 'Examen de Laboratorio' || d.type === 'Imagen Diagnóstica').length }}

Historias

{{ documents.filter(d => d.type === 'Historia Clínica').length }}

Este Mes

{{ documents.filter(d => d.created_at?.startsWith(new Date().toISOString().slice(0, 7))).length }}

No hay documentos cargados

Comienza subiendo el primer documento médico

{{ doc.type }}

{{ doc.title }}

{{ doc.description || 'Sin descripción' }}

Paciente

{{ doc.patient_name }}

{{ doc.file_name }} {{ doc.file_size }}
{{ formatDate(doc.created_at?.split('T')[0]) }}

Facturación y Pagos

Control de facturación, cobros y contabilidad

Pagadas

${{ invoices.filter(i => i.payment_status === 'Pagada').reduce((sum, i) => sum + i.total, 0).toFixed(0) }}

Pendientes

${{ invoices.filter(i => i.payment_status === 'Pendiente').reduce((sum, i) => sum + i.total, 0).toFixed(0) }}

Total

{{ invoices.length }}

Este Mes

${{ invoices.filter(i => i.date?.startsWith(new Date().toISOString().slice(0, 7))).reduce((sum, i) => sum + i.total, 0).toFixed(0) }}

No hay facturas registradas

Genera tu primera factura

{{ invoice.invoice_number }}

{{ invoice.payment_status }}

{{ invoice.patient_name }}

{{ formatDate(invoice.date) }} {{ invoice.payment_method }}

${{ invoice.total.toFixed(2) }}

Total

Inventario Médico

Control de stock de medicamentos e insumos médicos

Items

{{ inventory.length }}

Stock Bajo

{{ inventory.filter(i => i.status === 'low_stock').length }}

Disponible

{{ inventory.filter(i => i.status === 'available').length }}

Valor Total

${{ inventory.reduce((sum, i) => sum + (i.quantity * i.unitPrice), 0).toFixed(0) }}

Inventario vacío

Comienza agregando tu primer producto o medicamento

Código Producto Stock Estado Acciones
{{ item.code }}

{{ item.name }}

{{ item.supplier }}

{{ item.quantity }}

Mín: {{ item.minStock }}

{{ item.status === 'low_stock' ? 'Stock Bajo' : 'Disponible' }}

Reportes y Estadísticas

Análisis de datos y reportes del sistema

Pacientes

{{ patients.length }}

Total registrados

Nuevos este mes: {{ stats.newPatientsThisMonth }}

Citas

{{ appointments.length }}

Total programadas

Hoy: {{ stats.appointmentsToday }}

Consultas

{{ consultations.length }}

Total realizadas

Pacientes atendidos: {{ new Set(consultations.map(c => c.patient_id)).size }}

Citas por Día

Gráfico en desarrollo

Ingresos Mensuales

Gráfico en desarrollo

Especialidades Más Solicitadas

Gráfico en desarrollo

Pacientes por Médico

Gráfico en desarrollo

Configuración del Sistema

Ajustes generales y preferencias

Configuración

Panel de configuración en desarrollo