소스 검색

修改bug
修改首页页面

suixueyan 1 주 전
부모
커밋
20fac3b019

+ 7 - 5
common/utils/request.js

@@ -108,11 +108,13 @@ export default {
 						// })
 						return rej(data)
 					} else {
-						uni.showToast({
-							title: data.msg || '返回失败',
-							icon: 'none',
-							duration: 3000
-						})
+						if (!options.msgFlag) {
+							uni.showToast({
+								title: data.msg || '返回失败',
+								icon: 'none',
+								duration: 3000
+							})
+						}
 						return rej(data)
 					}
 				},

+ 4 - 9
pages/home/index.vue

@@ -7,8 +7,8 @@
         backgroundColor: '#D6E1D0',
       }" class="header-box">
       <view>
-        <view :height="'1080rpx'" class="banner-container">
-          <u-swiper :autoplay="true" :current="current" :height="'1080rpx'" :list="bannerList" circular
+        <view :height="'1050rpx'" class="banner-container">
+          <u-swiper imgMode="scaleToFill" :autoplay="true" :current="current" :height="'1050rpx'" :list="bannerList" circular
                     duration="1000" interval="5000" @change="(data) => (current = data.current)" @click="bannerClick">
             <template #indicator>
               <view class="custom-indicator">
@@ -30,6 +30,7 @@
             </view>
             <view :style="{
                 width: '50%',
+
                 height:topData.height+'px',
                 marginTop:`${navbarHeight}px`
              }" class="search-box" @click="toSearchList">
@@ -43,7 +44,6 @@
             <u-notice-bar @click="handleAdv" color="#EE7945" :text="advList.map((a) => a.remark)"></u-notice-bar>
           </view>
         </view>
-
         <!-- 商品分类 -->
         <view class="box-list">
           <view class="box-list-item" @click="jumpPage('haowu')">
