Esempio n. 1
0
 static function regeneraOrdenes($idEscaparate)
 {
     $escaparate = new Escaparates($idEscaparate);
     $ordenes = new OrdenesArticulos();
     $ordenes->borraOrdenesRegla($idEscaparate);
     unset($ordenes);
     $escaparate->aplicaRegla();
     unset($escaparate);
 }
Esempio n. 2
0
 /**
  * Guardo y aplico las reglas de ordenación si está vigente
  * 
  * @return boolean
  */
 public function save()
 {
     $reglas = new Escaparates();
     // reglas antes de guardar
     $reglasAntes = $reglas->getReglasArticulo($this->IDArticulo);
     $ok = parent::save();
     if ($ok) {
         // Se recalculan las reglas solo en el caso en que haya algún cambio.
         // Para ello comparo las reglas del artículo antes y despues de guardar.
         $reglasNuevas = $reglas->getReglasArticulo($this->IDArticulo);
         $diferenciaReglas1 = array_diff($reglasAntes, $reglasNuevas);
         $diferenciaReglas2 = array_diff($reglasNuevas, $reglasAntes);
         if (count($diferenciaReglas1) + count($diferenciaReglas2) > 0) {
             // Borro los eventuales ordenes que existieran para el artículo
             $ordenes = new OrdenesArticulos();
             $ordenes->borraOrdenesArticulo($this->IDArticulo);
             unset($ordenes);
             // Aplico las reglas de ordenes
             if ($this->Vigente == '1') {
                 $reglas = new Escaparates();
                 $reglas->aplicaReglasArticulo($this->IDArticulo);
                 unset($reglas);
             }
         }
         // Borro el eventual escandallo
         if ($this->AllowsChildren == '0') {
             $escan = new ArticulosEscandallos();
             $escan->queryDelete("IDArticuloOrigen='{$this->IDArticulo}'");
             unset($escan);
         }
     }
     return $ok;
 }
 /**
  * Devuelve un array con los objetos zonas web
  * añadiendo uno vacio para crear una zona nueva
  * 
  * @return array Array template, values
  */
 public function listAction($aditionalFilter = '')
 {
     $item = new Escaparates();
     $items[] = $item;
     $rows = $item->cargaCondicion("Id", "1", "Controller ASC, Zona ASC, Id ASC");
     unset($item);
     foreach ($rows as $row) {
         $items[] = new Escaparates($row['Id']);
     }
     $this->values['zonas'] = $items;
     return array('template' => $this->entity . "/list.html.twig", 'values' => $this->values);
 }