feat: add Office Contact settings page and reorder Advanced sidebar

- Add OfficeContact Prisma model with receptionist name, dentist name, phone, email, fax fields
- Create GET/PUT /api/office-contact backend route and storage
- Add OfficeContactCard frontend component under Settings > Advanced
- Reorder Advanced sidebar: Office Hours → Office Contact → Twilio Settings → Google AI Settings

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Gitead
2026-05-05 21:19:30 -04:00
parent 2312ad66ca
commit 800008792a
188 changed files with 3780 additions and 173 deletions

View File

@@ -20,6 +20,7 @@ import { cronJobLogStorage } from "./cron-job-log-storage";
import { twilioStorage } from "./twilio-storage";
import { aiSettingsStorage } from "./ai-settings-storage";
import { officeHoursStorage } from "./office-hours-storage";
import { officeContactStorage } from "./office-contact-storage";
export const storage = {
@@ -43,6 +44,7 @@ export const storage = {
...twilioStorage,
...aiSettingsStorage,
...officeHoursStorage,
...officeContactStorage,
};

View File

@@ -0,0 +1,21 @@
import { prisma as db } from "@repo/db/client";
export const officeContactStorage = {
async getOfficeContact(userId: number) {
return db.officeContact.findUnique({ where: { userId } });
},
async upsertOfficeContact(userId: number, data: {
receptionistName?: string;
dentistName?: string;
phoneNumber?: string;
email?: string;
fax?: string;
}) {
return db.officeContact.upsert({
where: { userId },
update: data,
create: { userId, ...data },
});
},
};