Files
analiticaNucleo/nuxt4-app/app/components/ingresos/InversionTotal.vue

46 lines
1.2 KiB
Vue

<template>
<UCard class="brand-card border border-transparent">
<template #header>
<h2 class="text-xl font-bold brand-section-title">Inversión Hasta la Fecha</h2>
</template>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4">
<MetricCard
label="Inversión en Uva"
:value="formatCurrency(metrics.inversionUva.value)"
variant="success"
/>
<MetricCard
label="Inversión en Oreado"
:value="formatCurrency(metrics.inversionOreado.value)"
variant="success"
/>
<MetricCard
label="Inversión en Mojado"
:value="formatCurrency(metrics.inversionMojado.value)"
variant="success"
/>
<MetricCard
label="Total Invertido"
:value="formatCurrency(metrics.totalInvertido.value)"
variant="primary"
class="font-bold"
/>
</div>
</UCard>
</template>
<script setup lang="ts">
import type { IngresosMetrics } from '~/composables/useIngresosMetrics'
defineProps<{
metrics: IngresosMetrics
}>()
const formatCurrency = (value: number) => {
return new Intl.NumberFormat('es-GT', {
style: 'currency',
currency: 'GTQ'
}).format(value)
}
</script>