Compare commits
2 Commits
3acaf94a37
...
cmx
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5e0162e3ea | ||
|
|
282502a8d6 |
@@ -202,10 +202,9 @@ export default {
|
||||
return vm.$u.post('Spike/recommendedSpike');
|
||||
},
|
||||
// 秒杀详情
|
||||
getSpikeInfo({ groupbuy_id, goods_id }) {
|
||||
getSpikeInfo({ groupbuy_id }) {
|
||||
return vm.$u.post('Spike/spikeInfo', {
|
||||
groupbuy_id: groupbuy_id,
|
||||
goods_id: goods_id,
|
||||
groupbuy_id: groupbuy_id
|
||||
});
|
||||
},
|
||||
// 秒杀列表
|
||||
@@ -222,23 +221,13 @@ export default {
|
||||
});
|
||||
},
|
||||
// 拼团商品详情
|
||||
getPinTuanDetails({ pintuan_id, goods_id }) {
|
||||
return vm.$u.post('Specialci/pintuanInfo', {
|
||||
pintuan_id: pintuan_id,
|
||||
goods_id: goods_id,
|
||||
});
|
||||
getPinTuanDetails({ pintuan_id }) {
|
||||
return vm.$u.post('Specialci/pintuanInfo', { pintuan_id: pintuan_id });
|
||||
},
|
||||
// 推荐拼团
|
||||
getPinTuanPush() {
|
||||
return vm.$u.post('Specialci/pintuanPush');
|
||||
},
|
||||
// 拼团验证
|
||||
pintuanVerify({ pintuan_id, pintuangroup_headid }) {
|
||||
return vm.$u.post('Specialci/pintuanVerify', {
|
||||
pintuan_id: pintuan_id,
|
||||
pintuangroup_headid: pintuangroup_headid,
|
||||
});
|
||||
},
|
||||
// 开团/参团
|
||||
withImmediate({ pintuan_id, pintuangroup_headid, pintuangroup_id}) {
|
||||
return vm.$u.post('Specialci/withImmediate', {
|
||||
|
||||
@@ -57,7 +57,7 @@ export default {
|
||||
props:['item','title'],
|
||||
watch:{
|
||||
select(){
|
||||
// console.log(this.select)
|
||||
console.log(this.select)
|
||||
this.$emit("sel", this.select);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,8 +56,17 @@ export default {
|
||||
},
|
||||
onLoad(option) {
|
||||
this.price = option.price;
|
||||
// this.isNewmembervoucher();
|
||||
},
|
||||
methods: {
|
||||
// 是否显示新人优惠券
|
||||
isNewmembervoucher() {
|
||||
this.$u.api.isNewmembervoucher().then(res => {
|
||||
if(res.errCode == 0) {
|
||||
this.price = res.data.price;
|
||||
}
|
||||
})
|
||||
},
|
||||
exchangeCoupon() {
|
||||
this.$u.api.getCoupon({ id: 1 }).then(res => {
|
||||
this.$u.toast(res.message);
|
||||
|
||||
@@ -1,85 +0,0 @@
|
||||
<template>
|
||||
<u-popup v-model="showCoupon" mode="center" class="u-coupon-popup">
|
||||
<view class="coupon">
|
||||
<view class="price">{{ newMemberCoupon.price }}</view>
|
||||
<image src="/static/image/common/30.png" class="coupon-image" @click="viewCoupon"></image>
|
||||
<image src="/static/image/common/24.png" class="close-image" @click="showCoupon=false"></image>
|
||||
</view>
|
||||
</u-popup>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
showCoupon: true,
|
||||
newMemberCoupon: {},
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
showCoupon(value) {
|
||||
if(!value) {
|
||||
uni.navigateBack();
|
||||
}
|
||||
}
|
||||
},
|
||||
onShow() {
|
||||
this.isNewmembervoucher();
|
||||
},
|
||||
methods: {
|
||||
viewCoupon() {
|
||||
this.$u.route('/pageB/coupon/details', {
|
||||
price: this.newMemberCoupon.price
|
||||
});
|
||||
},
|
||||
// 是否显示新人优惠券
|
||||
isNewmembervoucher() {
|
||||
this.$u.api.isNewmembervoucher().then(res => {
|
||||
if(res.errCode == 0) {
|
||||
this.newMemberCoupon = res.data;
|
||||
} else {
|
||||
this.showCoupon = false;
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.u-coupon-popup {
|
||||
/deep/ .u-mode-center-box {
|
||||
background-color: transparent;
|
||||
}
|
||||
.coupon {
|
||||
width: 750rpx;
|
||||
height: 583rpx;
|
||||
position: relative;
|
||||
.price {
|
||||
z-index: 3;
|
||||
color: #EBB36E;
|
||||
position: absolute;
|
||||
font-size: 98rpx;
|
||||
font-weight: bold;
|
||||
top: 200rpx;
|
||||
left: 50%;
|
||||
transform: translate(-68%, 0);
|
||||
}
|
||||
.coupon-image {
|
||||
width: 568rpx;
|
||||
height: 583rpx;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
transform: translate(-60%, 0);
|
||||
}
|
||||
.close-image {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 155rpx;
|
||||
width: 60rpx;
|
||||
height: 60rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -27,10 +27,10 @@
|
||||
<text>¥{{ goodsInfo.pintuan_price || '0.00' }}</text>
|
||||
<s>¥{{ goodsInfo.goods_price || '0.00' }}</s>
|
||||
</view>
|
||||
<view class="collect" @click="switchCollect(goodsInfo.is_collect)">
|
||||
<u-icon name="star" color="#474747" size="28" v-if="goodsInfo.is_collect == 0"></u-icon>
|
||||
<view class="collect" @click="switchCollect(goodsInfo.goods_collect)">
|
||||
<u-icon name="star" color="#474747" size="28" v-if="!goodsInfo.goods_collect"></u-icon>
|
||||
<u-icon name="star-fill" color="#FF7807" size="28" v-else></u-icon>
|
||||
<text>{{ !goodsInfo.is_collect == 1 ? '收藏' : '已收藏' }}</text>
|
||||
<text>{{ !goodsInfo.goods_collect ? '收藏' : '已收藏' }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -139,6 +139,7 @@
|
||||
</view>
|
||||
<view style="height:100rpx"></view>
|
||||
</view>
|
||||
<u-toast ref="uToast" />
|
||||
</scroll-view>
|
||||
</u-popup>
|
||||
<!-- 普通商品 tool -->
|
||||
@@ -179,7 +180,7 @@
|
||||
<view class="btn" v-else @click="spikeGoods">立即秒杀</view>
|
||||
</view>
|
||||
<!-- <tloos @buy="buy" @xuanze="xuanze" :id="id" :info="goodsInfo" :type="type"></tloos> -->
|
||||
<u-toast ref="uToast" :z-index='200000' />
|
||||
<u-toast ref="uToast" />
|
||||
</view>
|
||||
</template>
|
||||
<script>
|
||||
@@ -195,7 +196,7 @@ export default {
|
||||
goodsInfo: {}, // 商品信息
|
||||
storeInfo: {}, // 店铺信息
|
||||
glist: [], // 规格列表
|
||||
id: 0, // 商品id
|
||||
id: 0, // 商品id/秒杀id/拼团 id
|
||||
type: '', // 商品类型 商品详情 1普通 2拼团 3秒杀 4优惠券
|
||||
groupUser: [], // 拼团用户
|
||||
user_suc: [], // 拼团成功用户
|
||||
@@ -214,9 +215,7 @@ export default {
|
||||
sel: "", // 拼接的规格
|
||||
quanxuan: false, // 规格是否选择
|
||||
debounce: true, // 防止多次提交订单
|
||||
storeid:0, // 店铺 id
|
||||
pintuan_id: '', // 拼团 id
|
||||
groupbuy_id: '', // 秒杀 id
|
||||
storeid:0 // 店铺id
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -384,10 +383,10 @@ export default {
|
||||
this.ordinaryDetails(id);
|
||||
break;
|
||||
case 2:
|
||||
this.pinTuanDetails();
|
||||
this.pinTuanDetails(id);
|
||||
break;
|
||||
case 3:
|
||||
this.spikeGoodsDetails();
|
||||
this.spikeGoodsDetails(id);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -395,40 +394,38 @@ export default {
|
||||
},
|
||||
// 普通商品详情
|
||||
ordinaryDetails(id) {
|
||||
this.$u.api.getGoodsDetails({ id: id }).then(res => {
|
||||
this.$u.api.getGoodsDetails({ id: id }).then((res)=>{
|
||||
// console.log(res)
|
||||
if (res.errCode == 0) {
|
||||
this.evaluate = res.data.goods_evaluate_info;
|
||||
this.goodsInfo = res.data.goods;
|
||||
this.storeInfo = res.data.store;
|
||||
this.setSwiperList(res.data.goods_image);
|
||||
this.glist = res.data.spec_list;
|
||||
this.storeid = res.data.store.store_id;
|
||||
this.storeid = res.data.store.store_id
|
||||
// console.log(this.goodsInfo.mobile_body);
|
||||
this.type = res.data.view_type;
|
||||
this.setTitle();
|
||||
if(this.type == 1) {
|
||||
this.id = res.data.goods.goods_id;
|
||||
} else if(this.type == 2) {
|
||||
this.id = res.data.goods.goods_id;
|
||||
this.pintuan_id = res.data.goods.pintuan_id;
|
||||
this.getGoodsDetails();
|
||||
this.id = res.data.goods.pintuan_id;
|
||||
this.getGoodsDetails(this.id);
|
||||
} else if(this.type == 3) {
|
||||
this.id = res.data.goods.goods_id;
|
||||
this.groupbuy_id = res.data.groupbuy_id;
|
||||
this.getGoodsDetails();
|
||||
this.id = res.data.groupbuy_id;
|
||||
this.getGoodsDetails(this.id);
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 拼团详情
|
||||
pinTuanDetails() {
|
||||
pinTuanDetails(id) {
|
||||
this.$u.api.getPinTuanDetails({
|
||||
pintuan_id: this.pintuan_id,
|
||||
goods_id: this.id,
|
||||
pintuan_id: id
|
||||
}).then(res => {
|
||||
if(res.errCode == 0) {
|
||||
this.evaluate = res.data.data.goods_evaluate_info;
|
||||
this.goodsInfo = res.data.data.goods;
|
||||
this.pintuan_id = res.data.data.pintuan_id;
|
||||
this.setSwiperList(res.data.data.goods_image);
|
||||
this.glist = res.data.data.spec_list;
|
||||
this.user_suc = res.data.data.user_suc;
|
||||
@@ -438,14 +435,13 @@ export default {
|
||||
})
|
||||
},
|
||||
// 秒杀详情
|
||||
spikeGoodsDetails() {
|
||||
spikeGoodsDetails(id) {
|
||||
this.$u.api.getSpikeInfo({
|
||||
groupbuy_id: this.groupbuy_id,
|
||||
goods_id: this.id,
|
||||
groupbuy_id: id
|
||||
}).then(res => {
|
||||
if(res.errCode == 0) {
|
||||
// this.id = res.data.groupbuy_id;
|
||||
this.groupbuyInfo = res.data.groupbuyInfo;
|
||||
this.groupbuy_id = res.data.groupbuyInfo.groupbuy_id;
|
||||
this.evaluate = res.data.goodsInfo.goods_evaluate_info;
|
||||
this.goodsInfo = res.data.goodsInfo.goods;
|
||||
this.setSwiperList(res.data.goodsInfo.goods_image);
|
||||
@@ -466,19 +462,6 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
// 验证能否拼团
|
||||
async pintuanVerify({ pintuan_id, pintuangroup_headid }) {
|
||||
const res = await this.$u.api.pintuanVerify({
|
||||
pintuan_id: pintuan_id,
|
||||
pintuangroup_headid: pintuangroup_headid,
|
||||
})
|
||||
if(res.errCode != 0) {
|
||||
this.$refs.uToast.show({
|
||||
title: res.message,
|
||||
});
|
||||
}
|
||||
return res.errCode;
|
||||
},
|
||||
/*
|
||||
* @description 下单 订单步骤1:展示结算数据
|
||||
* @params {Number} type involvement 拼团或者 默认开团
|
||||
@@ -507,33 +490,26 @@ export default {
|
||||
}
|
||||
}
|
||||
if(!this.debounce) return;
|
||||
this.debounce = false;
|
||||
let params = {
|
||||
ifcart: ifcart,
|
||||
cart_id: [this.goodsInfo.goods_id + '|' + num],
|
||||
}
|
||||
if(this.type == 2) {
|
||||
if(type == 'involvement') {
|
||||
// 验证能否拼团
|
||||
let status = this.pintuanVerify({
|
||||
pintuan_id: this.pintuan_id,
|
||||
pintuangroup_headid: this.involvemenGroupInfo[0].user_id
|
||||
}).then(status => {
|
||||
if(status != 0) return true;
|
||||
})
|
||||
// console.log(status);
|
||||
if(status) return false;
|
||||
// const userId = uni.getStorageSync('user_info').member.member_id;
|
||||
this.$store.commit('setGroupHeadId', this.involvemenGroupInfo[0].user_id);
|
||||
// console.log(this.$store.state.pintuangroup_headid);
|
||||
Object.assign(params, {
|
||||
pintuan_id: this.pintuan_id,
|
||||
pintuan_id: this.id,
|
||||
pintuangroup_id: this.involvemenGroupInfo[0].pintuangroup_id,
|
||||
})
|
||||
} else {
|
||||
Object.assign(params, {
|
||||
pintuan_id: this.pintuan_id,
|
||||
pintuan_id: this.id,
|
||||
})
|
||||
}
|
||||
}
|
||||
this.debounce = false;
|
||||
this.$u.api.settlementOrder(params).then(res => {
|
||||
if(res.errCode == 0) {
|
||||
// console.log('type' + this.type);
|
||||
@@ -543,7 +519,6 @@ export default {
|
||||
url: '/pageC/cart/ConfirmOrder'
|
||||
})
|
||||
} else {
|
||||
this.$u.toast(res.message);
|
||||
this.debounce = true;
|
||||
this.$u.toast(res.message);
|
||||
}
|
||||
@@ -581,9 +556,8 @@ export default {
|
||||
// console.log(id)
|
||||
// 选择完规格后设商品type = 1
|
||||
// this.type = 1;
|
||||
// 改变 goods_id
|
||||
this.getGoodsDetails(this.glist[id])
|
||||
this.id = this.glist[id];
|
||||
this.getGoodsDetails();
|
||||
},
|
||||
// 设置页面标题
|
||||
setTitle() {
|
||||
@@ -629,7 +603,7 @@ export default {
|
||||
})
|
||||
},
|
||||
switchCollect(status) {
|
||||
if(status == 1) {
|
||||
if(status) {
|
||||
this.removeFavorite();
|
||||
} else {
|
||||
this.addFavoriteGoods();
|
||||
|
||||
@@ -18,12 +18,10 @@ export default {
|
||||
searchwordlist: [],
|
||||
}
|
||||
},
|
||||
// type: 1 商品 2: 其他
|
||||
// type: 2 商品 1: 其他
|
||||
onLoad(option) {
|
||||
this.type = option.type;
|
||||
this.getWordList();
|
||||
if(option.type == 1) this.setNavSearchInput('搜索您需要的商品');
|
||||
else if(option.type == 2) this.setNavSearchInput('请输入搜索内容');
|
||||
},
|
||||
// 点击搜索按钮
|
||||
onNavigationBarButtonTap(e) {
|
||||
@@ -38,18 +36,6 @@ export default {
|
||||
this.search(this.keyword);
|
||||
},
|
||||
methods:{
|
||||
setNavSearchInput(placeholder) {
|
||||
// #ifdef APP-PLUS
|
||||
// 修改 placeholder
|
||||
webview.setStyle({
|
||||
'titleNView': {
|
||||
"searchInput": { //修改当前窗口search样式
|
||||
"placeholder": placeholder,
|
||||
}
|
||||
}
|
||||
})
|
||||
// #endif
|
||||
},
|
||||
getWordList() {
|
||||
this.$u.api.searchwordlist({type:this.type}).then(res => {
|
||||
console.log(res)
|
||||
|
||||
@@ -148,7 +148,7 @@ export default {
|
||||
onLoad(option) {
|
||||
this.orderType = this.$store.state.orderType;
|
||||
this.orderInfo = this.$store.state.orderInfo;
|
||||
// console.log('orderType' + this.orderType);
|
||||
console.log('orderType' + this.orderType);
|
||||
// console.log(this.orderInfo);
|
||||
this.getGoodsClass();
|
||||
this.setTotalPrice();
|
||||
|
||||
@@ -88,7 +88,7 @@ export default {
|
||||
indexlist: [],
|
||||
indextop: [],
|
||||
info: {},
|
||||
page: 1,
|
||||
page: 0,
|
||||
scrollHeiht: '',
|
||||
}
|
||||
},
|
||||
|
||||
@@ -43,12 +43,12 @@ export default {
|
||||
methods: {
|
||||
getOrderLogistics(id) {
|
||||
this.$u.api.orderLogistics({ id: id }).then(res => {
|
||||
this.$u.toast(res.message);
|
||||
if(res.errCode == 0) {
|
||||
this.expressInfo = res.data.express_info;
|
||||
this.list = res.data.express_list;
|
||||
} else {
|
||||
this.list = [];
|
||||
this.$u.toast(res.message);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
16
pages.json
16
pages.json
@@ -178,7 +178,7 @@
|
||||
"searchInput": {
|
||||
"align": "left",
|
||||
"borderRadius": "15px",
|
||||
"placeholder": "请输入搜索内容",
|
||||
"placeholder": "搜索您需要的商品",
|
||||
"backgroundColor": "rgb(236,236,236)",
|
||||
"placeholderColor": "#999999",
|
||||
"disabled": false,
|
||||
@@ -198,7 +198,7 @@
|
||||
"searchInput": {
|
||||
"align": "left",
|
||||
"borderRadius": "15px",
|
||||
"placeholder": "请输入搜索内容",
|
||||
"placeholder": "搜索您需要的商品",
|
||||
"backgroundColor": "rgb(236,236,236)",
|
||||
"placeholderColor": "#999999",
|
||||
"disabled": false,
|
||||
@@ -238,18 +238,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "coupon/index",
|
||||
"style": {
|
||||
"navigationStyle": "custom",
|
||||
"app-plus": {
|
||||
"animationType": "fade-in",
|
||||
"background": "transparent",
|
||||
"backgroundColor": "rgba(0,0,0.5)",
|
||||
"popGesture": "none"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "coupon/details",
|
||||
"style": {
|
||||
|
||||
@@ -87,6 +87,13 @@
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
</view>
|
||||
<u-popup v-model="showCoupon" mode="center" class="u-coupon-popup">
|
||||
<view class="coupon">
|
||||
<view class="price">{{ newMemberCoupon.price }}</view>
|
||||
<image src="/static/image/common/30.png" class="coupon-image" @click="viewCoupon"></image>
|
||||
<image src="/static/image/common/24.png" class="close-image" @click="showCoupon=false"></image>
|
||||
</view>
|
||||
</u-popup>
|
||||
</view>
|
||||
|
||||
</template>
|
||||
@@ -204,6 +211,41 @@
|
||||
margin: 200rpx auto 0;
|
||||
text-align: center;
|
||||
}
|
||||
.u-coupon-popup {
|
||||
/deep/ .u-mode-center-box {
|
||||
background-color: transparent;
|
||||
}
|
||||
.coupon {
|
||||
width: 750rpx;
|
||||
height: 583rpx;
|
||||
position: relative;
|
||||
.price {
|
||||
z-index: 3;
|
||||
color: #EBB36E;
|
||||
position: absolute;
|
||||
font-size: 108rpx;
|
||||
font-weight: bold;
|
||||
top: 200rpx;
|
||||
left: 50%;
|
||||
transform: translate(-68%, 0);
|
||||
}
|
||||
.coupon-image {
|
||||
width: 568rpx;
|
||||
height: 583rpx;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
transform: translate(-60%, 0);
|
||||
}
|
||||
.close-image {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 155rpx;
|
||||
width: 60rpx;
|
||||
height: 60rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
@@ -245,6 +287,9 @@
|
||||
loading: '努力加载中',
|
||||
nomore: '实在没有了'
|
||||
},
|
||||
showCoupon: false,
|
||||
newMemberCoupon: {},
|
||||
exchangestate:false
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -253,26 +298,30 @@
|
||||
indexad,
|
||||
darenItem
|
||||
},
|
||||
onShow() {
|
||||
onShow() {
|
||||
// 页面返回,页面登陆的情况下检查是否显示领取优惠卷优惠券弹窗
|
||||
if(this.exchangestate==true){
|
||||
this.isNewmembervoucher()
|
||||
}
|
||||
this.articleList = [];
|
||||
this.page = 0;
|
||||
this.getArticlelist();
|
||||
this.getSwiper();
|
||||
},
|
||||
onLoad(){
|
||||
if(this.$store.state.hasLogin){
|
||||
this.isNewmembervoucher();
|
||||
if(this.$store.state.hasLogin){
|
||||
this.exchangestate = true
|
||||
const user = uni.getStorageSync('user_info');
|
||||
// console.log(user)
|
||||
console.log(user)
|
||||
this.imService.login(user.member.member_id,user.member.member_nickname,user.member.member_avatar)
|
||||
this.imService.connectIM()
|
||||
let that = this
|
||||
setTimeout(function(){
|
||||
that.imService.disconnect()
|
||||
// console.log("guanbi")
|
||||
console.log("guanbi")
|
||||
},1000)
|
||||
setTimeout(function(){
|
||||
// console.log("lianjie")
|
||||
console.log("lianjie")
|
||||
that.imService.connectIM()
|
||||
},2000)
|
||||
}
|
||||
@@ -299,7 +348,7 @@
|
||||
},
|
||||
// 关注
|
||||
changeType(member_id) {
|
||||
// console.log(member_id);
|
||||
console.log(member_id);
|
||||
// this.$emit("pChangeType");
|
||||
this.$u.api.attentionMember({
|
||||
member_id: member_id
|
||||
@@ -469,10 +518,18 @@
|
||||
isNewmembervoucher() {
|
||||
this.$u.api.isNewmembervoucher().then(res => {
|
||||
if(res.errCode == 0) {
|
||||
this.$u.route('/pageB/coupon/index');
|
||||
this.newMemberCoupon = res.data;
|
||||
this.showCoupon = true;
|
||||
} else {
|
||||
this.showCoupon = false;
|
||||
}
|
||||
})
|
||||
},
|
||||
viewCoupon() {
|
||||
this.$u.route('/pageB/coupon/details', {
|
||||
price: this.newMemberCoupon.price
|
||||
});
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user