Aggiornamento modifiche preOrdini

This commit is contained in:
Surya Paolo
2023-12-20 22:11:52 +01:00
16 changed files with 211 additions and 107 deletions

View File

@@ -10,17 +10,15 @@
</q-btn>
</div>
<div class="col-6" style="text-align: right">
<span v-if="myTotalPrice" class="text-grey q-mr-xs">Totale:</span> <span
class="text-subtitle1 q-mr-sm "> {{ myTotalPrice ? myTotalPrice.toFixed(2) : 0 }}</span>
<span v-if="myTotalPrice" class="text-grey q-mr-xs">Totale:</span> <span class="text-subtitle1 q-mr-sm "> {{
myTotalPrice ? myTotalPrice.toFixed(2) : 0 }}</span>
</div>
</div>
<q-separator></q-separator>
<div id="mybody">
<div v-for="(rec, index) in ordersCart" :key="index" class="col">
<CSingleCart
:order="rec.order"
:showall="false">
<CSingleCart :order="rec.order" :showall="false">
</CSingleCart>
</div>
@@ -29,10 +27,13 @@
{{ $t('ecomm.carrello_vuoto') }}
</div>
<div v-else style="text-align: center">
<q-btn
rounded icon="fas fa-shopping-cart" color="green" :label="$t('ecomm.btn_cassa')" class="q-mb-sm" to="/checkout"
@click="closecart"></q-btn>
<div class="text-center">
<q-btn rounded icon="fas fa-shopping-cart" color="primary" :label="$t('ecomm.btn_cassa')"
class="q-mb-sm" to="/checkout">
</q-btn>
</div>
</div>
</div>
</div>
</template>

View File

@@ -6,15 +6,20 @@
font-size: 0.9rem;
}
.centeritems{
.centeritems {
place-content: center;
}
.prod_price{
.prod_price {
font-size: 1.25rem;
}
.prod_disp{
.prod_disp {
font-size: 1.2rem;
}
.prod_preorder{
font-size: 1.2rem;
}
@@ -22,13 +27,13 @@
font-size: 1.2rem;
}
.prod_qtywarn{
.prod_qtywarn {
padding-left: 10px;
font-size: 1rem;
color: grey;
}
.totali{
.totali {
font-weight: bold;
font-size: 1.2rem;
}
@@ -36,4 +41,9 @@
.prod_sconti {
font-size: 1.1rem;
color: blue;
}
.product_code {
font-size: 0.75rem;
color: gray;
}

View File

@@ -79,48 +79,15 @@ export default defineComponent({
return 'fas fa-heart'
}
}
function addtoCart(add: boolean) {
async function addtoCart(add: boolean) {
if (!userStore.isLogged) {
tools.showNeutralNotif($q, t('ecomm.area_personale'))
globalStore.rightDrawerOpen = true
return false
}
if (myproduct.value) {
products.addToCart({ product: myproduct.value, order: myorder, addqty: add }).then((ris: any) => {
let strprod = t('ecomm.prodotto')
let msg = ''
console.log('ris', ris)
if (ris === null || ris.myord == null) {
msg = t('ecomm.error_cart')
tools.showNegativeNotif($q, msg)
return
} else {
let qta = ris.myord.quantity + ris.myord.quantitypreordered
if (qta > 1 || qta === 0)
strprod = t('ecomm.prodotti')
if (qta === 0) {
msg = t('ecomm.prodotto_tolto')
} else {
msg = t('ecomm.prod_sul_carrello', { strprod, qty: qta })
}
}
updateproduct()
if (ris === null || ris.myord.quantity === 0)
tools.showNotif($q, msg)
else
tools.showPositiveNotif($q, msg)
})
}
await products.addtoCartBase({ $q, t, code: myproduct.value.code!, order: myorder, addqty: add })
}
function getnumstore() {
@@ -146,7 +113,7 @@ export default defineComponent({
}
function updateproduct() {
myproduct.value = products.getProduct(props.code)
myproduct.value = products.getProductByCode(props.code)
// products.updateQuantityAvailable(myproduct.value._id)
}
@@ -214,7 +181,7 @@ export default defineComponent({
// console.log('Load', myproduct.value.name)
// console.log('created Cproductcard', code)
arrordersCart.value = products.getOrdersCartByIdProduct(myproduct.value._id)
arrordersCart.value = products.getOrdersCartInAttesaByIdProduct(myproduct.value._id)
if (!!myproduct.value) {
if (myproduct.value.storehouses && myproduct.value.storehouses.length === 1) {
@@ -246,7 +213,7 @@ export default defineComponent({
}
function enableAddQty() {
if (site.value.ecomm!.enablePreOrders) {
if (site.value.ecomm && site.value.ecomm.enablePreOrders) {
return true
} else {
return getQtyAvailable() > 0

View File

@@ -25,6 +25,9 @@
<div class="text-h7 boldhigh">
{{ myproduct.name }}
</div>
<div class="product_code">
&nbsp; {{$t('ecomm.codice')}}: {{ myproduct.code }}
</div>
</div>
</q-item>
<q-item>

View File

@@ -15,7 +15,19 @@
width: 50px;
}
.ordine_scontato_barrato{
text-decoration: line-through;
.ordine_scontato{
color: gray;
font-size: 0.85rem;
}
.barrato {
text-decoration: line-through;
}
.ordine_scontato_nuovo{
font-size: 1.1rem;
font-weight: bold;
}
.ordine_scritta_sconto{
font-style: italic;
color: green;
font-weight: bold;
}

View File

@@ -89,11 +89,16 @@ export default defineComponent({
products.removeFromCart({ order: order.value })
}
function getRisparmio(): string {
return ((order.value.price * order.value.quantity) - order.value.TotalPriceProduct).toFixed(2)
}
return {
myimgclass,
addsubqty,
removeFromCard,
isApplicatoSconto,
getRisparmio,
}
},
})

View File

@@ -1,5 +1,5 @@
<template>
<div class="q-pa-xs q-gutter-xs">
<div v-if="order && order.product" class="q-pa-xs q-gutter-xs">
<div v-if="order.product" class="row items-center justify-evenly no-wrap">
<div class="col-2 text-h6 ellipsis">
@@ -27,11 +27,12 @@
@click="addsubqty(true, false)"></q-btn>
</div>
</div>
<div class="col-2 no-wrap text-subtitle3 q-mr-sm">
<div v-if="isApplicatoSconto()">
<span class="ordine_scontato_barrato">&nbsp; {{ ((order.price * order.quantity) + (order.price * order.quantitypreordered)).toFixed(2) }}</span>
</div>
&nbsp;{{ order.TotalPriceProduct ? order.TotalPriceProduct.toFixed(2) : 0 }}
<div class="col-2 no-wrap text-subtitle3_short q-mr-sm">
<span :class="isApplicatoSconto() ? 'ordine_scontato_nuovo' : ''">&nbsp;{{ order.TotalPriceProduct ? order.TotalPriceProduct.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()" class="ordine_scritta_sconto">{{ $t('ecomm.sconto_applicato', {risparmio: getRisparmio()}) }}</span>
</div>
<div class="col-1">
<q-btn v-if="!nomodif" icon="fas fa-times" color="negative" round size="xs" @click="removeFromCard">