نرم‌افزار سفارشی · سلامت روان — کلینیک مشاوره و روان‌شناسی

کلینیک مشاوره روشا: سامانه‌ی رزرو تا تسویه‌ی مشاور، روی وردپرس اختصاصی

سامانه‌ی یکپارچه‌ی مدیریت کلینیک روان‌شناسی روی وردپرس: رزرو آنلاین با قفل ضد تداخل، پرداخت و بیعانه، میز پذیرش 15 ماژولی، پنل مشاور با محاسبه‌ی سهم، و گزارش مالی با PDF فارسی. بدون افزونه‌ی رزرو یا قالب آماده.

کارفرما
کلینیک مشاوره روشا
حوزه
سلامت روان — کلینیک مشاوره و روان‌شناسی
سال
1404
وضعیت
در حال بهره‌برداری
  • تحلیل و کشف نیاز
  • طراحی تجربه و رابط کاربری
  • معماری نرم‌افزار
  • توسعه بک‌اند و API
  • توسعه فرانت‌اند
  • طراحی پایگاه داده
  • یکپارچه‌سازی با سیستم‌های دیگر
  • سئوی فنی
  • تست و تضمین کیفیت
  • پشتیبانی و توسعه مستمر

نتیجه در عدد

3 + 1
افزونه‌ی اختصاصی و یک قالب دست‌نویس

بدون افزونه‌ی رزرو یا قالب آماده

15
ماژول مستقل میز پذیرش
27
رویداد پیامکی خودکار

چالش

مرکزی که سه شیوه‌ی رزرو دارد — تلفنی، حضوری و آنلاین — چند روش پرداخت، و چهار گروه کاربر با دید کاملاً متفاوت (مدیر، منشی، مشاور، مراجع)، با افزونه‌های آماده‌ی وردپرس اداره نمی‌شود.

مسئله‌ها مشخص بودند. تداخل رزرو: وقتی منشی پای تلفن یک ساعت را می‌دهد و هم‌زمان مراجعی همان ساعت را آنلاین می‌گیرد، سیستم باید یکی را رد کند — نه اینکه هر دو را ثبت کند و مشکل را به جلسه واگذار کند. سهم مشاور: هر مشاور و هر خدمت می‌تواند درصد یا مبلغ متفاوتی داشته باشد، و محاسبه‌ی دستی آن آخر ماه هم وقت‌گیر است هم محل اختلاف. دید هر نقش: مشاور نباید داده‌ی مشاور دیگر را ببیند، و این باید در خود کوئری اعمال شود نه فقط در منویی که نمایش داده می‌شود.

و یک محدودیت جدی‌تر: تقویم کاری کلینیک شمسی است، ولی هیچ افزونه‌ی رزروی تقویم شمسی را به‌عنوان شهروند درجه‌یک نمی‌شناسد.

راه‌حل

به‌جای وصله کردن افزونه‌ها، یک موتور رزرو و مدیریت اختصاصی نوشته شد: سه افزونه‌ی سفارشی و یک قالب دست‌نویس، روی REST API خود وردپرس با احراز nonce و کنترل دسترسی مبتنی بر Capability — نه Ajax پراکنده و نه افزونه‌ی واسط.

رزرو و ظرفیت. تقویم شمسی زنده که ظرفیت را از یک نقطه‌ی پایانی می‌گیرد، با قفل اتمیک در سطح پایگاه داده هنگام ثبت نوبت؛ تداخل رزرو هم‌زمان به‌کلی حذف شد. لیست انتظار با اعلان خودکار وقتی ظرفیتی آزاد می‌شود، و تمدید جلسه با یک کلیک برای وقتی که جلسه طول می‌کشد.

پرداخت. معماری چنددرگاهی روی یک اینترفیس مشترک — زرین‌پال به‌همراه یک درگاه آزمایشی داخلی برای تست بدون پول واقعی — با بیعانه یا پرداخت کامل، سراسری یا به تفکیک هر خدمت، و بازپرداختی که خودش در گزارش مالی می‌نشیند.

میز پذیرش. کنسول عملیات زنده‌ی منشی از 15 ماژول مستقل ساخته شده که هرکدام خاموش، جابه‌جا و کم‌وزیاد می‌شوند. شیفت خودکار بدون صندوق، خط‌فرمان اقدام‌محور، صف انتظار و آمار هفتگی و ماهانه و سالانه. تغییر وضعیت نوبت از یک ماتریس گذار سمت سرور می‌گذرد، پس گذار نامعتبر همیشه رد می‌شود.

