liudan 1 year ago
parent ec3c799794
commit 51246f48dd
  1. 4
      api/user.js
  2. 3
      components/orderGoods/index.vue
  3. 36
      pages/activity/collect_coupons/index.vue
  4. 4
      pages/goods_details/index.vue
  5. 8
      pages/order_details/index.vue
  6. 9
      pages/store/detail/index.vue
  7. 184
      pages/store/home/index.vue
  8. 4
      pages/user/index.vue
  9. 18
      pages/users/order_confirm/index.vue
  10. 45
      pages/users/order_list/index.vue
  11. 2
      pages/users/user_info/index.vue
  12. BIN
      static/images/dizhi.png

@ -707,4 +707,8 @@ export function huitongToConsume(data) {
//消费积分兑分红点
export function jifenToShare(data) {
return request.post(`user/exchange/share`,data)
}
//
export function getUserGroup(data) {
return request.get(`user/group`,data)
}

@ -73,7 +73,7 @@
<view class="right-btn-box">
<view class="btn-item err" v-if="item.is_refund ==1">退款中 x {{item.product_num - item.refund_num}}</view>
<view class='btn-item err' v-if="item.is_refund >1">已退款 x {{item.product_num - item.refund_num}}</view>
<view class="btn-item" v-if="item.is_refund ==0 && evaluate!=9 && orderData.refund_status || item.refund_num > 0" @click.stop="refund(item)">申请退款</view>
<view class="btn-item" v-if="orderData.status!=3&&orderData.status!=2&&item.is_refund ==0 && evaluate!=9 && orderData.refund_status ||orderData.status!=3&&orderData.status!=2&&item.refund_num > 0" @click.stop="refund(item)">申请退款</view>
<view class='btn-item' v-if='item.is_reply==0 && evaluate==2 && item.refund_num > 0' @click.stop="evaluateTap(item.order_product_id,orderId)">去评价</view>
<view class='btn-item on' v-else-if="item.is_reply==1 && evaluate==2">已评价</view>
</view>
@ -185,6 +185,7 @@
},
// 退
refund(item){
console.log(this.orderData,item,"6677")
// #ifdef MP
openOrderRefundSubscribe().then(() => {
uni.hideLoading();

@ -137,26 +137,34 @@
}).then(res=>{
console.log(res)
let couponGetList =[]
couponGetList = res.data.list.filter(item=>{
// if(item.issue){
// return !item.issue.coupon_id //
// }
return !item.issue
})
//couponGetList
console.log(couponGetList)
if(couponGetList.length!=0){
if(res.data.list.length>0){
couponGetList = res.data.list.filter(item=>{
// if(item.issue){
// return !item.issue.coupon_id //
// }
return !item.issue
})
//couponGetList
console.log(couponGetList)
if(couponGetList.length!=0){
this.list = this.list.concat(res.data.list);
this.loading = false;
this.loaded = res.data.list.length != this.limit;
this.page ++;
}else{
uni.redirectTo({
url:"/pages/columnGoods/goods_coupon_list/index?coupon_id="+res.data.list[0].coupon_id
})
}
}else{
this.list = this.list.concat(res.data.list);
this.loading = false;
this.loaded = res.data.list.length != this.limit;
this.page ++;
}else{
uni.redirectTo({
url:"/pages/columnGoods/goods_coupon_list/index?coupon_id="+res.data.list[0].coupon_id
})
}
})
},
//

@ -201,10 +201,10 @@
<text v-if="storeInfo.merchant.type_name" class="font-bg-red ml8 bt-color">{{storeInfo.merchant.type_name}}</text>
<text v-else-if="storeInfo.merchant.is_trader" class="font-bg-red ml8 bt-color">自营</text>
</view>
<view v-if="storeInfo.merchant.care_count" class="txt">
<!-- <view v-if="storeInfo.merchant.care_count" class="txt">
{{storeInfo.merchant.care_count < 10000 ? storeInfo.merchant.care_count : (storeInfo.merchant.care_count/10000).toFixed(2)+'万'}}人关注
</view>
<view v-else class="txt">0人关注</view>
<view v-else class="txt">0人关注</view> -->
</view>
<navigator v-if="hide_mer_status != 1" :url="'/pages/store/home/index?id='+storeInfo.merchant.mer_id" class="link"
hover-class="none">进店</navigator>

@ -249,25 +249,25 @@
<view v-if="orderInfo.presellOrder.activeStatus == 2" class='bnt cancel' @click="cancelOrder">取消订单</view>
</view>
<block v-if="orderInfo.status == 0">
<view class="bnt cancel" @click="allRefund" v-if="refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<view class="bnt cancel" @click="allRefund" v-if="orderInfo.status!=3&&orderInfo.status!=2&&refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
</block>
<block v-if="orderInfo.status == 9">
<view class="bnt cancel" @click="getCombinationRemove">取消拼团</view>
</block>
<view class='bnt b-color' v-if="orderInfo.activity_type==4 && orderInfo.status==9" @tap='goJoinPink'>查看拼团</view>
<block v-if="orderInfo.status == 1">
<view class="bnt cancel" @click="allRefund" v-if="refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<view class="bnt cancel" @click="allRefund" v-if="orderInfo.status!=3&&orderInfo.status!=2&&refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<navigator v-if="orderInfo.delivery_type == 1 || orderInfo.delivery_type == 4" class='bnt cancel' hover-class='none' :url="'/pages/users/goods_logistics/index?orderId='+ orderInfo.order_id">查看物流</navigator>
<view class='bnt b-color' @tap='confirmOrder'>确认收货</view>
</block>
<block v-if="orderInfo.status == 2">
<view class="bnt cancel" @click="allRefund" v-if="refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<view class="bnt cancel" @click="allRefund" v-if="orderInfo.status!=3&&orderInfo.status!=2&&refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<navigator v-if="orderInfo.delivery_type == 1 || orderInfo.delivery_type == 4" class='bnt cancel' hover-class='none' :url="'/pages/users/goods_logistics/index?orderId='+ orderInfo.order_id">查看物流</navigator>
<view class='bnt b-color' @click="goOrderConfirm" v-if="orderInfo.activity_type!=1 && orderInfo.activity_type!=2 && orderInfo.activity_type!=3 &&orderInfo.activity_type!=4 && orderInfo.activity_type!=10">再次购买</view>
</block>
<block v-if="orderInfo.status == 3">
<view class='bnt cancel' @click="delOrder">删除订单</view>
<view class="bnt cancel" @click="allRefund" v-if="refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<view class="bnt cancel" @click="allRefund" v-if="orderInfo.status!=3&&orderInfo.status!=2&&refundNum.length != cartInfo.length && orderInfo.refund_status">批量退款</view>
<view class='bnt b-color' @click="goOrderConfirm" v-if="orderInfo.activity_type!=1 && orderInfo.activity_type!=2 && orderInfo.activity_type!=3 && orderInfo.activity_type!=4 && orderInfo.activity_type!=10">再次购买</view>
</block>
</view>

@ -23,7 +23,7 @@
<text v-if="store.type_name" class="font-bg-red ml8">{{ store.type_name }}</text>
<text v-else-if="store.is_trader" class="font-bg-red ml8">自营</text>
</view>
<view class="fans">{{ store.care_count < 10000 ? store.care_count : (store.care_count / 10000).toFixed(2) + '万' }}人关注</view>
<!-- <view class="fans">{{ store.care_count < 10000 ? store.care_count : (store.care_count / 10000).toFixed(2) + '万' }}人关注</view> -->
</view>
<view class="section wrap" style="margin-top: 22rpx;padding:0;background: none;">
@ -34,10 +34,10 @@
</view>
</view>
</view>
<button :class="{ followed: store.care }" style="position: absolute;right: 24rpx;bottom: 30rpx;" hover-class="none" @click="followToggle">
<!-- <button :class="{ followed: store.care }" style="position: absolute;right: 24rpx;bottom: 30rpx;" hover-class="none" @click="followToggle">
<text v-show="!store.care" class="iconfont icon-guanzhu"></text>
{{ store.care ? '已关注' : '关注' }}
</button>
</button> -->
</view>
</view>
<view class="store-detail">
@ -83,7 +83,8 @@
<view class="item very">
<view class="name">店铺地址</view>
<view class="value">{{ store.mer_address }}</view>
<view v-if="store.lat && store.long && mer_location == 1" class="iconfont icon-dingwei" @click="showMaoLocation(store.lat, store.long)"></view>
<image src="/static/images/dizhi.png" mode="" v-if="store.lat && store.long && mer_location == 1" @click="showMaoLocation(store.lat, store.long)" style="width:38rpx;height:38rpx;"></image>
<!-- <view v-if="store.lat && store.long && mer_location == 1" class="iconfont icon-dingwei" @click="showMaoLocation(store.lat, store.long)"></view> -->
</view>
<view v-if="store.service_phone" class="item">
<view class="name">联系电话</view>

@ -174,48 +174,10 @@
</view> -->
<view class="tab-cont" :style="viewColor">
<!-- diy组件 -->
<view v-show="diyActive == 0 && tabActive == 1">
<!-- #ifdef H5 -->
<view v-for="(item, index) in styleConfig" :key="index">
<block v-if="item.name != 'headerSerch' && item.name != 'tabNav'">
<component
:is="item.name"
:index="index"
:dataConfig="item"
:merId="id"
@detail="goGoodsDetail"
></component>
</block>
</block>
</view>
<!-- #endif -->
<!-- #ifdef MP || APP-PLUS-->
<block v-for="(item, index) in styleConfig" :key="index" >
<view>
<activeParty v-if="item.name == 'activeParty'" :merId="id" :dataConfig="item"></activeParty>
<articleList v-if="item.name == 'articleList'" :merId="id" :dataConfig="item"></articleList>
<bargain v-if="item.name == 'bargain'" :merId="id" :dataConfig="item"></bargain>
<blankPage v-if="item.name == 'blankPage'" :merId="id" :dataConfig="item"></blankPage>
<combination v-if="item.name == 'combination'" :merId="id" :dataConfig="item"></combination>
<topic v-if="item.name == 'topic'" :merId="id" :dataConfig="item"></topic>
<coupon v-if="item.name == 'coupon'" :merId="id" :dataConfig="item"></coupon>
<goodList v-if="item.name == 'goodList'" :merId="id" :dataConfig="item" @detail="goGoodsDetail"></goodList>
<guide v-if="item.name == 'guide'" :merId="id" :dataConfig="item"></guide>
<!-- <liveBroadcast v-if="item.name == 'liveBroadcast'" :merId="id" :dataConfig="item"></liveBroadcast> -->
<menus v-if="item.name == 'menus'" :merId="id" :dataConfig="item"></menus>
<presellList v-if="item.name == 'presellList'" :merId="id" :dataConfig="item"></presellList>
<richText v-if="item.name == 'richText'" :merId="id" :dataConfig="item"></richText>
<seckill v-if="item.name == 'seckill'" :merId="id" :dataConfig="item"></seckill>
<swiperBg v-if="item.name == 'swiperBg'" :merId="id" :dataConfig="item"></swiperBg>
<pictureCube v-if="item.name == 'pictureCube'" :merId="id" :dataConfig="item"></pictureCube>
<swipers v-if="item.name == 'swipers'" :merId="id" :dataConfig="item"></swipers>
<titles v-if="item.name == 'titles'" :merId="id" :dataConfig="item"></titles>
</view>
</block>
<!-- #endif -->
</view>
<!-- 首页 -->
<view v-show="(tabActive == 3 || diyActive == 1 || diyActive == 2) && tabActive != 5">
<!-- v-show="(tabActive == 3 || diyActive == 1 || diyActive == 2) && tabActive != 5" -->
<view >
<!-- 商品 -->
<view v-if="goods.length" class="goods-wrap" id="goods" @touchmove="onTouchmove">
<view v-if="isColumn" class="goods column">
@ -266,133 +228,13 @@
</view>
</view>
<!-- 分类 -->
<view v-show="tabActive === 2">
<view class="category">
<view class="section">
<view class="head" @click="goCategoryGoods('')">
<view class="title">全部</view>
<view class="iconfont icon-xiangyou"></view>
</view>
</view>
<view v-for="item in category" :key="item.store_category_id" class="section">
<view class="head" @click="goCategoryGoods(item.store_category_id)">
<view class="title">{{ item.cate_name }}</view>
<view class="iconfont icon-xiangyou"></view>
</view>
<view v-if="item.children" class="body">
<view v-for="value in item.children" :key="value.store_category_id" class="item" @click="goCategoryGoods(value.store_category_id)">{{ value.cate_name }}</view>
</view>
</view>
</view>
<view class="acea-row row-center-wrapper loadingicon">
<text :hidden="!categoryLoading" class="iconfont icon-jiazai loading"></text>
{{loadTitle}}
</view>
</view>
<!--生活服务-->
<view v-show="tabActive === 5" id="product" @touchmove="onTouchmoves">
<view v-if="productList.length" class="goods column">
<view v-for="item in productList" :key="item.product_id" class="item" @click="goGoodsDetail(item)">
<view class="image">
<easy-loadimage mode="widthFix" :image-src="item.image"></easy-loadimage>
</view>
<view class="text acea-row row-between-wrapper">
<view class="name line2">
<text class="name_text line1">{{ item.store_name }}</text>
</view>
<view class="item_bot">
<view class="money-wrap acea-row">
<view class="money">
¥
<text>{{ item.price }}</text>
</view>
<view v-if="item.show_svip_info.show_svip_price && item.svip_price" class="acea-row row-middle">
<text class='vip-money'>{{item.svip_price}}</text>
<view class="vipImg">
<image class="image" src="/static/images/svip.png"></image>
</view>
</view>
</view>
<view v-if="item.product_type != 0 || item.issetCoupon || item.delivery_free == 1" class="item_tags">
<text v-if="item.product_type != 0" :class="'font_bg-red type'+item.product_type">{{item.product_type == 1 ? "秒杀" : item.product_type == 2 ? "预售" : item.product_type == 3 ? "助力" : item.product_type == 4 ? "拼团" : ""}}</text>
<text class="tags_item ticket" v-if="item.issetCoupon">领券</text>
<text class="tags_item delivery" v-if="item.delivery_free == 1">包邮</text>
</view>
<view class="score">{{ item.rate }}评分 {{ item.reply_count }}条评论</view>
</view>
</view>
<view v-if="item.max_extension && (item.product_type == 0 || item.product_type == 2)" class="foot">
<text v-show="!isColumn" class="iconfont"></text>
最高赚 ¥{{ item.max_extension }}
</view>
</view>
</view>
<view v-if="goodsLoading" class="acea-row row-center-wrapper loadingicon">
<text :hidden="!goodsLoading" class="iconfont icon-jiazai loading"></text>
{{loadTitle}}
</view>
<emptyPage v-if="productList.length == 0 && !goodsLoading" title="暂无商品~"></emptyPage>
</view>
<!-- 优惠券 -->
<view v-show="diyActive == 3 && tabActive == 1">
<view v-if="coupon.length" class="coupon">
<view v-for="item in coupon" :key="item.coupon_id" class="item">
<view class="left gary" v-if="item.issue">
<view class="money">
¥
<text>{{ item.coupon_price }}</text>
</view>
<view>{{ item.use_min_price }}元可用</view>
</view>
<view class="left" v-else :style="{ 'background-image': `url(${domain}/static/diy/couponBg${keyColor}.png)` }">
<view class="money">
¥
<text>{{ item.coupon_price }}</text>
</view>
<view>{{ item.use_min_price }}元可用</view>
</view>
<view class="right">
<view class="name">
<text :class="{gary:item.issue}">{{item.type===0?'店铺券':'商品券'}}</text>
{{ item.title }}
</view>
<view class="time-wrap" style="justify-content: space-between;">
<block v-if="item.coupon_type == 1">
<view class="time">{{ item.use_start_time | dateFormat }}-{{ item.use_end_time | dateFormat }}</view>
</block>
<block v-if="item.coupon_type == 0">
<view>领取后{{ item.coupon_time}}天内可用</view>
</block>
<block v-if="item.issue">
<view class="gary iconfont icon-yilingqu2"></view>
</block>
<block v-else>
<view class="button" @click="receiveCoupon(item)">立即领取</view>
</block>
</view>
</view>
</view>
</view>
<emptyPage v-if="coupon.length == 0" title="暂无优惠券~"></emptyPage>
</view>
<!--活动专场-->
<view v-show="tabActive === 4">
<block v-if="topicList.length>0">
<view class="main_count">
<navigator v-for="(item,index) in topicList" :key='item.group_data_id' :url="`/pages/activity/topic_detail/index?id=${item.group_data_id}`" hover-class="none">
<view class='list'>
<image :src="item.pic" class="picture"></image>
</view>
</navigator>
</view>
</block>
<block v-else>
<view class='empty-box' v-cloak>
<image src='../static/images/no-topic.png'></image>
<view class="txt">暂无活动专场哦~</view>
</view>
</block>
</view>
</view>
</scroll-view>
<!-- <view class="footer" :style="viewColor">
@ -1125,7 +967,7 @@
.tab-cont{
background: #f5f5f5;
min-height: 500rpx;
margin-top: 70rpx;
margin-top: 50rpx;
}
/deep/.care {
background-image: none !important;
@ -1543,14 +1385,16 @@
.column {
padding: 0;
background-color: #FFFFFF;
// background-color: #FFFFFF;
.item {
position: relative;
display: flex;
width: 100%;
padding: 30rpx 20rpx;
border-radius: 0;
margin-bottom: 0;
// margin-bottom: 0;
margin: 10rpx 24rpx;
border-radius: 10px;
&::before {
content: " ";
position: absolute;
@ -1560,8 +1404,8 @@
border-top: 1px solid #F5F5F5;
}
/deep/.image,/deep/.easy-loadimage,/deep/image,/deep/uni-image {
width: 260rpx;
height: 260rpx;
width: 200rpx;
height: 200rpx;
border-radius: 16rpx;
overflow: hidden;
position: relative;

@ -44,7 +44,7 @@
</view>
<!--#endif-->
<view class="name" v-if="userInfo.uid">
{{userInfo.nickname}}<image v-if="member_status" class="level_icon" :src="userInfo.member_icon" alt="">
{{userInfo.nickname}}<text style="font-size: 24rpx;border-radius: 5px;background: #E53623;padding: 5rpx 10rpx;margin-left: 20rpx;" v-show="userInfo.group_name">{{userInfo.group_name?userInfo.group_name:''}}</text><image v-if="member_status" class="level_icon" :src="userInfo.member_icon" alt="">
<view class="vip" v-if="userInfo.is_svip > 0 && svip_switch_status == 1">
<image src="/static/images/svip.png"></image>
</view>
@ -290,7 +290,7 @@
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
let sysHeight = uni.getSystemInfoSync().statusBarHeight + 'px';
import { getMenuList, getUserInfo, setVisit } from '@/api/user.js';
import { getMenuList, getUserInfo, setVisit,getUserGroup } from '@/api/user.js';
import { getVersion } from "@/api/public";
import { orderData } from '@/api/order.js'
import { mapGetters } from "vuex";

@ -153,7 +153,7 @@
</view>
<view class='discount' v-else>免运费</view>
</view>
<view class='item acea-row row-between-wrapper'
<!-- <view class='item acea-row row-between-wrapper'
v-if="!seckillId && order_type != 3 && order_type != 4 && item.order.enabledCoupon">
<view>店铺优惠券</view>
<block v-if="item.coupon.length>0">
@ -166,7 +166,7 @@
<block v-else>
<view class='discount'>暂无优惠券</view>
</block>
</view>
</view> -->
<view v-if="item.openReceipt == 1" class='item acea-row row-between-wrapper'>
<view>开具发票 <text @tap="showInvoice" class="iconfont icon-wenhao1"></text></view>
<view class='discount discount_voice' @tap="goInvoice(item.mer_id)">
@ -515,13 +515,13 @@
title: '支付宝支付',
payStatus: this.$store.getters.globalData.alipay_open
},
{
"name": "余额支付",
"icon": "icon-icon-test",
value: 'balance',
title: '可用余额:',
payStatus: this.$store.getters.globalData.yue_pay_status,
},
// {
// "name": "",
// "icon": "icon-icon-test",
// value: 'balance',
// title: ':',
// payStatus: this.$store.getters.globalData.yue_pay_status,
// },
{
"name": "线下支付",
"icon": "icon-yinhangqia",

@ -234,7 +234,7 @@
<text class="iconfont icon-fabu"></text>
发布种草
</navigator>
<view class='bnt b-color' @click='goOrderDetails_Evaluation(item.order_id)'>去评价</view>
<view class='bnt b-color' @click='goOrderDetails_Evaluation(item,item.order_id)'>去评价</view>
</block>
<block v-if="item.status == 3">
<view class='bnt b-color' @click='goOrderDetails(item.order_id)' v-if="item.activity_type == 2 || item.activity_type == 3 || item.activity_type == 10">查看详情</view>
@ -546,12 +546,28 @@
/**
* 点击去评价
*/
goOrderDetails_Evaluation: function(order_id) {
let self = this
if (!order_id) return that.$util.Tips({
title: '缺少订单号无法查看订单详情和评价'
});
// #ifdef MP
goOrderDetails_Evaluation(item,order_id){
if(item.orderProduct.length==1){
uni.navigateTo({
url:`/pages/users/goods_comment_con/index?uni=${item.orderProduct[0].order_product_id}&order_id=${order_id}`
})
}else{
let self = this
if (!order_id) return that.$util.Tips({
title: '缺少订单号无法查看订单详情和评价'
});
// #ifdef MP
if (self.orderStatus == 0) {
uni.navigateTo({
url: '/pages/order_details/stay?order_id=' + order_id
})
} else {
uni.navigateTo({
url: '/pages/order_details/index?order_id=' + order_id
})
}
// #endif
// #ifndef MP
if (self.orderStatus == 0) {
uni.navigateTo({
url: '/pages/order_details/stay?order_id=' + order_id
@ -561,18 +577,11 @@
url: '/pages/order_details/index?order_id=' + order_id
})
}
// #endif
// #ifndef MP
if (self.orderStatus == 0) {
uni.navigateTo({
url: '/pages/order_details/stay?order_id=' + order_id
})
} else {
uni.navigateTo({
url: '/pages/order_details/index?order_id=' + order_id
})
// #endif
}
// #endif
console.log(item,order_id)
},
/**
* 切换类型

@ -56,7 +56,7 @@
<view class='item acea-row row-between-wrapper'>
<view class="itemTitle">昵称</view>
<view class='input acea-row row-between-wrapper' @click="changeInput">
<input type='text' name='nickname' :value='userInfo.nickname'>
<input type='text' name='nickname' disabled :value='userInfo.nickname'>
<text v-if="open_update_info != 0" class='iconfont icon-you'></text>
<text v-else class='iconfont icon-suozi'></text>
</view>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Loading…
Cancel
Save