import { Router } from 'express';
import {
  createPatientAttachmentRecord,
  getPatientAttachmentContent,
  getPatientAttachments,
  removePatientAttachmentRecord,
} from '../controllers/patient-attachment.controller';
import {
  createPatientTreatment,
  createPatient,
  getPatientProfile,
  getPatients,
  updateOdontogramPiece,
  updatePatient,
  updatePatientTreatment,
} from '../controllers/patient.controller';
import { getPatientPortalAccess, upsertPatientPortalAccess } from '../controllers/patient-access.controller';

const router = Router();

router.get('/', getPatients);
router.post('/', createPatient);
router.get('/:id', getPatientProfile);
router.put('/:id', updatePatient);
router.get('/:id/portal-access', getPatientPortalAccess);
router.put('/:id/portal-access', upsertPatientPortalAccess);
router.get('/:id/attachments', getPatientAttachments);
router.post('/:id/attachments', createPatientAttachmentRecord);
router.get('/:id/attachments/:attachmentId/content', getPatientAttachmentContent);
router.delete('/:id/attachments/:attachmentId', removePatientAttachmentRecord);
router.post('/:id/treatments', createPatientTreatment);
router.put('/:id/treatments/:treatmentId', updatePatientTreatment);
router.put('/:id/odontogram/:toothNumber', updateOdontogramPiece);

export default router;