پنل مشاور. هر مشاور بعد از ورود مستقیم به پنل خودش می‌رود: آمار امروز و ماه، تقویم هفتگی، ثبت گزارش جلسه، درخواست مرخصی، و درآمد شفاف با فرمول سهم سه‌سطحی — سراسری، سپس خدمت، سپس مشاور؛ ثابت یا درصدی. ایزوله‌سازی داده در هر نقطه‌ی پایانی بررسی می‌شود.

گزارش مالی. چند نما با فیلترهای پیشرفته و خروجی اکسل، و PDF فارسی حرفه‌ای با mPDF: راست‌به‌چپ کامل، فونت وزیرمتن، امضای دیجیتال و کد QR اعتبارسنجی روی هر رسید و صورت‌تسویه. درآمد خالص همیشه وصولی منهای بازپرداخت است، پس هیچ تراکنشی از گزارش گم نمی‌شود.

حساب مراجع و پیامک. هر مراجعی که نوبت می‌گیرد — حضوری یا آنلاین — خودکار حساب کاربری می‌گیرد و دفعه‌ی بعد فقط با موبایل وارد می‌شود؛ مرحله‌ی «اطلاعات» از فرم رزرو حذف شد. اتوماسیون پیامک با صف ارسال، تلاش مجدد و رهگیری تحویل، 27 رویداد از تأیید نوبت و یادآوری جلسه تا کد یک‌بارمصرف ورود، هرکدام جدا فعال و متنش قابل تغییر.

قابلیت‌های کلیدی

  • رزرو بدون تداخل

    قفل اتمیک در سطح پایگاه داده هنگام ثبت نوبت؛ تلفن و آنلاین هرگز یک ساعت را دوبار نمی‌فروشند.

  • تقویم شمسی سرتاسری

    تبدیل دوطرفه در کل سیستم؛ زمان‌ها UTC ذخیره و به وقت تهران نمایش داده می‌شوند.

  • میز پذیرش ماژولار

    15 ماژول مستقل با اینترفیس یکسان — قابل خاموش‌کردن، جابه‌جایی و تغییر عرض.

  • ماتریس گذار وضعیت

    گذار نوبت سمت سرور اعتبارسنجی می‌شود؛ تغییر وضعیت نامعتبر همیشه رد می‌شود.

  • فرمول سهم سه‌سطحی

    سراسری ← خدمت ← مشاور، ثابت یا درصدی؛ درآمد مشاور بدون محاسبه‌ی دستی.

  • PDF فارسی با اعتبارسنجی

    راست‌به‌چپ کامل، امضای دیجیتال و کد QR روی هر رسید و صورت‌تسویه.

  • ورود با کد یک‌بارمصرف

    مراجع با موبایل وارد می‌شود؛ حساب کاربری هنگام اولین رزرو خودکار ساخته می‌شود.

  • گزارش مالی بدون نشتی

    درآمد خالص = وصولی منهای بازپرداخت، با فیلترهای پیشرفته و خروجی اکسل.

معماری و فناوری

سبک معماری
مبتنی بر CMS

وردپرس این‌جا یک قالب نیست، یک بستر است: احراز هویت، نقش‌ها، رسانه و مدیریت محتوا از خودش گرفته شد و هرچه بومی وردپرس داشت — عنوان سایت، لوگو، فهرست‌ها — دوباره ساخته نشد؛ تنظیمات تازه فقط برای چیزی نوشته شد که واقعاً جایی نداشت.

روی آن، منطق کلینیک به‌شکل سه افزونه‌ی مستقل نوشته شد — موتور رزرو و مدیریت، حساب کاربری مراجعان، و اتوماسیون پیامک — به‌علاوه‌ی یک قالب دست‌نویس بدون فریم‌ورک و بدون صفحه‌ساز. ارتباط همه از REST API خود وردپرس با احراز nonce می‌گذرد، نه Ajax پراکنده؛ یعنی هر نقطه‌ی پایانی یک محل واحد برای بررسی مجوز دارد.

