MrShi
2025-07-19 edb50cb0dc65061d5ce9f8d4ff26fcee12b09eee
small-program/pages/demand-hall/demand-hall.vue
@@ -95,23 +95,20 @@
               <view class="eidt">
                  <view></view>
                  <view class="eidt-right">
                     <view class="eidt-close" v-if="[0,1,2].includes(item.status)" @click="orderId = item.id, show = true">取消订单</view>
                     <view class="eidt-close" v-if="[0,1,2].includes(item.status)" @click.stop="orderId = item.id, show = true">取消订单</view>
                     <view class="eidt-phone" v-if="[2].includes(item.status)">联系师傅</view>
                     <view class="eidt-phone" v-if="item.status === 4 && item.commentStatus === 0">评价订单</view>
                     <view class="eidt-btn" v-if="[0,1,2].includes(item.status)" @click="jumpEdit(item)">修改订单</view>
                     <view class="eidt-btn" v-if="(item.type === 2 && item.status === 0) ||  (item.type === 2 && item.status === 3)" @click="jumpEdit(item)">继续支付</view>
                     <!-- <view class="eidt-close">删除订单</view>
                     <view class="eidt-phone">联系师傅</view>
                     <view class="eidt-phone">评价订单</view>
                     <view class="eidt-btn">修改订单</view>
                     <view class="eidt-btn">完成并支付</view> -->
                     <view class="eidt-btn" v-if="[0,1,2].includes(item.status)" @click.stop="jumpEdit(item)">修改订单</view>
                     <view class="eidt-btn" v-if="(item.type === 2 && item.status === 0) ||  (item.type === 2 && item.status === 3)" @click.stop="jumpEdit(item)">继续支付</view>
                     <view class="eidt-btn" v-if="item.status === 2" @click.stop="startJobs(item.id)">开始作业</view>
                     <view class="eidt-btn" v-if="item.status === 3" @click.stop="jumpDesc(item)">完成并支付</view>
                  </view>
               </view>
            </view>
         </view>
         <!-- 接单方 -->
         <view class="index-list" v-if="typeViewId === 1">
            <view class="index-list-item" v-for="(item, index) in orderList" :key="index">
            <view class="index-list-item" v-for="(item, index) in orderList" :key="index" @click="jumpDesc(item)">
               <view class="index-list-item-head">
                  <view class="index-list-item-head-l">
                     <view class="xoam"></view>
