این پروژه یک وباپلیکیشن مدرن برای مدیریت و جستجوی سریع اطلاعات پرسنل شرکت فراپخت است. برنامه با رویکرد Progressive Web App (PWA) طراحی شده تا تجربهای شبیه به اپلیکیشنهای موبایل را ارائه دهد و دسترسی به اطلاعات پرسنلی و شمارههای ویپ را در هر زمان و مکان فراهم کند.
لینک پروژه آنلاین: https://fa-phone.vercel.app/
این پروژه با استفاده از جدیدترین تکنولوژیهای وب توسعه یافته است:
ساختار فایلها و پوشهها به صورت منطقی و قابل مقیاسگذاری سازماندهی شده است:
.
├── app/ # صفحات و روتهای اصلی برنامه (App Router)
│ ├── page.tsx # صفحه اصلی و رابط کاربری جستجو
│ └── globals.css # فایل اصلی استایلهای Tailwind
├── components/ # کامپوننتهای قابل استفاده مجدد UI
│ ├── ui/ # کامپوننتهای Shadcn/UI
│ ├── admin-panel.tsx # پنل مدیریت
│ ├── excel-import-export.tsx # مدیریت فایلهای اکسل
│ └── ...
├── lib/ # منطق اصلی و توابع کمکی
│ ├── auth.ts # مدیریت احراز هویت
│ ├── database.ts # ارتباط با پایگاه داده PostgreSQL
│ ├── personnel-data.ts # توابع CRUD برای پرسنل
│ ├── call-manager.ts # مدیریت تماسهای ویپ
│ └── utils.ts # توابع عمومی (مانند تبدیل اعداد)
├── public/ # فایلهای استاتیک (تصاویر، آیکونها)
├── setup-database.js # اسکریپت راهاندازی و پر کردن اولیه دیتابیس
├── .env.local # فایل تنظیمات محیطی (credential دیتابیس)
├── next.config.mjs # فایل تنظیمات Next.js
└── package.json # لیست وابستگیها و اسکریپتها
برای اجرای این پروژه، شما باید Node.js و PostgreSQL را روی سیستم خود نصب داشته باشید.
.env.local
را در ریشه پروژه ایجاد کرده و اطلاعات اتصال به دیتابیس را به صورت زیر در آن وارد کنید:DATABASE_URL="postgresql://[USER]:[PASSWORD]@[HOST]:[PORT]/[DATABASE_NAME]"
setup-database.js
را برای ایجاد جداول و ورود دادههای اولیه اجرا کنید:node setup-database.js
پس از اتمام موفقیتآمیز، پایگاه داده شما با دادههای پیشفرض پر میشود.
pnpm
در پروژه، ابتدا این پکیج منیجر را نصب کنید:npm install -g pnpm
pnpm install
پروژه را در حالت توسعه (Development) اجرا کنید:
pnpm dev
برنامه در آدرس http://localhost:3000
قابل دسترس خواهد بود.
برای دسترسی به قابلیتهای مدیریت و وارد کردن/صادر کردن دادهها، از حساب کاربری پیشفرض استفاده کنید:
admin
admin
نکته مهم: برای امنیت بیشتر، پس از اولین ورود، رمز عبور پیشفرض را از طریق بخش تنظیمات در پنل مدیریت تغییر دهید.
برنامه به صورت هوشمند تلاش میکند تا با استفاده از پروتکلهای مختلف، تماس را با اپلیکیشن ویپ شما (مانند PortSIP) برقرار کند. کافی است روی شماره ویپ پرسنل مورد نظر کلیک کنید.