예제 #1
0
 /**
  * Crear 10 tarifas para el artículo en curso
  */
 private function crearTarifas()
 {
     for ($i = 1; $i < 11; $i++) {
         $tarifa = new Tarifas();
         $tarifa->setIdTarifa($i);
         $tarifa->setIdArticulo($this->Id);
         $tarifa->setPrecio($this->Pvd);
         $tarifa->create();
     }
 }
 /**
  * Edita, actualiza o borrar un registro
  *
  * Viene siempre por POST
  * Actualiza o Borrar según el valor de $this->request['accion']
  *
  * @return array con el template y valores a renderizar
  */
 public function editFormAction()
 {
     $this->values['linkBy']['id'] = 'IdArticulo';
     //COGER DEL REQUEST EL LINK A LA ENTIDAD PADRE
     if ($this->values['linkBy']['id'] != '') {
         $this->values['linkBy']['value'] = $this->request[$this->entity][$this->values['linkBy']['id']];
     }
     switch ($this->request['accion']) {
         case 'G':
             //GUARDAR DATOS
             if ($this->values['permisos']['permisosModulo']['UP']) {
                 $datos = new Tarifas($this->request['Tarifas']['Id']);
                 $datos->bind($this->request[$this->entity]);
                 if ($datos->valida(array())) {
                     $datos->save();
                     $this->values['errores'] = $datos->getErrores();
                     $this->values['alertas'] = $datos->getAlertas();
                     //Recargo el objeto para refrescar las propiedas que
                     //hayan podido ser motivo de algun calculo durante el proceso
                     //de guardado.
                     $datos = new Tarifas($this->request['Tarifas']['Id']);
                 } else {
                     $this->values['errores'] = $datos->getErrores();
                     $this->values['alertas'] = $datos->getAlertas();
                 }
                 $this->values['datos'] = $datos;
                 unset($datos);
                 return $this->listFormAction($this->values['linkBy']['value']);
             } else {
                 return array('template' => '_global/forbiden.html.twig');
             }
             break;
         case 'B':
             //BORRAR DATOS
             if ($this->values['permisos']['permisosModulo']['DE']) {
                 $datos = new Tarifas($this->request['Tarifas']['Id']);
                 if ($datos->erase()) {
                     $datos = new $this->entity();
                     $this->values['datos'] = $datos;
                     $this->values['errores'] = array();
                 } else {
                     $this->values['datos'] = $datos;
                     $this->values['errores'] = $datos->getErrores();
                 }
                 unset($datos);
                 return $this->listFormAction($this->values['linkBy']['value']);
             } else {
                 return array('template' => '_global/forbiden.html.twig');
             }
             break;
     }
 }
 private function importTarifas()
 {
     $file = getcwd() . "/docs/docs1/import/TARIFAS.txt";
     $array = $this->leeCsv($file);
     $obj = new Tarifas();
     $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']) {
             $obj = new Tarifas();
             $obj->setIdArticulo($row[0]['Id']);
             $obj->setIdTarifa($item['TARIFA']);
             $obj->setPrecio(self::trataMoneda($item['PRECIO']));
             $id = $obj->create();
             if (!$id) {
                 print_r($obj->getErrores());
             }
         } else {
             echo "Importar Tarifas: No existe el artículo {$codigo}<br/>";
         }
     }
 }