@@ -174,90 +171,11 @@
                  <view class="eidt-tips" v-else></view>
                  
                  <view class="eidt-right">
                     <view class="eidt-close" v-if="item.status === 2" @click="orderId = item.id, show = true">取消订单</view>
                     <view class="eidt-phone" v-if="[2,3].includes(item.status)" @click="phoneCall(item.linkPhone)">联系业主</view>
                     <!-- <view class="eidt-close">删除订单</view>
                     <view class="eidt-phone">联系师傅</view>
                     <view class="eidt-phone">评价订单</view>
                     <view class="eidt-btn">修改订单</view>
                     <view class="eidt-btn">完成并支付</view> -->
                     <view class="eidt-close" v-if="item.status === 2" @click.stop="orderId = item.id, show = true">取消订单</view>
                     <view class="eidt-phone" v-if="[2,3].includes(item.status)" @click.stop="phoneCall(item.linkPhone)">联系业主</view>
                  </view>
               </view>
            </view>
            <!-- <view class="index-list-item">
               <view class="index-list-item-head">
                  <view class="index-list-item-head-l">
                     <view class="xoam"></view>
                     <text>运货单-小货车-厢式</text>
                     <view class="tips1">自主抢单</view>
                  </view>
                  <view class="index-list-item-head-r">已接单</view>
               </view>
               <view class="index-list-item-info">
                  葡萄|20000斤|需2辆
               </view>
               <view class="index-list-item-date">
                  <image src="/static/icon/order_ic_time@2x.png" mode="widthFix"></image>
                  <text>07-26 至 07-27(2天)</text>
               </view>
               <view class="address">
                  <view class="address-xian"></view>
                  <view class="address-row">
                     <image src="/static/icon/ic_qidian@2x.png" mode="widthFix"></image>
                     <text>长江西路大蜀山森林公园西门保安室</text>
                  </view>
                  <view class="address-row">
                     <image src="/static/icon/ic_jingguo@2x.png" mode="widthFix"></image>
                     <text>长江西路大蜀山森林公园东门保安室</text>
                  </view>
                  <view class="address-row">
                     <image src="/static/icon/ic_zhongdian@2x.png" mode="widthFix"></image>
                     <text>安徽莲花科技产业园豆米科技有限公司</text>
                  </view>
               </view>
               <view class="index-list-item-price">
                  <text>预估:</text>
                  <text>¥1000.00</text>
               </view>
               <view class="eidt">
                  <view></view>
                  <view class="eidt-right">
                     <view class="eidt-close">取消订单</view>
                  </view>
               </view>
            </view> -->
            <!-- <view class="index-list-item">
               <view class="index-list-item-head">
                  <view class="index-list-item-head-l">
                     <view class="xoam"></view>
                     <text>用工单-采摘工</text>
                     <view class="tips1">自主抢单</view>
                  </view>
                  <view class="index-list-item-head-r">待接单</view>
               </view>
               <view class="index-list-item-info">
                  葡萄|2000斤
               </view>
               <view class="index-list-item-dz">
                  <image src="/static/icon/order_ic_location@2x.png" mode="widthFix"></image>
                  <text>长江西路大蜀山森林公园西门保安室</text>
               </view>
               <view class="index-list-item-dz">
                  <image src="/static/icon/order_ic_time@2x.png" mode="widthFix"></image>
                  <text>07-26 至 07-27(2天)</text>
               </view>
               <view class="index-list-item-price">
                  <text>预估:</text>
                  <text>¥1000.00</text>
               </view>
               <view class="eidt">
                  <view></view>
                  <view class="eidt-right">
                     <view class="eidt-close">取消订单</view>
                  </view>
               </view>
            </view> -->
         </view>
      </template>
      
@@ -295,6 +213,13 @@
         } else {
            this.typeViewId = 0
         }
         if (!this.isOnce) {
            this.commentStatus = ''
            this.orderList = []
            this.next = true
            this.page = 1
            this.getOrderList()
         }
      },
      data() {
         return {
@@ -324,7 +249,8 @@
            
            next: true,
            page: 1,
            orderList: []
            orderList: [],
            isOnce: true
         };
      },
      async onLoad() {
@@ -344,6 +270,20 @@
         this.getOrderList()
      },
      methods: {
         startJobs(orderId) {
            this.$u.api.begin({ orderId })
               .then(res => {
                  if (res.code === 200) {
                     this.status = ''
                     this.commentStatus = ''
                     this.orderList = []
                     this.next = true
                     this.page = 1
                     this.getOrderList()
                  }
               })
         },
         jumpDesc(item) {
            uni.navigateTo({
               url: `/pages/order-details/order-details?id=${item.id}`
@@ -370,14 +310,17 @@
            }
         },
         cancelOrder() {
            this.$u.api.receiveCancelOrder({
            this.$u.api.cancelOrder({
               orderId: this.orderId
            }).then(res => {
               this.show = false
               this.orderList = []
               this.next = true
               this.page = 1
               this.getOrderList()
               if (res.code === 200) {
                  this.show = false
                  this.orderList = []
                  this.next = true
                  this.page = 1
                  this.getOrderList()
               }
            })
         },
         phoneCall(phoneNumber) {
@@ -398,6 +341,8 @@
                  queryLgt: this.longitude
               }
            }).then(res => {
               if (res.code !== 200) return;
               this.isOnce = false
               res.data.records.forEach(item => {
                  // 订餐单
                  if (item.type === 2) {
@@ -533,6 +478,7 @@
                  display: flex;
                  align-items: center;
                  justify-content: flex-end;
                  flex-wrap: wrap;
                  .eidt-close {
                     width: 160rpx;
                     height: 64rpx;