/** * Devuelve el id del arqueo en donde está anotado * el cobro del recibo en curso * * @return integer El id del arqueo */ public function getIDArqueo() { $arqueo = new CajaLineas(); $rows = $arqueo->cargaCondicion("IDArqueo", "Entidad='RecibosClientes' AND IDEntidad='{$this->IDRecibo}'"); unset($arqueo); return $rows[0]['IDArqueo']; }
/** * Genera un array con la informacion necesaria para imprimir el documento * Recibe un array con los ids de arqueos de caja * * @param array $idsDocumento Array con los ids de arqueos * @return array Array con dos elementos: master es un objeto CajaArqueos y detail es un array de objetos lineas de arqueos */ protected function getDatosDocumento(array $idsDocumento) { $master = array(); $detail = array(); // Recorro el array de los albaranes a imprimir foreach ($idsDocumento as $key => $idDocumento) { // Instancio la cabecera del albaran $master[$key] = new CajaArqueos($idDocumento); // LLeno el array con objetos de lineas de arqueo $lineas = array(); $cajaLineas = new CajaLineas(); $rows = $cajaLineas->cargaCondicion('IDApunte', "IDArqueo='{$idDocumento}'", "IDAgente,IDApunte ASC"); foreach ($rows as $row) { $lineas[] = new CajaLineas($row['IDApunte']); } $detail[$key] = $lineas; } return array('master' => $master, 'detail' => $detail); }
/** * Recalcula los totales de caja * !! OJO: no guarda. Hay que llamar al método save * @return boolean */ public function recalcula() { $lineas = new CajaLineas(); $rows = $lineas->cargaCondicion("sum(Importe) as Importe", "IDArqueo='{$this->IDArqueo}' and Origen='0'"); $this->setSaldoApertura($rows[0]['Importe']); $rows = $lineas->cargaCondicion("sum(Importe) as Importe", "IDArqueo='{$this->IDArqueo}' and Origen<>'0'"); $this->setSumaMvtos($rows[0]['Importe']); $this->setSaldoCierre($this->SaldoApertura + $this->SumaMvtos); unset($lineas); }