DelayAnalysisController.php 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Http\Controllers\ResponseController;
  4. use App\Http\Controllers\EncryptionController;
  5. use App\Http\Controllers\ResourcesController;
  6. use Illuminate\Http\Request;
  7. use Illuminate\Support\Carbon;
  8. use Illuminate\Support\Facades\DB;
  9. use Illuminate\Support\Facades\Validator;
  10. class DelayAnalysisController extends Controller
  11. {
  12. private $responseController;
  13. private $encController;
  14. private $resourcesController;
  15. public function __construct(){
  16. $this->responseController = new ResponseController();
  17. $this->encController = new EncryptionController();
  18. $this->resourcesController = new ResourcesController();
  19. }
  20. public function getDelayAnalysis($user, $line) {
  21. try {
  22. $getDelayAnalysis = DB::table('S002V01TANRE')
  23. ->where('ANRE_NULI', '=', $line)
  24. ->join('S002V01TORCO', 'ORCO_NUOR', '=', 'ANRE_NUOR')
  25. ->join('S002V01TLINE', 'LINE_NUPR', '=', 'ORCO_IDLI')
  26. ->join('S002V01TPROV', 'PROV_NUPR', '=', 'LINE_NUPR')
  27. ->join('S002V01TREFI', 'REFI_CRFI', '=', 'PROV_CRFI')
  28. ->get([
  29. 'ANRE_IDAR',
  30. 'ANRE_NUOR',
  31. 'ANRE_DESC',
  32. 'ANRE_TIPO',
  33. 'ANRE_FEEN',
  34. 'ANRE_ESTA',
  35. 'ANRE_USRE',
  36. 'ANRE_FERE',
  37. 'ANRE_USMO',
  38. 'ANRE_FEMO',
  39. 'ORCO_NUOR',
  40. 'ORCO_IDDE',
  41. 'PROV_NUPR',
  42. 'PROV_NOCO',
  43. 'PROV_NOMB',
  44. 'PROV_APPA',
  45. 'PROV_APMA',
  46. 'PROV_CORR',
  47. 'PROV_LAD1',
  48. 'PROV_TEL1',
  49. 'PROV_LAD2',
  50. 'PROV_TEL2',
  51. 'PROV_XRFC',
  52. 'PROV_XTAX',
  53. 'REFI_CRFI',
  54. 'REFI_DRFI',
  55. 'PROV_TIPO',
  56. 'PROV_SIWE',
  57. 'PROV_MEPA',
  58. ]);
  59. } catch (\Throwable $th) {
  60. return $this->responseController->makeResponse(true, "ERR_DELAY_ANALYSIS_GET000: Ocurrió un error al momento de obtener los registros", $th->getMessage(), 500);
  61. }
  62. return $this->responseController->makeResponse(false, "ÉXITO: Consulta Exitosa", $getDelayAnalysis);
  63. }
  64. }