فارسی | English (انگلیسی)
ماژول تاریخ شمسی اکانتینگ (نسخه ۲)
این ماژول پشتیبانی کامل از تقویم جلالی (شمسی) را به سیستم اکانتینگ نسخه ۳ اضافه میکند. تمامی تبدیلهای تاریخی در سمت مرورگر انجام میشود تا سرعت و امنیت دادههای شما حفظ شود.

⚠️ هشدار در مورد محدودیتهای لایسنس
از نسخه 3.1.20 به بعد، سیستم Akaunting مکانیزمی را اضافه کرده که ماژولهای شخصی یا محلی (که در مارکت رسمی ثبت نشده باشند) را به صورت خودکار حذف (Uninstall) میکند.
ما این مشکل را به تیم توسعه اکانتینگ گزارش دادیم، اما متاسفانه ایشو (Issue) مربوطه بدون هیچ پاسخی پاک شد: لینک ایشو حذف شده #3330.
برای حل این مشکل، ما یک اسکریپت «نصبکننده و پچکننده» آماده کردهایم که نام ماژول را در لیست سفید هسته برنامه قرار میدهد.
نصب خودکار و هوشمند (پیشنهادی)
راحتترین راه برای نصب و جلوگیری از حذف خودکار ماژول، استفاده از اسکریپت اختصاصی ماست:
- فایل
installer.php را از این مخزن دانلود کنید.
- آن را در پوشه اصلی (Root) اکانتینگ آپلود کنید (جایی که فایل
.env قرار دارد).
- دستور زیر را در ترمینال اجرا کنید:
php installer.php
این اسکریپت چه کارهایی انجام میدهد؟
- آخرین نسخه سورس کد ماژول را دانلود میکند.
- وابستگیهای Composer را بررسی و نصب میکند.
- فایل هسته
/app/Traits/Modules.php را اصلاح میکند تا از حذف خودکار ماژول جلوگیری شود.
- فایل هسته
/app/Traits/Plans.php را اصلاح میکند تا بررسی محدودیتهای پلن را دور بزند (bypass).
- ماژول را نصب و فعالسازی میکند.
نصب دستی (برای کاربران حرفهای)
اگر مایل به نصب دستی هستید:
- سورس ماژول را در مسیر
modules/JalaliDate قرار دهید.
- اصلاح هسته: فایل
app/Traits/Modules.php را باز کرده و عبارت if ($alias == 'core') { را پیدا کنید. آن را به شکل زیر تغییر دهید:
if ($alias == 'core' || $alias == 'jalali-date') {
این تغییر پس از بروزرسانی هسته Akaunting حذف میشود.
- نصب وابستگیها:
cd modules/JalaliDate && composer install
- فعالسازی:
php artisan module:install JalaliDate 1
php artisan optimize:clear
حذف بررسی محدودیت پلن
سیستم akaunting با بررسی API Key در سرور خود، محدودیت ایجاد شرکت دوم را اعمال میکند. همچنین در مواقع قطعی اینترنت ایران، به دلیل عدم موفقیت ارتباط با سرور akaunting و خطای بررسی API Key، سیستم اجازه افزودن فاکتور یا کاربر را نمیدهد. برای حل این مشکل ما بررسی API Key برای محدودیتهای پلن را Bypass کردیم.
اصلاح هسته: فایل app/Traits/Plans.php را باز کرده و عبارت $key = 'plans.limits'; را پیدا کنید. آن را به شکل زیر تغییر دهید:
$key = 'plans.limits';
$unlimit = new \stdClass();
$unlimit->action_status = true;
$unlimit->view_status = true;
$unlimit->message = "";
$data = new \stdClass();
$data->user = $unlimit;
$data->company = $unlimit;
$data->invoice = $unlimit;
return Cache::remember($key, Date::now()->addHour(), fn() => $data);
این تغییر پس از بروزرسانی هسته Akaunting حذف میشود.
قابلیتهای کلیدی
- انتخابگر دوگانه: جابجایی سریع بین تقویم شمسی و میلادی در تمامی فیلدها.
- تبدیل سمت کلاینت: بدون تغییر در دیتابیس اصلی سرور.
- قالب فاکتور فارسی: طراحی اختصاصی فاکتور با فونت زیبای وزیرمتن.
- سازگاری: تست شده روی اکانتینگ نسخه 3.3.0x.
لایسنس
MIT License.
评论