/** * GENERA LOS ALBARANES Y FACTURAS DE MANTENIMIENTOS * EN BASE A LOS INDICADO EN EL ARCHIVO CSV * * @param string $fileCsv */ public function mantenimientosAction($fileCsv = '') { if ($fileCsv == '') { $fileCsv = 'tmp/mantenimientos.csv'; } $archivo = new Archivo($fileCsv); $archivo->setColumnsDelimiter(";"); if ($archivo->open()) { while (($linea = $archivo->readLine()) !== FALSE) { $idSucursal = $linea[0]; $idAlmacen = $linea[1]; $idComercial = $linea[2]; $idCliente = $linea[3]; $codigoArticulo = $linea[4]; $unidades = $linea[5]; $precio = $linea[6]; $cliente = new Clientes($idCliente); $direccionesEntrega = $cliente->getDireccionesEntrega(); $direcEntrega = $direccionesEntrega[0]; $albaran = new AlbaranesCab(); $albaran->setIDCliente($cliente->getIDCliente()); $albaran->setIDSucursal($idSucursal); $albaran->setFecha(date("d-m-Y")); $albaran->setIDDirec($direcEntrega->getIDDirec()); $albaran->setIDAlmacen($idAlmacen); $albaran->setIDComercial($idComercial); $albaran->setIDContador(2); $albaran->setIDEstado(0); $albaran->setIDFP($cliente->getIDFP()->getIDFP()); $idAlbaran = $albaran->create(); if ($idAlbaran) { $articulo = new Articulos(); $articulo = $articulo->find("Codigo", $codigoArticulo); $lineas = new AlbaranesLineas(); $lineas->setIDAlbaran($idAlbaran); $lineas->setIDArticulo($articulo->getIDArticulo()); $lineas->setDescripcion($articulo->getDescripcion() . " Mes " . date("m Y")); $lineas->setUnidades($unidades); $lineas->setPrecio($precio); $lineas->setDescuento(0); $lineas->setIva($articulo->getIDIva()->getIva()); $lineas->setImporte($unidades * $precio); $ok = $lineas->create(); if ($ok) { $albaran = new AlbaranesCab($idAlbaran); $albaran->confirma(); if ($albaran->expide()) { $albaran = new AlbaranesCab($idAlbaran); $contador = new Contadores(); $contador = $contador->dameContador($idSucursal, 2); $albaran->facturar($contador); } } else { print_r($lineas->getErrores()); exit; } } else { $this->values['errores'][] = "No se ha podido crear el albarán para " . $cliente->getRazonSocial(); } } } else { $this->values['errores'][] = "El fichero de importación " . $fileCsv . " no existe"; } }