create all azmayesh resources and its dependencies

This commit is contained in:
2024-10-22 16:40:36 +03:30
parent 9aa3cf320f
commit c2ceb3d343
20 changed files with 548 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
<?php
namespace App\Http\Controllers\V3\Azmayesh;
use App\Facades\DataTable\DataTableFacade;
use App\Http\Controllers\Controller;
use App\Http\Traits\ApiResponse;
use App\Models\Azmayesh;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class AzmayeshController extends Controller
{
use ApiResponse;
/**
* Display a listing of the resource.
*/
public function index(Request $request): JsonResponse
{
$columns = array('id', 'name');
$allowedFilters = $columns;
$allowedSortings = $columns;
$query = Azmayesh::query();
$data = DataTableFacade::run(
$query,
$request,
allowedFilters: $allowedFilters,
allowedSortings: $allowedSortings);
return $this->successResponse($data);
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*/
public function show(Azmayesh $azmayesh): JsonResponse
{
return $this->successResponse($azmayesh->load('azmayeshSamples'));
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, Azmayesh $azmayesh)
{
//
}
/**
* Remove the specified resource from storage.
*/
public function destroy(Azmayesh $azmayesh): JsonResponse
{
$azmayesh->delete();
return $this->successResponse();
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace App\Http\Controllers\V3\Azmayesh;
use App\Http\Controllers\Controller;
use App\Http\Traits\ApiResponse;
use App\Models\AzmayeshType;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class AzmayeshTypeController extends Controller
{
use ApiResponse;
public function index(): JsonResponse
{
$allTypes = AzmayeshType::all();
return $this->successResponse($allTypes);
}
public function fields(AzmayeshType $azmayeshType): JsonResponse
{
$fields = $azmayeshType->azmayeshFields();
return $this->successResponse($fields);
}
}