function getUnidades($id_area = null, $id_flota = null, $status = null, $id_empresa = null) { // status_unidad, estatus, id_flota,id_operador,id_area,id_status // $conditions['MssqlPersonalPersonalTbk.id_area'] = $id_area; if (empty($id_empresa)) { $id_empresa = $_SESSION['Auth']['User']['id_empresa']; } $config = array('personal', 'unidades'); $fields = array($config['0'] => array('1' => 'MssqlPersonalPersonalTbk.id_personal', '2' => 'MssqlPersonalPersonalTbk.id_area', '3' => 'MssqlPersonalPersonalTbk.id_empresa', '4' => 'MssqlPersonalPersonalTbk.nombre')); $conditions = array('MssqlPersonalPersonalTbk.id_categoria' => unitConfig()[$id_empresa]['categoriaOperador'], 'MssqlPersonalPersonalTbk.estado' => 'A'); $getPersonal = $this->MssqlPersonalPersonalTbk->find('all', array('fields' => array($fields[$config['0']]['1'], $fields[$config['0']]['2'], $fields[$config['0']]['3'], $fields[$config['0']]['4']), 'conditions' => $conditions)); foreach ($getPersonal as $upKey => $Data) { $getPersonal = Set::combine($getPersonal, '{n}.' . $fields[$config['0']]['1'], '{n}'); } // $tiposUnidad = array('TiposUnidad'=>array('9','1')); $tiposUnidad = unitConfig(); $field = array('fields' => array('id_unidad', 'tipo_unidad', 'status_unidad', 'estatus', 'id_flota', 'id_operador', 'id_area', 'id_status')); $conditionsUnits['MssqlUnidadesAsignadasTbk.tipo_unidad'] = $tiposUnidad[$id_empresa]['TiposUnidad']; $conditionsUnits['MssqlUnidadesAsignadasTbk.estatus'] = 'A'; $conditionsUnits['MssqlUnidadesAsignadasTbk.id_unidad <>'] = $tiposUnidad[$id_empresa]['id_unidad']; // $conditionsUnits = array('MssqlUnidadesAsignadasTbk.tipo_unidad'=>array($tiposUnidad[$id_empresa]['TiposUnidad'])); // $conditionsUnits = array('MssqlUnidadesAsignadasTbk.estatus'=>array('A')); // $conditionsUnits = array('NOT' => array('MssqlUnidadesAsignadasTbk.id_unidad'=>array('TT300'))); if (!empty($status)) { $conditionsUnits['MssqlUnidadesAsignadasTbk.id_status'] = $status; } if (!empty($id_flota)) { $conditionsUnits['MssqlUnidadesAsignadasTbk.id_flota'] = $id_flota; } if (!empty($id_area)) { $conditionsUnits['MssqlUnidadesAsignadasTbk.id_area'] = $id_area; } $getUnidades = $this->find('all', array('fields' => $field['fields'], 'conditions' => $conditionsUnits, 'order' => 'id_status')); $allUnits = count($getUnidades); $operCount = null; foreach ($getUnidades as $upKey => $Data) { if (!isset($getUnidades[$upKey]['MssqlUnidadesAsignadasTbk']['nombre_operador'])) { $getUnidades[$upKey]['MssqlUnidadesAsignadasTbk']['nombre_operador'] = null; } if (isset($getPersonal[$getUnidades[$upKey]['MssqlUnidadesAsignadasTbk']['id_operador']]['MssqlPersonalPersonalTbk']['nombre'])) { $getUnidades[$upKey]['MssqlUnidadesAsignadasTbk']['nombre_operador'] = utf8_encode($getPersonal[$getUnidades[$upKey]['MssqlUnidadesAsignadasTbk']['id_operador']]['MssqlPersonalPersonalTbk']['nombre']); } if (isset($getPersonal[$getUnidades[$upKey]['MssqlUnidadesAsignadasTbk']['id_operador']]['MssqlPersonalPersonalTbk']['nombre'])) { $operCount++; } } $unidades['personalCount'] = $operCount; $unidades['allUnits'] = $allUnits; $unidades['unidades'] = $getUnidades; return $unidades; }
function getPersonal($id_area = null, $id_empresa = null) { if (empty($id_empresa)) { $id_empresa = $_SESSION['Auth']['User']['id_empresa']; } $config = array('personal', 'unidades'); $fields = array($config['0'] => array('1' => 'MssqlPersonalPersonalAtm.id_personal', '2' => 'MssqlPersonalPersonalAtm.id_area', '3' => 'MssqlPersonalPersonalAtm.id_empresa', '4' => 'MssqlPersonalPersonalAtm.nombre')); $conditions = array('MssqlPersonalPersonalAtm.id_categoria' => unitConfig()[$id_empresa]['categoriaOperador'], 'MssqlPersonalPersonalAtm.estado' => 'A'); if (!empty($id_area)) { $conditions['MssqlPersonalPersonalAtm.id_area'] = $id_area; } $getPersonal = $this->find('all', array('fields' => array($fields[$config['0']]['1'], $fields[$config['0']]['2'], $fields[$config['0']]['3'], $fields[$config['0']]['4']), 'conditions' => $conditions)); return $getPersonal; }
function getMssqlTraficoViaje($id_area = null, $no_viaje = null, $fecha = null, $id_empresa = null) { /** Define some variables */ if (!isset($no_guia)) { $no_guia = null; } if (empty($id_empresa)) { $id_empresa = $_SESSION['Auth']['User']['id_empresa']; } if (empty($id_area)) { $id_area = '1'; } if (empty($fecha)) { $fecha = date('Y-m-d'); } $getDate = explode('-', $fecha); // var_dump($getDate); $fieldTraficoViaje = array('MssqlViajesRtTei.no_viaje'); $conditions['MssqlViajesRtTei.id_area'] = $id_area; // $conditions['MssqlViajesRtTei.no_viaje'] = $no_viaje; $conditions['YEAR(MssqlViajesRtTei.f_despachado)'] = $getDate['0']; $conditions['MONTH(MssqlViajesRtTei.f_despachado)'] = $getDate['1']; $conditions['DAY(MssqlViajesRtTei.f_despachado)'] = $getDate['2']; // $conditions['DAY(MssqlViajesRtTei.f_despachado)'] = '20'; $fieldsTraficoViaje = array('id_area', 'no_viaje', 'f_despachado', 'id_personal', 'id_unidad', 'status_viaje', 'id_configuracionviaje', 'id_origen'); $getTraficoViaje = $this->find('all', array('fields' => $fieldsTraficoViaje, 'conditions' => $conditions)); // pr($getTraficoViaje); // exit(); foreach ($getTraficoViaje as $upKey => $Data) { $getTraficoViaje = Set::combine($getTraficoViaje, '{n}.' . $fieldTraficoViaje['0'], '{n}'); } $traficoViaje['trafico_viaje'] = $getTraficoViaje; foreach ($getTraficoViaje as $numero_viaje => $viajeContents) { $no_viaje[] = $numero_viaje; } // pr($getTraficoViaje); // pr($no_viaje); // exit(); $fieldTraficoRengloViaje = array('MssqlTraficoRenglonViajeTei.no_viaje'); $conditionsTraficoRenglonViaje['MssqlTraficoRenglonViajeTei.id_area'] = $id_area; $conditionsTraficoRenglonViaje['MssqlTraficoRenglonViajeTei.no_viaje'] = $no_viaje; $fieldsTraficoRenglonViaje = array('MssqlTraficoRenglonViajeTei.id_area', 'MssqlTraficoRenglonViajeTei.no_viaje', 'MssqlTraficoRenglonViajeTei.no_guia'); App::import('model', 'MssqlTraficoRenglonViajeTei'); $TraficoRenglonViaje = new MssqlTraficoRenglonViajeTei(); $getTraficoRenglonViaje = $TraficoRenglonViaje->find('all', array('conditions' => $conditionsTraficoRenglonViaje, 'fields' => $fieldsTraficoRenglonViaje)); foreach ($getTraficoRenglonViaje as $upKey => $Data) { $getTraficoRenglonViaje = Set::combine($getTraficoRenglonViaje, '{n}.' . $fieldTraficoRengloViaje['0'], '{n}'); } $traficoViaje['traficoRenglonViaje'] = $getTraficoRenglonViaje; // pr($getTraficoRenglonViaje); foreach ($getTraficoRenglonViaje as $numeroViaje => $ViajeContent) { $no_guia[] = $ViajeContent['MssqlTraficoRenglonViajeTei']['no_guia']; } if (!isset($no_guia)) { return null; break; } $fieldTraficoRenglonGuia = array('MssqlTraficoRenglonGuiaTei.no_guia'); $conditionsTraficoRenglonGuia['MssqlTraficoRenglonGuiaTei.id_area'] = $id_area; if (isset($no_guia) or empty($no_guia)) { $conditionsTraficoRenglonGuia['MssqlTraficoRenglonGuiaTei.no_guia'] = $no_guia; } $fieldsTraficoRenglonGuia = array('MssqlTraficoRenglonGuiaTei.no_guia', 'MssqlTraficoRenglonGuiaTei.id_area', 'MssqlTraficoRenglonGuiaTei.id_fraccion', 'MssqlTraficoRenglonGuiaTei.peso', 'MssqlTraficoRenglonGuiaTei.peso_estimado', 'MssqlTraficoRenglonGuiaTei.descripcion_producto'); App::import('model', 'MssqlTraficoRenglonGuiaTei'); $TraficoRenglonGuia = new MssqlTraficoRenglonGuiaTei(); $getTraficoRenglonGuia = $TraficoRenglonGuia->find('all', array('conditions' => $conditionsTraficoRenglonGuia, 'fields' => $fieldsTraficoRenglonGuia)); foreach ($getTraficoRenglonGuia as $upKey => $Data) { $getTraficoRenglonGuia = Set::combine($getTraficoRenglonGuia, '{n}.' . $fieldTraficoRenglonGuia['0'], '{n}'); } // pr($getTraficoRenglonGuia); // exit(); $traficoViaje['traficoRenglonGuia'] = $getTraficoRenglonGuia; $fieldTraficoGuia = array('MssqlTraficoGuiaTei.no_guia'); $conditionsTraficoGuia['MssqlTraficoGuiaTei.no_guia'] = $no_guia; $conditionsTraficoGuia['MssqlTraficoGuiaTei.id_area'] = $id_area; $conditionsTraficoGuia['MssqlTraficoGuiaTei.no_viaje'] = $no_viaje; // $conditionsTraficoGuia['MssqlTraficoGuiaTei.prestamo'] = 'N'; $conditionsTraficoGuia['MssqlTraficoGuiaTei.status_guia <>'] = 'B'; $fieldsTraficoGuia = array('MssqlTraficoGuiaTei.no_guia', 'MssqlTraficoGuiaTei.id_area', 'MssqlTraficoGuiaTei.tipo_doc', 'MssqlTraficoGuiaTei.status_guia', 'MssqlTraficoGuiaTei.id_fraccion', 'MssqlTraficoGuiaTei.num_guia', 'MssqlTraficoGuiaTei.id_unidad', 'MssqlTraficoGuiaTei.no_viaje', 'MssqlTraficoGuiaTei.id_fraccion', 'MssqlTraficoGuiaTei.prestamo'); App::import('model', 'MssqlTraficoGuiaTei'); $TraficoGuia = new MssqlTraficoGuiaTei(); // exit(); $getTraficoGuia = $TraficoGuia->find('all', array('conditions' => $conditionsTraficoGuia, 'fields' => $fieldsTraficoGuia)); // pr($getTraficoGuia); foreach ($getTraficoGuia as $upKey => $Data) { $getTraficoGuia = Set::combine($getTraficoGuia, '{n}.' . $fieldTraficoGuia['0'], '{n}'); } // pr($getTraficoGuia); $traficoViaje['traficoGuia'] = $getTraficoGuia; /** NOTE set the tons according with is no of viaje remenber they have a id_configuracionviaje but ....**/ /** NOTE don't forget commit this **/ foreach ($traficoViaje['traficoGuia'] as $numero_no_de_guia => $sqlTraficoGuia) { // pr($sqlTraficoGuia); $no_of_guia['MssqlTraficoRenglonGuiaTei.no_guia'][] = $sqlTraficoGuia['MssqlTraficoGuiaTei']['no_guia']; $noOfGuia['no_guia'][$sqlTraficoGuia['MssqlTraficoGuiaTei']['no_viaje']][] = $sqlTraficoGuia['MssqlTraficoGuiaTei']['no_guia']; } $no_of_guia['MssqlTraficoRenglonGuiaTei.id_area'] = $id_area; // pr($no_of_guia); // pr($noOfGuia); $peso = $TraficoRenglonGuia->find('all', array('conditions' => $no_of_guia, 'fields' => $fieldsTraficoRenglonGuia)); foreach ($peso as $idCount => $tonsContent) { if (!isset($toneladas[$tonsContent['MssqlTraficoRenglonGuiaTei']['no_guia']])) { $toneladasNoOfGuia[$tonsContent['MssqlTraficoRenglonGuiaTei']['no_guia']] = null; } $toneladasNoOfGuia[$tonsContent['MssqlTraficoRenglonGuiaTei']['no_guia']] += $tonsContent['MssqlTraficoRenglonGuiaTei']['peso'] + $tonsContent['MssqlTraficoRenglonGuiaTei']['peso_estimado']; } // pr($toneladasNoOfGuia); foreach ($noOfGuia['no_guia'] as $noViaje => $noGuiaContent) { foreach ($noGuiaContent as $inx => $noGuia) { if (!isset($toneladas[$noViaje])) { $toneladas[$noViaje] = null; } $toneladas[$noViaje] += $toneladasNoOfGuia[$noGuia]; } } // // // // // // // // // // // // // // // // // // // // // // // // // App::import('model', 'MssqlMttoUnidadesTei'); $MttoUnidades = new MssqlMttoUnidadesTei(); // pr(unitConfig()[$id_empresa]['id_unidad']); $fieldMttoUnidades = array('MssqlMttoUnidadesTei.id_unidad'); $conditionsMttoUnidades['MssqlMttoUnidadesTei.id_area'] = $id_area; $conditionsMttoUnidades['MssqlMttoUnidadesTei.tipo_unidad'] = unitConfig()[$id_empresa]['TiposUnidad']; $conditionsMttoUnidades['MssqlMttoUnidadesTei.estatus'] = 'A'; $conditionsMttoUnidades['MssqlMttoUnidadesTei.id_unidad <>'] = unitConfig()[$id_empresa]['id_unidad']; $fieldsMttoUnidades = array('MssqlMttoUnidadesTei.id_unidad', 'MssqlMttoUnidadesTei.id_area', 'MssqlMttoUnidadesTei.id_flota', 'MssqlMttoUnidadesTei.tipo_unidad', 'MssqlMttoUnidadesTei.status_unidad', 'MssqlMttoUnidadesTei.id_operador', 'MssqlMttoUnidadesTei.id_status', 'MssqlMttoUnidadesTei.estatus'); $getMttoUnidades = $MttoUnidades->find('all', array('conditions' => $conditionsMttoUnidades, 'fields' => $fieldsMttoUnidades)); foreach ($getMttoUnidades as $Key => $Dato) { $getMttoUnidad = Set::combine($getMttoUnidades, '{n}.' . $fieldMttoUnidades['0'], '{n}'); } // pr($getMttoUnidad); // exit(); // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // $fields['camps'] = array('id_fraccion',); foreach ($traficoViaje['trafico_viaje'] as $numero_de_viaje => $mssqlViajesTei) { $traficoViaje['viajes'][$numero_de_viaje] = $mssqlViajesTei['MssqlViajesRtTei']; foreach ($mssqlViajesTei['MssqlViajesRtTei'] as $fieldDescription => $fieldData) { //NOTE add offset null $guia = $getTraficoRenglonViaje[$numero_de_viaje]['MssqlTraficoRenglonViajeTei']['no_guia']; // pr($guia); $traficoViaje['viajes'][$numero_de_viaje]['no_guia'] = $guia; if (isset($getTraficoRenglonGuia[$guia])) { $traficoViaje['viajes'][$numero_de_viaje]['id_fraccion'] = $getTraficoRenglonGuia[$guia]['MssqlTraficoRenglonGuiaTei']['id_fraccion']; $traficoViaje['viajes'][$numero_de_viaje]['peso'] = $getTraficoRenglonGuia[$guia]['MssqlTraficoRenglonGuiaTei']['peso']; $traficoViaje['viajes'][$numero_de_viaje]['peso_estimado'] = $getTraficoRenglonGuia[$guia]['MssqlTraficoRenglonGuiaTei']['peso_estimado']; $traficoViaje['viajes'][$numero_de_viaje]['descripcion_producto'] = $getTraficoRenglonGuia[$guia]['MssqlTraficoRenglonGuiaTei']['descripcion_producto']; } if (isset($getTraficoGuia[$guia])) { $traficoViaje['viajes'][$numero_de_viaje]['tipo_doc'] = $getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['tipo_doc']; $traficoViaje['viajes'][$numero_de_viaje]['status_guia'] = $getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['status_guia']; $traficoViaje['viajes'][$numero_de_viaje]['num_guia'] = $getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['num_guia']; $traficoViaje['viajes'][$numero_de_viaje]['id_unidad'] = $getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['id_unidad']; $traficoViaje['viajes'][$numero_de_viaje]['prestamo'] = $getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['prestamo']; } if (!empty($guia)) { $traficoViaje['viajes'][$numero_de_viaje]['id_flota'] = $getMttoUnidad[$getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['id_unidad']]['MssqlMttoUnidadesTei']['id_flota']; $traficoViaje['viajes_count'][$getMttoUnidad[$getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['id_unidad']]['MssqlMttoUnidadesTei']['id_flota']][$numero_de_viaje] = $getMttoUnidad[$getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['id_unidad']]['MssqlMttoUnidadesTei']['id_flota']; $traficoViaje['toneladas'][$getMttoUnidad[$getTraficoGuia[$guia]['MssqlTraficoGuiaTei']['id_unidad']]['MssqlMttoUnidadesTei']['id_flota']][$numero_de_viaje] = $toneladas[$numero_de_viaje]; } } } // pr($traficoViaje['viajes']); return $traficoViaje; }