-
zhangwei
2025-03-24 2d43a1df3f5ba42710e6d21c27d1e13bdb8dfd56
src/pages/order/myorder.vue
@@ -1,61 +1,87 @@
<template>
   <view>
      <up-sticky bgColor="#fff">
         <view class="coreshop-ff content c-p-10">
            <up-search placeholder="请点击选择日期" @clear='clear' @clickIcon='clickTime' @custom='search'
               v-model="workTime" search-icon="calendar" @search='search'></up-search>
         </view>
         <!-- <up-subsection :list="list" :current="current4" activeColor="#f9ae3d"
            @change="sectionChange"></up-subsection> -->
      </up-sticky>
      <view class="full-page">
         <view class="" v-if="listO.orderList&&listO.orderList.length>0">
            <view class="listrecord c-p-20" v-for="(item,index) in listO.orderList" :key="item.id">
               <view class="coreshop-ff chuany-bradius20">
                  <view class="c-p-26">
                     <view class="chuany-flex chuany-justify-between">
                        <text class="chuany-font34 chuany-text-bold">
                           {{item.orderName}}
                        </text>
   <view class="full-page" scroll-y using-sticky>
      <view class="">
         <up-sticky bgColor="#fff">
            <view class="coreshop-ff content c-p-10">
               <up-search placeholder="请点击选择日期" @clear='clear' @click='clickTime' disabled @custom='search'
                  v-model="workTime" search-icon="calendar" @search='search'></up-search>
            </view>
            <!-- <up-subsection :list="list" :current="current4" activeColor="#f9ae3d"
               @change="sectionChange"></up-subsection> -->
            <!-- <up-subsection :list="list" current='1' activeColor="#f9ae3d" @change="sectionChange"></up-subsection> -->
         </up-sticky>
         <view class="full-page-content">
            <view class="c-p-l-20 c-p-r-20" v-if="listO.orderList&&listO.orderList.length>0">
               <view class="listrecord c-p-t-20" v-for="(item,index) in listO.orderList" :key="item.id"
                  @click='toDetail(item.id)'>
                  <view class="coreshop-ff chuany-bradius20">
                     <view class="c-p-24">
                        <view class="chuany-flex chuany-justify-between">
                           <!-- 招工人数:{{item.worderCount}}人 -->
                           <!-- <text class="c-p-r-20">
                        </text> -->
                           <up-tag class='c-m-r-10' text="去打卡" shape="circle" type="success"
                              v-if="item.isSelected" @click="pageToDetail(item)" size='mini'></up-tag>
                           <up-tag class='c-m-r-10' :text="item.isSelectedName" shape="circle" type="warning"
                              v-else size='mini'></up-tag>
                        </view>
                     </view>
                     <view class="c-p-t-20">
                        {{$util.formatDate(item.wordStartTime,true)}}至
                        {{$util.formatDate(item.wordEndTime,true)}}
                     </view>
                     <view class="chuany-flex chuany-justify-between c-p-t-20">
                        <view class="chuany-width50">
                           <text>
                              方式:{{item.workerType==0?'计时':'计件'}}
                           <text class="chuany-font32">
                              {{item.orderComName}}
                           </text>
                           <view class="chuany-flex chuany-justify-between">
                              <!-- 招工人数:{{item.worderCount}}人 -->
                              <!-- <text class="c-p-r-20">
                           </text> -->
                              <up-tag class='c-m-r-10' text="上班打卡" shape="circle" type="success"
                                 v-if="item.isSelected" @click="pageToDetail(item)" size='mini'></up-tag>
                              <view class="" v-else>
                                 <up-text :type="item.isSelectedName=='审核中'?'info':'error'"
                                    :text="item.isSelectedName" size='14'></up-text>
                                 <!-- <up-tag v-if="item.isSelectedName=='审核中'" class='c-m-r-10' bgColor='#909399' borderColor='#909399'
                                    v-if="item.isSelectedName=='审核中'" :text="item.isSelectedName" shape="circle"
                                    size='mini'></up-tag>
                                 <up-tag class='c-m-r-10' v-else :text="item.isSelectedName" shape="circle"
                                    type="error" size='mini'></up-tag> -->
                              </view>
                           </view>
                        </view>
                        <view class="chuany-width50">
                           工价:{{item.workPrice}}{{item.workerType==0?'元/小时':'元/件'}}
                           <text></text>
                        <view class="chuany-flex chuany-justify-between c-p-t-6">
                           <text class="text-69 chuany-font28">
                              {{item.orderName}}
                           </text>
                        </view>
                        <view class="text-69 chuany-font28">
                           <view class="c-p-t-6">
                              日期:{{item.wordStartTimeName}} 至 {{item.wordEndTimeName}}
                           </view>
                           <!-- <view class="c-p-t-14">
                              时间:{{item.startTimeName}} 至 {{item.endTimeName}}
                           </view> -->
                           <view class="chuany-flex chuany-justify-between c-p-t-6">
                              <view class="chuany-width50">
                                 <view class="c-p-l-18 c-p-r-18 text-69 c-p-b-10" v-if="item.zixinganpai">
                                    时间:{{item.zixinganpaiName}}
                                 </view>
                                 <text v-else>
                                    <!-- 方式:{{item.workerType==0?'计时':'计件'}} -->
                                    时间:{{item.startTimeName}} 至 {{item.endTimeName}}
                                 </text>
                              </view>
                              <view class="chuany-width50">
                                 工价:{{item.workPrice}}<template
                                    v-if="item.workPriceMax">~{{item.workPriceMax}}</template>{{item.workerType==0?'元/小时':'元/件'}}
                                 <text></text>
                              </view>
                           </view>
                        </view>
                     </view>
                  </view>
               </view>
               <up-loadmore :status="loadStatus" />
            </view>
            <up-loadmore :status="loadStatus" />
            <view v-else>
               <up-empty text='暂无' icon="/static/order.png">
               </up-empty>
            </view>
         </view>
         <view v-else>
            <up-empty text='暂无' icon="/static/order.png">
            </up-empty>
         </view>
         <fui-date-picker range :show="datePickerShow" :value="$util.formatDate(new Date())" type="3"
            @change="changePicker" @cancel="cancel"></fui-date-picker>
      </view>
      <fui-date-picker range :show="datePickerShow" type="5" @change="changePicker"
         @cancel="cancel"></fui-date-picker>
   </view>
