Pārlūkot izejas kodu

cambios en workflow

JeanBenitez 2 gadi atpakaļ
vecāks
revīzija
7a4b3bb38e

+ 494 - 0
sistema-mantenimiento-back/app/Http/Controllers/ProcessManagementController.php

@@ -0,0 +1,494 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Validator;
+
+class ProcessManagementController extends Controller
+{
+    private $responseController;
+    private $encController;
+    private $resourcesController;
+    private $documentManagementController;
+    private $functionsController;
+
+    public function __construct(){
+        $this->responseController = new ResponseController();
+        $this->encController = new EncryptionController();
+        $this->resourcesController = new ResourcesController();
+        $this->documentManagementController = new DocumentManagementController();
+        $this->functionsController = new FunctionsController();
+    }
+
+    public function getWorkflows($user, $line) {
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+
+        try {
+            $arrWorkflow = DB::table('S002V01TFLTR')
+                ->where('FLTR_NULI', '=', $line)
+                ->join('S002V01TMODU', 'MODU_IDMO', '=', 'FLTR_IDMO')
+                ->get([
+                    'FLTR_IDFT AS ID_FLUJO',
+                    'FLTR_NOFT AS NOMBRE_FLUJO',
+                    'FLTR_DEFT AS DESCRIPCION_FLUJO',
+                    'FLTR_ESAU AS AUTOMATICO',
+                    'FLTR_TIFT AS TIPO_FLUJO',
+                    'MODU_IDMO AS ID_MODULO',
+                    'MODU_NOMO AS NOMBRE_MODULO',
+                    'FLTR_ESPR AS PREDEFINIDO',
+                    'FLTR_ESTA AS ESTADO',
+                    'FLTR_USRE AS USUARIO_REGISTRA',
+                    'FLTR_FERE AS FECHA_REGISTRA',
+                    'FLTR_USMO AS USUARIO_MODIFICA',
+                    'FLTR_FEMO AS FECHA_MODIFICA',
+                ]);
+            $arrWorkflow = json_decode(json_encode($arrWorkflow), true);
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al obtener los flujos de trabajo.', $th->getMessage(), 500);
+        }
+
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrWorkflow, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrWorkflow = $responseCheckLatestUpdate['response'];
+
+        foreach ($arrWorkflow as $key => $workflow) {
+            $workflow['ID_FLUJO'] = '#'.$workflow['ID_FLUJO'];
+
+            if ($workflow['TIPO_FLUJO'] === 'S') {
+                $workflow['TIPO_FLUJO'] = 'Solicitud';
+            } else if ($workflow['TIPO_FLUJO'] === 'F') {
+                $workflow['TIPO_FLUJO'] = 'Formulario';
+            }
+            $arrWorkflow[$key] = $workflow;
+        }
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrWorkflow);
+    }
+    public function getWorkflow($idWorkflow, $user, $line) {
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+        $user = $arrResponseCheckUser['response'];
+
+        $idWorkflow = $this->encController->decrypt($idWorkflow);
+        if (is_null($idWorkflow)) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al desencriptar el ID del workflow.', [], 401);
+        }
+
+        try {
+            $validateExists = DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $line)
+                ->where('FLTR_ESTA', '=', 'Activo')
+                ->exists();
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, "Ocurrió un error al verificar el workflow.", $th->getMessage(), 500);
+        }
+        if (!$validateExists) {
+            return $this->responseController->makeResponse(true, "El workflow no existe.", [], 500);
+        }
+
+        try {
+            $arrWorkflow = (array) DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $line)
+                ->where('FLTR_ESTA', '=', 'Activo')
+                ->first([
+                    'FLTR_NOFT AS NOMBRE_FLUJO',
+                    'FLTR_DEFT AS DESCRIPCION_FLUJO',
+                    'FLTR_ESAU AS AUTOMATICO',
+                    'FLTR_TIFT AS TIPO_FLUJO',
+                    'FLTR_IDMO AS MODULO',
+                ]);
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al obtener los flujos de trabajo.', $th->getMessage(), 500);
+        }
+
+        $arrWorkflow['AUTOMATICO'] = $arrWorkflow['AUTOMATICO'] === 'Si' ? true : false;
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrWorkflow);
+    }
+    public function registerWorkflow(Request $request) {
+        $validator = Validator::make($request->all(), [
+            'NOMBRE_FLUJO' => 'required|string',
+            'DESCRIPCION_FLUJO' => 'required|string',
+            'AUTOMATICO' => 'required|boolean',
+            'TIPO_FLUJO' => 'required|string|in:S,F',
+            'MODULO' => 'required|string',
+            'USUARIO' => 'required|string',
+            'NUMERO_LINEA' => 'required|string',
+        ]);
+        if ($validator->fails()) {
+            return $this->responseController->makeResponse(
+                true,
+                "Se encontraron uno o más errores.",
+                $this->responseController->makeErrors($validator->errors()->messages()),
+                401
+            );
+        }
+
+        DB::beginTransaction();
+        $requestData = $request->all();
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($requestData['USUARIO'], $requestData['NUMERO_LINEA']);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_REG001:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+        $user = $arrResponseCheckUser['response'];
+
+        $now = $this->functionsController->now();
+        $currentDate = $now->toDateTimeString();
+
+        try {
+            $validateInsert = DB::table('S002V01TFLTR')->insert([
+                'FLTR_NULI' => $requestData['NUMERO_LINEA'],
+                'FLTR_NOFT' => $requestData['NOMBRE_FLUJO'],
+                'FLTR_DEFT' => $requestData['DESCRIPCION_FLUJO'],
+                'FLTR_ESAU' => $requestData['AUTOMATICO'] ? 'Si' : 'No',
+                'FLTR_TIFT' => $requestData['TIPO_FLUJO'],
+                'FLTR_IDMO' => $requestData['MODULO'],
+                'FLTR_USRE' => $user,
+                'FLTR_FERE' => $currentDate,
+                'FLTR_FEAR' => DB::raw('CURRENT_TIMESTAMP'),
+            ]);
+        } catch (\Throwable $th) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al insertar el flujo de trabajo.', $th->getMessage(), 500);
+        }
+        if (!$validateInsert) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'No se pudo insertar el flujo de trabajo.', [], 500);
+        }
+
+        DB::commit();
+        return $this->responseController->makeResponse(false, "ÉXITO: Registro Exitoso");
+    }
+    public function updateWorkflow(Request $request, $idWorkflow) {
+        $validator = Validator::make($request->all(), [
+            'NOMBRE_FLUJO' => 'required|string',
+            'DESCRIPCION_FLUJO' => 'required|string',
+            'AUTOMATICO' => 'required|boolean',
+            'TIPO_FLUJO' => 'required|string|in:S,F',
+            'MODULO' => 'required|string',
+            'USUARIO' => 'required|string',
+            'NUMERO_LINEA' => 'required|string',
+        ]);
+        if ($validator->fails()) {
+            return $this->responseController->makeResponse(
+                true,
+                "Se encontraron uno o más errores.",
+                $this->responseController->makeErrors($validator->errors()->messages()),
+                401
+            );
+        }
+
+        DB::beginTransaction();
+        $requestData = $request->all();
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($requestData['USUARIO'], $requestData['NUMERO_LINEA']);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+        $user = $arrResponseCheckUser['response'];
+
+        $idWorkflow = $this->encController->decrypt($idWorkflow);
+        if (is_null($idWorkflow)) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al desencriptar el ID del workflow.', [], 401);
+        }
+
+        try {
+            $lastWorkflow = (array) DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $requestData['NUMERO_LINEA'])
+                ->where('FLTR_ESTA', '=', 'Activo')
+                ->first();
+        } catch (\Throwable $th) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, "Ocurrió un error al verificar el workflow.", $th->getMessage(), 500);
+        }
+        if (empty($lastWorkflow)) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, "El workflow no existe.", [], 500);
+        }
+
+        $strLast = $lastWorkflow['FLTR_HICA'];
+        $arrLast = array();
+        if (is_null($strLast)) {
+            unset($lastWorkflow['FLTR_HICA']);
+            $arrLast[] = $lastWorkflow;
+        } else {
+            $arrLast = json_decode($strLast);
+            unset($lastWorkflow['FLTR_HICA']);
+            $arrLast[] = $lastWorkflow;
+        }
+
+        $last = json_encode($arrLast);
+
+        $now = $this->functionsController->now();
+        $currentDate = $now->toDateTimeString();
+
+        try {
+            $validateUpdate = DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $requestData['NUMERO_LINEA'])
+                ->where('FLTR_ESTA', '=', 'Activo')
+                ->update([
+                    'FLTR_NOFT' => $requestData['NOMBRE_FLUJO'],
+                    'FLTR_DEFT' => $requestData['DESCRIPCION_FLUJO'],
+                    'FLTR_ESAU' => $requestData['AUTOMATICO'] ? 'Si' : 'No',
+                    'FLTR_TIFT' => $requestData['TIPO_FLUJO'],
+                    'FLTR_IDMO' => $requestData['MODULO'],
+                    'FLTR_HICA' => $last,
+                    'FLTR_USMO' => $user,
+                    'FLTR_FEMO' => $currentDate,
+                    'FLTR_FEAR' => DB::raw('CURRENT_TIMESTAMP'),
+                ]);
+        } catch (\Throwable $th) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al modificar el flujo de trabajo.', $th->getMessage(), 500);
+        }
+        if (!$validateUpdate) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'No se pudo modificar el flujo de trabajo.', [], 500);
+        }
+
+        DB::commit();
+        return $this->responseController->makeResponse(false, "ÉXITO: Modificación Exitosa");
+    }
+    public function deleteWorkflow(Request $request, $idWorkflow) {
+        $validator = Validator::make($request->all(), [
+            'USUARIO' => 'required|string',
+            'NUMERO_LINEA' => 'required|string',
+        ]);
+        if ($validator->fails()) {
+            return $this->responseController->makeResponse(
+                true,
+                "Se encontraron uno o más errores.",
+                $this->responseController->makeErrors($validator->errors()->messages()),
+                401
+            );
+        }
+
+        DB::beginTransaction();
+        $requestData = $request->all();
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($requestData['USUARIO'], $requestData['NUMERO_LINEA']);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+        $user = $arrResponseCheckUser['response'];
+
+        $idWorkflow = $this->encController->decrypt($idWorkflow);
+        if (is_null($idWorkflow)) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al desencriptar el ID del workflow.', [], 401);
+        }
+
+        try {
+            $validateExists = DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $requestData['NUMERO_LINEA'])
+                ->where('FLTR_ESTA', '=', 'Activo')
+                ->exists();
+        } catch (\Throwable $th) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, "Ocurrió un error al verificar el workflow.", $th->getMessage(), 500);
+        }
+        if (!$validateExists) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, "El workflow no existe.", [], 500);
+        }
+
+        $now = $this->functionsController->now();
+        $currentDate = $now->toDateTimeString();
+
+        try {
+            $validateDelete = DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $requestData['NUMERO_LINEA'])
+                ->where('FLTR_ESTA', '=', 'Activo')
+                ->update([
+                    'FLTR_ESTA' => 'Eliminado',
+                    'FLTR_USMO' => $user,
+                    'FLTR_FEMO' => $currentDate,
+                    'FLTR_FEAR' => DB::raw('CURRENT_TIMESTAMP'),
+                ]);
+        } catch (\Throwable $th) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al eliminar el flujo de trabajo.', $th->getMessage(), 500);
+        }
+        if (!$validateDelete) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'No se pudo eliminar el flujo de trabajo.', [], 500);
+        }
+
+        DB::commit();
+        return $this->responseController->makeResponse(false, "ÉXITO: Eliminación Exitosa");
+    }
+
+    public function getHistoryWorkflow($idWorkflow, $user, $line) {
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+        $user = $arrResponseCheckUser['response'];
+
+        $idWorkflow = $this->encController->decrypt($idWorkflow);
+        if (is_null($idWorkflow)) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al desencriptar el ID del workflow.', [], 401);
+        }
+
+        try {
+            $validateExists = DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $line)
+                ->exists();
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, "Ocurrió un error al verificar el workflow.", $th->getMessage(), 500);
+        }
+        if (!$validateExists) {
+            return $this->responseController->makeResponse(true, "El workflow no existe.", [], 500);
+        }
+
+        try {
+            $workflow = (array) DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $line)
+                ->first([
+                    'FLTR_HICA AS HISTORIAL',
+                ]);
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al obtener los flujos de trabajo.', $th->getMessage(), 500);
+        }
+
+        if (empty($workflow)) {
+            return $this->responseController->makeResponse(false, "No se encontró información en el historial.", [], 500);
+        }
+        
+        if (is_null($workflow['HISTORIAL'])) {
+            return $this->responseController->makeResponse(false, "No se encontró información en el historial.", [], 500);
+        }
+
+        $arrClaves = [
+            'FLTR_NOFT' => 'NOMBRE_FLUJO',
+            'FLTR_DEFT' => 'DESCRIPCION_FLUJO',
+            'FLTR_ESAU' => 'AUTOMATICO',
+            'FLTR_IDMO' => 'MODULO',
+            'FLTR_TIFT' => 'TIPO_FLUJO',
+            'FLTR_ESTA' => 'ESTADO',
+            'FLTR_ESPR' => 'PREDEFINIDO',
+            'FLTR_USRE' => 'USUARIO_REGISTRA',
+            'FLTR_FERE' => 'FECHA_REGISTRA',
+            'FLTR_USMO' => 'USUARIO_MODIFICA',
+            'FLTR_FEMO' => 'FECHA_MODIFICA',
+        ];
+
+        $arrHistory = array();
+        $arrHistoryTemp = json_decode($workflow['HISTORIAL'], true);
+        foreach ($arrHistoryTemp as $keyHistory => $historyTemp) {
+            foreach ($historyTemp as $key => $value) {
+                if (array_key_exists($key, $arrClaves)) {
+                    if ($key === 'FLTR_IDMO') {
+                        try {
+                            $module = (array) DB::table('S002V01TMODU')
+                                ->where('MODU_IDMO', '=', $value)
+                                ->where('MODU_NULI', '=', $line)
+                                ->first();
+                        } catch (\Throwable $th) {
+                            return $this->responseController->makeResponse(true, 'Ocurrió un error al obtener los módulos del flujo de trabajo.', $th->getMessage(), 500);
+                        }
+                        if (empty($module)) {
+                            return $this->responseController->makeResponse(false, "No se encontró información del módulo del flujo de trabajo.", [], 500);
+                        }
+                        $value = $module['MODU_NOMO'];
+                    }
+                    if ($key === 'FLTR_TIFT' && $value === 'S') {
+                        $value = 'Solicitud';
+                    }
+                    if ($key === 'FLTR_TIFT' && $value === 'F') {
+                        $value = 'Formulario';
+                    }
+                    $arrHistory[$keyHistory][$arrClaves[$key]] = $value;
+                }   
+            }
+        }
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrHistory);
+    }
+
+    public function getProcessWorkflow($idWorkflow, $user, $line) {
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+        $user = $arrResponseCheckUser['response'];
+
+        $idWorkflow = $this->encController->decrypt($idWorkflow);
+        if (is_null($idWorkflow)) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al desencriptar el ID del workflow.', [], 401);
+        }
+
+        try {
+            $validateExists = DB::table('S002V01TFLTR')
+                ->where('FLTR_IDFT', '=', $idWorkflow)
+                ->where('FLTR_NULI', '=', $line)
+                ->exists();
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, "Ocurrió un error al verificar el workflow.", $th->getMessage(), 500);
+        }
+        if (!$validateExists) {
+            return $this->responseController->makeResponse(true, "El workflow no existe.", [], 500);
+        }
+
+        try {
+            $arrWorks = DB::table('S002V01TTRAB')
+                ->where('TRAB_IDFT', '=', $idWorkflow)
+                ->where('TRAB_ESTA', '=', 'Activo')
+                ->where('TRAB_NULI', '=', $line)
+                ->get([
+                    'TRAB_IDTR AS ID_TRABAJO',
+                    'TRAB_NOTR AS NOMBRE_TRABAJO',
+                    'TRAB_DETR AS DESCRIPCION_TRABAJO',
+                    'TRAB_SECU AS SECUENCIA',
+                    'TRAB_SISE AS SIGUIENTE_SECUENCIA',
+                    'TRAB_CASE AS CAMBIO_SECUENCIA',
+                    'TRAB_DISP AS DISPONIBLE',
+                    'TRAB_COMP AS COMPLETO',
+                    'TRAB_FUVA AS VALIDADO',
+                    'TRAB_ESCO AS CONDICIONAL',
+                    'TRAB_USRE AS USUARIO_REGISTRA',
+                    'TRAB_FERE AS FECHA_REGISTRA',
+                    'TRAB_USMO AS USUARIO_MODIFICA',
+                    'TRAB_FEMO AS FECHA_MODIFICA',
+                ]);
+        } catch (\Throwable $th) {
+            return $this->responseController->makeResponse(true, 'Ocurrió un error al obtener los trabajos.', $th->getMessage(), 500);
+        }
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrWorks);
+    }
+
+
+
+    public function getTastks($user, $line) {
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, $arrResponseCheckUser['msg'], [], 401);
+        }
+    }
+}

