# جریان کاربری — تسک ۱۲: تکمیل منشی ## جریان افزودن منشی جدید با بررسی سقف پنل ``` دکتر روی «افزودن منشی» کلیک می‌کند → Modal باز می‌شود │ ▼ POST /api/v1/secretary { phone, ... } │ ├─► 403 ERR_SECRETARY_LIMIT_REACHED: │ ┌─────────────────────────────────────────┐ │ │ ⚠️ سقف منشی پنل شما تکمیل شده است │ │ │ پنل Free: حداکثر ۱ منشی │ │ │ │ │ │ [ارتقاء به Basic] [بستن] │ │ └─────────────────────────────────────────┘ │ └─► 201: منشی ایجاد شد → لیست refresh ``` ## جریان ویرایش permissions منشی ``` دکتر روی آیکن تنظیمات کنار منشی کلیک می‌کند │ ▼ GET /api/v1/secretary/{uuid} → بارگذاری permissions فعلی در Modal │ ▼ ┌─────────────────────────────────────────────────────────┐ │ دسترسی‌های علی رضایی │ ├──────────────────┬──────────┬────────┬────────┬─────────┤ │ بخش │ مشاهده │ ایجاد │ ویرایش │ لغو/حذف│ ├──────────────────┼──────────┼────────┼────────┼─────────┤ │ نوبت‌ها │ ✅ │ ✅ │ ✅ │ ☐ │ │ آدرس‌ها │ ✅ │ ☐ │ ☐ │ ☐ │ │ اطلاعات کلینیک │ ✅ │ - │ ☐ │ - │ │ بیمه‌ها │ ✅ │ ☐ │ ☐ │ ☐ │ └──────────────────┴──────────┴────────┴────────┴─────────┘ │ │ │ [لغو] [ذخیره دسترسی‌ها] │ └─────────────────────────────────────────────────────────┘ │ ▼ PATCH /api/v1/secretary/{uuid} { permissions: { version: 1, resources: { ... } } } │ ▼ 200: «دسترسی‌های منشی بروزرسانی شد» → Modal بسته می‌شود ``` ## ترتیب سطوح سقف منشی ``` اشتراک → سقف → اگر افزودن فراتر رود ───────────────────────────────────────── Free → 1 → 403 Basic → 2 → 403 Professional → 5 → 403 ``` ## نکته: منشی غیرفعال از سقف کم نمی‌شود ``` countActive() فقط منشی ها active=true را می‌شمارد یعنی: اگر 2 منشی داری و یکی را غیرفعال کنی → می‌توانی دوباره 1 منشی جدید اضافه کنی (مادامی که در پنل Basic هستی و سقف 2 داری) ```