Files
salvato.newfreeplanet/src/components/CSingleCart/CSingleCart.vue
2024-02-15 18:59:13 +01:00

245 lines
7.7 KiB
Vue
Executable File

<template>
<div
v-if="order && order.product && order.product.productInfo"
class="q-pa-xs q-gutter-xs"
>
<div v-if="order.product">
<q-item>
<q-item-section top thumbnail class="q-ml-none">
<img
v-if="
order.product &&
order.product.productInfo &&
order.product.productInfo.img
"
:src="`` + order.product.productInfo.img"
:alt="order.product.productInfo.name"
:class="myimgclass()"
/>
</q-item-section>
<q-item-section>
<q-item-label>
<div v-if="order.idGasordine" class="gasordine">
{{ products.getSingleGasordine(order, true) }}<br />
</div>
{{ order.product.productInfo.name }}
</q-item-label>
<q-item-label caption>
<div
class="text-black text-h8"
v-if="order.product.productInfo.unit"
>
{{ tools.getWeightTotalByOrder(order) }}
{{
tools.getUnitsMeasure(
order.product.productInfo.unit,
true,
order.product.productInfo.weight
)
}}
</div>
<div class="row q-mb-xs no-wrap items-center centeritems">
<q-input
v-if="editmode"
v-model="weight"
autofocus
debounce="500"
borderless
rounded
dense
:label="t('products.weight')"
></q-input>
<q-input
v-if="editmode"
v-model="price"
autofocus
debounce="500"
borderless
rounded
dense
:label="t('products.price')"
></q-input>
</div>
<div class="row q-mb-xs no-wrap items-center centeritems">
<q-btn
v-if="showall && !nomodif && products.CanDeleteIfSub(order)"
icon="fas fa-trash"
color="negative"
round
size="xs"
@click="removeFromCard"
>
</q-btn>
<q-btn
v-else-if="showall && !nomodif"
:disable="!products.enableSubQty(order)"
size="sm"
icon="fas fa-cart-arrow-down"
:color="products.enableSubQty(order) ? 'negative' : 'grey'"
@click="addsubqty(false, true)"
rounded
:label="
t('products.subcart', {
qta: products.qtaNextSub(order, order.product),
})
"
></q-btn>
<div v-if="editmode">
<q-input
v-if="enableQty"
v-model="orderQuantity"
autofocus
debounce="500"
borderless
rounded
dense
:label="t('products.quantity')"
></q-input>
<q-input
v-if="enableQtyPreordered"
v-model="orderQuantityPreordered"
autofocus
debounce="500"
borderless
rounded
densep
:label="t('ecomm.preord')"
></q-input>
</div>
<div v-if="editmode">
<q-input
v-model="orderTotalPriceProduct"
autofocus
debounce="500"
borderless
rounded
dense
@change="changeTotalPrice"
:label="t('orderscart.TotalPriceProduct')"
></q-input>
<q-btn
outline
rounded
dense
color="green"
icon="fas fa-redo"
:label="t('orderscart.update_order')"
@click="
updateOrder({
quantitypreordered: order.quantitypreordered,
quantity: order.quantity,
price: order.price,
})
"
>
</q-btn>
</div>
<div v-else-if="showall" :class="`q-mx-sm text-blue-14 qta`">
{{ order.quantity + order.quantitypreordered }}
</div>
<q-btn
v-if="showall && !nomodif"
icon-right="fas fa-cart-plus"
color="positive"
:disable="!products.enableAddQty(order, order.product)"
rounded
size="sm"
:label="
t('products.addcart', {
qta: products.qtaNextAdd(order, order.product),
})
"
@click="addsubqty(true, false)"
>
</q-btn>
</div>
</q-item-label>
<q-item-label>
<div class="col-2 no-wrap text-subtitle3_short q-mr-sm">
<span class="prezzo_singolo">
{{ order.quantity + order.quantitypreordered }} x €
{{ order.price ? order.price : 0 }}
</span>
<span :class="isApplicatoSconto() ? 'ordine_scontato_nuovo' : ''">
= €
{{
order.TotalPriceProduct
? order.TotalPriceProduct.toFixed(2)
: 0
}}
</span>
<span
v-if="
tools.isManager() &&
order.TotalPriceProduct.toFixed(2) !==
order.TotalPriceProductCalc.toFixed(2)
"
:class="isApplicatoSconto() ? 'ordine_scontato_nuovo' : ''"
>
(Calc: €
{{
order.TotalPriceProductCalc
? order.TotalPriceProductCalc.toFixed(2)
: 0
}})
</span>
<span v-if="isApplicatoSconto()">
&nbsp;<span class="ordine_scontato"
>(<span class="barrato"
>€
{{
(
order.price * order.quantity +
order.price * order.quantitypreordered
).toFixed(2)
}}</span
>)</span
>&nbsp;
</span>
<span
v-if="isApplicatoSconto() && !editmode"
class="ordine_scritta_sconto"
>{{
$t('ecomm.sconto_applicato', { risparmio: getRisparmio() })
}}</span
>
</div>
</q-item-label>
</q-item-section>
<q-item-section side>
<q-item-label>
<div class="col-2">
<q-btn
v-if="!nomodif"
icon="fas fa-trash"
color="negative"
round
size="xs"
@click="removeFromCard"
>
</q-btn>
</div>
</q-item-label>
</q-item-section>
<!--<q-item-section side top>
<q-item-label caption>meta</q-item-label>
</q-item-section>
-->
</q-item>
</div>
</div>
</template>
<script lang="ts" src="./CSingleCart.ts">
</script>
<style lang="scss" scoped>
@import './CSingleCart.scss';
</style>