优化购物车

This commit is contained in:
TOP糯米 2023-03-22 22:44:24 +08:00
parent e7b8b7d60c
commit ce64a26870
1 changed files with 51 additions and 30 deletions

View File

@ -4,41 +4,50 @@
<widget-tips text="为什么会拆成多个订单?根据师傅服务能力与服务类型进行订单拆分" />
</view>
<view class="cart-container">
<view class="cart-group" v-for="(item, index) in list" :key="index">
<view class="group-title limit-line clamp-1" @click="checkGroup(index)">
<view class="group-checkbox">
<widget-check-box :size="50" :checked="item.checked" />
</view>
<view class="title">
<text>{{ item.name }}</text>
</view>
</view>
<view class="group-items">
<view class="cart-item" v-for="(v, i) in item.list" :key="i" @longpress="deleteCart(index, i)">
<view class="item-checkbox" @click="checkItem(index, i)">
<widget-check-box :size="50" :checked="v.checked" />
<block v-if="list.length > 0">
<view class="cart-group" v-for="(item, index) in list" :key="index">
<view class="group-title limit-line clamp-1" @click="checkGroup(index)">
<view class="group-checkbox">
<widget-check-box :size="50" :checked="item.checked" />
</view>
<view class="item-box">
<service-preview-item :data="v" />
<widget-count-modify
class="component-add"
min="1"
:init="v.number"
@change="changeNumber($event, { parentIndex: index, itemIndex: i })"
/>
<view class="title">
<text>{{ item.name }}</text>
</view>
</view>
<view class="group-items">
<view class="cart-item" v-for="(v, i) in item.list" :key="i" @longpress="deleteCart(index, i)">
<view class="item-checkbox" @click="checkItem(index, i)">
<widget-check-box :size="50" :checked="v.checked" />
</view>
<view class="item-box">
<service-preview-item :data="v" />
<widget-count-modify
class="component-add"
min="1"
:init="v.number"
@change="changeNumber($event, { parentIndex: index, itemIndex: i })"
/>
</view>
</view>
</view>
<view class="bottom-btn-box">
<view class="total-price">
<text class="text">合计</text>
<text class="price">¥ {{ utils.formatNumber(item.total, 2) }}</text>
</view>
<view class="button" :class="{ active: item.total > 0 }" @click="createOrder(index)">
<text>去下单</text>
</view>
</view>
</view>
<view class="bottom-btn-box">
<view class="total-price">
<text class="text">合计</text>
<text class="price">¥ {{ utils.formatNumber(item.total, 2) }}</text>
</view>
<view class="button" :class="{ active: item.total > 0 }" @click="createOrder(index)">
<text>去下单</text>
</view>
</block>
<block v-else>
<view class="empty-data">
购物车为空请先去<text class="choose-service" @click="utils.toPage('/pages/service/cate', {}, 'switch')">
选择服务
</text>
</view>
</view>
</block>
</view>
</app-layout>
</template>
@ -281,4 +290,16 @@ export default {
.more {
padding: 50rpx 0;
}
.empty-data {
width: 100%;
box-sizing: border-box;
padding: 100rpx 50rpx;
text-align: center;
color: #999999;
font-size: 28rpx;
.choose-service {
color: #8194f2;
font-weight: bold;
}
}
</style>