<?php define("BYPASS_INSTANCE_CHECK", false); require_once "../../../server/bootstrap.php"; $page = new GerenciaComponentPage(); $sOrdenes = SeguimientoDeServicioDAO::GetAll(); $sClientes = ClienteSeguimientoDAO::GetAll(); $sMerged = array(); // seguimiento_de_servicio for ($i = 0; $i < sizeof($sOrdenes); $i++) { array_push($sMerged, array("text" => "<div style='overflow:hidden; width: 250px'><pre>" . $sOrdenes[$i]->estado . "</pre></div>", "tipo" => "sOrdenes", "fecha" => $sOrdenes[$i]->fecha_seguimiento, "usuario" => R::UserFullNameFromId($sOrdenes[$i]->id_usuario))); } // for ($i = 0; $i < sizeof($sClientes); $i++) { array_push($sMerged, array("text" => "<div style='overflow:hidden; width: 715px'><pre>" . $sClientes[$i]->texto . "</pre></div>", "tipo" => "sclientes", "fecha" => $sClientes[$i]->fecha, "usuario" => R::UserFullNameFromId($sClientes[$i]->id_usuario))); } function fs($a, $b) { return $b["fecha"] - $a["fecha"]; } usort($sMerged, "fs"); $sTabla = new TableComponent(array("text" => "text"), $sMerged); $sTabla->addColRender("fecha", "R::FriendlyDateFromUnixTime"); $page->addComponent($sTabla); $page->render();
$form->setCaption("id_usuario_asignado", "Tecnico asignado"); $form->setCaption("id_servicio", "Servicio"); //$form->createComboBoxJoinDistintName("id_usuario_venta", "id_usuario", "nombre", UsuarioDAO::getAll(), $esta_orden->getIdUsuarioVenta()); $page->addComponent($form); $eP = $esta_orden->getExtraParams(); if (!is_null($eP)) { $ePObj = json_decode($eP); $page->addComponent("<table width=100%>"); foreach ($ePObj as $obj) { $page->addComponent("<tr><td style='width:30%'><b>" . utf8_decode($obj->desc) . "</b></td>"); $page->addComponent("<td>" . $obj->value . "</td></tr>"); } $page->addComponent("</table>"); } $page->addComponent(new TitleComponent("Seguimientos de esta orden", 2)); $seguimientos = SeguimientoDeServicioDAO::seguimientosPorServicio($_GET["oid"]); $header = array("estado" => "Estado", "fecha_seguimiento" => "Fecha", "id_usuario" => "Usuario que registro"); // // // // // // // // // $table = new TableComponent($header, $seguimientos); $table->renderRowId("comments"); $table->addNoData(""); function funcion_sucursal($id_sucursal) {
/** * *Realizar un seguimiento a una orden de servicio existente. Puede usarse para agregar detalles a una orden pero no para editar detalles previos. Puede ser que se haya hecho un abono * * @param estado string Estado en el que se encuentra actualmente la orden * @param id_localizacion int Id de la sucursal en la que se encuentra actualmente la orden, se usara un -1 para indicar que esta en movimiento * @param id_orden_de_servicio int Id de la orden a darle seguimiento **/ public static function SeguimientoOrden($id_orden_de_servicio, $abono = null, $id_localizacion = null, $nota = null) { Logger::log("Creando nuevo seguimiento de orden..."); if (is_null($id_orden_de_servicio)) { throw new InvalidDataException("id_orden_de_servicio is a required field"); } //Se obtiene al usuario de la sesion $sesion = SesionController::Actual(); $id_usuario = $sesion["id_usuario"]; $id_sucursal = $sesion["id_sucursal"]; //Se validan los parametros recibidos /*$validar = self::validarParametrosSeguimiento(null, $id_orden_de_servicio, $id_localizacion, $nota); if(is_string($validar)) { Logger::error($validar); throw new Exception($validar); }*/ $seguimiento_de_servicio = new SeguimientoDeServicio(array("id_localizacion" => $id_localizacion, "id_orden_de_servicio" => $id_orden_de_servicio, "estado" => $nota, "id_usuario" => $id_usuario, "id_sucursal" => $id_sucursal, "fecha_seguimiento" => time())); DAO::transBegin(); try { SeguimientoDeServicioDAO::save($seguimiento_de_servicio); } catch (Exception $e) { DAO::transRollback(); Logger::error($e->getMessage()); throw new InvalidDatabaseOperationException("No se pudo crear el seguimiento de servicio"); } DAO::transEnd(); Logger::log("Seguimiento creado exitosamente"); return array("id_seguimiento" => $seguimiento_de_servicio->getIdSeguimientoDeServicio()); }
if (is_null($este_usuario)) { die("Este cliente no existe."); } // // Titulo de la pagina // $page->addComponent(new TitleComponent(utf8_decode($este_usuario->getNombre()), 2)); $page->nextTab("Panorama"); //buscar sus ventas $ventas = VentaDAO::search(new Venta(array("id_comprador_venta" => $este_usuario->getIdUsuario()))); $servicios = OrdenDeServicioDAO::search(new OrdenDeServicio(array("id_usuario_venta" => $este_usuario->getIdUsuario()))); $seguimientos = ClienteSeguimientoDAO::search(new ClienteSeguimiento(array("id_cliente" => $este_usuario->getIdUsuario()))); $seguimientos_a_ordenes = array(); //seguimientos a ordenes for ($os = 0; $os < sizeof($servicios); $os++) { $r = SeguimientoDeServicioDAO::search(new SeguimientoDeServicio(array("id_orden_de_servicio" => $servicios[$os]->getIdOrdenDeServicio()))); $seguimientos_a_ordenes = array_merge($seguimientos_a_ordenes, $r); } $eventos = array_merge($ventas, $servicios, $seguimientos, $seguimientos_a_ordenes); function orderByDate($eventObjA, $eventObjB) { $a = $eventObjA["fecha"]; $b = $eventObjB["fecha"]; if ($a == $b) { return 0; } return $a < $b ? 1 : -1; } function renderRow($unixTime, $fullArray) { $out = "";