@@ -272,11 +272,6 @@ export default {
   computed: {
     // 转换字符数值为真正的数值
     navbarHeight() {
-      console.log( uni.getMenuButtonBoundingClientRect())
-      console.log(    uni.getSystemInfoSync().statusBarHeight)
-      console.log(this.topData)
-      console.log(systemInfo.statusBarHeight)
-      console.log("+++++++++++++++++++++++++++++++=")
       return this.topData.top
     },
     token() {
@@ -417,6 +412,7 @@ export default {
     },
     bannerClick(index) {
       const currentUrl = this.sourceBanner[index].pic_url
+      console.log("22222222222222222222222",currentUrl)
       if (currentUrl != '#') {
         uni.navigateTo({
           url: currentUrl
@@ -797,7 +793,6 @@ page {
     .banner-container {
       position: relative;
       width: 100%;
-
       .logo-search-container {
         position: fixed;
         width: 100%;

+ 16 - 5
pages/mine/index.vue

@@ -63,7 +63,7 @@
               </view>
               <view class="info-list">
                 <text>余额:
-                  <text class="info-list-rebate_total">{{ userInfo.rebate_total - userInfo.rebate_used }}</text>
+                  <text class="info-list-rebate_total">{{ customerInfo.balance_num}}</text>
                 </text>
               </view>
             </view>
@@ -176,7 +176,8 @@ import {
 import {
   updateUserInfo,
   getUserInfo,
-  userBindNickname
+  userBindNickname,
+  getCustomerInfo
 } from "@/common/api/user.js";
 
 const defaultAvatarUrl =
@@ -204,6 +205,7 @@ export default {
       showUserRegister: false,
       userName: "",
       userInfo: undefined,
+      customerInfo: undefined,
       badgeValue: 0,
       userData: {},
       newRemindCnt: 0,
@@ -539,7 +541,7 @@ export default {
         address: addressData.detailInfo,
       };
       addAddress(data).then((res) => {
-        console.log("addAddress==>", res.data);
+        // console.log("addAddress==>", res.data);
         if (res.data) {
           uni.showToast({
             title: "添加成功",
@@ -558,19 +560,28 @@ export default {
               uni.setStorageSync("token", res.data.token.token);
               uni.setStorageSync("userInfo", JSON.stringify(res.data));
               this.userInfo = res.data;
-              console.log("getUserInfo==>", this.userInfo);
+              // console.log("getUserInfo==>", this.userInfo);
             }
           })
           .catch(() => {
             uni.hideLoading();
           });
       await this.reUserInfo();
+        getCustomerInfo({msgFlag:false}).then(res => {
+          this.customerInfo = res.data||{}
+          if (this.customerInfo){
+            this.customerInfo.balance_total = this.customerInfo.balance_total ? parseFloat(this.customerInfo.balance_total) : 0;
+            this.customerInfo.balance_used = this.customerInfo.balance_used ? parseFloat(this.customerInfo.balance_used) : 0;
+            this.customerInfo.balance_num = this.customerInfo.balance_total - this.customerInfo.balance_used;
+          }
+        })
+
     },
     getNewRemindCnt() {
       const data = {};
       getNewRemindCnt(data)
           .then((res) => {
-            console.log("getNewRemindCnt==>", res.data);
+            // console.log("getNewRemindCnt==>", res.data);
             // if (res.data) {
             this.newRemindCnt = res.data || 0;
             // }

+ 6 - 5
subPages/activityDetail/activityDetail.vue

@@ -184,13 +184,12 @@ export default {
 
   onLoad: function (option) {
     this.activityId = option.activityId
-    this.getActivityDetail()
-    this.setImgWidth()
-
-
   },
   onShow() {
     this.$nextTick(() => {
+      this.getActivityDetail()
+      this.setImgWidth()
+
     });
   },
   onReachBottom() {
@@ -253,8 +252,11 @@ export default {
         this.activityInfo.end_time = (new Date(this.activityInfo.end_time.replace(' ', 'T'))).toISOString().slice(0, 16).replace('T', ' ');
         this.activityInfo.entry_end = entryEnd.toISOString().slice(0, 16).replace('T', ' ');
         if (data.entry_info &&data.entry_info[data.entry_info.length-1]&&data.entry_info[data.entry_info.length-1].id &&!( data.entry_info[data.entry_info.length-1].status==0|| data.entry_info[data.entry_info.length-1].status==-1)) {
+
+          console.log("报名了+++++++++++++++++222+++++++")
           this.is_entry=true
         }
+        console.log("报名了++++++++++++++++++2124141++++++")
         if (data.entry_num&&data.entry_num>0){
           if (data.entry_num>5){
             this.entry_num=5
@@ -335,7 +337,6 @@ export default {
           url:'/pages/home/index'
         });
       }else if(index===2){
-
         console.log('toJump',this.activityInfo)
         if (!this.is_entry){
           Toast.fail('你暂未报名,无法查询报名信息!');

+ 2 - 2
subPages/fragrantLife/fragrantLifeDetail.vue

@@ -68,13 +68,13 @@ export default {
   created() {
     const configs = uni.getStorageSync("configs");
     if (configs) {
-      console.log(configs)
+      // console.log(configs)
       this.shopName = configs.shop_name
       this.shop_logo = configs.shop_logo
     }
   },
   onLoad(options) {
-    console.log(options)
+    // console.log(options)
     this.itemId = options.id
     this.getData(options.id)
   },

+ 38 - 14
subPages/goodsDetail/goodsDetail.vue

@@ -3,7 +3,7 @@
     <!--    <view @click="toHome" class="to-home-img">-->
     <!--      <u-icon size="24rpx" name="arrow-left" bold="true" color="#666666"></u-icon>-->
     <!--    </view>-->
-    <u-swiper :list="detailData.slider" keyName="url"
+    <u-swiper :list="detailData.slider||[]" keyName="url"
               :indicatorStyle="{right: '20rpx', bottom: '20rpx', width: '100px',marginLeft: 'auto'}" indicator
               indicatorMode="number" height="100vw" imgMode="aspectFit">
     </u-swiper>
@@ -12,7 +12,7 @@
       <view class="common-card">
         <view class="display-flex-between ">
           <text class="fw700 title">
-            {{ detailData.goods_name }}
+            {{ detailData.goods_name ||""}}
           </text>
           <view class="display-flex-center">
             <view @click="collectHandler" style="display: flex;flex-direction: column;  align-items: center;">
@@ -22,7 +22,7 @@
                 收藏
               </text>
             </view>
-            <view @click="showPoster = true"
+            <view @click="generatePoster"
                   style="margin-left: 30rpx;flex:1;display: flex;flex-direction: column;  align-items: center;">
               <image style="width: 36rpx;height: 36rpx;margin: 8rpx 0" src="/static/fenxiang.png" mode="aspectFill">
               </image>
@@ -32,7 +32,7 @@
             </view>
           </view>
         </view>
-        <view class="fs12 sub-title">{{ detailData.remark }}</view>
+        <view class="fs12 sub-title">{{ detailData.remark||"" }}</view>
         <view class="display-flex-between">
           <view>
             <text class="fs12 fw400 color-556">
@@ -40,15 +40,15 @@
             </text>
             <text
                 class="fs20 color-556 fw700">
-              {{ goodsType == 'msGoods' ? detailData.price_seckill : detailData.price_selling }}
+              {{ goodsType == 'msGoods' ? detailData.price_seckill||"" : detailData.price_selling||"" }}
             </text>
           </view>
         </view>
         <view class="display-flex-between">
           <view>
-            <text class="text-through fs12 color-666">¥{{ detailData.price_market }}</text>
+            <text class="text-through fs12 color-666">¥{{ detailData.price_market ||""}}</text>
           </view>
-          <view class="fs12 color-666">销量:{{ detailData.stock_sales + detailData.stock_virtual }}件</view>
+          <view class="fs12 color-666">销量:{{ (detailData.stock_sale||0) + (detailData.stock_virtual||0) }}件</view>
         </view>
         <!--				<view class="display-flex-center">-->
         <!--					<view class="tag-red mb5 mr5" v-if="detailData.limit_money">满额赠品(满{{detailData.limit_money}}元赠)-->
@@ -162,7 +162,7 @@
       <button  class="submit-order-button" @click="toApply">提交订单</button>
     </view>
     <u-toast ref="createPosterLoading"></u-toast>
-    <u-overlay :show="showPoster" :mask-click-able="false">
+    <u-overlay :show="showPosterFlag" :mask-click-able="false">
       <view class="poster-wrap">
         <image :src="posterImgSrc" mode="widthFix"></image>
       </view>
@@ -180,13 +180,13 @@
             <view>保存海报</view>
           </view>
         </view>
-        <view class="cancel-btn" @click="showPoster = false">取消</view>
+        <view class="cancel-btn" @click="closePainter">取消</view>
       </view>
     </u-overlay>
     <!-- 海报生成器 -->
-    <l-painter ref="painter" isCanvasToTempFilePath @success="posterImgSrc = $event"
-               css="width: 750rpx; background: #fff;padding: 20rpx" v-if="detailData.goods_name" hidden>
-      <l-painter-image :src="`${imageUrl}home_logo.png`" css="display: block; width: 100%; height: 146rpx;"/>
+    <l-painter ref="painter" isCanvasToTempFilePath @success="painterSuccess"
+               css="width: 750rpx; background: #fff;padding: 20rpx" v-if="detailData.goods_name&&showPoster" hidden>
+      <l-painter-image :src="imageUrl" css="display: block; width: 100%; height: 146rpx;"/>
       <l-painter-view css="display: block; padding: 43rpx 0 22rpx 0;">
         <l-painter-text :text="detailData.goods_name"
                         css=" color: #1D161F; font-size: 36rpx; fontWeight: 500; line-height: 42rpx;"/>
@@ -298,7 +298,7 @@ export default {
       suitNum: 1,
       show: false,
       freeData: [],
-      imageUrl: this.$C.imageUrl,
+      imageUrl: "",
       detailList: [{
         name: '商品详情'
       }, {
@@ -312,6 +312,7 @@ export default {
       goodsSpecData: [],
       truckData: {},
       showPoster: false,
+      showPosterFlag:false,
       posterImgSrc: "",
       selectedSuitPriceData: [],
       goodSuitPriceData: {
@@ -389,6 +390,10 @@ export default {
     })
   },
   onShow() {
+    let configs = uni.getStorageSync('configs') || {}
+    this.imageUrl=configs?.shop_poster_logoimg ||`${this.$C.imageUrl}home_logo.png`
+
+    console.log(this.imageUrl,"============================")
     this.reUserInfo()
   },
   onShareAppMessage(res) {
@@ -566,6 +571,25 @@ export default {
         this.erCodeImg = res.data.url
       })
     },
+    generatePoster(){
+      uni.showToast({
+        title: "海报生成中,请稍后。。。",
+        icon: 'none',
+        duration: 1500
+      })
+
+      this.posterImgSrc =""
+      this.showPoster=true
+    },
+    painterSuccess(tempFilePath) {
+      this.showPosterFlag = true
+      this.posterImgSrc = tempFilePath // 用于预览或保存
+    },
+    closePainter() {
+      this.showPosterFlag = false
+      this.showPoster = false
+      this.posterImgSrc = "" // 用于预览或保存
+    },
     downloadPoster() {
       // console.log(222, this.posterImgSrc)
       // uni.saveImageToPhotosAlbum({
@@ -590,7 +614,7 @@ export default {
               uni.showToast({
                 title: '保存成功'
               })
-              _this.showPoster = false
+              _this.closePainter()
             }
           });
         },

+ 1 - 1
subPages/myOrder/serverOrderItem.vue

@@ -26,7 +26,7 @@
 			<view class="display-flex-center">
 				<text class="btn-gray-border" @click.stop="cancelOrder"
 					v-if="[1, 2, 3].includes(data.status) && !isRefund">取消报名</text>
-				<text class="common-btn ml10" @click.stop="toPay" v-if="[1].includes(data.status)">立即付款</text>
+				<text class="common-btn ml10" @click.stop="toPay" v-if="[1,2].includes(data.status)">立即付款</text>
 			</view>
 		</view>
 		<!-- 确认框 -->

+ 49 - 42
subPages/service/serviceSave.vue

@@ -19,14 +19,14 @@
           </view>
         </view>
       </view>
-      <view class="display-flex mt15 mb10" v-if="orderTimeFalg&&courseInfo.status!=9">
+      <view class="display-flex mt15 mb10" v-if="orderTimeFalg&&status!=9">
         <view class="tubiao mr10">
         </view>
         <view class="title">
           到店时间
         </view>
       </view>
-      <view class="list-item  mt10" v-if="orderTimeFalg&&courseInfo.status!=9">
+      <view class="list-item  mt10" v-if="orderTimeFalg&&status!=9">
         <view class="display-flex-between" style="width: 100%">
           <view  class="display-flex-common">
             <view v-for="(date, index) in futureDates" :key="index"  @click="SetWeekSelect(date)" :class="[date.datetime==order_date?'list-item-week-Selected' :'list-item-week' ,'mr10','flex-center-column']"  >
@@ -64,20 +64,20 @@
         </view>
       </view>
       <view class="list-item">
-        <view class="display-flex-between" v-if="!orderTimeFalg||courseInfo.status==9" >
+        <view class="display-flex-between" v-if="!orderTimeFalg||status==9" >
           <text class="left-title">预约时间</text>
           <view class="h-view">
             {{form.order_date+" "+form.order_time}}
           </view>
         </view>
-        <u-divider  v-if="!orderTimeFalg||courseInfo.status==9"></u-divider>
-        <view class="display-flex-between" v-if="!orderTimeFalg||courseInfo.status==9" >
+        <u-divider  v-if="!orderTimeFalg||status==9"></u-divider>
+        <view class="display-flex-between" v-if="!orderTimeFalg||status==9" >
           <text class="left-title">预约状态</text>
           <view class="h-view">
             {{statusDisplay}}
           </view>
         </view>
-        <u-divider  v-if="!orderTimeFalg||courseInfo.status==9"></u-divider>
+        <u-divider  v-if="!orderTimeFalg||status==9"></u-divider>
         <view class="display-flex-between" >
           <text class="left-title">预约人</text>
           <view class="h-view">
@@ -147,10 +147,11 @@
       </view>
       <u-calendar :formatter="formatter" :defaultDate="order_date" :show="show"  :show-title="false"  mode="single" @confirm="confirm" monthNum="4" color="#E2B98E" @close="close"></u-calendar>
     </view>
-    <view class="bottom-navigation" v-if="orderTimeFalg&&courseInfo.status!=9">
+    <view class="bottom-navigation" v-if="orderTimeFalg&&status!=9">
       <button  v-if="type=='add'" class="activity-button"   @click="onsubmit()">立即报名</button>
       <view  v-if="type=='set'"  class="activity-button"  :style="{background:'#F9F2E6',color:'#C29556',border: '1rpx solid #F9F2E6' ,width: '336rpx',margin:'0rpx 9rpx'}" @click="yvyueOrderCancel()">取消预约订单</view>
-      <view  v-if="type=='set'"  class="activity-button" :style="{width: '336rpx' ,margin:'0rpx 9rpx'}" @click="setyvyueOrder()">修改预约信息</view>
+      <view  v-if="type=='set'&&!(status==2||status==1)"  class="activity-button" :style="{width: '336rpx' ,margin:'0rpx 9rpx'}" @click="setyvyueOrder()">修改预约信息</view>
+      <view  v-if="type=='set'&&(status==2||status==1)"  class="activity-button" :style="{width: '336rpx' ,margin:'0rpx 9rpx'}" @click="setyvyueOrder()">立即支付</view>
     </view>
       <!-- picker 内容 -->
       <u-picker
@@ -224,36 +225,7 @@ export default {
     this.getWorkers()
     if (this.setid ){
       this.orderId=this.setid
-      getYvyueOrderInfo({id: this.orderId}). then(({data}) => {
-        this.orderInfo = data
-        this.order_no=data.order_no
-        // 获取今天的日期
-        const today = new Date(); // 当前日期时间
-        today.setHours(0, 0, 0, 0); // 清除时间部分,只保留日期
-        if (data.order_date >= today.toISOString().split('T')[0]) {
-          this.orderTimeFalg = true;
-          this.getFutureDates(data.order_date)
-          this.getitemTimes()
-          this.getYvyueOrderList()
-        } else {
-          this.orderTimeFalg = false;
-        }
-        this.status = data.status
-        this.order_date=data.order_date
-        this.dateTimeSelect = data.order_date+" "+data.order_time
-        this.form.order_time = data.order_time
-        this.form.order_date = data.order_date
-        this.form.user_name = data.user_name
-        this.workerName= data.tech_name
-        this.form.user_phone = data.user_phone
-        this.form.order_num = data.order_num
-        this.form.order_remark = data.order_remark
-        this.form.customer_id = data.customer_id
-        this.form.id = data.id
-        this.form.tech_uid = data.tech_uid
-        this.setid=null
-
-      });
+      this.getYvyueOrderInfo();
     }else{
       this.orderTimeFalg = true;
       this.getFutureDates()
@@ -424,6 +396,11 @@ export default {
         })
       }
       CreateItem(this.form).then(({data})=>{
+        this.orderId=data.id
+        getYvyueOrderInfo({id: this.orderId}).then(({data}) => {
+          this.type="set"
+          this.status = data.status
+        });
         toWechatPayPaymentSave(data.order_no, data.order_remark)
       })
     },
@@ -447,7 +424,7 @@ export default {
       }
       if (yvyueOrderList[item.date]&&yvyueOrderList[item.date][item.period_start]){
         this.type="set"
-        this.getYvyueOrderInfo(yvyueOrderList[item.date][item.period_start])
+        this.setYvyueOrderInfo(yvyueOrderList[item.date][item.period_start])
       }else {
         if (this.type=="set"){
           this.form={order_num:1};
@@ -457,9 +434,10 @@ export default {
         this.type="add"
       }
     },
-    getYvyueOrderInfo(item) {
+    setYvyueOrderInfo(item) {
       this.order_no=item.order_no
       this.orderId=item.id
+      this.status=item.status
       this.form.order_time = item.order_time
       this.form.user_name = item.user_name
       this.form.user_phone = item.user_phone
@@ -469,7 +447,6 @@ export default {
       this.form.id = item.id
       this.form.tech_uid = item.tech_uid
       this.workerName= item.tech_name
-
     },
     getitemTimes(){
       this.yvyueData=[]
@@ -532,7 +509,37 @@ export default {
         console.log(data,"good=============")
       });
     },
-
+    getYvyueOrderInfo() {
+      getYvyueOrderInfo({id: this.orderId}).then(({data}) => {
+        this.orderInfo = data
+        this.order_no = data.order_no
+        // 获取今天的日期
+        const today = new Date(); // 当前日期时间
+        today.setHours(0, 0, 0, 0); // 清除时间部分,只保留日期
+        if (data.order_date >= today.toISOString().split('T')[0]) {
+          this.orderTimeFalg = true;
+          this.getFutureDates(data.order_date)
+          this.getitemTimes()
+          this.getYvyueOrderList()
+        } else {
+          this.orderTimeFalg = false;
+        }
+        this.status = data.status
+        this.order_date = data.order_date
+        this.dateTimeSelect = data.order_date + " " + data.order_time
+        this.form.order_time = data.order_time
+        this.form.order_date = data.order_date
+        this.form.user_name = data.user_name
+        this.workerName = data.tech_name
+        this.form.user_phone = data.user_phone
+        this.form.order_num = data.order_num
+        this.form.order_remark = data.order_remark
+        this.form.customer_id = data.customer_id
+        this.form.id = data.id
+        this.form.tech_uid = data.tech_uid
+        this.setid = null
+      });
+    },
 
     // 获取未来五天的日期
     getFutureDates(startDateStr = null) {