diff --git a/docs/backlog.md b/docs/backlog.md index 15415bc..39ac465 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -180,10 +180,10 @@ --- ## 📍 بخش ۲۵: بازبینی، اصلاح خطاها و توسعه قابلیت‌های درخواستی جدید (Batch Tasks 25.1 - 25.14) -- [ ] **TASK-25.1 [Frontend Header Dropdown]:** بازگرداندن Dropdown سریع اطلاعات کاربری و لیست پت‌ها در هدر اصلی فرانت‌اند (Header Profile Dropdown with Pets List). -- [ ] **TASK-25.2 [Admin Panel Topbar]:** اصلاح کارکرد دکمه «خروج از حساب» در Dropdown پروفایل ادمین پنل (Fix Logout Handler in Admin Topbar). +- [x] **TASK-25.1 [Frontend Header Dropdown]:** بازگرداندن Dropdown سریع اطلاعات کاربری و لیست پت‌ها در هدر اصلی فرانت‌اند (Header Profile Dropdown with Pets List). +- [x] **TASK-25.2 [Admin Panel Topbar]:** اصلاح کارکرد دکمه «خروج از حساب» در Dropdown پروفایل ادمین پنل (Fix Logout Handler in Admin Topbar). - [x] **TASK-25.3 [Admin Panel Users Page]:** تکمیل مدیریت کامل کاربران (مشاهده تمامی فیلدها، ویرایش اطلاعات کاربر، تغییر نقش، مسدودی و...). -- [ ] **TASK-25.4 [Health Calculator UI]:** اصلاح فیلدهای گام دوم پایش فیزیکی در چک‌آپ سلامت جهت امکان تایپ مستقیم عددی علاوه بر دکمه‌های کم و زیاد. +- [x] **TASK-25.4 [Health Calculator UI]:** اصلاح فیلدهای گام دوم پایش فیزیکی در چک‌آپ سلامت جهت امکان تایپ مستقیم عددی علاوه بر دکمه‌های کم و زیاد. - [ ] **TASK-25.5 [Health Supplement Tracking Logic]:** پیاده‌سازی کامل منطق و الگوریتم پایش موجودی مکمل‌ها براساس تاریخ مصرف و سفارشات واقعی پت. - [ ] **TASK-25.6 [Backend Exception & Error Handling System]:** اصلاح منطق پاسخ‌دهی خطاهای بهینه‌شده به تفکیک پارامترها و جلوگیری از نمایش پیام‌های کلی غیرمنتظره و توست‌های تکراری. - [ ] **TASK-25.7 [Wallet Checkout Error Handling]:** اصلاح هندلینگ خطای ورودی هنگام پرداخت با کیف پول و نمایش دقیق فیلد یا دلیل خطای پرداخت. diff --git a/frontend/application/components/SmartAdvisor.tsx b/frontend/application/components/SmartAdvisor.tsx index b7b334b..730c543 100644 --- a/frontend/application/components/SmartAdvisor.tsx +++ b/frontend/application/components/SmartAdvisor.tsx @@ -382,18 +382,38 @@ export default function SmartAdvisor({ onComplete, rules = [] }: SmartAdvisorPro
-
- - {toPersian(age.toString())} سال - +
+ +
+ setAge(Math.max(0, parseInt(e.target.value) || 0))} + className="w-12 text-center text-xl font-black text-canina-blue font-vazir outline-none bg-transparent" + /> + سال +
+
-
- - {toPersian(weight.toString())} kg - +
+ +
+ setWeight(Math.max(1, parseInt(e.target.value) || 1))} + className="w-16 text-center text-xl font-black text-canina-blue font-vazir outline-none bg-transparent" + /> + kg +
+