فروشگاه اینترنتی · دارو، مکمل، آرایشی و بهداشتی
داروبین: داروخانهی آنلاین با انبار تاریخمحور، سری ساخت و فروش بر اساس انقضا
فروشگاه آنلاین دارو، مکمل و محصولات آرایشی و بهداشتی روی .NET 10: انبار چندمحمولهای با سری ساخت و تاریخ انقضا، تخصیص FEFO، سه درگاه پرداخت، کمپین و فروش ویژهی زمانبندیشده، و گزارش حاشیهی سود.
- کارفرما
- داروبین
- حوزه
- دارو، مکمل، آرایشی و بهداشتی
- سال
- 1404
- وضعیت
- در حال بهرهبرداری
- تحلیل و کشف نیاز
- طراحی تجربه و رابط کاربری
- معماری نرمافزار
- توسعه فرانتاند
- توسعه بکاند و API
- طراحی پایگاه داده
- یکپارچهسازی با سیستمهای دیگر
- مهاجرت داده
- استقرار و DevOps
- سئوی فنی
- تست و تضمین کیفیت
- پشتیبانی و توسعه مستمر
نتیجه در عدد
- FEFO
- تخصیص بر اساس نزدیکترین انقضا
- 3
- درگاه پرداخت یکپارچه
موجودی بهازای هر محموله، نه هر کالا
چالش
فروش دارو و مکمل شبیه فروش کالای معمولی نیست، و همینجاست که یک فروشگاه آماده کم میآورد.
یک کالا، چند موجودی متفاوت. یک قلم دارو ممکن است در انبار از سه محمولهی مختلف باشد، با سه سری ساخت و سه تاریخ انقضای متفاوت. «موجودی: 40 عدد» عددی بیمعنی است اگر ندانید کدام 40 عدد و کدامشان دو ماه دیگر منقضی میشود. ترتیب فروش هم دلخواه نیست: باید نزدیکترین به انقضا اول برود، وگرنه موجودی روی دست میماند و باطله میشود.
چند انبار، چند تأمینکننده. همان کالا از دو تأمینکننده با قیمت خرید متفاوت میآید، و برای اینکه حاشیهی سود واقعی باشد باید بدانید هر فروش از کدام محموله رفته است.
فروشگاه قبلی روی وردپرس و ووکامرس بود. جایگزینیاش یعنی انتقال کاتالوگ و مشتری و سفارش، و مهمتر از آن حفظ مسیرهای سئو — نشانیهایی که رتبه دارند نباید بشکنند.
راهحل
یک پلتفرم اختصاصی بهشکل مونولیت ماژولار ساخته شد با سه بخش مستقل — فروشگاه، پنل مدیریت و API — و لایهبندی Domain، Application، Infrastructure و API.
قلب سیستم، انبار تاریخمحور است. موجودی بهازای هر محموله نگه داشته میشود، نه بهازای هر کالا: سری ساخت، تاریخ انقضا، تأمینکننده و انبار. تخصیص با قاعدهی FEFO انجام میشود — نزدیکترین به انقضا اول میرود — و دفتر گردش موجودی هر ورود، خروج، انتقال و اصلاح را ثبت میکند. سیستم برای کالای نزدیک انقضا و موجودی رو به اتمام هشدار میدهد، و رزرو سفارشهای پرداختنشده خودکار آزاد میشود.
قیمت و کمپین جدا از موجودی مدیریت میشوند: قیمت پایه و ویژه، تاریخچهی قیمت، ویرایش گروهی، کوپن، فروش ویژه و جشنواره — همه با زمانبندی فعالسازی، پس کمپین را از قبل میچینید و خودش سر ساعت شروع و تمام میشود.
سه درگاه پرداخت — زرینپال، بهپرداخت ملت و سامان کیش — با انتخاب درگاه، درگاه پیشفرض و تأیید امن تراکنش. کارهای سنگین روی RabbitMQ با MassTransit و کارهای زمانبندیشده با Quartz اجرا میشوند، پس ثبت سفارش منتظر پیامک و فاکتور و بهروزرسانی فید نمیماند.
مهاجرت از ووکامرس با حفظ کاتالوگ، مشتری، سفارش و ریدایرکت نشانیهای قدیمی انجام شد، با دادهی ساختاریافتهی محصول و مسیر راهنما.
قابلیتهای کلیدی
انبار تاریخمحور با سری ساخت
موجودی بهازای هر محموله: سری ساخت، تاریخ انقضا، تأمینکننده و انبار — نه یک عدد واحد برای کل کالا.
فروش بر اساس FEFO
نزدیکترین موجودی به انقضا اول تخصیص مییابد، پس کالا روی دست نمیماند و باطله نمیشود.
دفتر گردش موجودی و انتقال
هر ورود، خروج، انتقال و اصلاح ثبت میشود؛ همیشه میشود گفت یک قلم از کجا آمد و کجا رفت.
کمپین و فروش ویژهی زمانبندیشده
قیمت پایه و ویژه، تاریخچه، ویرایش گروهی، کوپن و جشنواره — با زمان فعالسازی و پایان، پس کمپین خودش سر ساعت شروع و تمام میشود.
سه درگاه پرداخت
زرینپال، بهپرداخت ملت و سامان کیش با انتخاب درگاه، درگاه پیشفرض و تأیید امن تراکنش.
عملیات انبار و بستهبندی
چاپ فاکتور، لیبل و لیست جمعآوری و بستهبندی، ثبت کد رهگیری، و پیامک خودکار رویدادهای سفارش.
گزارش حاشیهی سود
فروش، مالی، حاشیهی سود، انبار و مرجوعی با تاریخ شمسی — و چون فروش به محموله وصل است، سود واقعی است نه تخمینی.
اتصال به ترب و مهاجرت از ووکامرس
فید داینامیک محصول و موجودی برای ترب، و مهاجرت کامل با ریدایرکت نشانیهای قدیمی تا رتبهی گوگل حفظ شود.
معماری و فناوری
- سبک معماری
- مونولیت ماژولار
- الگوها
- معماری پاک (Clean)CQRSرویدادمحور
مونولیت ماژولار با تفکیک Domain، Application، Infrastructure و API: سادگی عملیات یک استقرار، با مرزهایی که اجازه میدهند بعداً بخشی جدا شود.
سه بخش مستقل: فروشگاه روی Next.js 16 و React 19، پنل مدیریت روی React با Vite، و API با قراردادهای نسخهبندیشده و مستندات OpenAPI.
داده: PostgreSQL منبع حقیقت است، با EF Core برای نوشتن و Dapper برای گزارشهایی که کوئریشان باید دقیق و سریع باشد — گزارش حاشیهی سود روی صدها هزار سطر با یک ORM عمومی، خودش یک باگ کارایی است. Redis کش و نشست را نگه میدارد.
کارهای پسزمینه: پیامک، فاکتور، فید ترب و پردازشهای سنگین روی RabbitMQ با MassTransit میروند و کارهای زمانبندیشده با Quartz اجرا میشوند. ثبت سفارش مشتری هیچوقت پشت یکی از اینها نمیماند.
استقرار کانتینری با Docker و nginx، لاگ ساختیافته با Serilog، و انتشار همراه با بکاپ و کنترل سلامت و امکان بازگشت — چون این فروشگاه هنگام بهروزرسانی هم در حال فروش است.
- فرانتاند
- Next.jsReact.jsTypeScriptTailwind CSS
فروشگاه — Next.js 16 و React 19، فارسی و راستبهچپ
- فرانتاند
- Vite
پنل مدیریت واکنشگرا با TanStack Query
- بکاند و API
- .NET 10ASP.NET CoreC#REST APIClean ArchitectureEntity Framework CoreDapper
EF Core برای نوشتن، Dapper برای گزارشهای سنگین
- پایگاه داده
- PostgreSQL
- کش
- Redis
- پیامرسانی و صف
- RabbitMQMassTransitQuartz.NET
پیامک، فاکتور، فید ترب و کارهای زمانبندیشده
- زیرساخت و استقرار
- DockernginxSerilog
استقرار کانتینری با بکاپ، کنترل سلامت و بازگشت نسخه
یکپارچهسازیها
- زرینپال، بهپرداخت ملت و سامان کیش
- ترب — فید داینامیک محصول و موجودی
- SMS.ir برای اعلان رویدادهای سفارش
- نقشهی نشان برای ثبت موقعیت آدرس مشتری
شرح تکمیلی
امکانات، به تفکیک
محصول و کاتالوگ
دستهبندی چندسطحی، برند و کشور تحت لیسانس، مشخصات شرطی بر اساس نوع کالا، محصول ساده و متغیر با ویژگیهای نامحدود، گالری تصاویر، SKU و GTIN، و وضعیت انتشار.
انبار و موجودی تاریخمحور
چند انبار و چند تأمینکننده، موجودی مستقل برای هر تنوع و هر محموله، سری ساخت و تاریخ انقضا، تفکیک موجودی فیزیکی و آنلاین، انتقال بین انبارها، دفتر گردش موجودی، اولویت فروش بر اساس FEFO، هشدار کمبود و نزدیک انقضا، و رزرو و آزادسازی خودکار موجودی سفارشها.
قیمتگذاری و کمپین
قیمت پایه و قیمت ویژه، تاریخچهی تغییر قیمت، ویرایش گروهی قیمت، کوپن تخفیف، فروش ویژه، جشنواره، و زمانبندی فعالسازی و پایان هر کمپین.
سفارش و عملیات
ثبت سفارش توسط مشتری یا اپراتور، مدیریت وضعیت سفارش و پرداخت و ارسال، چاپ فاکتور و لیبل و لیست جمعآوری و بستهبندی، ثبت کد رهگیری، پیامک رویدادهای سفارش، و فرایند مرجوعی با بررسی و بازپرداخت.
پرداخت
سه درگاه — زرینپال، بهپرداخت ملت و سامان کیش — با امکان انتخاب درگاه، تعیین درگاه پیشفرض، callback کنترلشده و تأیید امن تراکنش.
ارسال و رهگیری
مناطق و روشهای ارسال داینامیک، ثبت آدرس و موقعیت روی نقشهی نشان، کد رهگیری پستی و اعلان وضعیت سفارش.
مشتریان
ورود با رمز یکبارمصرف، پروفایل، چند آدرس، فهرست علاقهمندی، نظرات، تیکت پشتیبانی، درخواست مرجوعی، اعلان موجود شدن کالا، و باشگاه مشتریان.
سئو
Canonical، نقشهی سایت، robots، کنترل index و noindex، هدایت لینکهای قدیمی، و دادهی ساختاریافتهی محصول و مسیر راهنما.
گزارشهای مدیریتی
فروش، امور مالی، حاشیهی سود، انبار، مرجوعی، پشتیبانی و تحلیل مشتریان — همه با تاریخ شمسی. داشبورد واکنشگرا، نقشها و مجوزهای تفکیکشده، و ثبت تاریخچهی فعالیت مدیران و تغییرات حساس.
محتوا و یکپارچهسازی
مدیریت صفحات، بلاگ، بنر، منو و رسانه؛ اتصال داینامیک محصولات و موجودی به ترب؛ ارسال پیامک با SMS.ir؛ نقشهی نشان؛ و زیرساخت آماده برای اتصال به CRM و حسابداری.
خدمات و محصولات مرتبط
پروژهی مشابهی در ذهن دارید؟
یک تماس پانزده دقیقهای کافی است تا بگوییم چه چیزی لازم است، چقدر طول میکشد و از کجا شروع کنیم.
پروژههای مشابه
فروشگاه اینترنتی
زرشاپ: فروشگاه اختصاصی شوینده و بهداشتی، با کنترل موجودی چندلایه و گزارش شمسی
فروشگاه اینترنتی اختصاصی زرشاپ بابل روی ASP.NET Core و Next.js: رزرو موجودی سیدقیقهای، ارسال بر اساس وزن و منطقه با پنج شرکت حمل، گزارش فروش به تفکیک ماه شمسی با خروجی PDF، و مهاجرت بیش از پنج هزار سفارش تاریخی.
- Next.js
- React.js
- TypeScript
- Tailwind CSS
زرشاپ بابل · 1404
نرمافزار سفارشی · فروشگاه اینترنتی
روبوکد: آموزشگاه، آزمون آنلاین، فروشگاه و شبکهی نمایندگان روی یک سامانه
سکوی یکپارچهی مؤسسهی آموزشی روبوکد روی .NET 10: دورهی آنلاین و حضوری، آزمون با کارنامه، فروشگاه با قیمتگذاری عمده، صدور گواهی با استعلام QR، پنل نمایندگان و مدرسان با پورسانت، و ورود یکپارچه از شاد.
- .NET 10
- C#
- Entity Framework Core
- MediatR
مؤسسه آموزشی روبوکد · 1404

فروشگاه اینترنتی
ادوینو: فروشگاه تخصصی ادویه با جستوجو و فیلترهایی که میفروشند
فروشگاه آنلاین تخصصی ادویه — کاتالوگ با فیلتر کاربرد و مبدأ، سبد و پرداخت، حساب مشتری و پنل مدیریت — روی ASP.NET Core MVC و PostgreSQL.
- HTML5
- CSS3
- JavaScript (ES6+)
- Responsive Design
فروشگاه آنلاین ادوینو · 1404

