MrShi
2026-05-08 8a899e63502939dbf034b90ba46741e0faa9023c
small-program/pages/itinerary/itinerary.vue
@@ -7,6 +7,12 @@
            <view class="header-bar" :style="{ height: navHeight + 'px' }">
               <text class="header-title">我的行程</text>
            </view>
            <view class="top-search">
               <view class="searchbox">
                  <u-icon name="search" color="#999999" size="28"></u-icon>
                  <input class="search-input" v-model="keyword" @confirm="getFirstPageData" type="text" placeholder="输入姓名、电话、订单编号搜索">
               </view>
            </view>
            <scroll-view scroll-x class="tabs-row page-padding" style="padding: 0 0 0 30rpx !important;" show-scrollbar="false">
               <view class="tabs-inner">
                  <view
@@ -109,9 +115,9 @@
                     <view class="footer-btn primary-btn" @click="evaluateOrder(item)" v-if="item.status ===7 && !item.commentStatus ">评价订单</view>
                  </view>
                  <view class="footer-actions" v-else>
                     <view class="footer-btn contact-btn" @click="contactPhone(item,0)" v-if="item.status ===1 || item.status ==2">联系门店</view>
                     <view class="footer-btn contact-btn" @click="contactPhone(item,2)" v-if="item.status ===3 || item.status ===4 ">联系骑手</view>
                     <view class="footer-btn contact-btn" @click="contactPhone(item,1)" v-if="item.status ===5">联系门店</view>
                     <view class="footer-btn contact-btn" @click="contactPhone(item,0)" v-if="(item.status ===1 || item.status ==2) && item.takeShopId">联系门店</view>
                     <view class="footer-btn contact-btn" @click="contactPhone(item,2)" v-if="[3,4,5].includes(item.status) && !item.takeShopId">联系骑手</view>
                     <view class="footer-btn contact-btn" @click="contactPhone(item,1)" v-if="item.status ===5 && item.takeShopId">联系门店</view>
                     <view class="footer-btn contact-btn" v-if="item.status ===0"  @click="cancelOrder(item)">取消订单</view>
                     <view class="footer-btn primary-btn" @click="payOrder(item)" v-if="item.status ===0">立即支付</view>
                     <view class="footer-btn primary-btn" @click="payOrderFee(item)" v-if="item.status ===5 && item.overdueStatus===3 ">立即支付</view>
@@ -246,6 +252,7 @@
            showPhone:false,
            total:0,
            hasNext:true,
            keyword:'',
            userType: 0,
            qrcodeImage:null,
            isLoadingMore: false,
@@ -546,12 +553,13 @@
               var that =this 
               let res ={};
               res = await that.$u.api.myOrderPage({
                     capacity:10,
                     model: {
                        combinedStatus: this.activeTab == -1?'':this.activeTab
                     },
                     page:this.currentPage
                  });
                  capacity:10,
                  model: {
                     combinedStatus: this.activeTab == -1?'':this.activeTab,
                     keyword: this.keyword
                  },
                  page:this.currentPage
               });
                
               console.log(res)
               if (res.code === 200 ) { 
@@ -627,6 +635,38 @@
      align-items: center;
      justify-content: space-between;
      box-sizing: border-box;
   }
   .top-search {
      width: 100%;
      height: 88rpx;
      padding: 8rpx 30rpx;
      box-sizing: border-box;
      display: flex;
      align-items: center;
   }
   .searchbox {
      width: 100%;
      display: flex;
      align-items: center;
      padding: 0 30rpx;
      box-sizing: border-box;
      background: rgba(255,255,255,0.9);
      border-radius: 16rpx;
      overflow: hidden;
   }
   .search-input {
      flex: 1;
      height: 72rpx;
      background: #F9F9FB;
      border-radius: 16rpx;
      border: 1rpx solid #EEEEEE;
      font-weight: 400;
      font-size: 26rpx;
      color: #333333;
      margin-left: 16rpx;
   }
   .header-title {
@@ -902,8 +942,8 @@
   }
   .amount-area {
      width: 50%;
      padding: 0 30rpx;
      box-sizing: border-box;
      // padding: 0 30rpx;
      // box-sizing: border-box;
      display: flex;
      flex-direction: column;
      align-items: flex-end;