diff --git a/app/Http/Controllers/User/UserDashboardController.php b/app/Http/Controllers/User/UserDashboardController.php
new file mode 100644
index 0000000..41742f2
--- /dev/null
+++ b/app/Http/Controllers/User/UserDashboardController.php
@@ -0,0 +1,41 @@
+with('deals', $this->deals());
+ }
+
+ protected function deals()
+ {
+ return Deal::query()
+ ->where('active', true)
+ ->select([
+ 'id',
+ 'title',
+ 'description',
+ 'image',
+ 'active',
+ 'slug',
+ 'link',
+ 'deal_category_id',
+ 'user_id',
+ ])
+ ->with([
+ 'category:id,name',
+ 'broker' => function ($query) {
+ $query->select('id', 'name', 'email', 'role_type', 'role_id')
+ ->with('type');
+ },
+ ])
+ ->latest()
+ ->paginate();
+ }
+}
diff --git a/app/Models/Deal.php b/app/Models/Deal.php
index d4b666b..b10c0b6 100644
--- a/app/Models/Deal.php
+++ b/app/Models/Deal.php
@@ -7,9 +7,9 @@
class Deal extends Model
{
- public function User(): BelongsTo
+ public function broker(): BelongsTo
{
- return $this->belongsTo(User::class);
+ return $this->belongsTo(User::class, 'user_id');
}
public function category(): BelongsTo
diff --git a/resources/views/components/dashboard/listing-card.blade.php b/resources/views/components/dashboard/broker/listing-card.blade.php
similarity index 94%
rename from resources/views/components/dashboard/listing-card.blade.php
rename to resources/views/components/dashboard/broker/listing-card.blade.php
index 6594c9e..305ed5f 100644
--- a/resources/views/components/dashboard/listing-card.blade.php
+++ b/resources/views/components/dashboard/broker/listing-card.blade.php
@@ -27,7 +27,7 @@ class="text-xs underline text-accent-601 mt-1">
{{$category}}
-
+
My Listings
@forelse($deals as $deal)
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/resources/views/components/dashboard/user/broker-contact.blade.php b/resources/views/components/dashboard/user/broker-contact.blade.php
new file mode 100644
index 0000000..106d291
--- /dev/null
+++ b/resources/views/components/dashboard/user/broker-contact.blade.php
@@ -0,0 +1,10 @@
+@props(['broker'])
+
+
Broker Contact
+
+
{{$broker->name}}
+
{{$broker->email}}
+
{{$broker->role->phone}}
+
+
+
diff --git a/resources/views/components/dashboard/user/listing-card.blade.php b/resources/views/components/dashboard/user/listing-card.blade.php
new file mode 100644
index 0000000..00a815e
--- /dev/null
+++ b/resources/views/components/dashboard/user/listing-card.blade.php
@@ -0,0 +1,33 @@
+@props(['deal' => '', 'broker' => ''])
+
+
+
+
+ {{$deal->category->name}}
+
+
+
+
+
{{$deal->title}}
+
+
{{$deal->description}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ View Deal
+
+
+
+
+
diff --git a/resources/views/components/dashboard/user/listing.blade.php b/resources/views/components/dashboard/user/listing.blade.php
new file mode 100644
index 0000000..a2de9dd
--- /dev/null
+++ b/resources/views/components/dashboard/user/listing.blade.php
@@ -0,0 +1,9 @@
+@props(['deals' => []])
+
+ @forelse($deals as $deal)
+ @ds($deal)
+
+ @empty
+
No Deals found till now !
+ @endforelse
+
diff --git a/resources/views/components/dashboard/user/stat-badge.blade.php b/resources/views/components/dashboard/user/stat-badge.blade.php
new file mode 100644
index 0000000..c029c2f
--- /dev/null
+++ b/resources/views/components/dashboard/user/stat-badge.blade.php
@@ -0,0 +1,5 @@
+@props(['count' => 0])
+
+ {{$slot}}
+
{{$count}}
+
diff --git a/resources/views/components/ui/input.blade.php b/resources/views/components/ui/input.blade.php
index da32456..89e2f86 100644
--- a/resources/views/components/ui/input.blade.php
+++ b/resources/views/components/ui/input.blade.php
@@ -1,5 +1,5 @@
@props(['label' => '', 'name' => '', 'placeholder' => '', 'type' => 'text', 'description' => '', 'required' => false, 'value' => ''])
-
+
merge(['class' => 'flex flex-col space-y-2'])}}>
@if($label !== '')