</template>
@@ -96,18 +122,21 @@
   onPullDownRefresh(() => {
      state.pageIndex = 1
      state.pageSize = 20
      loadStatus.value = 'loadmore'
      PostMyListPage()
      uni.stopPullDownRefresh();
   })
   onLoad(() => {
      PostMyListPage()
   })
   const current4 = ref(0);
   const list = ref(['全部', '发布', '招工完毕', '结算完毕']);
   // const list = ref(['全部', '审核中', '已录用', '未录用']);
   const changePicker = (val) => {
      console.log(val);
      workTime.value = val.startDate.result + '至' + val.endDate.result
      state.wordStartTime = new Date(val.startDate.result) //工作开始时间
      state.wordEndTime = new Date(val.endDate.result)
      datePickerShow.value = !datePickerShow.value
   }
   const search = (index) => {
@@ -119,11 +148,20 @@
      }
   }
   const toDetail = (val) => {
      uni.navigateTo({
         url: `/pages/order/myorderdetail?orderid=${val}`
      })
   }
   const clear = () => {
      state.wordStartTime = ""
      state.wordEndTime = ""
   }
   const clickTime = () => {
      datePickerShow.value = !datePickerShow.value
   }
   const cancel = () => {
      datePickerShow.value = !datePickerShow.value
   }
   const PostMyListPage = (orderStatus) => {
@@ -145,7 +183,7 @@
            if (state.pageIndex == 1) {
               listO.orderList = res.data.items
            } else {
               listO.orderList.concat(...res.data.items)
               listO.orderList = listO.orderList.concat(...res.data.items)
            }
            console.log(listO.orderList, 'listO.orderList’');
            // totalPages.value = res.data.totalCount