شرح پروژه
به یک سامانه تحت وب نیاز داریم که بتواند فرآیندهای سازمانی مبتنی بر فرم را مدیریت کند. این سامانه باید امکان تعریف فرمهای پویا (Dynamic Forms)، ارجاع فرمها بین کاربران بر اساس گردشکار (Workflow)، و نمایش داشبورد مدیریتی طراحش شده در بستر power bi report server را داشته باشد.(امبد کردن داشبورد)
ویژگیهای مورد انتظار
🧩 بخش فرمها
امکان تعریف و ساخت فرمها توسط ادمین با فیلدهای مختلف: متن، عدد، تاریخ شمسی، منو کشویی، چکباکس، ضمیمه فایل، آپلود اکسل و…
امکان ویرایش فرمهای تعریفشده توسط ادمین (افزودن، حذف یا تغییر فیلدها)
قابلیت تعیین سطح دسترسی برای مشاهده/ویرایش هر فرم
نمایش تاریخچهی تغییرات هر فرم و عملیات انجامشده (Log History)
کاربران بتوانند دادههایی که قبلاً در یک فرم وارد کردهاند را ببینند، تغییر دهند و بهصورت نسخه جدید (New Version) ثبت کنند (versioning)
امکان تعریف ارتباط بین فرمها (بهعنوان مثال: فرم اصلی و ضمیمههای مرتبط)
🔁 گردشکار (Workflow)
تعریف مراحل تایید/ارجاع هر فرم (مثلاً کارشناس ← مدیر ← نهایی)
کارتابل کاربران:
فرمهای دریافتی
فرمهای ارجاع دادهشده
فرمهای تکمیلشده
اعلانها (Notification) در سیستم یا از طریق ایمیل یا اس ام اس
🧠 هوش مصنوعی (قابل توسعه در آینده)
معماری ماژولار و آماده برای افزودن افزونههای هوش مصنوعی (Plugin-based)
مثل پیشنهاد خودکار دادهها، خلاصهسازی، تحلیل ورودیها و...
ترجیحاً API مستقل برای اتصال به مدلهای AI در آینده
📊 داشبورد مدیریتی
داشبورد مدیریتی با آمار و وضعیت گردشکار
امکان نمایش گزارشهای Power BI Report Server (Embedded Reports)
👤 مدیریت کاربران و سطوح دسترسی
تعریف نقشها (ادمین، مدیر، کاربر عادی و...)
تعیین سطح دسترسی بر اساس نقش (Role-based Access Control)
ورود با نام کاربری و رمز عبور، و احراز هویت امن (JWT یا OAuth2)
💾 داده و فایل
آپلود فایل و پیوست به فرمها
امکان بارگذاری فایل Excel با فرمت مشخص و ذخیره در دیتابیس*** مهم
نگهداری نسخههای مختلف هر فرم با امکان مقایسه تغییرات
🎨 رابط کاربری
طراحی مدرن، واکنشگرا (Responsive) و کاربرپسند
پشتیبانی از تقویم شمسی (Jalali)
پشتیبانی از فیلدهای داینامیک و اعتبارسنجی در لحظه
🔧 فناوریهای پیشنهادی
گزینه ۱ (ترجیحی برای سازمانها):
Backend: ASP.NET Core
Frontend: React
Database: SQL Server
Authentication: JWT
گزینه ۲ (جایگزین متنباز):
Backend: Node.js (NestJS)
Frontend: Vue.js
Database: PostgreSQL
📦 خروجی مورد انتظار (Deliverables)
سورسکد کامل و مستند
مستند راهاندازی و نصب
طراحی دیتابیس و APIها
داکیومنت گردشکارها و فرمهای پایه
راهنمای افزودن افزونههای هوش مصنوعی در آینده
🧑💻 مهارتهای مورد نیاز فریلنسر
تسلط کامل به ASP.NET Core یا Node.js
تسلط به React یا Vue برای فرمسازی داینامیک
تجربه کار با SQL Server یا PostgreSQL
تجربه طراحی گردشکار و State Machine
تجربه با Power BI Embedded
آشنایی با معماری ماژولار (Plugin Architecture)
تسلط به امنیت، احراز هویت و Role-based Access
طراحی UI مدرن و واکنشگرا