کنترل دسترسی با Capability اختصاصی برای هر نقش — مدیر، منشی، مشاور، حسابدار و مراجع — انجام می‌شود، و نکته این است که مالکیت داده در خود کوئری بررسی می‌شود، نه فقط در منویی که نمایش داده می‌شود؛ مشاور حتی با آدرس مستقیم هم به داده‌ی مشاور دیگر نمی‌رسد.

تقویم شمسی با تبدیل دوطرفه در کل سیستم کار می‌کند و زمان‌ها UTC ذخیره و به وقت Asia/Tehran نمایش داده می‌شوند، تا تغییر ساعت مشکلی نسازد. قالب متای سئو، Open Graph و JSON-LD خودش را دارد که اگر افزونه‌ی سئو نصب شود، خودکار خاموش می‌شود — تا دو منبع هم‌زمان متا تولید نکنند.

بک‌اند و API
WordPressPHPREST API

سه افزونه‌ی اختصاصی، 40+ فایل PHP دست‌نویس، احراز nonce و Capability

پایگاه داده
MariaDB

قفل اتمیک سطح پایگاه داده برای ثبت نوبت

فرانت‌اند
JavaScript (ES6+)CSS3Responsive Design

قالب دست‌نویس، بدون فریم‌ورک و بدون صفحه‌ساز

سایر
UI/UX Design

متای سئو، Open Graph و JSON-LD در خود قالب

یکپارچه‌سازی‌ها

  • درگاه پرداخت زرین‌پال، به‌علاوه‌ی درگاه آزمایشی داخلی
  • وب‌سرویس ملی پیامک با صف، تلاش مجدد و رهگیری تحویل
  • mPDF برای تولید رسید و صورت‌تسویه‌ی فارسی

پروژه‌ی مشابهی در ذهن دارید؟

یک تماس پانزده دقیقه‌ای کافی است تا بگوییم چه چیزی لازم است، چقدر طول می‌کشد و از کجا شروع کنیم.

رویدادیار شهرداری تهران: رویدادهای فرهنگی 22 منطقه روی یک سامانه
کار شاخص

نرم‌افزار سفارشی

رویدادیار شهرداری تهران: رویدادهای فرهنگی 22 منطقه روی یک سامانه

سامانه‌ی یکپارچه‌ی رویدادها و اماکن فرهنگی شهر تهران: زنجیره‌ی تأیید چندمرحله‌ای، اطلس فرهنگی روی نقشه، گزارش میدانی ژئوفنس‌شده و نظرسنجی شهروندی — سه کلاینت وب، موبایل و API روی یک هسته.

  • React.js
  • Vite
  • TypeScript
  • Leaflet

شهرداری تهران · 1404

روبوکد: آموزشگاه، آزمون آنلاین، فروشگاه و شبکه‌ی نمایندگان روی یک سامانه
کار شاخص

نرم‌افزار سفارشی · فروشگاه اینترنتی

روبوکد: آموزشگاه، آزمون آنلاین، فروشگاه و شبکه‌ی نمایندگان روی یک سامانه

سکوی یکپارچه‌ی مؤسسه‌ی آموزشی روبوکد روی .NET 10: دوره‌ی آنلاین و حضوری، آزمون با کارنامه، فروشگاه با قیمت‌گذاری عمده، صدور گواهی با استعلام QR، پنل نمایندگان و مدرسان با پورسانت، و ورود یکپارچه از شاد.

  • .NET 10
  • C#
  • Entity Framework Core
  • MediatR

مؤسسه آموزشی روبوکد · 1404

کلینیک زیبایی شایلین: رزرو آنلاین، مجله‌ی تخصصی و یک پنل مدیریت
کار شاخص

نرم‌افزار سفارشی

کلینیک زیبایی شایلین: رزرو آنلاین، مجله‌ی تخصصی و یک پنل مدیریت

سامانه‌ی جامع کلینیک زیبایی شایلین روی .NET 10 و Next.js: رزرو آنلاین با انتخاب خدمت و پزشک و تقویم شمسی، گالری قبل و بعد، مجله‌ی تخصصی با صفحه‌ساز، وب‌اپلیکیشن نصب‌شدنی با اعلان Web Push، و یک پنل مدیریت برای همه‌ی این‌ها.

  • Next.js
  • React.js
  • TypeScript
  • Vite

کلینیک زیبایی شایلین · 1404