Merge branch 'master' of http://git.luyuan.tk/luyuan/deming into xbx

This commit is contained in:
2020-08-11 16:03:48 +08:00
22 changed files with 287 additions and 148 deletions

View File

@@ -57,7 +57,7 @@ export default {
props:['item','title'],
watch:{
select(){
console.log(this.select)
// console.log(this.select)
this.$emit("sel", this.select);
}
}

View File

@@ -56,17 +56,8 @@ 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);

85
pageB/coupon/index.vue Normal file
View File

@@ -0,0 +1,85 @@
<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>

View File

@@ -27,7 +27,7 @@
<u-popup v-model="is_comment" class="pl" mode="bottom" border-radius="10" height="700rpx">
<view class="top">
<text>评论</text>
<u-icon name="arrow-down" color="#333" size="28" @click="is_comment=false"></u-icon>
<u-icon name="close" color="#333" size="28" @click="is_comment=false"></u-icon>
</view>
<scroll-view class="scroll-box" scroll-y="true" lower-threshold="50" @scrolltolower="scrollBottom">
<block v-for="(item,index) in commentList" :key="index">
@@ -66,7 +66,7 @@
<!-- 评论box -->
<u-popup v-model="is_edit" mode="bottom" border-radius="10" height="100rpx">
<view class="edit-box">
<input type="text" :focus="is_focus" :placeholder="edit_text_other" @focus="focus" v-model="send_value">
<input type="text" focus :placeholder="edit_text_other" @focus="focus" v-model="send_value">
<text @click="sendComment">发送</text>
</view>
</u-popup>
@@ -180,13 +180,15 @@
z-index: 1000;
position: fixed;
top: 0;
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
height: 88rpx;
padding: 0 20rpx;
line-height: 88rpx;
background-color: #ECECEC;
& > text {
margin-right: 280rpx;
color: #333;
font-size: 30rpx;
font-weight: 500;
@@ -514,6 +516,10 @@ export default {
},
// 发布评论
sendComment() {
if (this.send_value.length == 0) {
this.$u.toast("内容不能为空!");
return;
}
this.$u.post("article/articleAddComment",{
article_id: this.article_id,
content: this.send_value,

View File

@@ -127,13 +127,15 @@
<image class="image" :src="goodsInfo.goods_image"></image>
<view class="info">
<text class="u-line-2">{{goodsInfo.goods_name}}</text>
<text>{{goodsInfo.goods_price}}</text>
<text v-if="type == 1">{{ goodsInfo.goods_price }}</text>
<text v-else-if="type == 2">{{ goodsInfo.pintuan_price }}</text>
<text v-else-if="type == 3">{{ groupbuyInfo.groupbuy_price }}</text>
</view>
</view>
<guige @sel="self" ref="guige" v-for="(item,index) in goodsInfo.spec_value" :key="index" :title="goodsInfo.spec_name[index]" :item="item"></guige>
<view class="num">
<text>购买数量</text>
<u-number-box v-model="goodsNumber"></u-number-box>
<u-number-box v-model="goodsNumber" :min="1"></u-number-box>
</view>
<view style="height:100rpx"></view>
</view>
@@ -194,7 +196,7 @@ export default {
goodsInfo: {}, // 商品信息
storeInfo: {}, // 店铺信息
glist: [], // 规格列表
id: 0, // 商品id/秒杀id/拼团 id
id: 0, // 商品id
type: '', // 商品类型 商品详情 1普通 2拼团 3秒杀 4优惠券
groupUser: [], // 拼团用户
user_suc: [], // 拼团成功用户
@@ -213,7 +215,9 @@ export default {
sel: "", // 拼接的规格
quanxuan: false, // 规格是否选择
debounce: true, // 防止多次提交订单
storeid:0 // 店铺id
storeid:0, // 店铺 id
pintuan_id: '', // 拼团 id
groupbuy_id: '', // 秒杀 id
}
},
components: {
@@ -273,7 +277,7 @@ export default {
this.time = time;
this.date = date
}
console.log(123)
// console.log(123)
this.$u.api.getAtwillUserInfo({
id:this.storeid
}).then((res)=>{
@@ -347,13 +351,28 @@ export default {
this.showSpec = true;
return false;
}
// 如果没有规格设规格已全选
if(this.goodsInfo.spec_value == null) {
this.quanxuan = true;
}
if(!this.quanxuan) {
this.$refs.uToast.show({
title: '请选择规格'
})
return false;
}
this.$u.api.addCart({
goods_id: this.id,
quantity: this.goodsNumber,
}).then(res => {
this.$refs.uToast.show({
title: res.message,
type: res.errCode == 0 ? 'success' : 'warning',
duration: 1000,
callback: () => {
if(res.errCode == 0) {
this.showSpec = false;
}
}
})
})
},
@@ -366,10 +385,10 @@ export default {
this.ordinaryDetails(id);
break;
case 2:
this.pinTuanDetails(id);
this.pinTuanDetails();
break;
case 3:
this.spikeGoodsDetails(id);
this.spikeGoodsDetails();
break;
default:
break;
@@ -377,38 +396,40 @@ export default {
},
// 普通商品详情
ordinaryDetails(id) {
this.$u.api.getGoodsDetails({ id: id }).then((res)=>{
// console.log(res)
this.$u.api.getGoodsDetails({ id: id }).then(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
// console.log(this.goodsInfo.mobile_body);
this.storeid = res.data.store.store_id;
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.pintuan_id;
this.getGoodsDetails(this.id);
this.id = res.data.goods.goods_id;
this.pintuan_id = res.data.goods.pintuan_id;
this.getGoodsDetails();
} else if(this.type == 3) {
this.id = res.data.groupbuy_id;
this.getGoodsDetails(this.id);
this.id = res.data.goods.goods_id;
this.groupbuy_id = res.data.groupbuy_id;
this.getGoodsDetails();
}
}
})
},
// 拼团详情
pinTuanDetails(id) {
pinTuanDetails() {
this.$u.api.getPinTuanDetails({
pintuan_id: id
pintuan_id: this.pintuan_id,
goods_id: this.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;
@@ -418,13 +439,14 @@ export default {
})
},
// 秒杀详情
spikeGoodsDetails(id) {
spikeGoodsDetails() {
this.$u.api.getSpikeInfo({
groupbuy_id: id
groupbuy_id: this.groupbuy_id,
goods_id: this.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);
@@ -480,28 +502,29 @@ export default {
}
if(this.type == 2) {
if(type == 'involvement') {
// 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.id,
pintuan_id: this.pintuan_id,
pintuangroup_id: this.involvemenGroupInfo[0].pintuangroup_id,
})
} else {
Object.assign(params, {
pintuan_id: this.id,
pintuan_id: this.pintuan_id,
})
}
}
this.$u.api.settlementOrder(params).then(res => {
if(res.errCode == 0) {
// console.log('type' + this.type);
this.$store.commit('setOrderType', this.type);
this.$store.commit('updateOrderInfo', res.data)
this.$u.route({
url: '/pageC/cart/ConfirmOrder'
})
} else {
this.$u.toast(res.message);
this.debounce = true;
this.$u.toast(res.message);
}
})
},
@@ -537,8 +560,9 @@ export default {
// console.log(id)
// 选择完规格后设商品type = 1
// this.type = 1;
this.getGoodsDetails(this.glist[id])
// 改变 goods_id
this.id = this.glist[id];
this.getGoodsDetails();
},
// 设置页面标题
setTitle() {

View File

@@ -18,11 +18,13 @@ export default {
searchwordlist: [],
}
},
// type: 2 商品 1: 其他
// type: 1 商品 2: 其他
onLoad(option) {
this.type = option.type;
this.getWordList();
this.curent = option.curent || 0
this.getWordList();
if(option.type == 1) this.setNavSearchInput('搜索您需要的商品');
else if(option.type == 2) this.setNavSearchInput('请输入搜索内容');
},
// 点击搜索按钮
onNavigationBarButtonTap(e) {
@@ -37,6 +39,18 @@ 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)

View File

@@ -8,7 +8,7 @@
</cover-image>
<!-- 用户操作 -->
<userinfo class="user-info" :list="list" :cart="cart_type" :comment="is_comment" :num="comment_num" @openCart="openPopup"></userinfo>
<cover-view class="info-box">
<cover-view class="info-box" @click="stopClick">>
<view class="video-info-box">
<image class="image-play" src="../../static/videoIcon.png" mode=""></image>
<text class="video-slip">视频</text>
@@ -68,6 +68,7 @@
<script>
import userinfo from "../components/userinfo/index" // 点赞组件
const temp_url = "https://dmmall.sdbairui.com/api/";
export default {
components: {
userinfo
@@ -101,7 +102,7 @@
// 获取信息
getVideoInfo(article_id) {
uni.request({
url: "https://dmmall.sdbairui.com/api/article/articleInfo",
url: temp_url + "article/articleInfo",
method: "POST",
data: {
article_id: article_id
@@ -130,7 +131,7 @@
// 获取评论
getComment() {
uni.request({
url: "https://dmmall.sdbairui.com/api/article/articleCommentList",
url: temp_url + "article/articleCommentList",
method: "POST",
data: {
article_id: this.article_id,
@@ -144,6 +145,35 @@
}
})
},
// 发布评论
sendComment() {
if (this.send_value.length == 0) {
this.$u.toast("内容不能为空!");
return;
}
uni.request({
url: temp_url + "article/articleAddComment",
method: "POST",
data: {
article_id: this.article_id,
content: this.send_value,
pid: this.pid,
reply_id: this.reply_id,
},
success: (res) => {
if (res.data.errCode == 0) {
this.send_value = "";
this.comment_num = res.data.num;
console.log(res.data);
} else {
uni.showToast({
title: res.data.message,
icon: "none"
})
}
}
})
},
// 获取手机信息
getInfo() {
uni.getSystemInfo({
@@ -201,6 +231,10 @@
this.loadinging = false;
}, 2000)
},
// stop
stopClick(event) {
event.stopPropagation();
},
goBack() {
uni.navigateBack({
delta: 1