public function getRelacionFirmas()
 {
     $array = array();
     // Coger todas las firmas definidas
     $firmas = new Firmas();
     $rows = $firmas->cargaCondicion("Id,RazonSocial", "Vigente='1'", "RazonSocial ASC");
     unset($firmas);
     foreach ($rows as $row) {
         $array[$row['Id']]['Nombre'] = $row["RazonSocial"];
     }
     // Coger el código de cada firma para el cliente
     $relacion = new Relaciones();
     $rows = $relacion->cargaCondicion("IdEntidadDestino,Observations", "EntidadOrigen='Clientes' and IdEntidadOrigen='{$this->Id}' and EntidadDestino='Firmas'");
     foreach ($rows as $row) {
         if ($array[$row['IdEntidadDestino']]['Nombre']) {
             $array[$row['IdEntidadDestino']]['Codigo'] = $row['Observations'];
         }
     }
     return $array;
 }
/*
 * Actualiza la relación N a M entre entidades e id de entidades
 *
 * Es llamado por AJAX
 *
 * @author Sergio Perez <*****@*****.**>
 * @copyright Informatica ALBATRONIC
 * @since 03.02.2013
 */
include_once "../bin/albatronic/autoloader.inc.php";
$v = $_GET;
$relacion = new Relaciones();
$idRelacion = $relacion->getIdRelacion($v['entidadOrigen'], $v['idOrigen'], $v['entidadDestino'], $v['idDestino']);
if (!$idRelacion) {
    $relacion = new Relaciones();
    $relacion->setEntidadOrigen($v['entidadOrigen']);
    $relacion->setIdEntidadOrigen($v['idOrigen']);
    $relacion->setEntidadDestino($v['entidadDestino']);
    $relacion->setIdEntidadDestino($v['idDestino']);
    $relacion->setObservations($v['valor']);
    $relacion->create();
} else {
    // Quitar la relación
    $relacion = new Relaciones($idRelacion);
    $relacion->setObservations($v['valor']);
    $relacion->save();
}
$tag = $relacion->getErrores();
unset($relacion);
echo json_encode($tag);
 private function importPromociones()
 {
     $file = getcwd() . "/docs/docs1/import/PROMOCIONES.txt";
     $array = $this->leeCsv($file);
     $obj = new Promociones();
     $obj->truncate();
     $articulo = new Articulos();
     foreach ($array as $item) {
         //print_r($item);
         $codigo = trim($item['IDARTICULO']);
         $row = $articulo->querySelect("Id", "IdFirma='{$item['IDFIRMA']}' and IdFamilia='{$item['IDFAMILIA']}' and Codigo='{$codigo}'");
         if ($row[0]['Id']) {
             $fecha = split(" ", $item['FECHALIMITE']);
             $fecha = split("/", $fecha[0]);
             $fecha = $fecha[2] . "-" . str_pad($fecha[1], 2, "0", STR_PAD_LEFT) . "-" . str_pad($fecha[0], 2, "0", STR_PAD_LEFT);
             $obj = new Promociones();
             $obj->setId($item['IDPROMOCION']);
             $obj->setIdArticulo($row[0]['Id']);
             $obj->setFechaLimite($fecha);
             $obj->setCantidadMinima(self::trataNumero($item['CANTIDADMINIMA']));
             $obj->setPrecioNeto(self::trataMoneda($item['NETO']));
             $obj->setDescuento(self::trataNumero($item['DESCUENTO']));
             $obj->setComision(self::trataNumero($item['COMISION']));
             $id = $obj->create();
             if (!$id) {
                 print_r($obj->getErrores());
             }
         } else {
             echo "Importar Promociones: No existe el artículo {$codigo}<br/>";
         }
     }
     // Importar las relaciones promocion-cliente
     $file = getcwd() . "/docs/docs1/import/PROMOCIONES_CLIENTES.txt";
     $array = $this->leeCsv($file);
     $obj = new Relaciones();
     $obj->queryDelete("EntidadOrigen='Promociones' and EntidadDestino='Clientes'");
     $promocion = new Promociones();
     foreach ($array as $item) {
         //print_r($item);
         $row = $promocion->querySelect("Id", "Id='{$item['IDPROMOCION']}'");
         if ($row[0]['Id']) {
             $obj = new Relaciones();
             $obj->setEntidadOrigen('Promociones');
             $obj->setIdEntidadOrigen($item['IDPROMOCION']);
             $obj->setEntidadDestino('Clientes');
             $obj->setIdEntidadDestino($item['IDCLIENTE']);
             $id = $obj->create();
             if (!$id) {
                 print_r($obj->getErrores());
             }
         } else {
             echo "Importar Promociones-Clientes: No existe la promocion {$item['IDPROMOCION']}<br/>";
         }
     }
 }
 public function listClientesAction($idPromocion = "")
 {
     if ($idPromocion == '') {
         $idPromocion = $this->request[2];
     }
     print_r($this->request);
     $this->values['idPromocion'] = $idPromocion;
     $this->values['clientes'] = array();
     $cliente = new Relaciones();
     $cliente->setEntidadOrigen('Promociones');
     $cliente->setIdEntidadOrigen($idPromocion);
     $cliente->setEntidadDestino('Clientes');
     $this->values['clientes'][] = $cliente;
     $relacion = new Relaciones();
     $rows = $relacion->cargaCondicion("Id", "EntidadOrigen='Promociones' AND IdEntidadOrigen='{$idPromocion}' and EntidadDestino='Clientes'");
     foreach ($rows as $row) {
         $this->values['clientes'][] = new Relaciones($row['Id']);
     }
     return array('template' => $this->entity . "/listClientes.html.twig", 'values' => $this->values);
 }