DeWijnCentrale
توسعه پلتفرم فروش و سفارشیسازی Laravel برای یک حوزه کسبوکار جدید

معرفی پروژه
DeWijnCentrale یک پلتفرم فروش آنلاین است که با استفاده از ساختار یک نرمافزار Laravel موجود ایجاد و برای یک حوزه کسبوکار کاملاً متفاوت سفارشیسازی و توسعه داده شد. منطق کسبوکار، مدل مشتریان، فاکتورها، مدیریت موجودی، قیمتگذاری، محاسبه سود، کاتالوگ و فرآیندهای عملیاتی متناسب با نیاز پروژه جدید تغییر و توسعه پیدا کرد.
برخلاف TommyTech که زیرساخت آن از قبل فعال بود، در این پروژه راهاندازی سرور، دیتابیس، ایمیل، فرآیند ثبتنام و تنظیمات اصلی نرمافزار بر عهده من بود. Frontend پروژه نیز فعال بود و مشتریان پس از تأیید حساب کاربری میتوانستند سفارش ثبت کنند.
چالش
کدبیس اولیه برای یک مدل کسبوکار متفاوت طراحی شده بود. چالش اصلی، استفاده مجدد از بخشهای قابل استفاده سیستم و همزمان تغییر و توسعه منطقهای لازم برای فروش، موجودی، قیمتگذاری و فرآیندهای عملیاتی جدید بود.
مسئولیتهای من
- سفارشیسازی و توسعه نرمافزار Laravel
- توسعه منطقهای کسبوکار
- راهاندازی و اعمال تغییرات MySQL
- راهاندازی VPS و سرور
- استقرار نرمافزار
- پیکربندی SMTP و ایمیل
- پیادهسازی فرآیند ثبتنام و تأیید مشتری
- توسعه منطق موجودی و قیمت
- توسعه منطق فاکتورها
- ایجاد سیستم کاتالوگ
- پشتیبانگیری زمانبندیشده با Cron Job
- پیادهسازی و نگهداری Frontend
مدیریت پنج سطح قیمت
برای هر کالا پنج قیمت متفاوت در نظر گرفته شد و یک بخش اختصاصی برای مدیریت لیست قیمتهای هر محصول ایجاد شد.
مدیریت موجودی و محاسبه سود
منطق اختصاصی برای محاسبه سود بر اساس قیمتهای متفاوت خرید ایجاد شد. برای مثال، اگر یک محموله شامل ۱٬۰۰۰ واحد با قیمت ۳ یورو و محموله بعدی شامل ۲٬۰۰۰ واحد با قیمت ۴ یورو باشد، سیستم میتواند میزان برداشت از هر سری خرید را در محاسبات لحاظ کرده و سود مرتبط را محاسبه کند.
این امکان به کسبوکار اجازه میدهد بر اساس قیمت واقعی خرید کار کند، نه یک هزینه ثابت و یکسان برای همه محصول.
مدیریت محصولات تستی
یک بخش جداگانه برای ثبت و مدیریت محصولاتی ایجاد شد که در فروشگاه برای تست یا ارائه نمونه به مشتری باز میشوند تا مصرف این محصولات از موجودی قابل فروش تفکیک شود.
نمایش موجودی و نیاز به شارژ انبار
بخش مستقلی برای مشاهده موجودی کالاها و شناسایی محصولاتی که نیاز به شارژ مجدد انبار دارند طراحی شد.
سیستم ساخت و اشتراکگذاری کاتالوگ
مدیر سیستم میتواند محصولات موردنظر را انتخاب کرده و یک کاتالوگ ایجاد کند. کاتالوگ امکان ارسال از طریق ایمیل دارد و همچنین برای آن لینک قابل اشتراکگذاری تولید میشود تا در پیامرسانها یا سایر کانالهای ارتباطی برای مشتری ارسال شود.
فرآیند تأیید مشتری
ثبتنام مشتری بهصورت خودکار مجوز سفارش ایجاد نمیکرد. پس از ثبتنام، مدیر باید حساب مشتری را بررسی و تأیید میکرد و تنها پس از تأیید، مشتری امکان ثبت سفارش داشت.
فاکتورها و فرآیند کسبوکار
با توجه به تفاوت مدل کسبوکار، ساختار مشتری و فاکتورها تغییر داده شد و سیستم از چهار مدل فاکتور پشتیبانی میکند؛ در حالی که ساختار اولیه دو مدل فاکتور داشت.
پشتیبانگیری خودکار
یک Cron Job برای تهیه نسخه پشتیبان از دیتابیس پیکربندی شد تا هفتهای یک بار خروجی Backup ایجاد شود.
راهاندازی زیرساخت
- راهاندازی VPS
- راهاندازی و پیکربندی Database
- استقرار نرمافزار
- پیکربندی Email/SMTP
- پیکربندی فرآیند ثبتنام
- تنظیمات سرور و نرمافزار
ارتقای Laravel
محیط Laravel و PHP به همان نسخهی مدرن پروژه مرتبط رسید: Laravel 12 و PHP 8.3. این ارتقا بخشی از آمادهسازی نرمافزار برای توسعهی ادامهدار بود.
Frontend
نرمافزار دارای یک Frontend فعال بود که به مشتریان ثبتنام و تأییدشده امکان مرور محصولات و ثبت سفارش را میداد. بازطراحی Frontend در فاز جداگانهای برای آینده برنامهریزی شده است.
محیط فنی
| Backend | Laravel / PHP |
| Database | MySQL |
| Frontend | Blade / jQuery / Bootstrap |
| Server | Ubuntu VPS / Apache |
| SMTP | |
| Automation | Cron Job |
نتایج
- تبدیل و سفارشیسازی یک نرمافزار Laravel موجود برای یک حوزه کسبوکار متفاوت
- پیادهسازی منطق محاسبه موجودی و سود بر اساس خریدهای با قیمت متفاوت
- ایجاد مدیریت پنج سطح قیمت
- ایجاد ابزار نمایش موجودی و نیاز به شارژ انبار
- ساخت سیستم تولید و اشتراکگذاری کاتالوگ
- پیادهسازی تأیید مشتری پیش از ثبت سفارش
- راهاندازی سرور، دیتابیس، ایمیل و زیرساخت اصلی پروژه
- ایجاد Backup هفتگی دیتابیس با Cron Job
- پشتیبانی از فرآیند سفارشگذاری مشتری در Frontend
جمعبندی نقش من
در این پروژه یک نرمافزار Laravel موجود را برای یک کسبوکار جدید بهطور گسترده سفارشی و توسعه دادم و علاوه بر منطقهای اختصاصی کسبوکار، مسئول راهاندازی زیرساخت، دیتابیس، ایمیل، موجودی، قیمتگذاری، کاتالوگ و فرآیند تأیید مشتری بودم.