Files
MonthlyPaymentApp/README.md
T
oqba26 6b5c0794e9 Update README with recent changes and features
Added a changelog section detailing recent updates including confirmation dialogs, button layout fixes, monthly amount display, payment description visibility, pull-to-refresh functionality, and changes to the archive page.
2025-11-22 06:32:44 +03:30

6.3 KiB
Raw Blame History

مدیریت حقوق ماهانه (Monthly Payment App)این پروژه یک اپلیکیشن اندرویدی مدرن برای مدیریت حقوق ماهانه است. برنامه به صورت کلاینت-سرور طراحی شده و به چندین کاربر اجازه می‌دهد تا با یک حساب مشترک، اطلاعات را به صورت متمرکز مدیریت کنند.

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

این اپلیکیشن با تمرکز بر سادگی و کارایی، امکانات زیر را ارائه می‌دهد:

۱. سیستم چند کاربره و آنلاین

  • یک حساب، چند کاربر: چندین کاربر می‌توانند با یک نام کاربری و رمز عبور مشترک وارد برنامه شوند.
  • همگام‌سازی متمرکز: تمام اطلاعات (افراد و پرداخت‌ها) روی یک سرور مرکزی (VPS) ذخیره می‌شود.
  • دسترسی از هر کجا: کاربران از دستگاه‌های مختلف به داده‌های یکسان دسترسی دارند.

۲. مدیریت کامل افراد

  • افزودن و حذف: امکان افزودن افراد جدید و حذف آن‌ها از لیست.
  • مرتب‌سازی خودکار: لیست افراد به صورت خودکار بر اساس تاریخ ایجاد (از قدیمی‌ترین به جدیدترین) مرتب می‌شود.
  • شماره‌گذاری خوانا: هر شخص در لیست یک شماره ردیف فارسی برای دسترسی سریع‌تر دارد.

۳. مدیریت پیشرفته پرداخت‌ها

  • پرداخت سریع: امکان ثبت پرداخت برای ماه جاری با یک کلیک از صفحه اصلی.
  • تاریخچه کامل پرداخت: با کلیک روی هر شخص، یک صفحه کشویی (Bottom Sheet) باز می‌شود که تاریخچه کامل پرداخت‌های او را به تفکیک سال و ماه نمایش می‌دهد.
  • نمایش وضعیت ماه‌ها: ماه‌ها با وضعیت‌های مختلف (پرداخت شده، در دسترس، مربوط به آینده/گذشته) و با رنگ‌ها و آیکون‌های متفاوت نمایش داده می‌شوند.
  • جزئیات دقیق پرداخت: با کلیک روی یک پرداخت ثبت‌شده، تاریخ و زمان دقیق آن در یک دیالوگ نمایش داده می‌شود.
  • ویرایش و حذف پرداخت: امکان ویرایش مبلغ یا حذف کامل یک پرداخت از تاریخچه وجود دارد.

۴. تجربه کاربری (UX) و طراحی (UI)

  • طراحی مدرن: استفاده از کامپوننت‌های Material 3 و طراحی تمیز و چشم‌نواز.
  • پشتیبانی کامل از زبان فارسی:
    • رابط کاربری راست‌به‌چپ (RTL).
    • اعداد فارسی: تمام اعداد در برنامه (مبالغ، تاریخ، تعداد) به صورت فارسی نمایش داده می‌شوند.
    • قالب‌بندی خودکار مبالغ: اعداد مربوط به مبلغ در حین تایپ به صورت خودکار با جداکننده هزارگان (مانند ۲۰۰٬۰۰۰) قالب‌بندی می‌شوند.
  • کشیدن برای به‌روزرسانی (Pull to Refresh): کاربران می‌توانند با کشیدن صفحه به پایین، به راحتی آخرین اطلاعات را از سرور دریافت کنند.
  • دیالوگ‌های هوشمند:
    • تأیید خروج: برای جلوگیری از خروج تصادفی، برنامه هنگام زدن دکمه بازگشت در صفحه اصلی، یک دیالوگ تأیید نمایش می‌دهد.
    • چیدمان یکپارچه: دکمه‌های تمام دیالوگ‌ها از یک الگوی طراحی واحد و قابل پیش‌بینی پیروی می‌کنند.

۵. تنظیمات و شخصی‌سازی

  • مبلغ پیش‌فرض: امکان تعیین یک مبلغ پیش‌فرض برای پرداخت‌ها جهت تسریع فرآیند ثبت.
  • رابط ویرایش زیبا: بخش تنظیم مبلغ پیش‌فرض دارای حالت‌های نمایش و ویرایش برای جلوگیری از تغییرات تصادفی است.
  • پشتیبان‌گیری و بازیابی: قابلیت ایجاد فایل پشتیبان (Backup) از تمام داده‌ها و بازیابی آن در زمان دلخواه.

🛠️ تکنولوژی‌های استفاده شده

📝 تغییرات ۱۴۰۴/۰۹/۰۱

  • اضافه شدن دیالوگ تأیید برای انتقال اشخاص به آرشیو در لیست پرداخت‌نشده و پرداخت‌شده.
  • اصلاح چیدمان دکمه‌ها در دیالوگ‌های پرداخت (ثبت / ویرایش / حذف).
  • نمایش مبلغ هر ماه روی نوار بالای ماه در صفحه جزئیات فرد.
  • نمایش توضیحات پرداخت (در صورت وجود) زیر تاریخ ثبت در صفحه جزئیات فرد.
  • اضافه شدن قابلیت رفرش لیست پرداخت‌نشده‌ها با کشیدن صفحه به پایین (Pull-to-Refresh).
  • حذف دکمه حذف از صفحه آرشیو، فقط دکمه بازیابی باقی مانده است.
  • ذخیره و برگرداندن فیلد توضیحات پرداخت (description) در سرور (MongoDB) و نمایش آن در اپ.