+ 10 - 0
sistema-mantenimiento-back/routes/api.php

@@ -4,6 +4,7 @@ use App\Http\Controllers\DelayAnalysisController;
 use App\Http\Controllers\EmployeeController;
 use App\Http\Controllers\OrderReceptionController;
 use App\Http\Controllers\PartialDeliveriesController;
+use App\Http\Controllers\ProcessManagementController;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Route;
 
@@ -512,6 +513,15 @@ Route::middleware(['jwt.auth'])->group(function(){
     Route::get ('inventory-management/get-objects-properties/{user}/{line}',                        [StockController::class, 'getObjectProperties']);
     Route::get ('inventory-management/get-details-object-properties/{idStock}/{user}/{line}',       [StockController::class, 'getDetailsObjectProperties']);
     Route::put ('inventory-management/save-info-stock/{idStock}',                                   [StockController::class, 'saveInfoStock']);
+    
+    // Módulo de Procesos (Workflow)
+    Route::get ('process-management/get-workflows/{user}/{line}',                       [ProcessManagementController::class, 'getWorkflows']);
+    Route::get ('process-management/get-workflow/{idWorkflow}/{user}/{line}',           [ProcessManagementController::class, 'getWorkflow']);
+    Route::post('process-management/register-workflow',                                 [ProcessManagementController::class, 'registerWorkflow']);
+    Route::put ('process-management/update-workflow/{idWorkflow}',                      [ProcessManagementController::class, 'updateWorkflow']);
+    Route::put ('process-management/delete-workflow/{idWorkflow}',                      [ProcessManagementController::class, 'deleteWorkflow']);
+    Route::get ('process-management/get-history-workflow/{idWorkflow}/{user}/{line}',   [ProcessManagementController::class, 'getHistoryWorkflow']);
+    Route::get ('process-management/get-process-workflow/{idWorkflow}/{user}/{line}',   [ProcessManagementController::class, 'getProcessWorkflow']);
 
     // Localidad
     Route::get ('catalog/get-payment-method-active/{line_number}',            [CatalogController::class, 'getPaymentMethodActive']);