Commit 8f2890f8 authored by Junling Bu's avatar Junling Bu
Browse files

chore[litemall-vue]: 删除客服组件

parent 76269132
<template> <template>
<div class="item_detail"> <div class="item_detail">
<van-swipe :autoplay="3000"> <van-swipe :autoplay="3000">
<van-swipe-item v-for="(image, index) in itemImgs" :key="index"> <van-swipe-item v-for="(image, index) in itemImgs" :key="index">
<!-- <img v-lazy="image" width="100%"> --> <!-- <img v-lazy="image" width="100%"> -->
<img :src="image" width="100%"> <img :src="image" width="100%">
</van-swipe-item> </van-swipe-item>
</van-swipe> </van-swipe>
<van-cell-group class="item_cell_group" v-if="goods"> <van-cell-group class="item_cell_group" v-if="goods">
<van-cell class="item_info"> <van-cell class="item_info">
<div> <div>
<span class="item_price">{{ goods.retailPrice*100 | yuan }}</span> <span class="item_price">{{ goods.retailPrice*100 | yuan }}</span>
<span class="item_market_price">{{goods.counterPrice*100 | yuan}}</span> <span class="item_market_price">{{goods.counterPrice*100 | yuan}}</span>
</div> </div>
<div class="item-title"> <div class="item-title">
<!-- <van-tag plain type="danger" v-if="goods.is_haitao">海淘</van-tag> --> <!-- <van-tag plain type="danger" v-if="goods.is_haitao">海淘</van-tag> -->
{{ goods.name }} {{ goods.name }}
</div> </div>
<!-- <div class="item_intro">{{goods.sell_point}}</div> ???--> <!-- <div class="item_intro">{{goods.sell_point}}</div> ???-->
<!-- <div class="item_dispatch">发货地: {{}}</div> --> <!-- <div class="item_dispatch">发货地: {{}}</div> -->
</van-cell> </van-cell>
</van-cell-group> </van-cell-group>
<component <component
v-if="goods" v-if="goods"
ref="goodAction" ref="goodAction"
v-bind:is="'entity-group'" v-bind:is="'entity-group'"
:selectSku.sync="selectSku" :selectSku.sync="selectSku"
:addressVal.sync="addressVal" :addressVal.sync="addressVal"
:mobile="mobile" :mobile="mobile"
:goods-info="goods" :goods-info="goods"
@skuBuy="doBuyNow" @skuBuy="doBuyNow"
@cart-count="cartEvent" @cart-count="cartEvent"
/> />
<div class="item_desc" v-if="goods"> <div class="item_desc" v-if="goods">
<div class="item_desc_title">商品详情</div> <div class="item_desc_title">商品详情</div>
<div class="item_desc_wrap" v-if="goods.detail.length === 0" style="padding-left: 170px;"> <div class="item_desc_wrap" v-if="goods.detail.length === 0" style="padding-left: 170px;">
<p>无详情</p> <p>无详情</p>
</div> </div>
<div class="item_desc_wrap" v-html="goods.detail"></div> <div class="item_desc_wrap" v-html="goods.detail"></div>
</div> </div>
<van-goods-action> <van-goods-action>
<!-- <van-goods-action-mini-btn @click="doContact" icon="wangwang" iconClass="red afterTag"/> --> <van-goods-action-mini-btn @click="toCart" icon="cart" :info="cartInfo"/>
<van-goods-action-mini-btn @click="toCart" icon="cart" :info="cartInfo"/> <van-goods-action-mini-btn
<van-goods-action-mini-btn :style="collectAdd ? 'color: #f7b444;':''"
:style="collectAdd ? 'color: #f7b444;':''" @click="addCollect"
@click="addCollect" icon="shoucang"
icon="shoucang" />
/> <van-goods-action-big-btn @click="openSku('cart')" text="加入购物车"/>
<van-goods-action-big-btn @click="openSku('cart')" text="加入购物车"/> <van-goods-action-big-btn primary @click="openSku('buy')" text="立即购买"/>
<van-goods-action-big-btn primary @click="openSku('buy')" text="立即购买"/> </van-goods-action>
</van-goods-action>
</div>
<van-popup v-model="showContact"> </template>
<md-kefu mobile="16454193338"/>
</van-popup> <script>
</div> import { GOODS_DETAIL } from '@/api/goods';
</template>
import {
<script> Swipe,
import { GOODS_DETAIL } from '@/api/goods'; SwipeItem,
GoodsAction,
import { GoodsActionBigBtn,
Swipe, GoodsActionMiniBtn,
SwipeItem, Popup
GoodsAction, } from 'vant';
GoodsActionBigBtn,
GoodsActionMiniBtn, export default {
Popup props: {
} from 'vant'; itemId: [String, Number]
},
import md_kefu from '@/vue/components/md-kefu/';
data() {
export default { const isLogin = !!localStorage.getItem('Authorization');
props: { return {
itemId: [String, Number] isLogin,
}, itemImgs: [],
collectAdd: false,
data() { cartInfo: '0',
const isLogin = !!localStorage.getItem('Authorization'); selectSku: {
return { selectedNum: 1,
isLogin, selectedSkuComb: {}
itemImgs: [], },
collectAdd: false, addressVal: {
showContact: false, id: null,
cartInfo: '0', area_name: '',
mobile: '13454193338', district: '',
selectSku: { city: '',
selectedNum: 1, province: ''
selectedSkuComb: {} },
}, goods: null,
addressVal: { productList: []
id: null, };
area_name: '', },
district: '',
city: '', computed: {
province: '' // itemImgs() {
}, // debugger;
goods: null, // return this.goods.info.gallery;
productList: [] // }
}; },
},
created() {
computed: { this.initData();
// itemImgs() { },
// debugger;
// return this.goods.info.gallery; methods: {
// } async initData() {
}, // let a = this.$route.params.itemId;
this.$reqGet(`/wx/goods/detail?id=${this.itemId}`).then(
created() { res => {
this.initData(); this.goods = res.data.data.info;
}, this.goods.attribute = res.data.data.attribute;
this.goods.specificationList = res.data.data.specificationList;
methods: { this.goods.productList = res.data.data.productList;
async initData() { this.productList = res.data.data.productList;
// let a = this.$route.params.itemId; this.itemImgs = res.data.data.info.gallery || [];
this.$reqGet(`/wx/goods/detail?id=${this.itemId}`).then( this.collectAdd = res.data.data.userHasCollect === 1;
res => { }
this.goods = res.data.data.info; );
this.goods.attribute = res.data.data.attribute;
this.goods.specificationList = res.data.data.specificationList; let { data } = await this.$reqGet('/wx/cart/goodscount');
this.goods.productList = res.data.data.productList; this.cartInfo = data.data;
this.productList = res.data.data.productList;
this.itemImgs = res.data.data.info.gallery || []; // this.$reqGet(GOODS_DETAIL).then(res => {
this.collectAdd = res.data.data.userHasCollect === 1; // this.goods = res.data.data;
} // });
); },
openSku(status) {
let { data } = await this.$reqGet('/wx/cart/goodscount'); const goodAction = this.$refs.goodAction;
this.cartInfo = data.data; goodAction.skuClick(status);
},
// this.$reqGet(GOODS_DETAIL).then(res => { cartEvent(count) {
// this.goods = res.data.data; this.cartInfo = ~~this.cartInfo + ~~count + '';
// }); },
}, doBuyNow() {
openSku(status) { // if (
const goodAction = this.$refs.goodAction; // (this.goods.has_sku && this.selectSku.sku_id) ||
goodAction.skuClick(status); // !this.goods.has_sku
}, // ) {
cartEvent(count) { // this.$router.push({ name: 'placeOrderEntity' });
this.cartInfo = ~~this.cartInfo + ~~count + ''; // } else {
}, // const goodAction = this.$refs.goodAction;
doBuyNow() { // goodAction.showSku = true;
// if ( // goodAction.isSkuBuy = true;
// (this.goods.has_sku && this.selectSku.sku_id) || // }
// !this.goods.has_sku },
// ) { addCart() {
// this.$router.push({ name: 'placeOrderEntity' }); // debugger;
// } else { // if (this.goods.has_sku && this.selectSku.sku_id) {
// const goodAction = this.$refs.goodAction; // this.$reqPost('/wx/cart/add', {
// goodAction.showSku = true; // goodsId: this.itemId,
// goodAction.isSkuBuy = true; // number: 1
// } // }).then(() => {
}, // this.$toast({
addCart() { // message: '已添加至购物车',
// debugger; // duration: 1500
// if (this.goods.has_sku && this.selectSku.sku_id) { // });
// this.$reqPost('/wx/cart/add', { // this.cartInfo = String(parseInt(this.cartInfo) + 1);
// goodsId: this.itemId, // });
// number: 1 // }
// }).then(() => { },
// this.$toast({ toCart() {
// message: '已添加至购物车', this.$router.push({
// duration: 1500 name: 'cart'
// }); });
// this.cartInfo = String(parseInt(this.cartInfo) + 1); },
// }); async addCollect() {
// } let { data } = await this.$reqPost(
}, '/wx/collect/addordelete',
doContact() { {
this.showContact = true; valueId: this.itemId,
}, type: 0
toCart() { }
this.$router.push({ );
name: 'cart' let type = data.data.type;
}); this.collectAdd = type === 'add' ? true : false;
}, this.$toast({
async addCollect() { message: this.collectAdd ? '添加成功' : '取消成功',
let { data } = await this.$reqPost( duration: 1500
'/wx/collect/addordelete', });
{ }
valueId: this.itemId, },
type: 0
} components: {
); [Popup.name]: Popup,
let type = data.data.type; [Swipe.name]: Swipe,
this.collectAdd = type === 'add' ? true : false; [SwipeItem.name]: SwipeItem,
this.$toast({ [GoodsAction.name]: GoodsAction,
message: this.collectAdd ? '添加成功' : '取消成功', [GoodsActionBigBtn.name]: GoodsActionBigBtn,
duration: 1500 [GoodsActionMiniBtn.name]: GoodsActionMiniBtn,
}); 'entity-group': () =>
} import(/* webpackChunkName: "EntityGroup" */ './EntityGroup/index'),
}, 'virtual-group': () =>
import(/* webpackChunkName: "VirtualGroup" */ './VirtualGroup/index.vue')
components: { }
[md_kefu.name]: md_kefu, };
[Popup.name]: Popup, </script>
[Swipe.name]: Swipe,
[SwipeItem.name]: SwipeItem, <style lang="scss" scoped>
[GoodsAction.name]: GoodsAction, .item_detail {
[GoodsActionBigBtn.name]: GoodsActionBigBtn, img {
[GoodsActionMiniBtn.name]: GoodsActionMiniBtn, max-width: 100%;
'entity-group': () => }
import(/* webpackChunkName: "EntityGroup" */ './EntityGroup/index'), }
'virtual-group': () =>
import(/* webpackChunkName: "VirtualGroup" */ './VirtualGroup/index.vue') .item_cell_group {
} margin-bottom: 15px;
}; }
</script>
.item_price {
<style lang="scss" scoped> font-size: 20px;
.item_detail { color: $red;
img { margin-right: 10px;
max-width: 100%; }
}
} .item_market_price {
color: $font-color-gray;
.item_cell_group { text-decoration: line-through;
margin-bottom: 15px; font-size: $font-size-small;
} }
.item_price { .item-title {
font-size: 20px; line-height: 1.4;
color: $red; }
margin-right: 10px;
} .item_dispatch {
font-size: $font-size-small;
.item_market_price { color: $font-color-gray;
color: $font-color-gray; }
text-decoration: line-through;
font-size: $font-size-small; .item_intro {
} line-height: 18px;
margin: 5px 0;
.item-title { font-size: $font-size-small;
line-height: 1.4; color: $font-color-gray;
} overflow: hidden;
text-overflow: ellipsis;
.item_dispatch { display: -webkit-box;
font-size: $font-size-small; -webkit-box-orient: vertical;
color: $font-color-gray; -webkit-line-clamp: 3;
} }
.item_intro { .item_desc {
line-height: 18px; background-color: #fff;
margin: 5px 0; p {
font-size: $font-size-small; padding: 0 10px;
color: $font-color-gray; }
overflow: hidden; /deep/ img {
text-overflow: ellipsis; max-width: 100%;
display: -webkit-box; display: block;
-webkit-box-orient: vertical; }
-webkit-line-clamp: 3; }
}
.item_desc_title {
.item_desc { @include one-border;
background-color: #fff; padding: 10px 0;
p { text-align: center;
padding: 0 10px; }
} </style>
/deep/ img {
max-width: 100%;
display: block;
}
}
.item_desc_title {
@include one-border;
padding: 10px 0;
text-align: center;
}
</style>
<template> <template>
<div> <div>
<van-cell-group> <van-cell-group>
<van-cell title="联系客服" @click="showKefu = true" isLink></van-cell> <van-cell title="联系客服" @click="showKefu = true" isLink></van-cell>
<van-cell title="意见反馈" isLink></van-cell> <van-cell title="意见反馈" isLink></van-cell>
<van-cell title="常见问题" isLink></van-cell> <van-cell title="常见问题" isLink></van-cell>
</van-cell-group> </van-cell-group>
<van-popup v-model="showKefu"> <van-popup v-model="showKefu">
<md-kefu mobile="16454193338"/> 电话 XXX
</van-popup> </van-popup>
</div> </div>
</template> </template>
<script> <script>
import { Popup } from 'vant'; import { Popup } from 'vant';
import md_kefu from '@/vue/components/md-kefu/';
export default {
export default { data() {
data() { return {
return { showKefu: false
showKefu: false };
}; },
},
components: {
components: { [Popup.name]: Popup
[Popup.name]: Popup, }
[md_kefu.name]: md_kefu };
} </script>
};
</script>
<template> <template>
<div class="user_module"> <div class="user_module">
<van-cell-group> <van-cell-group>
<van-cell icon="shoucang" title="我的收藏" to="/user/collect" isLink/> <van-cell icon="shoucang" title="我的收藏" to="/user/collect" isLink/>
<!-- <van-cell icon="team" title="我的团队" to="/user/team" isLink /> --> <!-- <van-cell icon="team" title="我的团队" to="/user/team" isLink /> -->
<!-- <van-cell icon="gold-bean" title="我的金豆" isLink /> --> <!-- <van-cell icon="gold-bean" title="我的金豆" isLink /> -->
<van-cell icon="dingwei" title="收货地址" to="/user/address" isLink/> <van-cell icon="dingwei" title="收货地址" to="/user/address" isLink/>
<!-- <van-cell icon="id-card" title="实名认证" to="/user/autonym" isLink /> --> <!-- <van-cell icon="id-card" title="实名认证" to="/user/autonym" isLink /> -->
<!-- <van-cell icon="kefu" title="服务中心" to="/user/server" isLink/> --> <van-cell icon="kefu" title="服务中心" to="/user/server" isLink/>
</van-cell-group> </van-cell-group>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
name: 'user-module' name: 'user-module'
}; };
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.user_module { .user_module {
background-color: #fff; background-color: #fff;
} }
</style> </style>
<template>
<div class="contact_popup">
<div class="contact_box contact_top">
<div>微信长按识别店主二维码</div>
<div><img src="../../../assets/images/qc_code.png" alt="店主二维码"></div>
</div>
<div class="contact_box">
<div><van-icon name="phone" /> {{mobile}}</div>
<div class="contact_btn"><a :href="'tel:' + mobile">联系店家</a></div>
</div>
</div>
</template>
<script>
export default {
name: 'md-kefu',
props: {
qcCode: String,
mobile: String
}
};
</script>
<style lang="scss" scoped>
.contact_popup {
white-space: nowrap;
background-color: $bg-color;
text-align: center;
border-radius: 5px;
.contact_box {
padding: 20px 30px;
> div:first-child {
margin-bottom: 20px;
}
}
.contact_top {
@include one-border;
&::after {
border-bottom-color: #999;
}
}
.contact_btn {
border: 1px solid $red;
width: 80%;
margin: 0 auto;
color: #fff;
background-color: $red;
padding: 5px 0;
border-radius: 3px;
a {
color: #fff;
display: block;
}
}
img {
max-width: 100%;
max-height: 100%;
}
}
</style>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment