fix: auto-migrate after DB restore and force re-login

- After importing a backup, run prisma migrate deploy so any schema
  migrations the backup is missing are applied automatically. This
  prevents pages from failing due to missing tables/columns when the
  backup was taken on an older version of the app.
- Force logout and redirect to login after a successful restore so the
  JWT is refreshed against the restored database (prevents userId
  mismatch causing user-scoped queries to return empty results).
- Fix getTotalPatientCount() in /status route to pass userId so it
  counts only the current user's patients instead of all patients.
- Add prisma.$connect() after $disconnect() to ensure a clean reconnect.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
ff
2026-05-17 22:31:12 -04:00
parent b9e888fc7f
commit 5508a90d28
231 changed files with 1629 additions and 14854 deletions

View File

@@ -141,19 +141,6 @@ export { InsuranceCredentialDeleteManyResultSchema } from './InsuranceCredential
export { InsuranceCredentialAggregateResultSchema } from './InsuranceCredentialAggregateResult.schema';
export { InsuranceCredentialGroupByResultSchema } from './InsuranceCredentialGroupByResult.schema';
export { InsuranceCredentialCountResultSchema } from './InsuranceCredentialCountResult.schema';
export { ShoppingVendorFindUniqueResultSchema } from './ShoppingVendorFindUniqueResult.schema';
export { ShoppingVendorFindFirstResultSchema } from './ShoppingVendorFindFirstResult.schema';
export { ShoppingVendorFindManyResultSchema } from './ShoppingVendorFindManyResult.schema';
export { ShoppingVendorCreateResultSchema } from './ShoppingVendorCreateResult.schema';
export { ShoppingVendorCreateManyResultSchema } from './ShoppingVendorCreateManyResult.schema';
export { ShoppingVendorUpdateResultSchema } from './ShoppingVendorUpdateResult.schema';
export { ShoppingVendorUpdateManyResultSchema } from './ShoppingVendorUpdateManyResult.schema';
export { ShoppingVendorUpsertResultSchema } from './ShoppingVendorUpsertResult.schema';
export { ShoppingVendorDeleteResultSchema } from './ShoppingVendorDeleteResult.schema';
export { ShoppingVendorDeleteManyResultSchema } from './ShoppingVendorDeleteManyResult.schema';
export { ShoppingVendorAggregateResultSchema } from './ShoppingVendorAggregateResult.schema';
export { ShoppingVendorGroupByResultSchema } from './ShoppingVendorGroupByResult.schema';
export { ShoppingVendorCountResultSchema } from './ShoppingVendorCountResult.schema';
export { PdfGroupFindUniqueResultSchema } from './PdfGroupFindUniqueResult.schema';
export { PdfGroupFindFirstResultSchema } from './PdfGroupFindFirstResult.schema';
export { PdfGroupFindManyResultSchema } from './PdfGroupFindManyResult.schema';
@@ -375,19 +362,6 @@ export { OfficeContactDeleteManyResultSchema } from './OfficeContactDeleteManyRe
export { OfficeContactAggregateResultSchema } from './OfficeContactAggregateResult.schema';
export { OfficeContactGroupByResultSchema } from './OfficeContactGroupByResult.schema';
export { OfficeContactCountResultSchema } from './OfficeContactCountResult.schema';
export { InsuranceContactFindUniqueResultSchema } from './InsuranceContactFindUniqueResult.schema';
export { InsuranceContactFindFirstResultSchema } from './InsuranceContactFindFirstResult.schema';
export { InsuranceContactFindManyResultSchema } from './InsuranceContactFindManyResult.schema';
export { InsuranceContactCreateResultSchema } from './InsuranceContactCreateResult.schema';
export { InsuranceContactCreateManyResultSchema } from './InsuranceContactCreateManyResult.schema';
export { InsuranceContactUpdateResultSchema } from './InsuranceContactUpdateResult.schema';
export { InsuranceContactUpdateManyResultSchema } from './InsuranceContactUpdateManyResult.schema';
export { InsuranceContactUpsertResultSchema } from './InsuranceContactUpsertResult.schema';
export { InsuranceContactDeleteResultSchema } from './InsuranceContactDeleteResult.schema';
export { InsuranceContactDeleteManyResultSchema } from './InsuranceContactDeleteManyResult.schema';
export { InsuranceContactAggregateResultSchema } from './InsuranceContactAggregateResult.schema';
export { InsuranceContactGroupByResultSchema } from './InsuranceContactGroupByResult.schema';
export { InsuranceContactCountResultSchema } from './InsuranceContactCountResult.schema';
export { ProcedureTimeslotFindUniqueResultSchema } from './ProcedureTimeslotFindUniqueResult.schema';
export { ProcedureTimeslotFindFirstResultSchema } from './ProcedureTimeslotFindFirstResult.schema';
export { ProcedureTimeslotFindManyResultSchema } from './ProcedureTimeslotFindManyResult.schema';
@@ -401,42 +375,3 @@ export { ProcedureTimeslotDeleteManyResultSchema } from './ProcedureTimeslotDele
export { ProcedureTimeslotAggregateResultSchema } from './ProcedureTimeslotAggregateResult.schema';
export { ProcedureTimeslotGroupByResultSchema } from './ProcedureTimeslotGroupByResult.schema';
export { ProcedureTimeslotCountResultSchema } from './ProcedureTimeslotCountResult.schema';
export { PatientConversationFindUniqueResultSchema } from './PatientConversationFindUniqueResult.schema';
export { PatientConversationFindFirstResultSchema } from './PatientConversationFindFirstResult.schema';
export { PatientConversationFindManyResultSchema } from './PatientConversationFindManyResult.schema';
export { PatientConversationCreateResultSchema } from './PatientConversationCreateResult.schema';
export { PatientConversationCreateManyResultSchema } from './PatientConversationCreateManyResult.schema';
export { PatientConversationUpdateResultSchema } from './PatientConversationUpdateResult.schema';
export { PatientConversationUpdateManyResultSchema } from './PatientConversationUpdateManyResult.schema';
export { PatientConversationUpsertResultSchema } from './PatientConversationUpsertResult.schema';
export { PatientConversationDeleteResultSchema } from './PatientConversationDeleteResult.schema';
export { PatientConversationDeleteManyResultSchema } from './PatientConversationDeleteManyResult.schema';
export { PatientConversationAggregateResultSchema } from './PatientConversationAggregateResult.schema';
export { PatientConversationGroupByResultSchema } from './PatientConversationGroupByResult.schema';
export { PatientConversationCountResultSchema } from './PatientConversationCountResult.schema';
export { CommissionBatchFindUniqueResultSchema } from './CommissionBatchFindUniqueResult.schema';
export { CommissionBatchFindFirstResultSchema } from './CommissionBatchFindFirstResult.schema';
export { CommissionBatchFindManyResultSchema } from './CommissionBatchFindManyResult.schema';
export { CommissionBatchCreateResultSchema } from './CommissionBatchCreateResult.schema';
export { CommissionBatchCreateManyResultSchema } from './CommissionBatchCreateManyResult.schema';
export { CommissionBatchUpdateResultSchema } from './CommissionBatchUpdateResult.schema';
export { CommissionBatchUpdateManyResultSchema } from './CommissionBatchUpdateManyResult.schema';
export { CommissionBatchUpsertResultSchema } from './CommissionBatchUpsertResult.schema';
export { CommissionBatchDeleteResultSchema } from './CommissionBatchDeleteResult.schema';
export { CommissionBatchDeleteManyResultSchema } from './CommissionBatchDeleteManyResult.schema';
export { CommissionBatchAggregateResultSchema } from './CommissionBatchAggregateResult.schema';
export { CommissionBatchGroupByResultSchema } from './CommissionBatchGroupByResult.schema';
export { CommissionBatchCountResultSchema } from './CommissionBatchCountResult.schema';
export { CommissionBatchItemFindUniqueResultSchema } from './CommissionBatchItemFindUniqueResult.schema';
export { CommissionBatchItemFindFirstResultSchema } from './CommissionBatchItemFindFirstResult.schema';
export { CommissionBatchItemFindManyResultSchema } from './CommissionBatchItemFindManyResult.schema';
export { CommissionBatchItemCreateResultSchema } from './CommissionBatchItemCreateResult.schema';
export { CommissionBatchItemCreateManyResultSchema } from './CommissionBatchItemCreateManyResult.schema';
export { CommissionBatchItemUpdateResultSchema } from './CommissionBatchItemUpdateResult.schema';
export { CommissionBatchItemUpdateManyResultSchema } from './CommissionBatchItemUpdateManyResult.schema';
export { CommissionBatchItemUpsertResultSchema } from './CommissionBatchItemUpsertResult.schema';
export { CommissionBatchItemDeleteResultSchema } from './CommissionBatchItemDeleteResult.schema';
export { CommissionBatchItemDeleteManyResultSchema } from './CommissionBatchItemDeleteManyResult.schema';
export { CommissionBatchItemAggregateResultSchema } from './CommissionBatchItemAggregateResult.schema';
export { CommissionBatchItemGroupByResultSchema } from './CommissionBatchItemGroupByResult.schema';
export { CommissionBatchItemCountResultSchema } from './CommissionBatchItemCountResult.schema';