|
- <?php
-
- namespace App\Http\Controllers\Web\Contract;
-
- use App\Codes\UserRole;
- use App\Http\Controllers\Web\IParam;
- use App\Http\Controllers\Web\WebController;
- use App\Repositories\ContractRepository;
- use Illuminate\Http\JsonResponse;
- use Illuminate\Http\Request;
-
- class ContractsController extends WebController
- {
- public function name(): string
- {
- return "契約一覧取得";
- }
-
- public function description(): string
- {
- return "契約一覧を取得する";
- }
-
- public function __construct(
- protected ContractsParam $param,
- private ContractRepository $repository
- ) {
- parent::__construct();
- $this->roleAllow(UserRole::SUPER_ADMIN);
- }
-
- protected function getParam(): IParam
- {
- return $this->param;
- }
-
- protected function run(Request $request): JsonResponse
- {
- $param = $this->param;
-
- $condition = [
- ...$param->toArray(),
- ];
-
- $list = $this->repository->get($condition);
-
-
- return $this->successResponse([
- 'records' => $list
- ]);
- }
- }
|