소스 검색

Modificacón de apis

JeanBenitez 1 년 전
부모
커밋
90796f3903

+ 74 - 43
sistema-mantenimiento-back/app/Http/Controllers/DispatchController.php

@@ -9,6 +9,7 @@ namespace App\Http\Controllers;
 use App\Http\Controllers\Controller;
 use App\Http\Controllers\ResponseController;
 use App\Http\Controllers\EncryptionController;
+use App\Http\Controllers\ResourcesController;
 use Illuminate\Http\Request;
 use Illuminate\Support\Carbon;
 use Illuminate\Support\Facades\DB;
@@ -19,40 +20,58 @@ class DispatchController extends Controller {
     private $responseController;
     private $encController;
     private $functionsController;
+    private $resourcesController;
 
     public function __construct() {
         $this->responseController = new ResponseController();
         $this->encController = new EncryptionController();
         $this->functionsController = new FunctionsController();
+        $this->resourcesController = new ResourcesController();
     }
 
     public function getDispatch($user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $arrDispatch = DB::table('S002V01TDESP')
                 ->where("DESP_NULI", "=", $line)
                 ->get([
-                    'DESP_IDDE', // Número de despacho
-                    'DESP_NODE', // Nombre del despacho
-                    'DESP_NOMB', // Nombre del despacho
-                    'DESP_CALL', // Calle
-                    'DESP_NUEX', // Número exterior
-                    'DESP_NUIN', // Número interior
-                    'DESP_COPO', // Código postal
-                    'DESP_COLO', // Colonia
-                    'DESP_MUNI', // Municipio
-                    'DESP_ENTI', // Entidad
-                    'DESP_PAIS', // Pais
-                    'DESP_ESTA', // Estado
-                    'DESP_USRE', // Usuario Registra
-                    'DESP_FERE', // Fecha Registra
-                    'DESP_USMO', // Usuario Modifica
-                    'DESP_FEMO', // Fecha Modifica
+                    'DESP_IDDE AS ID_DESPACHO',
+                    'DESP_NODE AS NOMBRE_DESPACHO',
+                    'DESP_NOMB AS NOMBRE',
+                    'DESP_APPA AS APELLIDO_PATERNO',
+                    'DESP_APMA AS APELLIDO_MATERNO',
+                    'DESP_CALL AS CALLE',
+                    'DESP_NUEX AS NUMERO_EXTERIOR',
+                    'DESP_NUIN AS NUMERO_INTERIOR',
+                    'DESP_COPO AS CODIGO_POSTAL',
+                    'DESP_COLO AS COLONIA',
+                    'DESP_MUNI AS MUNICIPIO',
+                    'DESP_ENTI AS ENTIDAD_FEDERATIVA',
+                    'DESP_PAIS AS PAIS',
+                    'DESP_ESTA AS ESTADO',
+                    'DESP_USRE AS USUARIO_REGISTRA',
+                    'DESP_FERE AS FECHA_REGISTRA',
+                    'DESP_USMO AS USUARIO_MODIFICA',
+                    'DESP_FEMO AS FECHA_MODIFICA',
                 ]);
-            } catch (\Throwable $th) {
+            $arrDispatch = json_decode(json_encode($arrDispatch), true);
+        } catch (\Throwable $th) {
             return $this->responseController->makeResponse(true, "ERR_DISPATCH_GET000: No se pudo realizar la consulta a la base.", $th->getMessage(), 500);
         }
 
-        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrDispatch);
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrDispatch, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrDispatch = $responseCheckLatestUpdate['response'];
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta exitosa", $arrDispatch);
     }
 
     public function getDispatchActive($user, $line) {
@@ -84,41 +103,53 @@ class DispatchController extends Controller {
     }
 
     public function getDispatchById($idDispatch, $user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
-            $arrDispatch = DB::table('S002V01TDESP')
+            $arrDispatch = (array) DB::table('S002V01TDESP')
                 ->where("DESP_IDDE", "=", $idDispatch)
                 ->where("DESP_NULI", "=", $line)
                 ->where("DESP_ESTA", "=", "Activo")
                 ->first([
-                    'DESP_IDDE',
-                    'DESP_NODE',
-                    'DESP_NOMB',
-                    'DESP_APPA',
-                    'DESP_APMA',
-                    'DESP_LADA',
-                    'DESP_TELE',
-                    'DESP_CORR',
-                    'DESP_CALL',
-                    'DESP_NUEX',
-                    'DESP_NUIN',
-                    'DESP_COPO',
-                    'DESP_LOCA',
-                    'DESP_COLO',
-                    'DESP_MUNI',
-                    'DESP_ENTI',
-                    'DESP_PAIS',
-                    'DESP_COME',
-                    'DESP_USRE',
-                    'DESP_FERE',
-                    'DESP_USMO',
-                    'DESP_FEMO',
-                    'DESP_FEAR',
+                    'DESP_IDDE AS ID_DESPACHO',
+                    'DESP_NODE AS NOMBRE_DESPACHO',
+                    'DESP_NOMB AS NOMBRE',
+                    'DESP_APPA AS APELLIDO_PATERNO',
+                    'DESP_APMA AS APELLIDO_MATERNO',
+                    'DESP_LADA AS LADA',
+                    'DESP_TELE AS TELEFONO',
+                    'DESP_CORR AS CORREO_ELECTRONICO',
+                    'DESP_CALL AS CALLE',
+                    'DESP_NUEX AS NUMERO_EXTERIOR',
+                    'DESP_NUIN AS NUMERO_INTERIOR',
+                    'DESP_COPO AS CODIGO_POSTAL',
+                    'DESP_LOCA AS LOCALIDAD',
+                    'DESP_COLO AS COLONIA',
+                    'DESP_MUNI AS MUNICIPIO',
+                    'DESP_ENTI AS ENTIDAD_FEDERATIVA',
+                    'DESP_PAIS AS PAIS',
+                    'DESP_COME AS COMENTARIOS',
+                    'DESP_USRE AS USUARIO_REGISTRA',
+                    'DESP_FERE AS FECHA_REGISTRA',
+                    'DESP_USMO AS USUARIO_MODIFICA',
+                    'DESP_FEMO AS FECHA_MODIFICA',
                 ]);
         } catch (\Throwable $th) {
             return $this->responseController->makeResponse(true, "ERR_DISPATCH_GETBYID000: No se pudo realizar la consulta a la base.", $th->getMessage(), 500);
         }
 
-        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrDispatch);
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate([$arrDispatch], $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrDispatch = $responseCheckLatestUpdate['response'];
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta exitosa", $arrDispatch[0]);
     }
 
     public function registerDispatch(Request $request) {

+ 32 - 20
sistema-mantenimiento-back/app/Http/Controllers/IssueTrackingController.php

@@ -131,7 +131,13 @@ class IssueTrackingController extends Controller
     }
 
     public function getIssueTracking($user, $line) {
-        DB::beginTransaction();
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $arrIssueTracking = DB::table('S002V01TSEPR')
                 ->where('SEPR_NULI', '=', $line)
@@ -140,41 +146,47 @@ class IssueTrackingController extends Controller
                 ->join('S002V01TORCO', 'SEPR_NUOR', '=', 'ORCO_NUOR')
                 ->join('S002V01TDESP', 'DESP_IDDE', '=', 'ORCO_IDDE')
                 ->get([
-                    'SEPR_IDPR',
-                    'SEPR_NUOR',
-                    'DESP_NOMB',
-                    'SEPR_TIPO',
-                    'SEPR_DESC',
-                    'SEPR_RESO',
-                    'SEPR_EVID',
-                    'SEPR_ESTA',
-                    'SEPR_USRE',
-                    'SEPR_FERE',
-                    'SEPR_USMO',
-                    'SEPR_FEMO',
+                    'SEPR_IDPR AS ID_PROBLEMA',
+                    'SEPR_NUOR AS NUMERO_ORDEN',
+                    'DESP_IDDE AS ID_DESPACHO',
+                    'DESP_NODE AS NOMBRE_DESPACHO',
+                    'SEPR_TIPO AS TIPO_PROBLEMA',
+                    'SEPR_DESC AS DESCRIPCION',
+                    'SEPR_RESO AS RESOLUCION',
+                    'SEPR_EVID AS EVIDENCIA',
+                    'SEPR_ESTA AS ESTADO',
+                    'SEPR_USRE AS USUARIO_REGISTRA',
+                    'SEPR_FERE AS FECHA_REGISTRA',
+                    'SEPR_USMO AS USUARIO_MODIFICA',
+                    'SEPR_FEMO AS FECHA_MODIFICA',
                 ]);
         } catch (\Throwable $th) {
             DB::rollBack();
-            return $this->responseController->makeResponse(true, "ERR_ISSUE_TRACKING_GET000: Ocurrió un error al obtener los datos.", $th->getMessage(), 500);
+            return $this->responseController->makeResponse(true, "Ocurrió un error al obtener los datos.", $th->getMessage(), 500);
         }
 
         $arrIssueTracking = json_decode(json_encode($arrIssueTracking), true);
         foreach ($arrIssueTracking as $keyIssueTracking => $issueTracking) {
-            $issueTracking['SEPR_EVID'] = json_decode($issueTracking['SEPR_EVID']);
+            $issueTracking['EVIDENCIA'] = json_decode($issueTracking['EVIDENCIA']);
             $arrUrlImage = array();
-            foreach ($issueTracking['SEPR_EVID'] as $keyEvidence => $evidence) {
+            foreach ($issueTracking['EVIDENCIA'] as $keyEvidence => $evidence) {
                 $responseDocument = $this->documentManagementController->privateGetPublicDocumentURL($evidence, $user, $line);
                 if ($responseDocument['error']) {
-                    return $this->responseController->makeResponse(true, "ERR_ARTITLE_GET003: Ocurrió un error al obtener la URL de la imágen.", [], 500);
+                    return $this->responseController->makeResponse(true, "Ocurrió un error al obtener la URL de la imágen.", [], 500);
                 }
                 $arrUrlImage[] = $responseDocument['response']['public_uri'];
             }
-            $issueTracking['SEPR_EVID'] = $arrUrlImage;
+            $issueTracking['EVIDENCIA'] = $arrUrlImage;
             $arrIssueTracking[$keyIssueTracking] = $issueTracking;
         }
 
-        DB::commit();
-        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrIssueTracking);
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrIssueTracking, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrIssueTracking = $responseCheckLatestUpdate['response'];
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta exitosa", $arrIssueTracking);
     }
 
     public function resolutionIssueTracking(Request $request) {

+ 146 - 128
sistema-mantenimiento-back/app/Http/Controllers/OrderController.php

@@ -44,6 +44,13 @@ class OrderController extends Controller {
     }
 
     public function getOrders($user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $arrOrders = DB::table('S002V01TORCO')
                 ->where('ORCO_NULI', '=', $line)
@@ -54,20 +61,20 @@ class OrderController extends Controller {
                 ->join('S002V01TPROV', 'PROV_NUPR', '=', 'LINE_NUPR')
                 ->join('S002V01TDESP', 'DESP_IDDE', '=', 'ORCO_IDDE')
                 ->get([
-                    'ORCO_NUOR', // Número de Orden
-                    'LINE_IDLI', // Identificador de línea de solicitud de compra
-                    'PROV_NUPR', // Número de Proveedor
-                    'PROV_NOCO', // Nombre Comercial del Proveedor
-                    'PROV_TIPO', // Tipo de Nacionalidad
-                    'DESP_IDDE', // Número de Despacho
-                    'DESP_NODE', // Nombre del Despacho
-                    'DESP_NOMB', // Nombre del Despacho
-                    'ORCO_ESTA', // Estado
-                    'ORCO_USRE', // Usuario Registra
-                    'ORCO_FERE', // Fecha Registra
-                    'ORCO_USMO', // Usuario Modifica
-                    'ORCO_FEMO', // Fecha Modifica
+                    'ORCO_NUOR AS NUMERO_ORDEN', // Número de Orden
+                    'LINE_IDLI AS NUMERO_SOLICITUD_COMPRA', // Identificador de línea de solicitud de compra
+                    'PROV_NUPR AS NUMERO_PROVEEDOR', // Número de Proveedor
+                    'PROV_NOCO AS NOMBRE_COMERCIAL', // Nombre Comercial del Proveedor
+                    'PROV_TIPO AS TIPO_NACIONALIDAD', // Tipo de Nacionalidad
+                    'DESP_IDDE AS ID_DESPACHO', // Número de Despacho
+                    'DESP_NODE AS NOMBRE_DESPACHO', // Nombre del Despacho
+                    'ORCO_ESTA AS ESTADO', // Estado
+                    'ORCO_USRE AS USUARIO_REGISTRA', // Usuario Registra
+                    'ORCO_FERE AS FECHA_REGISTRA', // Fecha Registra
+                    'ORCO_USMO AS USUARIO_MODIFICA', // Usuario Modifica
+                    'ORCO_FEMO AS FECHA_MODIFICA', // Fecha Modifica
                 ]);
+            $arrOrders = json_decode(json_encode($arrOrders), true);
         } catch ( \Throwable $th ) {
             return $this->responseController->makeResponse(
                 true, 
@@ -77,6 +84,12 @@ class OrderController extends Controller {
             );
         }
 
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrOrders, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrOrders = $responseCheckLatestUpdate['response'];
+
         return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrOrders);
     }
 
@@ -218,6 +231,13 @@ class OrderController extends Controller {
 
     public function getOrderByNumber($order, $provider, $user, $line){
 
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
+
         try {
             $order = $this->encController->decrypt($order);
         } catch (\Throwable $th) {
@@ -231,7 +251,7 @@ class OrderController extends Controller {
             return $this->responseController->makeResponse(true, "ERR_ORDER_GET001: Ocurrió un error al obtener el usuario.", $th->getMessage(), 500);
         }
         try {
-            $getOrders = (array) DB::table('S002V01TORCO')
+            $arrOrders = (array) DB::table('S002V01TORCO')
                 ->where('ORCO_NUOR', '=', $order)
                 ->where('ORCO_NULI', '=', $line)
                 ->where('DESP_NULI', '=', $line)
@@ -244,60 +264,45 @@ class OrderController extends Controller {
                 ->join('S002V01TDESP', 'ORCO_IDDE', '=', 'DESP_IDDE')
                 ->join('S002V01TPROV', 'LINE_NUPR', '=', 'PROV_NUPR')
                 ->first([
-                    'ORCO_NUOR',
-                    'ORCO_ESTA',
-                    'ORCO_USRE',
-                    'ORCO_FERE',
-                    'ORCO_USMO',
-                    'ORCO_FEMO',
-                    'ORCO_FEAR',
-                    'LINE_IDLI',
-                    'LINE_OTPR',
-                    'LINE_OTCO',
-                    'DESP_IDDE',
-                    'DESP_NODE',
-                    'DESP_NOMB',
-                    'DESP_APPA',
-                    'DESP_APMA',
-                    'DESP_LADA',
-                    'DESP_TELE',
-                    'DESP_CORR',
-                    'DESP_CALL',
-                    'DESP_NUEX',
-                    'DESP_NUIN',
-                    'DESP_COPO',
-                    'DESP_LOCA',
-                    'DESP_COLO',
-                    'DESP_MUNI',
-                    'DESP_ENTI',
-                    'DESP_PAIS',
-                    'DESP_COME',
-                    'PROV_NUPR',
-                    'PROV_NOCO',
-                    'PROV_NOMB',
-                    'PROV_APPA',
-                    'PROV_APMA',
-                    'PROV_CORR',
-                    'PROV_LAD1',
-                    'PROV_TEL1',
-                    'PROV_LAD2',
-                    'PROV_TEL2',
-                    'PROV_XRFC',
-                    'PROV_XTAX',
-                    'PROV_CRFI',
-                    'PROV_TIPO',
-                    'PROV_TICO',
-                    'PROV_SIWE',
-                    'PROV_MEPA',
-                    'PROV_CALL',
-                    'PROV_NUEX',
-                    'PROV_NUIN',
-                    'PROV_COPO',
-                    'PROV_COLO',
-                    'PROV_MUNI',
-                    'PROV_LOCA',
-                    'PROV_ENTI',
-                    'PROV_PAIS',
+                    'ORCO_NUOR AS NUMERO_ORDEN',
+                    'ORCO_ESTA AS ESTADO_ORDEN',
+                    'ORCO_USRE AS USUARIO_REGISTRA',
+                    'ORCO_FERE AS FECHA_REGISTRA',
+                    'ORCO_USMO AS USUARIO_MODIFICA',
+                    'ORCO_FEMO AS FECHA_MODIFICA',
+                    'LINE_IDLI AS NUMERO_SOLICITUD_COMPRA',
+                    'LINE_OTPR AS ORDEN_TRABAJO_PREVENTIVO',
+                    'LINE_OTCO AS ORDEN_TRABAJO_CORRECTIVO',
+                    'DESP_IDDE AS ID_DESPACHO',
+                    'DESP_NODE AS NOMBRE_DESPACHO',
+                    'DESP_NOMB AS NOMBRE_RESPONSABLE',
+                    'DESP_APPA AS APELLIDO_PATERNO_RESPONSABLE',
+                    'DESP_APMA AS APELLIDO_MATERNO_RESPONSABLE',
+                    'DESP_LADA AS LADA',
+                    'DESP_TELE AS TELEFONO',
+                    'DESP_CORR AS CORREO_ELECTRONICO',
+                    'DESP_CALL AS CALLE',
+                    'DESP_NUEX AS NUMERO_EXTERIOR',
+                    'DESP_NUIN AS NUMERO_INTERIOR',
+                    'DESP_COPO AS CODIGO_POSTAL',
+                    'DESP_LOCA AS LOCALIDAD',
+                    'DESP_COLO AS COLONIA',
+                    'DESP_MUNI AS MUNICIPIO',
+                    'DESP_ENTI AS ENTIDAD_FEDERATIVA',
+                    'DESP_PAIS AS PAIS',
+                    'DESP_COME AS COMENTARIOS',
+                    'PROV_NUPR AS NUMERO_PROVEEDOR',
+                    'PROV_NOCO AS NOMBRE_COMERCIAL',
+                    'PROV_NOMB AS NOMBRE_PROVEEDOR',
+                    'PROV_APPA AS APELLIDO_PATERNO_PROVEEDOR',
+                    'PROV_APMA AS APELLIDO_MATERNO_PROVEEDOR',
+                    'PROV_CORR AS CORREO_ELECTRONICO_PROVEEDOR',
+                    'PROV_LAD1 AS LADA1_PROVEEDOR',
+                    'PROV_TEL1 AS TELEFONO1_PROVEEDOR',
+                    'PROV_LAD2 AS LADA2_PROVEEDOR',
+                    'PROV_TEL2 AS TELEFONO2_PROVEEDOR',
+                    'PROV_XRFC AS RFC',
+                    'PROV_XTAX AS TAXID',
                 ]);
         } catch ( \Throwable $th ) {
             return $this->responseController->makeResponse( 
@@ -308,13 +313,13 @@ class OrderController extends Controller {
             );
         }
 
-        if ( empty($getOrders) || is_null($getOrders) ) {
+        if ( empty($arrOrders) || is_null($arrOrders) ) {
             return $this->responseController->makeResponse( true, "ERR_ORDER_GET003: No se pudo obtener los datos de las órdenes de compra", [], 500);
         }
 
         try {
             $getArtitles = DB::table('S002V01TARSE')
-                ->where('ARSE_IDLI', '=', $getOrders['LINE_IDLI'])
+                ->where('ARSE_IDLI', '=', $arrOrders['NUMERO_SOLICITUD_COMPRA'])
                 ->where('ARSE_ESTA', '=', 'Activo')
                 ->where('ARSE_NULI', '=', $line)
                 ->where('ARTI_ESTA', '=', 'Activo')
@@ -336,31 +341,29 @@ class OrderController extends Controller {
                 ->join('S002V01TSUBF', 'ARTI_COSU', '=', 'SUBF_COSU')
                 ->join('S002V01TUNID', 'DEAR_IDUN', '=', 'UNID_IDUN')
                 ->get([
-                    'ARSE_IDAS',
-                    // 'ARSE_CANT',
-                    // 'ARSE_PRTO',
-                    'FAMI_COFA',
-                    'FAMI_NOFA',
-                    'SUBF_COSU',
-                    'SUBF_NOSU',
-                    'ARTI_IDAR',
-                    'ARTI_CODI',
-                    'ARTI_NOMB',
-                    'DEAR_IDDE',
-                    'DEAR_IMAG',
-                    'DEAR_DESC',
-                    'DEAR_CARA',
-                    'DEAR_COWE',
-                    'INAR_IDIN',
-                    'INAR_CODI',
-                    'INAR_MODE',
-                    'INAR_COMO',
-                    'INAR_PREC',
-                    'INAR_MOMI',
-                    'INAR_CARA',
-                    'UNID_IDUN',
-                    'UNID_NOMB',
-                    'UNID_ACRO',
+                    'ARSE_IDAS AS ID_ARTICULO_SELECCION',
+                    'FAMI_COFA AS CODIGO_FAMILIA',
+                    'FAMI_NOFA AS NOMBRE_FAMILIA',
+                    'SUBF_COSU AS CODIGO_SUBFAMILIA',
+                    'SUBF_NOSU AS NOMBRE_SUBFAMILIA',
+                    'ARTI_IDAR AS ID_ARTICULO',
+                    'ARTI_CODI AS CODIGO',
+                    'ARTI_NOMB AS NOMRE_ARTICULO',
+                    'DEAR_IDDE AS ID_DESCRIPCION',
+                    'DEAR_IMAG AS IMAGEN',
+                    'DEAR_DESC AS DESCRIPCION',
+                    'DEAR_CARA AS CARACTERISTICAS',
+                    'DEAR_COWE AS COMPRA_WEB',
+                    'INAR_IDIN AS ID_INFORMACION',
+                    'INAR_CODI AS CODIGO_ARTICULO',
+                    'INAR_MODE AS MODELO_ARTICULO',
+                    'INAR_COMO AS CODIGO_MONEDA',
+                    'INAR_PREC AS PRECIO',
+                    'INAR_MOMI AS MONTO_MINIMO',
+                    'INAR_CARA AS CARACTERISTIAS_INFORMACION',
+                    'UNID_IDUN AS ID_UNIDAD',
+                    'UNID_NOMB AS NOMBRE_UNIDAD',
+                    'UNID_ACRO AS ACRONIMO_UNIDAD',
                 ]);
             $arrArtitles = json_decode(json_encode($getArtitles), true);
         } catch (\Throwable $th) {
@@ -383,9 +386,7 @@ class OrderController extends Controller {
                 $arrArtitlesTemp[$index] = $artitles;
                 $arrArtitlesTemp[$index]['CANTIDAD'] = 1;
             } else {
-                if (
-                    in_array($artitles['INAR_IDIN'], array_column($arrArtitlesTemp, 'INAR_IDIN'))
-                ) {
+                if ( in_array($artitles['INAR_IDIN'], array_column($arrArtitlesTemp, 'INAR_IDIN')) ) {
                     $indexArtitle = array_search($artitles['INAR_IDIN'], array_column($arrArtitlesTemp, 'INAR_IDIN'));
                     $arrArtitlesTemp[$indexArtitle]['CANTIDAD'] = $arrArtitlesTemp[$indexArtitle]['CANTIDAD'] + 1;
                 } else {
@@ -398,7 +399,7 @@ class OrderController extends Controller {
         $arrArtitles = $arrArtitlesTemp;
 
         foreach ($arrArtitles as $keyArtitles => $artitles) {
-            $arrImageArtitle = json_decode($artitles['DEAR_IMAG']);
+            $arrImageArtitle = json_decode($artitles['IMAGEN']);
             $arrUrlImage = array();
             foreach ($arrImageArtitle as $key => $imagen) {
                 $responseDocument = $this->documentManagementController->privateGetPublicDocumentURL($imagen, $user, $line);
@@ -407,7 +408,7 @@ class OrderController extends Controller {
                 }
                 $arrUrlImage[] = $responseDocument['response']['public_uri'];
             }
-            $arrArtitles[$keyArtitles]['DEAR_IMAG'] = $arrUrlImage;
+            $arrArtitles[$keyArtitles]['IMAGEN'] = $arrUrlImage;
         }
 
         try {
@@ -415,15 +416,15 @@ class OrderController extends Controller {
                 ->where('HIOR_NUOR', '=', $order)
                 ->where('HIOR_NULI', '=', $line)
                 ->get([
-                    'HIOR_IDHO',
-                    'HIOR_ESOR',
-                    'HIOR_DESC',
-                    'HIOR_EVID',
-                    'HIOR_POEN',
-                    'HIOR_USRE',
-                    'HIOR_FERE',
-                    'HIOR_USMO',
-                    'HIOR_FEMO',
+                    'HIOR_IDHO AS ID_HISTORIA_ORDEN',
+                    'HIOR_ESOR AS ESTADO_ORDEN',
+                    'HIOR_DESC AS DESCRIPCION',
+                    'HIOR_EVID AS EVIDENCIA',
+                    'HIOR_POEN AS PORCENTAJE_ENTREGA',
+                    'HIOR_USRE AS USUARIO_REGISTRA',
+                    'HIOR_FERE AS FECHA_REGISTRA',
+                    'HIOR_USMO AS USUARIO_MODIFICA',
+                    'HIOR_FEMO AS FECHA_MODIFICA',
                 ]);
             $arrHistoryOrder = json_decode(json_encode($getHistoryOrder), true);
         } catch (\Throwable $th) {
@@ -438,9 +439,16 @@ class OrderController extends Controller {
             return $this->responseController->makeResponse( true, "ERR_ORDER_GET007: No se pudo obtener el historial de la orden de compra.", [], 500);
         }
 
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrHistoryOrder, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrHistoryOrder = $responseCheckLatestUpdate['response'];
+
+
         foreach ($arrHistoryOrder as $keyHistoryOrder => $historyOrder) {
-            if ( !is_null($historyOrder['HIOR_EVID']) ) {
-                $arrEvidence = json_decode($historyOrder['HIOR_EVID']);
+            if ( !is_null($historyOrder['EVIDENCIA']) ) {
+                $arrEvidence = json_decode($historyOrder['EVIDENCIA']);
                 $arrUrlImage = array();
                 foreach ($arrEvidence as $key => $imagen) {
                     $responseDocument = $this->documentManagementController->privateGetPublicDocumentURL($imagen, $user, $line);
@@ -449,18 +457,25 @@ class OrderController extends Controller {
                     }
                     $arrUrlImage[] = $responseDocument['response']['public_uri'];
                 }
-                $historyOrder['HIOR_EVID'] = $arrUrlImage;
+                $historyOrder['EVIDENCIA'] = $arrUrlImage;
             }
             $arrHistoryOrder[$keyHistoryOrder] = $historyOrder;
         }
 
-        $getOrders['ARTI'] = $arrArtitles;
-        $getOrders['HIST'] = $arrHistoryOrder;
+        $arrOrders['ARTI'] = $arrArtitles;
+        $arrOrders['HIST'] = $arrHistoryOrder;
 
-        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $getOrders);
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrOrders);
     }
 
     public function getLastSateOrder($order, $user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $arrOrderState = (array) DB::table('S002V01THIOR')
                 ->where('HIOR_NUOR', '=', $order)
@@ -468,19 +483,16 @@ class OrderController extends Controller {
                 ->where('HIOR_ESTA', '=', 'Activo')
                 ->orderBy('HIOR_FEAR', 'DESC')
                 ->first([
-                    'HIOR_IDHO',
-                    'HIOR_NULI',
-                    'HIOR_NUOR',
-                    'HIOR_ESOR',
-                    'HIOR_DESC',
-                    'HIOR_EVID',
-                    'HIOR_POEN',
-                    'HIOR_ESTA',
-                    'HIOR_USRE',
-                    'HIOR_FERE',
-                    'HIOR_USMO',
-                    'HIOR_FEMO',
-                    'HIOR_FEAR',
+                    'HIOR_IDHO AS ID_HISTORIA_ORDEN',
+                    'HIOR_ESOR AS ESTADO_ORDEN',
+                    'HIOR_DESC AS DESCRIPCION',
+                    'HIOR_EVID AS EVIDENCIA',
+                    'HIOR_POEN AS PORCENTAJE_ENTREGA',
+                    'HIOR_ESTA AS ESTADO_ORDEN',
+                    'HIOR_USRE AS USUARIO_REGISTRA',
+                    'HIOR_FERE AS FECHA_REGISTRA',
+                    'HIOR_USMO AS USUARIO_MODIFICA',
+                    'HIOR_FEMO AS FECHA_MODIFICA',
                 ]);
         } catch (\Throwable $th) {
             return $this->responseController->makeResponse(
@@ -491,6 +503,12 @@ class OrderController extends Controller {
             );
         }
 
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate([$arrOrderState], $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrOrderState = $responseCheckLatestUpdate['response'];
+
         return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrOrderState);
     }
 

+ 31 - 43
sistema-mantenimiento-back/app/Http/Controllers/OrderReceptionController.php

@@ -33,7 +33,13 @@ class OrderReceptionController extends Controller
     }
 
     public function getOrderReception($user, $line) {
-        DB::beginTransaction();
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $getOrderReception = DB::table('S002V01TORCO')
                 ->where('ORCO_NULI', '=', $line)
@@ -42,53 +48,35 @@ class OrderReceptionController extends Controller
                 ->where('ORCO_ESTA', '=', 'Recibido')
                 ->orWhere('ORCO_ESTA', '=', 'Facturado')
                 ->orWhere('ORCO_ESTA', '=', 'Devuelto')
-                ->join('S002V01TDESP','DESP_IDDE','=','ORCO_IDDE')
-                ->join('S002V01TLINE','LINE_IDLI','=','ORCO_IDLI')
+                ->join('S002V01TDESP','DESP_IDDE', '=', 'ORCO_IDDE')
+                ->join('S002V01TLINE','LINE_IDLI', '=', 'ORCO_IDLI')
+                ->join('S002V01TPROV','PROV_NUPR', '=', 'LINE_NUPR')
                 ->get([
-                    'ORCO_NUOR',
-                    'ORCO_ESTA',
-                    'ORCO_INEX',
-                    'ORCO_USRE',
-                    'ORCO_FERE',
-                    'ORCO_USMO',
-                    'ORCO_FEMO',
-                    'ORCO_FEAR',
-                    'LINE_IDLI',
-                    'LINE_NUPR',
-                    'LINE_OTPR',
-                    'LINE_OTCO',
-                    'DESP_IDDE',
-                    'DESP_NODE',
-                    'DESP_NOMB',
-                    'DESP_APPA',
-                    'DESP_APMA',
-                    'DESP_LADA',
-                    'DESP_TELE',
-                    'DESP_CORR',
-                    'DESP_CALL',
-                    'DESP_NUEX',
-                    'DESP_NUIN',
-                    'DESP_COPO',
-                    'DESP_COLO',
-                    'DESP_LOCA',
-                    'DESP_MUNI',
-                    'DESP_ENTI',
-                    'DESP_PAIS',
-                    'DESP_COME',
-                    'DESP_ESTA',
-                    'DESP_INEX',
-                    'DESP_USRE',
-                    'DESP_FERE',
-                    'DESP_USMO',
-                    'DESP_FEMO',
-                    'DESP_FEAR',
+                    'ORCO_NUOR AS NUMERO_ORDEN',
+                    'ORCO_ESTA AS ESTADO',
+                    'ORCO_USRE AS USUARIO_REGISTRA',
+                    'ORCO_FERE AS FECHA_REGISTRA',
+                    'ORCO_USMO AS USUARIO_MODIFICA',
+                    'ORCO_FEMO AS FECHA_MODIFICA',
+                    'LINE_IDLI AS NUMERO_SOLICITUD_COMPRA',
+                    'PROV_NUPR AS NUMERO_PROVEEDOR',
+                    'PROV_NOCO AS NOMBRE_COMERCIAL',
+                    'DESP_IDDE AS ID_DESPACHO',
+                    'DESP_NODE AS NOMBRE_DESPACHO',
                 ]);
+            $arrOrderReception = json_decode(json_encode($getOrderReception), true);
         } catch (\Throwable $th) {
-            DB::rollBack();
             return $this->responseController->makeResponse(true, "ERR_ORDER_RECEPTION_GET000: Ocurrió un error al obtener los datos.", $th->getMessage(), 500);
         }
-        DB::commit();
-        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $getOrderReception);
+
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrOrderReception, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrOrderReception = $responseCheckLatestUpdate['response'];
+
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrOrderReception);
     }
 
     public function getListArtitleReception($orderNumber, $user, $line) {

+ 47 - 16
sistema-mantenimiento-back/app/Http/Controllers/PartialDeliveriesController.php

@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
 use App\Http\Controllers\ResponseController;
 use App\Http\Controllers\EncryptionController;
 use App\Http\Controllers\ResourcesController;
+use App\Http\Controllers\DocumentManagementController;
 use Illuminate\Http\Request;
 use Illuminate\Support\Carbon;
 use Illuminate\Support\Facades\DB;
@@ -15,37 +16,67 @@ class PartialDeliveriesController extends Controller
     private $responseController;
     private $encController;
     private $resourcesController;
+    private $documentManagementController;
 
     public function __construct(){
         $this->responseController = new ResponseController();
         $this->encController = new EncryptionController();
         $this->resourcesController = new ResourcesController();
+        $this->documentManagementController = new DocumentManagementController();
     }
 
     public function getPartialDeliveries($user, $line) {
-        DB::beginTransaction();
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $getPartial = DB::table('S002V01THIOR')
                 ->where('HIOR_ESOR', '=', 'Recibido Parcial')
                 ->where('HIOR_NULI', '=', $line)
                 ->get([
-                    'HIOR_IDHO',
-                    'HIOR_NUOR',
-                    'HIOR_ESOR',
-                    'HIOR_DESC',
-                    'HIOR_EVID',
-                    'HIOR_POEN',
-                    'HIOR_ESTA',
-                    'HIOR_USRE',
-                    'HIOR_FERE',
-                    'HIOR_USMO',
-                    'HIOR_FEMO',
+                    'HIOR_IDHO AS ID_HISTORIAL_ORDEN',
+                    'HIOR_NUOR AS NUMERO_ORDEN',
+                    'HIOR_ESOR AS ESTADO_ORDEN',
+                    'HIOR_DESC AS DESCRIPCION',
+                    'HIOR_EVID AS EVIDENCIA',
+                    'HIOR_POEN AS PORCENTAJE_ENTREGA',
+                    'HIOR_ESTA AS ESTADO',
+                    'HIOR_USRE AS USUARIO_REGISTRA',
+                    'HIOR_FERE AS FECHA_REGISTRA',
+                    'HIOR_USMO AS USUARIO_MODIFICA',
+                    'HIOR_FEMO AS FECHA_MODIFICA',
                 ]);
+            $arrPartial = json_decode(json_encode($getPartial), true);
         } catch (\Throwable $th) {
-            DB::rollBack();
-            return $this->responseController->makeResponse(true, "ERR_PARTIAL_DELIVERIES_REG004: Ocurrió un error al momento de obtener los registros.", $th->getMessage(), 500);
+            return $this->responseController->makeResponse(true, "Ocurrió un error al momento de obtener los registros.", $th->getMessage(), 500);
+        }
+
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrPartial, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrPartial = $responseCheckLatestUpdate['response'];
+
+        foreach ($arrPartial as $keyHistoryOrder => $historyOrder) {
+            if ( !is_null($historyOrder['EVIDENCIA']) ) {
+                $arrEvidence = json_decode($historyOrder['EVIDENCIA']);
+                $arrUrlImage = array();
+                foreach ($arrEvidence as $key => $imagen) {
+                    $responseDocument = $this->documentManagementController->privateGetPublicDocumentURL($imagen, $user, $line);
+                    if ($responseDocument['error']) {
+                        return $this->responseController->makeResponse(true, "Ocurrió un error al obtener la URL de la imágen.", [], 500);
+                    }
+                    $arrUrlImage[] = $responseDocument['response']['public_uri'];
+                }
+                $historyOrder['EVIDENCIA'] = $arrUrlImage;
+            }
+            $arrPartial[$keyHistoryOrder] = $historyOrder;
         }
-        DB::commit();
-        return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $getPartial);
+
+
+        return $this->responseController->makeResponse(false, "ÉXITO: Consulta exitosa", $arrPartial);
     }
 }

+ 15 - 1
sistema-mantenimiento-back/app/Http/Controllers/ProviderController.php

@@ -39,7 +39,14 @@ class ProviderController extends Controller{
         $this->documentManagementController = new DocumentManagementController();
     }
 
-    public function getAllProvider($user, $line){
+    public function getAllProvider($user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $arrProvider = DB::table('S002V01TPROV')
                 ->where('PROV_NULI', '=', $line)
@@ -182,6 +189,13 @@ class ProviderController extends Controller{
             return $this->responseController->makeResponse(true, "ERR_PROVIDER_GET000: No se pudo realizar la consulta a la base.", $th->getMessage(), 500);
         }
 
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrResponse, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrResponse = $responseCheckLatestUpdate['response'];
+
+
         return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrResponse);
     }
 

+ 41 - 0
sistema-mantenimiento-back/app/Http/Controllers/StockController.php

@@ -809,6 +809,13 @@ class StockController extends Controller
     }
 
     public function getAreaByWarehouse($idWarehouse, $user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $idWarehouse = $this->encController->decrypt($idWarehouse);
         } catch (\Throwable $th) {
@@ -860,6 +867,12 @@ class StockController extends Controller
             $arrArea[$key] = $value;
         }
 
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrArea, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrArea = $responseCheckLatestUpdate['response'];
+
         return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrArea);
     }
     public function getAreaById($idArea, $user, $line) {
@@ -1245,6 +1258,13 @@ class StockController extends Controller
     }
 
     public function getLevelByAreaWarehouse($idWarehouse, $idArea, $user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $idWarehouse = $this->encController->decrypt($idWarehouse);
         } catch (\Throwable $th) {
@@ -1305,6 +1325,12 @@ class StockController extends Controller
             $arrLevel[$key] = $value;
         }
 
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrLevel, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrLevel = $responseCheckLatestUpdate['response'];
+
         return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrLevel);
     }
     public function getLevelById( $idLevel, $user, $line ) {
@@ -1748,6 +1774,13 @@ class StockController extends Controller
     }
 
     public function getZoneByLevelAreaWarehouse($idWarehouse, $idArea, $idLevel, $user, $line) {
+
+        $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line);
+        if ($arrResponseCheckUser['error']) {
+            DB::rollBack();
+            return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401);
+        }
+
         try {
             $idWarehouse = $this->encController->decrypt($idWarehouse);
         } catch (\Throwable $th) {
@@ -1819,6 +1852,14 @@ class StockController extends Controller
             $arrZone[$key] = $value;
         }
 
+
+        $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrZone, $line);
+        if ($responseCheckLatestUpdate['error']) {
+            return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500);
+        }
+        $arrZone = $responseCheckLatestUpdate['response'];
+
+
         return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $arrZone);
     }
     public function getZoneById($idZone, $user, $line) {

+ 5 - 0
sistema-mantenimiento-back/app/Http/Controllers/TableController.php

@@ -61,6 +61,11 @@ class TableController extends Controller
         }
         $arrTables = $responseCheckLatestUpdate['response'];
 
