Subir cartolas procesadas

This commit is contained in:
Juan Pablo Vial
2024-07-17 22:33:33 -04:00
parent 390e79ad6d
commit 8e7f43e487
48 changed files with 1692 additions and 530 deletions

View File

@ -31,4 +31,13 @@ class Banco extends Ideal\Repository
{
return $this->update($model, ['nombre'], $new_data);
}
public function fetchByNombre(string $nombre): Model\Contabilidad\Banco
{
$query = $this->connection->getQueryBuilder()
->select()
->from($this->getTable())
->where('nombre = :nombre');
return $this->fetchOne($query, ['nombre' => $nombre]);
}
}

View File

@ -62,13 +62,13 @@ class Movimiento extends Ideal\Repository
->where('cuenta_id = ? AND fecha = ?');
return $this->fetchMany($query, [$cuenta_id, $fecha->format('Y-m-d')]);
}
public function fetchByCuentaAndFechaAndCargoAndAbonoAndSaldo(int $cuenta_id, DateTimeInterface $fecha, int $cargo, int $abono, int $saldo): Model\Contabilidad\Movimiento
public function fetchByCuentaAndFechaAndGlosaAndCargoAndAbonoAndSaldo(int $cuenta_id, DateTimeInterface $fecha, string $glosa, int $cargo, int $abono, int $saldo): Model\Contabilidad\Movimiento
{
$query = $this->connection->getQueryBuilder()
->select()
->from($this->getTable())
->where('cuenta_id = ? AND fecha = ? AND cargo = ? AND abono = ? AND saldo = ?');
return $this->fetchOne($query, [$cuenta_id, $fecha->format('Y-m-d'), $cargo, $abono, $saldo]);
->where('cuenta_id = ? AND fecha = ? AND glosa = ? AND cargo = ? AND abono = ? AND saldo = ?');
return $this->fetchOne($query, [$cuenta_id, $fecha->format('Y-m-d'), $glosa, $cargo, $abono, $saldo]);
}
public function fetchAmountStartingFrom(int $start, int $amount): array
{

View File

@ -19,7 +19,7 @@ class Detalle extends Ideal\Repository
public function create(?array $data = null): Model\Contabilidad\Movimiento\Detalle
{
$map = (new Implement\Repository\MapperParser(['detalle']))
$map = (new Implement\Repository\MapperParser(['rut', 'digito', 'nombres', 'categoria', 'detalle', 'identificador']))
->register('movimiento_id', (new Implement\Repository\Mapper())
->setProperty('movimiento')
->setFunction(function(array $data) {
@ -29,20 +29,21 @@ class Detalle extends Ideal\Repository
->setProperty('centroCosto')
->setFunction(function(array $data) {
return $this->centroCostoRepository->fetchById($data['centro_costo_id']);
}));
})
->setDefault(null));
return $this->parseData(new Model\Contabilidad\Movimiento\Detalle(), $data, $map);
}
public function save(Define\Model $model): Model\Contabilidad\Movimiento\Detalle
{
$this->saveNew(
['movimiento_id', 'centro_costo_id', 'detalle'],
[$model->movimiento->id, $model->centroCosto->id, $model->detalles]
['movimiento_id', 'centro_costo_id', 'rut', 'digito', 'nombres', 'categoria', 'detalle', 'identificador'],
[$model->movimiento->id, $model->centroCosto?->id, $model->rut, $model->digito, $model->nombres, $model->categoria, $model->detalle, $model->identificador]
);
return $model;
}
public function edit(Define\Model $model, array $new_data): Model\Contabilidad\Movimiento\Detalle
{
return $this->update($model, ['movimiento_id', 'centro_costo_id', 'detalle'], $new_data);
return $this->update($model, ['movimiento_id', 'centro_costo_id', 'rut', 'digito', 'nombres', 'categoria', 'detalle', 'identificador'], $new_data);
}
public function fetchByMovimiento(int $movimiento_id): Model\Contabilidad\Movimiento\Detalle