/** @function fleets() ** @param <set true to return data as variable> <set true to set the variables in view> ** @var for both modes the returned var are in set mode :: $fleets = array($fleet,$flota) **/ function fleets($return = null, $set = null) { App::Import('Shell', 'Shell'); App::Import('Vendor', array('shells/flotas')); $fleet = new FlotasShell(new Object()); $fleet->initialize(); $fleets = $fleet->fleets(true, false); pr($fleets); exit; // $_append = $this->Empresas(); // $fleets = $areas = $this->areas(); // $SearchFleets = $areas; // pr($fleets); // exit(); foreach ($fleets as $id_empresa => $data) { $model[$id_empresa] = 'Flotas' . $_append[$id_empresa]; foreach ($data as $id_area => $area) { // pr($area); $flota_[$id_empresa][trim($area)] = $this->{$model}[$id_empresa]->find('all'); // $SearchFleets[$id_empresa][trim($area)] = $flota_[$id_area]['TipoOperacion'.$_append[$id_empresa]]; // $TipoOperacion[$id_empresa][$id_area] = 'TipoOperacion'.$data; $Flotas[$id_empresa][$id_area] = 'Flotas' . $data; } } foreach ($flota_ as $id_empresa => $area) { // pr($area); foreach ($area as $area_name => $desc) { // pr($desc); foreach ($desc as $key => $data) { foreach ($data['TipoOperacion' . $_append[$id_empresa]] as $id_flota => $values) { $SearchFleets[$id_empresa][$area_name][$id_flota + 1][$values['id_tipo_operacion']] = $values['tipo_operacion']; } } } } pr($SearchFleets); // pr($model); // pr($flota_); exit; // pr($TipoOperacion); // pr($Flotas); foreach ($SearchFleets as $id_empresa => $flotas) { pr($flotas); foreach ($flotas as $id_flota => $flota) { // pr($id_flota); if (!isset($fleet[$id_empresa][$id_flota])) { $fleet[$id_empresa][$id_flota] = null; } $fleet[$id_empresa][$flota[$Flotas[$id_empresa]]['id_flota']] = trim($flota[$Flotas[$id_empresa]]['nombre']); foreach ($flota as $flotaEmp => $data) { if ($flotaEmp == $TipoOperacion[$id_empresa]) { foreach ($data as $idx => $value) { // pr($fleet[$id_empresa][$id_flota]); // pr($value['tipo_operacion']); // $fleet[$id_empresa][$id_flota] .= ','.$value['id_tipo_operacion']; // $fleet[$id_empresa] .= $value['id_tipo_operacion']; } } } } } // End of SearchFleets // pr($fleet); // pr($flt); exit; // $flota['0'] = null; for ($i = 1; $i <= count($area); $i++) { $flota[$i] = null; } foreach ($SearchFleets as $key => $value) { if (!empty($SearchFleets[$key][$TipoOperacion])) { $fleet[$SearchFleets[$key][$Flotas]['id_area']][$SearchFleets[$key][$Flotas]['id_flota']] = $SearchFleets[$key][$Flotas]['nombre']; foreach ($SearchFleets[$key][$TipoOperacion] as $k => $v) { $fleet[$SearchFleets[$key][$Flotas]['id_area']][$SearchFleets[$key][$Flotas]['id_flota']] .= ',' . $SearchFleets[$key][$TipoOperacion][$k]['id_tipo_operacion']; $flota[$SearchFleets[$key][$Flotas]['id_area']] .= ',' . $SearchFleets[$key][$TipoOperacion][$k]['id_tipo_operacion']; } } } $fleets['fleet'] = $fleet; $fleets['flota'] = $flota; // pr($area); // pr($fleets); // exit(); if ($return == false && $set == true) { $this->set('fleets', $fleets); } elseif ($return == true && $set == false) { return $fleets; } }
function tachionDetail($indicator = null) { // pr($indicator);exit(); // pr($this->Flotas->find('all')); $idx_empresa = $_SESSION['Auth']['User']['id_empresa']; $year = date('Y'); App::Import('Shell', 'Shell'); App::Import('Vendor', array('shells/sniffer_data')); $myShell = new SnifferDataShell(new Object()); $myShell->initialize(); // Select the method to call $Shell = $myShell->main($view = true, $debug = false); // pr($Shell['Toneladas']);exit(); App::Import('Shell', 'Shell'); App::Import('Vendor', array('shells/calendar')); $myCalendar = new CalendarShell(new Object()); $myCalendar->initialize(); $months = $myCalendar->months(true, false, $year); App::Import('Shell', 'Shell'); App::Import('Vendor', array('shells/flotas')); $fleet = new FlotasShell(new Object()); $fleet->initialize(); $fleets = $fleet->fleets(true, false); pr($fleets); // exit(); App::import('Controller', 'Holiday'); $Holiday = new HolidayController(); $Holiday->constructClasses(); $startDate = date('Y-m-d', mktime('0', '0', '0', date('n'), '01', date('Y'))); // for CurrentMonth $endDate = date('Y-m-d', mktime('0', '0', '0', date('n'), date('t'), date('Y'))); // for CurrentMonth $GoToWork = $Holiday->RetrieveHolidays($startDate, $endDate, $debug = true, $year = date('Y')); // pr($GoToWork); $toneladas_labour_days = $Shell['Toneladas']['DailyReport']['report_day']; $kilometros_labour_days = $Shell['kms']['report_daily']; $ingresos_labour_days = $Shell['ingresos']['report_daily']; foreach ($toneladas_labour_days as $id_empresa => $areas) { foreach ($areas as $area_name => $meses) { foreach ($meses as $NombreMes => $fracciones) { foreach ($fracciones as $NombreFraccion => $dias) { if (!empty($dias)) { foreach ($dias as $id_dia => $tons_value) { if ($NombreMes == date('M')) { if (!empty($tons_value)) { $dias_toneladas[$id_empresa][$area_name][$NombreMes][$NombreFraccion][$id_dia] = $tons_value; } } } } } } } } foreach ($kilometros_labour_days as $id_empresa => $areas) { foreach ($areas as $area_name => $meses) { foreach ($meses as $NombreMes => $fracciones) { foreach ($fracciones as $NombreFraccion => $dias) { foreach ($dias as $id_dia => $kms_value) { if ($NombreMes == date('M')) { if (!empty($kms_value)) { $dias_kilometros[$id_empresa][$area_name][$NombreMes][$NombreFraccion][$id_dia] = $kms_value; } } } } } } } foreach ($ingresos_labour_days as $id_empresa => $areas) { foreach ($areas as $area_name => $meses) { foreach ($meses as $NombreMes => $fracciones) { foreach ($fracciones as $NombreFraccion => $dias) { foreach ($dias as $id_dia => $ingresos_value) { if ($NombreMes == date('M')) { if (!empty($ingresos_value)) { $dias_ingresos[$id_empresa][$area_name][$NombreMes][$NombreFraccion][$id_dia] = $ingresos_value; } } } } } } } $promedio['toneladas'] = $dias_toneladas; $promedio['kilometros'] = $dias_kilometros; $promedio['ingresos'] = $dias_ingresos; foreach ($promedio as $indicador => $dias_indicador) { foreach ($dias_indicador as $id_empresa => $area) { foreach ($area as $area_name => $meses) { foreach ($meses as $meses_name => $fractiones) { foreach ($fractiones as $fractiones_name => $days_pr) { $acum_men = array_sum($days_pr); // pr($acum_men); $dias_laborados = count($days_pr); $projection[$indicador][$id_empresa][$area_name][$meses_name][$fractiones_name] = $acum_men / $dias_laborados * $GoToWork; } } } } } pr($projection); exit; if (!isset($indicator)) { $this->set('projection', $projection); } else { $this->set('projection', $projection[$indicator]); } $this->set('months', $months); $today = null; // exit(); }