Initial commit: FunZone accounting frontend with Sepidar-inspired RTL modules
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
79
README.md
Normal file
79
README.md
Normal file
@@ -0,0 +1,79 @@
|
||||
# سپیدار فانزون — سیستم حسابداری (FunZone Accounting)
|
||||
|
||||
یک سیستم حسابداری یکپارچه با الهام از نرمافزار **سپیدار**، طراحیشده برای مجموعه FunZone.
|
||||
رابط کاربری کاملاً فارسی و راستبهچپ (RTL) با تجربه کاربری مدرن و ساده.
|
||||
|
||||
## امکانات (ماژولها)
|
||||
|
||||
مطابق ساختار «سیستم»های سپیدار:
|
||||
|
||||
| ماژول | توضیح |
|
||||
|-------|-------|
|
||||
| **داشبورد** | شاخصهای کلیدی، نمودار روند فروش/خرید، هشدار موجودی، ترازنامه فشرده |
|
||||
| **حسابها (کدینگ)** | کدینگ استاندارد حسابها (دارایی، بدهی، سرمایه، درآمد، هزینه) با گروه و معین |
|
||||
| **اسناد حسابداری** | ثبت سند دوطرفه با کنترل تراز بدهکار/بستانکار و وضعیت پیشنویس/قطعی |
|
||||
| **مشتریان و فروش** | مدیریت مشتریان و صدور فاکتور فروش با محاسبه تخفیف و مالیات |
|
||||
| **تأمینکنندگان و خرید** | مدیریت تأمینکنندگان و ثبت فاکتور خرید |
|
||||
| **انبارداری** | تعریف کالا، قیمتگذاری، کنترل موجودی و تعدیل انبار |
|
||||
| **دریافت و پرداخت** | خزانهداری نقدی، بانکی و چک |
|
||||
| **حقوق و دستمزد** | مدیریت کارکنان و صدور فیش حقوقی |
|
||||
| **مالکان مجموعهها** | اطلاعات مالی واقعی صاحبان مجموعهها (از اپ مالکان): موجودی کیف پول، گردش حساب، برداشتها |
|
||||
| **کاربران** | اطلاعات مالی واقعی مشتریان (از اپ مشتریان): موجودی، پرداختها و بازپرداختها |
|
||||
| **گزارشها** | تراز آزمایشی، دفتر کل، صورت سود و زیان، ترازنامه |
|
||||
| **تنظیمات** | اطلاعات شرکت، سال مالی، نرخ مالیات، اتصال به سرور |
|
||||
|
||||
## اتصال به دادههای واقعی (بکاند فانزون)
|
||||
|
||||
دو بخش «مالکان مجموعهها» و «کاربران» دادهها را بهصورت زنده از بکاند `funzone-backend` میخوانند
|
||||
(از همان APIهای مدیریتی پنل ادمین). برای اتصال:
|
||||
|
||||
1. مطمئن شوید بکاند Django در حال اجراست (مثلاً روی `http://localhost:8000`).
|
||||
2. در برنامه به **تنظیمات ← اتصال به سرور فانزون** بروید.
|
||||
3. آدرس سرور (پیشفرض `http://localhost:8000/api`) و نام کاربری/رمز عبور **مدیر (admin)** را وارد و «اتصال» را بزنید.
|
||||
|
||||
بهصورت اختیاری میتوانید آدرس سرور را در فایل `.env` نیز تنظیم کنید:
|
||||
|
||||
```bash
|
||||
VITE_API_BASE_URL=http://localhost:8000/api
|
||||
```
|
||||
|
||||
> توکن دسترسی و آدرس سرور در مرورگر ذخیره میشوند. APIهای مورد استفاده فقط خواندنی هستند
|
||||
> (لیست مالکان/کاربران، تراکنشها، پرداختها و برداشتها) و نیاز به دسترسی مدیر دارند.
|
||||
|
||||
## پشته فناوری
|
||||
|
||||
- React 18 + TypeScript (strict)
|
||||
- Vite 5
|
||||
- Tailwind CSS 3
|
||||
- React Router 6
|
||||
- ذخیرهسازی محلی (localStorage) — بدون نیاز به بکاند
|
||||
|
||||
## اجرا
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
برنامه روی پورت **5176** اجرا میشود: <http://localhost:5176>
|
||||
|
||||
دستورهای دیگر:
|
||||
|
||||
```bash
|
||||
npm run build # بیلد تولیدی
|
||||
npm run preview # پیشنمایش بیلد روی پورت 5176
|
||||
npm run lint # بررسی نوعها (type-check)
|
||||
```
|
||||
|
||||
## معماری
|
||||
|
||||
- `src/types` — مدلهای دامنه با تایپ قوی
|
||||
- `src/data` — لایه ذخیرهسازی و دادههای نمونه
|
||||
- `src/store` — مدیریت وضعیت سراسری (Context) با CRUD تایپشده و ذخیره خودکار
|
||||
- `src/utils` — محاسبات حسابداری (تراز، دفتر کل، سود و زیان)، قالببندی اعداد و تاریخ شمسی
|
||||
- `src/components/ui` — کیت رابط کاربری قابل استفاده مجدد
|
||||
- `src/components/layout` — چیدمان، نوار کناری و نوار بالا
|
||||
- `src/components/business` — ماژول مشترک فروش/خرید
|
||||
- `src/pages` — صفحات هر ماژول
|
||||
|
||||
> دادهها در مرورگر ذخیره میشوند. برای بازگشت به دادههای نمونه از «تنظیمات ← بازنشانی» استفاده کنید.
|
||||
Reference in New Issue
Block a user