Compare commits
1 Commits
eeff2861e5
...
feature/Ma
| Author | SHA1 | Date | |
|---|---|---|---|
| 72462e8016 |
@@ -23,7 +23,8 @@ class CMMSMachinesController extends Controller
|
||||
$request,
|
||||
allowedFilters: ['*'],
|
||||
allowedSortings: ['*'],
|
||||
allowedSelects: ['machine_code', 'id', 'plak_number', 'car_name', 'car_type', 'status'],
|
||||
allowedSelects: ['machine_code', 'id', 'plak_number', 'car_name', 'car_type', 'status',
|
||||
'province_id', 'city_id', 'station_id', 'status','driver_name'],
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
19
app/Http/Controllers/V3/CityController.php
Normal file
19
app/Http/Controllers/V3/CityController.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\V3;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Traits\ApiResponse;
|
||||
use App\Models\City;
|
||||
use App\Models\Province;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class CityController extends Controller
|
||||
{
|
||||
use ApiResponse;
|
||||
|
||||
public function list(Request $request)
|
||||
{
|
||||
return $this->successResponse(City::query()->where('cities.province_id', $request->query('province_id'))->get(['id', 'name_fa']));
|
||||
}
|
||||
}
|
||||
@@ -72,6 +72,18 @@ class ReportMachineController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws Exception
|
||||
* @throws \PhpOffice\PhpSpreadsheet\Writer\Exception
|
||||
*/
|
||||
public function countryMachineTypesActivityExcel(Request $request, ReportMachineService $reportMachineService): BinaryFileResponse
|
||||
{
|
||||
$data = $reportMachineService->countryMachineTypesActivity($request);
|
||||
$name = 'گزارش ماشین آلات'.verta()->now()->format('Y-m-d H-i').'.xlsx';
|
||||
|
||||
return Excel::download(new machineReport($data), $name);
|
||||
}
|
||||
|
||||
public function provinceMachineTypesActivity(Request $request, ReportMachineService $reportMachineService): JsonResponse
|
||||
{
|
||||
return $this->successResponse([
|
||||
@@ -85,4 +97,16 @@ class ReportMachineController extends Controller
|
||||
// ->get(['id', 'name_fa'])
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws Exception
|
||||
* @throws \PhpOffice\PhpSpreadsheet\Writer\Exception
|
||||
*/
|
||||
public function provinceMachineTypesActivityExcel(Request $request, ReportMachineService $reportMachineService): BinaryFileResponse
|
||||
{
|
||||
$data = $reportMachineService->provinceMachineTypesActivity($request);
|
||||
$name = 'گزارش ماشین آلات'.verta()->now()->format('Y-m-d H-i').'.xlsx';
|
||||
|
||||
return Excel::download(new machineReport($data), $name);
|
||||
}
|
||||
}
|
||||
|
||||
19
app/Http/Controllers/V3/ProvinceController.php
Normal file
19
app/Http/Controllers/V3/ProvinceController.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\V3;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Traits\ApiResponse;
|
||||
use App\Models\City;
|
||||
use App\Models\Province;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ProvinceController extends Controller
|
||||
{
|
||||
use ApiResponse;
|
||||
|
||||
public function list()
|
||||
{
|
||||
return $this->successResponse(Province::all(['id', 'name_fa']));
|
||||
}
|
||||
}
|
||||
@@ -14,6 +14,7 @@ class City extends Model
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $guarded = ['id'];
|
||||
protected $hidden = [
|
||||
'name_en',
|
||||
'feature_id',
|
||||
|
||||
@@ -13,6 +13,7 @@ class Province extends Model
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $guarded = ['id'];
|
||||
protected $hidden = [
|
||||
'feature_id',
|
||||
//'center_lat',
|
||||
|
||||
@@ -20,7 +20,7 @@ class ReportMachineService
|
||||
m.machine_code,
|
||||
cm.car_name,
|
||||
COUNT(*) AS missions,
|
||||
SUM(m.end_km - m.km) AS func,
|
||||
SUM(m.end_km - m.km) AS func
|
||||
FROM missions m
|
||||
JOIN cmms_machines cm ON cm.id = m.machine_id
|
||||
WHERE m.state_id = 4 AND m.start_time >= :from AND m.finish_time <= :to
|
||||
@@ -59,7 +59,7 @@ class ReportMachineService
|
||||
$sql = "SELECT
|
||||
cm.car_type,
|
||||
COUNT(*) AS missions,
|
||||
SUM(m.end_km - m.km) AS func,
|
||||
SUM(m.end_km - m.km) AS func
|
||||
FROM missions m
|
||||
JOIN cmms_machines cm ON cm.id = m.machine_id
|
||||
WHERE m.state_id = 4 AND m.start_time >= :from AND m.finish_time <= :to
|
||||
@@ -80,7 +80,7 @@ class ReportMachineService
|
||||
$sql = "SELECT
|
||||
cm.car_type,
|
||||
COUNT(*) AS missions,
|
||||
SUM(m.end_km - m.km) AS func,
|
||||
SUM(m.end_km - m.km) AS func
|
||||
FROM missions m
|
||||
JOIN cmms_machines cm ON cm.id = m.machine_id
|
||||
WHERE m.state_id = 4 AND m.start_time >= :from AND m.finish_time <= :to AND province_id = :province_id
|
||||
@@ -102,7 +102,7 @@ class ReportMachineService
|
||||
m.driver_id,
|
||||
m.driver_name,
|
||||
COUNT(*) AS missions,
|
||||
SUM(m.end_km - m.km) AS func,
|
||||
SUM(m.end_km - m.km) AS func
|
||||
FROM missions m
|
||||
WHERE m.state_id = 4 AND m.start_time >= :from AND m.finish_time <= :to
|
||||
GROUP BY m.driver_id;";
|
||||
@@ -123,7 +123,7 @@ class ReportMachineService
|
||||
m.driver_id,
|
||||
m.driver_name,
|
||||
COUNT(*) AS missions,
|
||||
SUM(m.end_km - m.km) AS func,
|
||||
SUM(m.end_km - m.km) AS func
|
||||
FROM missions m
|
||||
WHERE m.state_id = 4 AND m.start_time >= :from AND m.finish_time <= :to AND province_id = :province_id
|
||||
GROUP BY m.driver_id;";
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
use App\Http\Controllers\V3\Auth\LogoutController;
|
||||
use App\Http\Controllers\V3\CityController;
|
||||
use App\Http\Controllers\V3\CMMSMachinesController;
|
||||
use App\Http\Controllers\V3\DamageManagementController;
|
||||
use App\Http\Controllers\V3\Dashboard\Accident\AccidentReceiptController;
|
||||
@@ -38,6 +39,7 @@ use App\Http\Controllers\V3\LogListManagementController;
|
||||
use App\Http\Controllers\V3\NotificationController;
|
||||
use App\Http\Controllers\V3\PermissionManagementController;
|
||||
use App\Http\Controllers\V3\ProfileController;
|
||||
use App\Http\Controllers\V3\ProvinceController;
|
||||
use App\Http\Controllers\V3\RahdaranController;
|
||||
use App\Http\Controllers\V3\WebServices\RoadItemController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
@@ -682,4 +684,18 @@ Route::prefix('role')
|
||||
Route::get('/test', function () {
|
||||
$csvExporter = new \Laracsv\Export();
|
||||
$csvExporter->build(\App\Models\User::all(), ['id' => 'کد یکتا', 'username' => 'نام کاربری'])->download();
|
||||
});
|
||||
});
|
||||
|
||||
Route::prefix('provinces')
|
||||
->name('provinces.')
|
||||
->controller(ProvinceController::class)
|
||||
->group(function () {
|
||||
Route::get('/list', 'list')->name('list');
|
||||
});
|
||||
|
||||
Route::prefix('cities')
|
||||
->name('cities.')
|
||||
->controller(CityController::class)
|
||||
->group(function () {
|
||||
Route::get('/list', 'list')->name('list');
|
||||
});
|
||||
Reference in New Issue
Block a user