1234567891011121314151617181920212223242526272829303132333435363738394041 |
- <?php
- /**
- * @Name
- * @Description
- * @Author 刘学玺
- * @Date 2024/9/20 11:29
- */
- namespace App\Http\Services\Frontend\Server\Service;
- use App\Enums\Common\Status;
- use App\Http\Services\Service;
- use App\Models\Coach\User;
- use App\Models\Service\Category;
- use App\Models\Service\Project;
- class ProjectService extends Service
- {
- public function getProjectPage(array $params): array
- {
- $category = Category::query()->find($params['category_id']);
- (empty($category) || $category->status === Status::DISABLE) && self::error();
- $user_id = 1;
- // 获取技师ID
- $coach_id = User::query()->where('user_id', $user_id)->value('id');
- $project_ids = $category->getProjectIds();
- $projectPage = Project::query()->whereIn('id', $project_ids)->where('status', Status::ENABLE)->orderByDesc('sort')->paginate($params['pageSize'], ['*'], 'page', $params['pageNo']);
- collect($projectPage->items())->each(fn($project) => $project->setAttribute('coachProjectStatus', $project->getCoachProjectStatus($coach_id)));
- return ['list' => $projectPage->items(), 'total' => $projectPage->total()];
- }
- public function updateProject(array $data): void
- {
- $user_id = 1;
- // 获取技师ID
- $coach_id = User::query()->where('user_id', $user_id)->value('id');
- $project = Project::query()->find($data['project_id']);
- $project->updateCoachProjectStatus($coach_id, $data['status']);
- }
- }
|