+        foreach ($arrTables as $key => $table) {
+            $arrColumns = DB::getSchemaBuilder()->getColumnListing($table['NOMBRE_TABLA']);
+            $table['COLUMNS'] = $arrColumns;
+            $arrTables[$key] = $table;
+        }
 
         return $this->responseController->makeResponse(false, "ÉXITO", $arrTables);
     }

+ 14 - 13
sistema-mantenimiento-back/routes/api.php

@@ -313,8 +313,9 @@ Route::middleware(['jwt.auth'])->group(function(){
     Route::post('modulo/modifica',                                                      [ModuleController::class, 'updateModule']);
     Route::post('modulo/elimina',                                                       [ModuleController::class, 'deleteModule']);
 
-    // Module: Dynamic Forms
+    
     Route::get ('form/get-forms/{user}/{line}',                                         [DynamicFormController::class, 'getForms']);
+    
     Route::get ('form/consulta-form-workflow/{user}/{line}',                            [DynamicFormController::class, 'getFormWorkflow']);
     Route::get ('form/consulta-data/{codigo_form}/{user}/{line}',                       [DynamicFormController::class, 'getDataForm']);
     Route::post('form/registra',                                                        [DynamicFormController::class, 'createForm']);
@@ -405,12 +406,12 @@ Route::middleware(['jwt.auth'])->group(function(){
     Route::get ('acquisition-management/dispatch/get-dispatch-active/{user}/{line}',             [DispatchController::class, 'getDispatchActive']);
     Route::get ('acquisition-management/dispatch/get-dispatch-by-id/{idDispatch}/{user}/{line}', [DispatchController::class, 'getDispatchById']);
     
-    Route::post('acquisition-management/dispatch/register-dispatch',                                            [DispatchController::class, 'registerDispatch']);
-    Route::get ('acquisition-management/dispatch/get-order-reception/{user}/{line}',                            [OrderReceptionController::class, 'getOrderReception']);
-    Route::get ('acquisition-management/dispatch/get-information-artitle-equipment/{orderNumber}/{idInformation}/{user}/{line}',                            [OrderReceptionController::class, 'getInformartionArtitleToEquipment']);
-    Route::get ('acquisition-management/dispatch/get-list-artitle-reception/{orderNumber}/{user}/{line}',       [OrderReceptionController::class, 'getListArtitleReception']);
-    Route::get ('acquisition-management/dispatch/generate-sheet-delivery-list-xls/{orderNumber}/{user}/{line}', [OrderReceptionController::class, 'generateSheetDeliveryListXLS']);
-    Route::get ('acquisition-management/dispatch/generate-sheet-delivery-list-pdf/{orderNumber}/{user}/{line}', [OrderReceptionController::class, 'generateSheetDeliveryListPDF']);
+    Route::post('acquisition-management/dispatch/register-dispatch',                                                                [DispatchController::class, 'registerDispatch']);
+    Route::get ('acquisition-management/dispatch/get-order-reception/{user}/{line}',                                                [OrderReceptionController::class, 'getOrderReception']);
+    Route::get ('acquisition-management/dispatch/get-information-artitle-equipment/{orderNumber}/{idInformation}/{user}/{line}',    [OrderReceptionController::class, 'getInformartionArtitleToEquipment']);
+    Route::get ('acquisition-management/dispatch/get-list-artitle-reception/{orderNumber}/{user}/{line}',                           [OrderReceptionController::class, 'getListArtitleReception']);
+    Route::get ('acquisition-management/dispatch/generate-sheet-delivery-list-xls/{orderNumber}/{user}/{line}',                     [OrderReceptionController::class, 'generateSheetDeliveryListXLS']);
+    Route::get ('acquisition-management/dispatch/generate-sheet-delivery-list-pdf/{orderNumber}/{user}/{line}',                     [OrderReceptionController::class, 'generateSheetDeliveryListPDF']);
 
     Route::post('acquisition-management/dispatch/update-dispatch',                            [DispatchController::class, 'updateDispatch']);
     Route::post('acquisition-management/dispatch/delete-dispatch',                            [DispatchController::class, 'deleteDispatch']);
@@ -421,13 +422,13 @@ Route::middleware(['jwt.auth'])->group(function(){
     Route::post('acquisition-management/invoice/compare-invoice',                             [InvoiceControlController::class, 'compareInvoice']);
 
     // Module: ANFA
-    Route::get ('failure-analysis/get-list-failure/{user}/{line}',                       [FailureListController::class,  'getFailures']);
-    Route::get ('failure-analysis/get-list-failure-actives/{user}/{line}',               [FailureListController::class,  'getFailuresActives']);
-    Route::get ('failure-analysis/get-list-failure-by-id/{idFailure}/{user}/{line}',     [FailureListController::class,  'getFailureById']);
+    Route::get ('failure-analysis/get-list-failure/{user}/{line}',                                      [FailureListController::class,  'getFailures']);
+    Route::get ('failure-analysis/get-list-failure-actives/{user}/{line}',                              [FailureListController::class,  'getFailuresActives']);
+    Route::get ('failure-analysis/get-list-failure-by-id/{idFailure}/{user}/{line}',                    [FailureListController::class,  'getFailureById']);
     Route::get ('failure-analysis/get-list-failure-by-classification/{idFailure}/{user}/{line}',        [FailureListController::class,  'getFailureListByClassification']);
-    Route::post('failure-analysis/register-list-failure',                                [FailureListController::class,  'registerFailures']);
-    Route::post('failure-analysis/update-list-failure',                                  [FailureListController::class,  'updateFailures']);
-    Route::post('failure-analysis/delete-list-failure',                                  [FailureListController::class,  'deleteFailures']);
+    Route::post('failure-analysis/register-list-failure',                                               [FailureListController::class,  'registerFailures']);
+    Route::post('failure-analysis/update-list-failure',                                                 [FailureListController::class,  'updateFailures']);
+    Route::post('failure-analysis/delete-list-failure',                                                 [FailureListController::class,  'deleteFailures']);
 
     Route::get ('failure-analysis/get-symptoms/{user}/{line}',                              [SymptomListController::class,  'getSymptoms']);
     Route::get ('failure-analysis/get-symptoms-actives/{user}/{line}',                      [SymptomListController::class,  'getSymptomsActives']);