ERP اختصاصی برای یک برند عطر دستساز
سیستم کامل مدیریت شعبه، موجودی، برنامهی هفتگی فروشندهها و تحلیل فروش — ساختهشده روی هاست اشتراکی، بدون دسترسی SSH و بدون Composer.
- PHP خالص
- ساختار MVC اختصاصی
- بدون وابستگی خارجی
- نمودارهای SVG سمت سرور
- خروجی اکسل
- هشدار پیامکی
بازسازی وایرفریمی از همان پنل، با دادهی ساختگی. اسکرینشات واقعی منتشر نمیکنیم، چون فروش و موجودی واقعی این برند توش دیده میشه.
چالش
یه برند عطر دستساز با چند شعبه، فروشندههای شیفتی، انبار مواد اولیه و فروش حضوری و آنلاین — که همهی اینها با اکسل و هماهنگی تلفنی اداره میشد. محدودیت اصلی اما فنی بود: زیرساخت موجود، هاست اشتراکی بود؛ بدون دسترسی SSH و بدون امکان نصب Composer. یعنی هیچکدوم از فریمورکهای متعارف قابلاستفاده نبودن.
محدودیتها
چیزهایی که نمیشد عوضشون کرد
اینها موانع پروژه نبودن؛ بخشی از صورتمسئله بودن. تصمیمهای بعدی بدون اینها قابلفهم نیستن.
-
هاست اشتراکی، بدون دسترسی SSH
هیچ دستوری روی سرور قابل اجرا نبود. یعنی هر ابزاری که به مرحلهی نصب یا build روی سرور نیاز داشت، از همان ابتدا خارج از گزینهها بود.
-
بدون Composer
مدیریت وابستگیهای PHP در دسترس نبود و عملاً هیچکدام از فریمورکهای متعارف قابل استفاده نبودند — نه سخت، بلکه غیرقابل نصب.
-
هزینهی جاری باید ثابت میماند
راه ساده این بود که مشتری سرور اختصاصی بگیرد. اما آن یک هزینهی ماهانهی دائمی بود، نه یکبار. تصمیم گرفتیم محدودیت را بپذیریم تا هزینهی جاری کسبوکار بالا نرود.
-
سه نوع موجودی همزمان
مواد اولیه، نیمهساخته و محصول نهایی، هر کدام واحد شمارش و منطق خودشان را داشتند و باید در یک مدل دادهی واحد اما تفکیکشده جا میگرفتند.
رویکرد
تصمیم گرفتیم بهجای اینکه مشتری رو مجبور به تغییر زیرساخت و پرداخت هزینهی سرور اختصاصی کنیم، سیستم رو با محدودیت بسازیم: یه ساختار MVC اختصاصی با PHP خالص، بدون هیچ وابستگی خارجی. این تصمیم، ساخت رو سختتر کرد اما هزینهی جاری مشتری رو ثابت نگه داشت.
راهحل
مدیریت شعبه، برنامهریزی هفتگی فروشندهها، موجودی تفکیکشده به ازای هر شعبه با هشدار پیامکی، انتقال کالا بین شعبهها، ثبت سفارش آنلاین، مدیریت مواد اولیه، چکلیست فروشنده، تحلیل فروش با نمودارهای SVG و خروجی اکسل — همه تو یه سیستم واحد با داشبورد مجزا برای مدیر و فروشنده.
نتیجه
یه ERP کامل و اختصاصی که روی همون هاست اشتراکی قبلی اجرا میشه. برنامهریزی فروشندهها، موجودی و گزارش فروش از اکسل و هماهنگی تلفنی به یه سیستم واحد منتقل شد، بدون افزودن هزینهی زیرساخت.
چی یاد گرفتیم
محدودیت زیرساخت رو میشه با پول حل کرد یا با کار. اینجا گزینهی دوم رو انتخاب کردیم و باید صادق بود: ساخت رو سختتر کرد. ولی درسِ ماندگارش این بود که «محدودیت مشتری» همیشه مسئلهای برای حذفکردن نیست؛ گاهی خودش بخشی از صورتمسئلهست و پذیرفتنش، تصمیم درستتریه تا دور زدنش با هزینهی مشتری.