FIX: show cuentas missing moneda

This commit is contained in:
2022-03-25 17:39:12 -03:00
parent 8b86560973
commit cddf768b1e
4 changed files with 35 additions and 14 deletions

View File

@ -125,6 +125,9 @@ class Cuenta extends Model {
} }
public function acumulacion(Carbon $date) { public function acumulacion(Carbon $date) {
$consolidados = $this->consolidados(); $consolidados = $this->consolidados();
if ($consolidados === null) {
return 0;
}
$saldo = 0; $saldo = 0;
foreach ($consolidados as $consolidado) { foreach ($consolidados as $consolidado) {
if ($consolidado->fecha() >= $date) { if ($consolidado->fecha() >= $date) {

View File

@ -17,7 +17,7 @@ use ProVM\Common\Alias\Model;
*/ */
class Transaccion extends Model { class Transaccion extends Model {
public static $_table = 'transacciones'; public static $_table = 'transacciones';
protected static $fields = ['debito_id', 'credito_id', 'fecha', 'glosa', 'detalle', 'valor']; protected static $fields = ['debito_id', 'credito_id', 'fecha', 'glosa', 'detalle', 'valor', 'moneda_id'];
protected $debito; protected $debito;
public function debito() { public function debito() {

View File

@ -1,5 +1,5 @@
class Transaccion { class Transaccion {
constructor({id, debito_id, credito_id, fecha, glosa, detalle, valor, debito, credito, fechaFormateada, valorFormateado, format}) { constructor({id, debito_id, credito_id, fecha, glosa, detalle, valor, debito, credito, fechaFormateada, valorFormateado, format, moneda_id}) {
this.id = id this.id = id
this.debito_id = debito_id this.debito_id = debito_id
this.credito_id = credito_id this.credito_id = credito_id
@ -102,6 +102,7 @@ const transacciones = {
cuenta: null, cuenta: null,
transacciones: [], transacciones: [],
cuentas: [], cuentas: [],
monedas: [],
date: new Date(), date: new Date(),
saldo: 0, saldo: 0,
acumulation: 0, acumulation: 0,
@ -210,12 +211,27 @@ const transacciones = {
) )
}) })
}) })
this.get().monedas().then(() => {
const select = this.modal.find("[name='moneda']")
$.each(this.monedas, (i, el) => {
const option = $('<option></option>').attr('value', el.id).html(el.denominacion)
if (el.id === '1') {
option.attr('selected', 'selected')
}
select.append(option)
})
})
}) })
}, },
categoria: (idx) => { categoria: (idx) => {
return sendGet(_urls.api + '/cuenta/' + this.cuentas[idx].id + '/categoria').then((data) => { return sendGet(_urls.api + '/cuenta/' + this.cuentas[idx].id + '/categoria').then((data) => {
this.cuentas[idx].categoria = data.categoria this.cuentas[idx].categoria = data.categoria
}) })
},
monedas: () => {
return sendGet(_urls.api + '/monedas').then((response) => {
this.monedas = response.monedas
})
} }
} }
}, },
@ -276,13 +292,6 @@ const transacciones = {
}, },
exec: () => { exec: () => {
const fecha = $("[name='fecha']").val() const fecha = $("[name='fecha']").val()
const data1 = JSON.stringify({
desde_id: $("[name='moneda']").val(),
hasta_id: 1,
fecha: fecha,
valor: $("[name='cambio']").val()
})
sendPost(_urls.api + '/tipos/cambios/add', data1)
const valor = $("[name='valor']").val() const valor = $("[name='valor']").val()
const cuenta = $("[name='cuenta']").val() const cuenta = $("[name='cuenta']").val()
@ -292,7 +301,8 @@ const transacciones = {
fecha: fecha, fecha: fecha,
glosa: $("[name='glosa']").val(), glosa: $("[name='glosa']").val(),
detalle: $("[name='detalle']").val(), detalle: $("[name='detalle']").val(),
valor: (valor < 0) ? -valor : valor valor: (valor < 0) ? -valor : valor,
moneda_id: $("[name='moneda']").val()
}) })
return sendPost(_urls.api + '/transacciones/add', data).then(() => { return sendPost(_urls.api + '/transacciones/add', data).then(() => {
this.modal.modal('hide') this.modal.modal('hide')
@ -308,13 +318,15 @@ const transacciones = {
const glosa = $("[name='glosa']").val() const glosa = $("[name='glosa']").val()
const detalle = $("[name='detalle']").val() const detalle = $("[name='detalle']").val()
const valor = $("[name='valor']").val() const valor = $("[name='valor']").val()
const moneda_id = $("[name='moneda']").val()
const data = JSON.stringify({ const data = JSON.stringify({
debito_id: (valor < 0) ? this.cuenta_id : cuenta, debito_id: (valor < 0) ? this.cuenta_id : cuenta,
credito_id: (valor < 0) ? cuenta : this.cuenta_id, credito_id: (valor < 0) ? cuenta : this.cuenta_id,
fecha, fecha,
glosa, glosa,
detalle, detalle,
valor: (valor < 0) ? -valor : valor valor: (valor < 0) ? -valor : valor,
moneda_id
}) })
return sendPut(_urls.api + '/transaccion/' + id + '/edit', data).then(() => { return sendPut(_urls.api + '/transaccion/' + id + '/edit', data).then(() => {
this.modal.modal('hide') this.modal.modal('hide')

View File

@ -85,9 +85,15 @@
<label>Detalle</label> <label>Detalle</label>
<input type="text" name="detalle" /> <input type="text" name="detalle" />
</div> </div>
<div class="field"> <div class="fields">
<label>Valor</label> <div class="field">
<input type="text" name="valor" /> <label>Valor</label>
<input type="text" name="valor" />
</div>
<div class="field">
<lable>Moneda</lable>
<select name="moneda"></select>
</div>
</div> </div>
<button class="ui icon button"> <button class="ui icon button">
<i class="plus icon"></i> <i class="plus icon"></i>