Merge pull request #124 from witelgroup/feature/StoreAndDeleteNoProcess

Feature/store and delete no process
This commit is contained in:
Amir Ghasempoor
2026-01-04 11:03:45 +03:30
committed by GitHub

View File

@@ -2,9 +2,10 @@
namespace App\Services\Cartables\Mission;
use App\Exceptions\ProhibitedAction;
use App\Facades\DataTable\DataTableFacade;
use App\Models\Mission;
use App\Models\MissionViolation;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
@@ -14,7 +15,7 @@ class ReportService
{
$user = auth()->user();
$query = Mission::query()->where('edare_shahri_id', '=', $user->edarate_shahri_id);
$query =MissionViolation::query()->where('edare_shahri_id', '=', $user->edarate_shahri_id);
return DataTableFacade::run(
$query,
@@ -27,7 +28,7 @@ class ReportService
public function countryActivity(Request $request): array
{
$from = $request->from_date ?? today()->startOfDay();
$to = $request->to_date ?? today()->endOfDay();
$to = Carbon::parse($request->to_date)->endOfDay()?? today()->endOfDay();
$sql = "
WITH r AS (
@@ -37,13 +38,13 @@ class ReportService
COUNT(DISTINCT CASE
WHEN mv.type = 1
AND mv.created_at BETWEEN :from_mv AND :to_mv
AND mv.created_at >= :from_mv AND mv.created_at <= :to_mv
THEN mv.id
END) AS no_mission_count,
COUNT(DISTINCT CASE
WHEN m.mission_duration != m.in_area_duration
AND m.created_at BETWEEN :from_m AND :to_m
AND m.created_at >= :from_m AND m.created_at <= :to_m
THEN m.id
END) AS out_of_area_count
@@ -87,7 +88,7 @@ class ReportService
{
$provinceId = $request->province_id ?? auth()->user()->province_id;
$from = $request->from_date ?? today()->startOfDay();
$to = $request->to_date ?? today()->endOfDay();
$to = Carbon::parse($request->to_date)->endOfDay() ?? today()->endOfDay();
$sql = "
WITH r AS (
@@ -97,13 +98,13 @@ class ReportService
COUNT(DISTINCT CASE
WHEN mv.type = 1
AND mv.created_at BETWEEN :from_mv AND :to_mv
AND mv.created_at >= :from_mv AND mv.created_at <= :to_mv
THEN mv.id
END) AS no_mission_count,
COUNT(DISTINCT CASE
WHEN m.mission_duration != m.in_area_duration
AND m.created_at BETWEEN :from_m AND :to_m
AND m.created_at >= :from_m AND m.created_at <= :to_m
THEN m.id
END) AS out_of_area_count