create road item webservice
This commit is contained in:
@@ -22,6 +22,7 @@ class ProfileController extends Controller
|
|||||||
$user = Auth::user();
|
$user = Auth::user();
|
||||||
|
|
||||||
return $this->successResponse([
|
return $this->successResponse([
|
||||||
|
'id' => $user->id,
|
||||||
'username' => $user->username,
|
'username' => $user->username,
|
||||||
'first_name' => $user->first_name,
|
'first_name' => $user->first_name,
|
||||||
'last_name' => $user->last_name,
|
'last_name' => $user->last_name,
|
||||||
|
|||||||
@@ -1,22 +1,23 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Controllers\V3\Dashboard\RoadItem;
|
namespace App\Http\Controllers\V3\WebServices;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Http\Requests\V3\RoadItem\WebService\CheckRequest;
|
use App\Http\Requests\V3\WebServices\RoadItem\IndexRequest;
|
||||||
use App\Http\Traits\ApiResponse;
|
use App\Http\Traits\ApiResponse;
|
||||||
use App\Models\RoadItemsProject;
|
use App\Models\RoadItemsProject;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
|
|
||||||
class WebServiceController extends Controller
|
class RoadItemController extends Controller
|
||||||
{
|
{
|
||||||
use ApiResponse;
|
use ApiResponse;
|
||||||
public function getRoadItem(CheckRequest $request): JsonResponse
|
public function index(IndexRequest $request): JsonResponse
|
||||||
{
|
{
|
||||||
$fromDate = $request->from_date;
|
$fromDate = $request->from_date;
|
||||||
$toDate = $request->to_date;
|
$toDate = $request->to_date;
|
||||||
$roadItems = RoadItemsProject::query()
|
$roadItems = RoadItemsProject::query()
|
||||||
->whereBetween('created_at', [$fromDate, $toDate])
|
->where('is_new', '=', 1)
|
||||||
|
->whereBetween('activity_date_time', [$fromDate, $toDate])
|
||||||
->get();
|
->get();
|
||||||
|
|
||||||
return $this->successResponse($roadItems);
|
return $this->successResponse($roadItems);
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\V3\WebServices;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Http\Requests\V3\WebServices\RoadMaintenanceStation\IndexRequest;
|
||||||
|
use App\Http\Traits\ApiResponse;
|
||||||
|
use App\Models\RahdariPoint;
|
||||||
|
use Illuminate\Http\JsonResponse;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
|
class RoadMaintenanceStationController extends Controller
|
||||||
|
{
|
||||||
|
use ApiResponse;
|
||||||
|
|
||||||
|
public function index(IndexRequest $request): JsonResponse
|
||||||
|
{
|
||||||
|
$province = $request->province;
|
||||||
|
$status = $request->status;
|
||||||
|
$type = $request->type;
|
||||||
|
|
||||||
|
$data = RahdariPoint::query()
|
||||||
|
->when($status, fn ($query, $status) => $query->where('status', $status))
|
||||||
|
->when($type, fn ($query, $type) => $query->where('type', $type))
|
||||||
|
->when($province, fn($query, $province) => $query->where('province_id', $province))
|
||||||
|
->get([
|
||||||
|
'id', 'province_name', 'city_name', 'name', 'status', 'type_fa', 'phone',
|
||||||
|
'code', 'lat', 'lng',
|
||||||
|
]);
|
||||||
|
|
||||||
|
return $this->successResponse($data);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,29 +1,27 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Requests\V3\RoadItem\WebService;
|
namespace App\Http\Requests\V3\WebServices\RoadItem;
|
||||||
|
|
||||||
use App\Models\User;
|
use Illuminate\Contracts\Validation\ValidationRule;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
|
||||||
class CheckRequest extends FormRequest
|
class IndexRequest extends FormRequest
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Determine if the user is authorized to make this request.
|
* Determine if the user is authorized to make this request.
|
||||||
*/
|
*/
|
||||||
public function authorize(): bool
|
public function authorize(): bool
|
||||||
{
|
{
|
||||||
$user = Auth::user();
|
return
|
||||||
return (
|
$this->username === 'service_user257' &&
|
||||||
$user->username === 'service_user257'&&
|
Hash::check('S3rv1ce@123', $this->password);
|
||||||
Hash::check('S3rv1ce@123', $user->password) );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
* @return array<string, ValidationRule|array|string>
|
||||||
*/
|
*/
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests\V3\WebServices\RoadMaintenanceStation;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\ValidationRule;
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
|
||||||
|
class IndexRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return
|
||||||
|
$this->username === 'service_user257' &&
|
||||||
|
Hash::check('S3rv1ce@123', $this->password);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, ValidationRule|array|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'province' => 'exists:provinces,id',
|
||||||
|
'status' => 'in:0,1',
|
||||||
|
'type' => 'in:1,2,3',
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -13,7 +13,7 @@ return new class extends Migration
|
|||||||
{
|
{
|
||||||
Schema::create('missionables', function (Blueprint $table) {
|
Schema::create('missionables', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->id();
|
||||||
$table->foreignId('mission_id')->constrained('missions')->noActionOnDelete();
|
$table->foreignId('mission_id')->constrained('missions')->cascadeOnDelete();
|
||||||
$table->morphs('missionable');
|
$table->morphs('missionable');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ use App\Http\Controllers\V3\Dashboard\Mission\RequestPortalController;
|
|||||||
use App\Http\Controllers\V3\Dashboard\Mission\TransportationUnitController;
|
use App\Http\Controllers\V3\Dashboard\Mission\TransportationUnitController;
|
||||||
use App\Http\Controllers\V3\Dashboard\ObservedItemController;
|
use App\Http\Controllers\V3\Dashboard\ObservedItemController;
|
||||||
use App\Http\Controllers\V3\Dashboard\OtpManagementController;
|
use App\Http\Controllers\V3\Dashboard\OtpManagementController;
|
||||||
use App\Http\Controllers\V3\Dashboard\RoadItem\WebServiceController;
|
|
||||||
use App\Http\Controllers\V3\Dashboard\RoadMaintenanceStationController;
|
use App\Http\Controllers\V3\Dashboard\RoadMaintenanceStationController;
|
||||||
use App\Http\Controllers\V3\Dashboard\RoadPatrol\ReportController;
|
use App\Http\Controllers\V3\Dashboard\RoadPatrol\ReportController;
|
||||||
use App\Http\Controllers\V3\Dashboard\SafetyAndPrivacy\OperatorController;
|
use App\Http\Controllers\V3\Dashboard\SafetyAndPrivacy\OperatorController;
|
||||||
@@ -28,6 +27,7 @@ use App\Http\Controllers\V3\NotificationController;
|
|||||||
use App\Http\Controllers\V3\PermissionManagementController;
|
use App\Http\Controllers\V3\PermissionManagementController;
|
||||||
use App\Http\Controllers\V3\ProfileController;
|
use App\Http\Controllers\V3\ProfileController;
|
||||||
use App\Http\Controllers\V3\RahdaranController;
|
use App\Http\Controllers\V3\RahdaranController;
|
||||||
|
use App\Http\Controllers\V3\WebServices\RoadItemController;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
|
||||||
Route::get('admin/permissions', function () {
|
Route::get('admin/permissions', function () {
|
||||||
@@ -160,7 +160,7 @@ Route::prefix('road_items')
|
|||||||
});
|
});
|
||||||
Route::prefix('webservice')
|
Route::prefix('webservice')
|
||||||
->name('webservice.')
|
->name('webservice.')
|
||||||
->controller(WebServiceController::class)
|
->controller(RoadItemController::class)
|
||||||
->group(function () {
|
->group(function () {
|
||||||
Route::get('/', 'getRoadItems')->name('getRoadItem');
|
Route::get('/', 'getRoadItems')->name('getRoadItem');
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user