|
@@ -14,7 +14,7 @@ class ServicePackageService
|
|
|
public function getAll(): Collection
|
|
public function getAll(): Collection
|
|
|
{
|
|
{
|
|
|
return ServicePackage::query()
|
|
return ServicePackage::query()
|
|
|
- ->with(['items.schedule'])
|
|
|
|
|
|
|
+ ->with(['items.schedule', 'provider.user'])
|
|
|
->orderBy('created_at', 'desc')
|
|
->orderBy('created_at', 'desc')
|
|
|
->get();
|
|
->get();
|
|
|
}
|
|
}
|
|
@@ -22,13 +22,15 @@ class ServicePackageService
|
|
|
public function findById(int $id): ?ServicePackage
|
|
public function findById(int $id): ?ServicePackage
|
|
|
{
|
|
{
|
|
|
return ServicePackage::query()
|
|
return ServicePackage::query()
|
|
|
- ->with(['items.schedule'])
|
|
|
|
|
|
|
+ ->with(['items.schedule', 'provider.user'])
|
|
|
->find($id);
|
|
->find($id);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public function create(array $data): ServicePackage
|
|
public function create(array $data): ServicePackage
|
|
|
{
|
|
{
|
|
|
- return ServicePackage::create($data);
|
|
|
|
|
|
|
+ $model = ServicePackage::create($data);
|
|
|
|
|
+
|
|
|
|
|
+ return $model->fresh(['provider.user']);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public function update(int $id, array $data): ?ServicePackage
|
|
public function update(int $id, array $data): ?ServicePackage
|
|
@@ -65,7 +67,7 @@ class ServicePackageService
|
|
|
|
|
|
|
|
$model->update($data);
|
|
$model->update($data);
|
|
|
|
|
|
|
|
- return $model->fresh();
|
|
|
|
|
|
|
+ return $model->fresh(['items.schedule', 'provider.user']);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public function delete(int $id): bool
|
|
public function delete(int $id): bool
|
|
@@ -84,7 +86,7 @@ class ServicePackageService
|
|
|
public function getByUserId(int $userId): Collection
|
|
public function getByUserId(int $userId): Collection
|
|
|
{
|
|
{
|
|
|
return ServicePackage::query()
|
|
return ServicePackage::query()
|
|
|
- ->with(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address'])
|
|
|
|
|
|
|
+ ->with(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address', 'provider.user'])
|
|
|
->whereHas('client', fn ($query) => $query->where('user_id', $userId))
|
|
->whereHas('client', fn ($query) => $query->where('user_id', $userId))
|
|
|
->orderBy('created_at', 'desc')
|
|
->orderBy('created_at', 'desc')
|
|
|
->get();
|
|
->get();
|
|
@@ -93,7 +95,7 @@ class ServicePackageService
|
|
|
public function getByProviderUserId(int $userId): Collection
|
|
public function getByProviderUserId(int $userId): Collection
|
|
|
{
|
|
{
|
|
|
return ServicePackage::query()
|
|
return ServicePackage::query()
|
|
|
- ->with(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address'])
|
|
|
|
|
|
|
+ ->with(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address', 'provider.user'])
|
|
|
->whereHas('provider', fn ($query) => $query->where('user_id', $userId))
|
|
->whereHas('provider', fn ($query) => $query->where('user_id', $userId))
|
|
|
->orderBy('created_at', 'desc')
|
|
->orderBy('created_at', 'desc')
|
|
|
->get();
|
|
->get();
|
|
@@ -124,7 +126,7 @@ class ServicePackageService
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
- return $package->fresh(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address']);
|
|
|
|
|
|
|
+ return $package->fresh(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address', 'provider.user']);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public function refuseByProvider(int $id, int $userId): ServicePackage
|
|
public function refuseByProvider(int $id, int $userId): ServicePackage
|
|
@@ -152,7 +154,7 @@ class ServicePackageService
|
|
|
$package->update(['status' => 'cancelled']);
|
|
$package->update(['status' => 'cancelled']);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
- return $package->fresh(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address']);
|
|
|
|
|
|
|
+ return $package->fresh(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address', 'provider.user']);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//
|
|
//
|
|
@@ -193,7 +195,7 @@ class ServicePackageService
|
|
|
]);
|
|
]);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- return $servicePackage->fresh(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address']);
|
|
|
|
|
|
|
+ return $servicePackage->fresh(['items.schedule.client.user', 'items.schedule.provider.user', 'items.schedule.address', 'provider.user']);
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|