优化下单

This commit is contained in:
gyq
2025-04-21 17:45:05 +08:00
parent 694cb154a6
commit b5773cf78c
12 changed files with 275 additions and 16268 deletions

View File

@@ -18,7 +18,7 @@
</el-text>
</div>
<div class="item"
:class="{ disabled: goodsStore.cartList.length && (goodsStore.cartList[goodsStore.cartActiveIndex].goods_type == 'package' && goodsStore.cartList[goodsStore.cartActiveIndex].group_type == 1) || goodsStore.cartList.length && goodsStore.cartList[goodsStore.cartActiveIndex].isStock }"
:class="{ disabled: goodsStore.cartList.length && (goodsStore.cartList[goodsStore.cartActiveIndex].goods_type == 'package' && goodsStore.cartList[goodsStore.cartActiveIndex].group_type == 1) || (goodsStore.cartList.length && goodsStore.cartList[goodsStore.cartActiveIndex].number >= goodsStore.cartList[goodsStore.cartActiveIndex].stockNumber) }"
@click="numberChange('add')">
<el-icon class="icon add">
<CloseBold />
@@ -393,31 +393,24 @@ function showEditNumber() {
function numberChange(t) {
let item = goodsStore.cartList.length ? goodsStore.cartList[goodsStore.cartActiveIndex] : ''
if (!item || (item.goods_type == 'package' && item.group_type == 1)) return
let number = +goodsStore.cartList[goodsStore.cartActiveIndex].number
switch (t) {
case 'sub':
goodsStore.cartList[goodsStore.cartActiveIndex].number--
if (item.number < item.suitNum) {
if (item.number - 1 < item.suitNum) {
goodsStore.deleteCartItem()
} else {
if (goodsStore.allSelected) {
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], pack_number: goodsStore.cartList[goodsStore.cartActiveIndex].number }, 'edit')
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], pack_number: number - 1, number: number - 1 }, 'edit')
} else {
goodsStore.operateCart(goodsStore.cartList[goodsStore.cartActiveIndex], 'edit')
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], number: number - 1 }, 'edit')
}
}
break;
case 'add':
let goods = goodsStore.originGoodsList.find(pro => pro.id == item.product_id)
if (item.number >= goods.stockNumber && goods.isStock) {
ElMessage.error('库存不足')
return
}
goodsStore.cartList[goodsStore.cartActiveIndex].number++
if (goodsStore.allSelected) {
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], pack_number: goodsStore.cartList[goodsStore.cartActiveIndex].number }, 'edit')
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], pack_number: number + 1 }, 'edit')
} else {
goodsStore.operateCart(goodsStore.cartList[goodsStore.cartActiveIndex], 'edit')
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], number: +number + 1 }, 'edit')
}
break;
default:
@@ -427,18 +420,10 @@ function numberChange(t) {
// 输入修改数量
function updateNumber(num) {
let item = goodsStore.cartList[goodsStore.cartActiveIndex]
let goods = goodsStore.originGoodsList.find(pro => pro.id == item.product_id)
if (num > goods.stockNumber && goods.isStock) {
ElMessage.error('库存不足')
return
}
goodsStore.cartList[goodsStore.cartActiveIndex].number = num
if (goodsStore.allSelected) {
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], pack_number: goodsStore.cartList[goodsStore.cartActiveIndex].number }, 'edit')
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], pack_number: num, number: num }, 'edit')
} else {
goodsStore.operateCart(goodsStore.cartList[goodsStore.cartActiveIndex], 'edit')
goodsStore.operateCart({ ...goodsStore.cartList[goodsStore.cartActiveIndex], number: num }, 'edit')
}
}