appand new position for 3 position in harim and need dependency

This commit is contained in:
2025-11-08 16:34:32 +03:30
parent 143b5c1542
commit a619efb123
17 changed files with 373 additions and 27 deletions

View File

@@ -13,9 +13,11 @@ use App\Facades\DataTable\DataTableFacade;
use App\Http\Controllers\Controller;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ConfirmGuaranteeLetterNeedRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ConfirmNoRoadAccessNeedRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ConfirmPaymentRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ConfirmRoadAccessEditNeedRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ConfirmRoadAccessNeedRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ReferFileRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ReferPaymentRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ReferRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\RejectRequest;
use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ShowRequest;
@@ -24,6 +26,8 @@ use App\Models\Harim;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Throwable;
class GeneralManagerController extends Controller
{
@@ -44,6 +48,9 @@ class GeneralManagerController extends Controller
return response()->json($data);
}
/**
* @throws Throwable
*/
public function rejectRequest(RejectRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -71,6 +78,9 @@ class GeneralManagerController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function referRequest(ReferRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -96,6 +106,9 @@ class GeneralManagerController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function referFile(ReferFileRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -110,7 +123,7 @@ class GeneralManagerController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MOAVEN->value;
$state = HarimStates::BARESI_RAHE_DASTRASI_APLODE_SHODE_TAVASOTE_MOAVEN->value;
$harim->update([
'state_id' => $state,
@@ -121,6 +134,9 @@ class GeneralManagerController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function confirmRoadAccessNeed(ConfirmRoadAccessNeedRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -148,6 +164,9 @@ class GeneralManagerController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function confirmNoRoadAccessNeed(ConfirmNoRoadAccessNeedRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -176,6 +195,9 @@ class GeneralManagerController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function confirmRoadAccessEditNeed(ConfirmRoadAccessEditNeedRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -190,7 +212,7 @@ class GeneralManagerController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::UPDATE_FILE_BARGOZARE_SHODE->value;
$state = HarimStates::UPDATE_RAHE_DASTRASI_BARGOZARE_SHODE->value;
$harim->update([
'state_id' => $state,
@@ -203,6 +225,9 @@ class GeneralManagerController extends Controller
return $this->successResponse();
}
/**
* @throws \Throwable
*/
public function confirmGuaranteeLetterNeed(ConfirmGuaranteeLetterNeedRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -217,7 +242,7 @@ class GeneralManagerController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::ERSAL_ZEMANAT_NAME_TAVASOTE_KARBAR->value;
$state = HarimStates::ARSE_VA_AYAN_NAHAI->value;
$harim->update([
'state_id' => $state,
@@ -234,4 +259,61 @@ class GeneralManagerController extends Controller
{
return $this->successResponse($harim->load('histories'));
}
/**
* @throws Throwable
*/
public function referPaymentRequest(ReferPaymentRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
$action = HarimAction::REFER->value;
$harim->histories()->create([
'expert_id' => auth()->user()->id,
'previous-state_id' => $harim->state_id,
'previous_state_name' => $harim->state_name,
'export_description' => $request->export_description,
'action_id' => $action,
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_ARSE_VA_AYAN_ERSAL_SHODE_TAVASOT_MOAVEN->value;
$harim->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
]);
});
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function confirmPayment(ConfirmPaymentRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
$action = HarimAction::CONFIRM->value;
$harim->histories()->create([
'expert_id' => auth()->user()->id,
'previous_state_id' => $harim->state_id,
'previous_state_name' => $harim->state_name,
'expert_description' => $request->expert_description,
'action_id' => $action,
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::ETMAM_FARAYAND->value;
$harim->update([
'state_id' => $state,
'state_name' => HarimStates::name($state),
]);
});
return $this->successResponse();
}
}

View File

@@ -6,6 +6,7 @@ use App\Enums\HarimAction;
use App\Enums\HarimStates;
use App\Facades\DataTable\DataTableFacade;
use App\Http\Controllers\Controller;
use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\ComputingPaymentRequest;
use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\FileAcceptedRequest;
use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\FileRejectedRequest;
use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\NeedRoadAccessRequest;
@@ -19,6 +20,8 @@ use App\Models\Province;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Throwable;
class HarimOfficeController extends Controller
{
@@ -39,6 +42,9 @@ class HarimOfficeController extends Controller
return response()->json($data);
}
/**
* @throws Throwable
*/
public function rejectRequest(RejectRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -64,6 +70,9 @@ class HarimOfficeController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function referRequest(ReferRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -89,6 +98,9 @@ class HarimOfficeController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function needRoadAccess(NeedRoadAccessRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -116,6 +128,9 @@ class HarimOfficeController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function withoutRoadAccess(WithoutRoadAccessRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -143,6 +158,9 @@ class HarimOfficeController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function fileAccepted(FileAcceptedRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -156,7 +174,7 @@ class HarimOfficeController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MOAVEN->value;
$state = HarimStates::BARESI_RAHE_DASTRASI_APLODE_SHODE_TAVASOTE_MOAVEN->value;
$harim->update([
'state_id' => $state,
@@ -168,6 +186,9 @@ class HarimOfficeController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function fileRejected(FileRejectedRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -181,7 +202,7 @@ class HarimOfficeController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MOAVEN->value;
$state = HarimStates::BARESI_RAHE_DASTRASI_APLODE_SHODE_TAVASOTE_MOAVEN->value;
$harim->update([
'state_id' => $state,
@@ -208,4 +229,36 @@ class HarimOfficeController extends Controller
'province_name' => $province->name_fa,
]);
}
/**
* @throws Throwable
*/
public function computingPayment(ComputingPaymentRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
$action = HarimAction::CONFIRM->value;
$harim->histories()->create([
'expert_id' => auth()->user()->id,
'previous_state_id' => $harim->state_id,
'previous_state_name' => $harim->state_name,
'expert_description' => $request->expert_description,
'action_id' => $action,
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_ARSE_VA_AYAN_ERSAL_SHODE_TAVASOT_MOAVEN->value;
$harim->update([
'traffic' => $request->traffic,
'position' => $request->position,
'final_plan_space' => $request->final_plan_space,
'road_type' => $request->road_type,
'payment_amount' => $request->payment_amount,
'state_id' => $state,
'state_name' => HarimStates::name($state),
]);
});
return $this->successResponse();
}
}

View File

@@ -6,8 +6,10 @@ use App\Enums\HarimAction;
use App\Enums\HarimStates;
use App\Facades\DataTable\DataTableFacade;
use App\Http\Controllers\Controller;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ConfirmPaymentRequest;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ConfirmRequest;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ConfirmRoadAccessRequest;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ReferPaymentRequest;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ReferRequest;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ReferRoadAccessRequest;
use App\Http\Requests\V3\Dashboard\Harim\Deputy\ShowRequest;
@@ -16,6 +18,8 @@ use App\Models\Harim;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Throwable;
class TechnicalDeputyController extends Controller
{
@@ -36,6 +40,9 @@ class TechnicalDeputyController extends Controller
return response()->json($data);
}
/**
* @throws \Throwable
*/
public function confirmRequest(ConfirmRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -61,6 +68,9 @@ class TechnicalDeputyController extends Controller
return $this->successResponse();
}
/**
* @throws Throwable
*/
public function referRequest(ReferRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -86,6 +96,9 @@ class TechnicalDeputyController extends Controller
return $this->successResponse();
}
/**
* @throws \Throwable
*/
public function confirmRoadAccess(ConfirmRoadAccessRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -99,7 +112,7 @@ class TechnicalDeputyController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MODIR_KOL->value;
$state = HarimStates::BARESI_RAHE_DASTRASI_APLODE_SHODE_TAVASOTE_MODIR_KOL->value;
$harim->update([
'state_id' => $state,
@@ -110,6 +123,10 @@ class TechnicalDeputyController extends Controller
return $this->successResponse();
}
/**
* @throws \Throwable
*/
public function referRoadAccess(ReferRoadAccessRequest $request, Harim $harim): JsonResponse
{
DB::transaction(function () use ($request, $harim) {
@@ -123,7 +140,7 @@ class TechnicalDeputyController extends Controller
'action_name' => HarimAction::name($action),
]);
$state = HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_DAFTAR_HARIM->value;
$state = HarimStates::BARESI_RAHE_DASTRASI_APLODE_SHODE_TAVASOTE_DAFTAR_HARIM->value;
$harim->update([
'state_id' => $state,