create new migration and bug fix another code for safty and privacy

This commit is contained in:
2025-08-30 14:07:53 +03:30
parent ab24f8502c
commit 125baa7511
9 changed files with 69 additions and 20 deletions

View File

@@ -43,7 +43,7 @@ class AccessRoadReport implements FromView, WithEvents, ShouldAutoSize, WithDraw
}
}
return view('v3.Reports.SafetyAndPrivacy.Country.AccessRoadReport', [
return view('v3.Reports.SafetyAndPrivacy.Country.AccessRoadActivityReport', [
'data' => $data,
]);
}

View File

@@ -44,7 +44,7 @@ class ConstructionReport implements FromView, WithEvents, ShouldAutoSize, WithDr
}
}
return view('v3.Reports.SafetyAndPrivacy.Country.ConstructionReport', [
return view('v3.Reports.SafetyAndPrivacy.Country.ConstructionActivityReport', [
'data' => $data,
]);
}

View File

@@ -44,7 +44,7 @@ class UtilityPassingReport implements FromView, WithEvents, ShouldAutoSize, With
}
}
return view('v3.Reports.SafetyAndPrivacy.Country.UtilityPassingReport', [
return view('v3.Reports.SafetyAndPrivacy.Country.UtilityPassingActivityReport', [
'data' => $data,
]);
}

View File

@@ -43,7 +43,7 @@ class AccessRoadReport implements FromView, WithEvents, ShouldAutoSize, WithDraw
}
}
return view('v3.Reports.SafetyAndPrivacy.Province.AccessRoadReport', [
return view('v3.Reports.SafetyAndPrivacy.Province.AccessRoadActivityReport', [
'data' => $data,
]);
}

View File

@@ -43,7 +43,7 @@ class ConstructionReport implements FromView, WithEvents, ShouldAutoSize, WithDr
}
}
return view('v3.Reports.SafetyAndPrivacy.Province.ConstructionReport', [
return view('v3.Reports.SafetyAndPrivacy.Province.ConstructionActivityReport', [
'data' => $data,
]);
}

View File

@@ -43,7 +43,7 @@ class UtilityPassingReport implements FromView, WithEvents, ShouldAutoSize, With
}
}
return view('v3.Reports.SafetyAndPrivacy.Province.UtilityPassingReport', [
return view('v3.Reports.SafetyAndPrivacy.Province.UtilityPassingActivityReport', [
'data' => $data,
]);
}

View File

@@ -64,7 +64,10 @@ class HomeContentController extends Controller
public function getAllCitiesByProvince($id)
{
$cities = \App\Models\City::where('province_id', $id)->where('type_id', 1)->get();
$cities = \App\Models\City::query()
->where('province_id', $id)
->where('type_id', 1)
->get(['id', 'name_fa', 'province_id','center_lat','center_lng']);
// $cities = \App\Models\City::where('province_id', $id)->get();
return response()->json([

View File

@@ -23,9 +23,11 @@ use App\Services\PaymentService;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Validation\ValidationException;
use Maatwebsite\Excel\Facades\Excel;
use Symfony\Component\HttpFoundation\BinaryFileResponse;
use Throwable;
use function Laravel\Prompts\error;
class AccidentReceiptController extends Controller
{
@@ -86,7 +88,7 @@ class AccidentReceiptController extends Controller
'status_fa' => AccidentStates::name(AccidentStates::BEDON_EGHDAM->value),
];
$sum = 0;
$driver_share_amount = 0;
$damageData = [];
foreach ($request->damage_items as $key => $item) {
@@ -96,14 +98,14 @@ class AccidentReceiptController extends Controller
'unit' => $damage->unit,
'amount' => $item['amount'],
];
$sum += $item['amount'];
$driver_share_amount += $item['amount'];
}
$ojrate_nasb = $sum/100*20;
$sum += $ojrate_nasb;
$ojrate_nasb = $driver_share_amount/100*20;
$driver_share_amount += $ojrate_nasb;
$accidentData['ojrate_nasb'] = $ojrate_nasb;
$accidentData['sum'] = $sum;
$accidentData['driver_share_amount'] = $driver_share_amount;
$accident = Accident::query()->create($accidentData);
$accident->damage_picture1 = FileFacade::save($request->file('damage_picture1'), "receipts_files/{$accident->id}");
@@ -174,7 +176,7 @@ class AccidentReceiptController extends Controller
$accidentData['damage_picture2'] = FileFacade::save($request->file('damage_picture2'), "receipts_files/{$accident->id}/");
}
$sum = 0;
$driver_share_amount = 0;
$damageData = [];
foreach ($request->damage_items as $key => $item) {
@@ -184,14 +186,14 @@ class AccidentReceiptController extends Controller
'unit' => $damage->unit,
'amount' => $item['amount'],
];
$sum += $item['amount'];
$driver_share_amount += $item['amount'];
}
$ojrate_nasb = $sum/100*20;
$sum += $ojrate_nasb;
$ojrate_nasb = $driver_share_amount/100*20;
$driver_share_amount += $ojrate_nasb;
$accidentData['ojrate_nasb'] = $ojrate_nasb;
$accidentData['sum'] = $sum;
$accidentData['driver_share_amount'] = $driver_share_amount;
$accident->update($accidentData);
@@ -246,14 +248,28 @@ class AccidentReceiptController extends Controller
public function confirmPaymentInfo(ConfirmPaymentInfoRequest $request, Accident $accident): JsonResponse
{
DB::transaction(function () use ($request, $accident) {
$final_amount = $accident->driver_share_amount - ($request->deposit_insurance_amount + $request->deposit_daghi_amount);
if ($final_amount > 0) {
$status = AccidentStates::SABT_FISH->value;
$status_fa = AccidentStates::name($status);
}
elseif ($final_amount == 0) {
$status = AccidentStates::PARDAKHT_FACTOR->value;
$status_fa = AccidentStates::name($status);
}
else{
throw ValidationException::withMessages([
'amounts' => 'مبالغ داغی و بیمه از مبلغ سهم راننده بیشتر است.',
]);
}
$accident->update([
'deposit_insurance_image' => $request->has('deposit_insurance_image') ? FileFacade::save($request->deposit_insurance_image, "receipts_files/{$accident->id}/deposit_insurance") : null,
'deposit_insurance_amount' => $request->deposit_insurance_amount ?? 0,
'deposit_daghi_image' => $request->has('deposit_daghi_image') ? FileFacade::save($request->deposit_daghi_image, "receipts_files/{$accident->id}/deposit_daghi") : null,
'deposit_daghi_amount' => $request->deposit_daghi_amount ?? 0,
'status' => AccidentStates::SABT_FISH->value,
'status_fa' => AccidentStates::name(AccidentStates::SABT_FISH->value),
'status' => $status,
'status_fa' => $status_fa,
]);
auth()->user()->addActivityComplete(1132);
@@ -267,7 +283,7 @@ class AccidentReceiptController extends Controller
*/
public function submitInvoice(Accident $accident, PaymentService $paymentService): JsonResponse
{
$final_amount = $accident->sum - ($accident->deposit_insurance_amount + $accident->deposit_daghi_amount);
$final_amount = $accident->driver_share_amount - ($accident->deposit_insurance_amount + $accident->deposit_daghi_amount);
throw_if($final_amount < 0, new ProhibitedAction('مبالغ داغی و بیمه از مبلغ کل بیشتر می باشد.'));

View File

@@ -0,0 +1,30 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('accidents', function (Blueprint $table) {
$table->unsignedBigInteger('driver_share_amount')->nullable();
$table->unsignedBigInteger('driver_rate')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('accidents', function (Blueprint $table) {
$table->dropColumn('driver_share_amount', 'driver_rate');
});
}
};