Skip to content

abbasfisal/laravel-Ecommerce-Shop-Project

Repository files navigation

پروژه فروشگاهی با فریمورک لاراول 🛍️

Laravel Ecommerce Shop 🛍️


فهرست محتوا


معرفی

این پروژه توسط `لاراول 9` ایجاد شده و شما میتونید ازین پروژه رایگان استفاده کنید

ساختار دیتابیس

در این پروژه از ورژن phpMyAdmin 5.2.0 استفاده شده است

در عکس زیر 👇 می توانید ساختار دیتابیس به همراه روابط بین جداول را مشاهده نمایید

Database Diagram

shop shop-2


منوی داینامیک سایت

  • ساختار منوی های سایت به صورت داینامیک می باشد
  • ادمین وظیفه تعریف منو و ساب منو ها را بر عهده دارد
  • منوها پس از ایجاد در کش ذخیره میشوند تا دیگر نیازی به واکشی داده ها از جدول نباشد

پس از هر ویرایش یا ایجاد یک منو، کش به صورت خودکار از بین میرود و مجدد با داده های جدید جایگزین می شود


احراز هویت

کاربران میبایست جهت ثبت نام شماره موبایل خود را ثبت کنند شماره موبایل باید منحصر به فرد باشد که پس از ثبت شماره موبایل یک کد یکبار مصرف OTP برای کاربر ارسال میشود که این عملیات شبیه سازی شده و از پنل ارسال پیامک استفاده نشده است ارسال هر کدتایید 120 ثانیه طول می کشد و کاربر نمیتواند زودتر از این بازه زمانی مجدد درخواست ارسال مجدد کد را داشته باشد

تصاویر ثبت نام کاربر جدید 👨 👩 🖼️

دریافت موبایل کاربر image

ارسال کد OTP image

تعیین رمز عبور image


پنل حرفه ای ادمین

در این پروژه از پنل ادمین Appzia_v2.0 استفاده شده است

برای دانلود از این لینک ریپازیتوری استفاده کنید

پنل ادمین از بوت استرپ 5 استفاده می نماید

چند نمونه تصویر پنل ادمین

some admin panel images 🖼️

Untitled

image

image

ویژگی ها و قابلیت های پنل ادمین

1️⃣ داشبورد

  1. نمایش تعداد محصولات
  2. نمایش تعداد کاربران
  3. تعداد سفارشات جدید
  4. تعداد تمام سفارشات
  5. تعداد منو های اصلی سایت

تصویر نمای کلی پنل ادمین

image

2️⃣ کامنت 🗨️

  1. مشاهده جدید ترین کامنت ها
  2. امکان حذف کامنت
  3. امکان تایید یا عدم تایید کامنت جهت نمایش کامنت زیر محصول
  4. توانایی پاسخ به یک کامنت

3️⃣ سفارشات 📃

انواع حالت های سفارش

# عنوان شرح
1 new پس از انتخاب کالا و ثبت آدرس یک order جدید با این وضعیت ایجاد میشود
2 paid هزینه کالا با موفقیت پرداخت گردید
3 pending کالا توسط ادمین تحویل پست داده شده است
4 delivered کالا به دست مشتری رسید
5 fail پرداخت با خطا مواجه شد
5 canceled پردخت توسط کاربر کنسل پردید

مشاهده تمام سفارشات

  1. نمایش تمام سفارشات
  2. امکان مشاهده جزئیات سفارش نظیر نوع کالا و تعداد کالا به همراه نمایش اطلاعات آدرس و کد تخفیف و مقدار هزینه پرداخت شده و محاسبه مقدار هزینه تخفیف خورده

جستجوی یک سفارش

  • ادمین قادر است که یک سفارش را بر حسب Tracking Code یا Payment Code جستجو کند

Tracking Code پس از پرداخت موفقیت آمیز یک کد به کاربر جهت پیگیری نشان داده می شود Payment Code کد برگشتی از درگاه پرداخت مبنی بر پرداخت موفقیت آمیز

4️⃣ دسته بندی 🏷️

  1. ایجاد و ویرایش منوی اصلی سایت
  2. ایجاد و ویرایش ساب منو ها
  3. تمام موارد فوق به همراه اسلاگ می باشد

5️⃣ برند 🔖

  1. ایجاد و ویرایش برند محصولات
  2. آپلود عکس برند

6️⃣ رنگ 🎨

  1. ایجاد و ویرایش رنگ
  2. انتخاب کد رنگ به صورت هگزا

7️⃣ سایز 📏

  1. ایجاد و ویرایش سایز

8️⃣ شهر و استان 📍

  1. ایجاد و ویرایش شهر
  2. ایجاد و ویرایش استان

9️⃣ تخفیفات 🎫

  1. ایجاد و ویرایش تخفیف
  2. اختیاری بودن انتخاب بنر تخفیف
  3. نمایش تمام تخفیفات
  4. انتخاب درصد و زمان شروع و پایان تخفیف

لازم به ذکر است که چنانچه در سفاراشات یک مشتری محصولی باشد که دارای تخفیف روی محصول on_sale باشد، کد تخفیف بر روی این محصول محاسبه نمی شود اما بر روی سایر محصولات که تخفیف روی محصول on_sale ندارند، لحاظ می گردد

🔟 محصولات

ایجاد یک محصول جدید

  1. انتخاب عنوان و اسلاگ برای محصول
  2. انتخاب دسته بندی مادر و دسته بندی فرزند به صورت ایجکس
  3. افزودن ویژگی های محصول به صورت داینامیک
  4. انتخاب سایز و رنگ کالا (اختیاری)
  5. انتخاب برند یک محصول
  6. تخصیص ارزش محصول
  7. تخصیص هزینه محصول همراه با تخفیف در بازه های زمانی شروع و پایان
  8. فعال یا غیر فعال کردن یک محصول
  9. انتخاب تصویر(کاور) محصول
  10. انتخاب گالری محصولات
  11. تخصیص یادداشت خرید
  12. درج توضیحات کوتاه محصول
  13. درج شرح مفصل محصول در ویرایشگر TinyMce

نمایش تمام محصولات

  • نمایش تمام محصولات به همراه pagination

ویژگی ها و قابلیت های پنل کاربر

  1. افزودن کالا به لیست دلخواه
  2. ورود و خروج
  3. خرید کالا
  4. لیست کالاهای خریداری شده به همراه جزئیات
  5. درج نظرات برای محصولات

پکیج های استفاده شده

  1. laravel-toman

پکیج درگاه پرداخت واسط

  1. TinyMCE

ویرایشگر متن TinyMCE

هلپر فانکشن ها و فایل تنظیمات فروشگاه

helpers function

فانکشن هایی که مورد نیاز بود در پوشه app قرار گرفته که شامل فانکشن های کاربردی است

تنظیمات فروشگاه

تنظیمات مربوط به فروشگاه شامل موارد ذیل در _ config/shop.php _ قرار گرفته است که شامل موارد ذیل می باشد :
  1. تنظیمات مروبط به تعداد رکورد های نمایش داده شده در هر صفحه(pagination)
  2. تنظیمات مربوط به OTP
  3. مسیر های آپلود کاور محصول، گالری محصول، تصویر برند، بنر مربوط به تخفیفات
  4. متن پیغام های عملیات CRUD

لیست روابط بین مدل ها

لیست تصاویر روابط مدل ها 🖼️

Basket

Brand

Category

City

Color

Comment

Discount

Order

OrderItem

Product

ProductDetail

Product-Galleries

Size

State

User

Wishlist