147 lines
4.2 KiB
Markdown
147 lines
4.2 KiB
Markdown
# Payment Admin Panel Dashboard
|
|
|
|
یک داشبورد مدیریتی مدرن برای مدیریت سیستم پرداخت با رابط کاربری زیبا و کاربردی.
|
|
|
|
## ویژگیها
|
|
|
|
- 🔐 سیستم احراز هویت کامل (ورود و بازیابی رمز عبور)
|
|
- 📊 داشبورد با نمودارها و آمار
|
|
- 📍 مدیریت موقعیتهای جغرافیایی (کشور، استان، شهر)
|
|
- 🏢 مدیریت صادرکنندگان
|
|
- 🌙 پشتیبانی از حالت تاریک
|
|
- 📱 طراحی واکنشگرا (Responsive)
|
|
|
|
## تکنولوژیهای استفاده شده
|
|
|
|
- **React 18** - کتابخانه UI
|
|
- **Vite** - ابزار ساخت و توسعه
|
|
- **React Router DOM** - مسیریابی
|
|
- **Zustand** - مدیریت state
|
|
- **Axios** - درخواستهای HTTP
|
|
- **Tailwind CSS** - استایلدهی
|
|
- **Recharts** - نمودارها
|
|
- **Lucide React** - آیکونها
|
|
- **React Toastify** - اعلانها
|
|
|
|
## نصب و راهاندازی
|
|
|
|
### پیشنیازها
|
|
|
|
- Node.js (نسخه 16 یا بالاتر)
|
|
- npm یا yarn
|
|
|
|
### مراحل نصب
|
|
|
|
1. کلون کردن پروژه:
|
|
```bash
|
|
git clone <repository-url>
|
|
cd dashboard-issuer
|
|
```
|
|
|
|
2. نصب وابستگیها:
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
3. اجرای پروژه در حالت توسعه:
|
|
```bash
|
|
npm run dev
|
|
```
|
|
|
|
4. ساخت نسخه production:
|
|
```bash
|
|
npm run build
|
|
```
|
|
|
|
5. پیشنمایش نسخه production:
|
|
```bash
|
|
npm run preview
|
|
```
|
|
|
|
## دستورات موجود
|
|
|
|
- `npm run dev` - اجرای سرور توسعه
|
|
- `npm run build` - ساخت نسخه production
|
|
- `npm run preview` - پیشنمایش نسخه production
|
|
- `npm run lint` - بررسی کد با ESLint
|
|
|
|
## اطلاعات ورود تست
|
|
|
|
برای تست سیستم میتوانید از این اطلاعات استفاده کنید:
|
|
- **ایمیل**: admin@example.com
|
|
- **رمز عبور**: password
|
|
|
|
## ساختار پروژه
|
|
|
|
```
|
|
src/
|
|
├── components/
|
|
│ ├── Navbar.jsx
|
|
│ ├── Sidebar.jsx
|
|
│ └── DataTable.jsx
|
|
├── pages/
|
|
│ ├── Dashboard.jsx
|
|
│ ├── Login.jsx
|
|
│ ├── ForgotPassword.jsx
|
|
│ ├── Location.jsx
|
|
│ └── Issuer.jsx
|
|
├── context/
|
|
│ └── AuthContext.jsx
|
|
├── store/
|
|
│ └── authStore.js
|
|
├── services/
|
|
│ ├── api.js
|
|
│ ├── apiClient.js
|
|
│ ├── authAPI.js
|
|
│ ├── issuerAPI.js
|
|
│ ├── countryAPI.js
|
|
│ ├── provinceAPI.js
|
|
│ ├── cityAPI.js
|
|
│ ├── currencyAPI.js
|
|
│ ├── permissionsAPI.js
|
|
│ ├── generalAPI.js
|
|
│ └── paymentsAPI.js
|
|
├── utils/
|
|
│ └── errorHandler.js
|
|
├── App.jsx
|
|
├── main.jsx
|
|
├── index.css
|
|
└── layout.css
|
|
```
|
|
|
|
## صفحات و مسیرها
|
|
|
|
- `/` - داشبورد اصلی
|
|
- `/login` - صفحه ورود
|
|
- `/forgot-password` - بازیابی رمز عبور
|
|
- `/location` - مدیریت موقعیتها (کشور، استان، شهر)
|
|
- `/issuer` - مدیریت صادرکنندگان
|
|
|
|
## API Services
|
|
|
|
پروژه از سرویسهای API زیر استفاده میکند:
|
|
|
|
- **authAPI.js** - احراز هویت و مدیریت کاربر
|
|
- **issuerAPI.js** - مدیریت صادرکنندگان
|
|
- **countryAPI.js** - مدیریت کشورها
|
|
- **provinceAPI.js** - مدیریت استانها
|
|
- **cityAPI.js** - مدیریت شهرها
|
|
- **currencyAPI.js** - مدیریت ارزها
|
|
- **permissionsAPI.js** - مدیریت دسترسیها
|
|
- **generalAPI.js** - سرویسهای عمومی
|
|
- **paymentsAPI.js** - مدیریت پرداختها و آمار داشبورد
|
|
- **apiClient.js** - کلاینت اصلی API
|
|
- **api.js** - تنظیمات پایه API
|
|
|
|
## توسعه
|
|
|
|
پروژه از ESLint برای بررسی کیفیت کد استفاده میکند. قبل از commit کردن تغییرات، حتماً کد را بررسی کنید:
|
|
|
|
```bash
|
|
npm run lint
|
|
```
|
|
|
|
## مجوز
|
|
|
|
این پروژه خصوصی است.
|