yangan
2024-09-06 7e7e77134aa0324993ce7d9db9884eab4d8f98fe
pages/driver-page/driver-index/driver-index.vue
@@ -159,7 +159,7 @@
                        <view class="button-img"
                            v-if="item.isDanger === 1 && !item.idCardEscort"
                           @click.stop="cancelCerifCate(item)">
                           道路运输证
                           剧毒运输证
                        </view>
                        <view class="button-img"
                           @click.stop="cancelAppoint(item)">
@@ -281,7 +281,7 @@
                        v-if="item.isDanger === 1">
                           <view class="button-img"
                              @click.stop="cancelCerifCate(item)">
                              道路运输证
                              剧毒运输证
                           </view>
                        <view class="button-img"
                           @click.stop="cancelAppoint(item)">
@@ -336,6 +336,72 @@
                  :loading="ClickLoading"></u-button></view>
         </view>
      </u-popup>
      <!-- 领取弹出框 -->
         <u-popup :show="showLing"
            @close="closeling"
            closeOnClickOverlay
            @open="openLing"
            mode="center"
            round="10">
            <view class="receiverPopup">
                 <view class="tableCon"   v-if="pageList.length">
            <!-- <uni-table border
                  stripe
                  emptyText="暂无更多数据">
                  <uni-tr>
                     <uni-th  align="center"></uni-th>
                     <uni-th  align="center">产品名称</uni-th>
                            <uni-th   align="center">产品等级</uni-th>
                     <uni-th align="center">吨数</uni-th>
                  </uni-tr>
                  <uni-tr v-for="(item, index) in pageList"
                     :key="item.id">
                      <uni-td align="center">
                          <u-radio-group
                           v-model="item.flag"
                           placement="column"
                           @change="(v)=>groupChange(v,item.flag)"
                        >
                           <u-radio
                           :iconSize='40'
                           :customStyle="{marginBottom: '8px'}"
                           @change="radioChange(item.flag)"
                           >
                           </u-radio>
                        </u-radio-group>
                        </uni-td>
                     <uni-td align="center">{{ item.productName}}</uni-td>
                            <uni-td align="center">{{ item.productGrade}}</uni-td>
                     <uni-td align="center">  {{item.planMeasure}}</uni-td>
                  </uni-tr>
               </uni-table> -->
               <view style="text-align: center;">选择吨数</view>
               <u-radio-group v-model="radioValue"  borderBottom placement="column"
               @change="radioChange"
               >
                  <view
                  style="margin:15rpx" v-for="(item, index) in pageList" :key="index">
                     <u-radio
                     :size='40'
                  :iconSize='50' labelSize='32' shape="circle"
                        :key="index"
                        :label="`${item.productName} - ${item.productGrade?item.productGrade : '暂无等级' } - ${item.planMeasure}吨`"
                        :name="item.id"></u-radio>
                  </view>
               </u-radio-group>
        </view>
         <view class="receiverPopup__btn"><u-button text="确定"
                  type="primary"
                  @click="popupDetermineClick"
                  :loading="ClickLoading"></u-button></view>
            </view>
         </u-popup>
   </view>
</template>
@@ -377,6 +443,11 @@
            show: false,
            BaseUrl,
            yaList:[],
            num:0,
            radioValue:'',
            showLing:false,
            pageList:[],
            receiveNum:"",
            inspectData:[],
            activeObj:{},
            driverBillOfLoadingData: {
@@ -387,6 +458,8 @@
            // 接单模态框
            qiangDanShow: false,
            enterCode:false,
            openObj:{},
            activeObj:{},
            enterCodeStr:'',
            qiangDanTitle: '接单提示',
            qiangDanContent: '',
@@ -403,6 +476,8 @@
            xsUserId: '',
            filedId: '',
            previewImageSrc:"",
            pvcForwardIdList:[],
         };
      },
      onShow() {
@@ -413,10 +488,40 @@
         close() {
            this.show = false;
         },
         radioChange(item){
         },
            closeling() {
            this.showLing = false;
            this.receiveNum = null;
         },
         selectionChange(e) {
            this.yaList= e.detail.index.map(item=>{
               return this.inspectData[item]
            })
         },
         selectionChange2(e){
            console.log(e);
            let tempArr = e.detail.index.pop();
            },
            toggleRowSelection(arrary,selected){
               console.log(arrary,selected,'arrary,selected')
            },
            getBuild(item){
            console.log(this.productName,'opr')
               this.$reqGet('getBuildList',{orderPlanId:this.activeObj.orderPlanId,customerId:this.activeObj.customerId,status:1,fleetId:this.activeObj.fleetId}).then(res=>{
               console.log(res,'resss')
                    this.pageList = res.data.map(item=>{
                  item.flag = false
                  return item;
               });
            })
         },
         popClick(){
            let data=this.yaList.map(item=>{
@@ -444,6 +549,9 @@
            }`
            });
         },
         popupDetermineClick() {
            this.qiangDan(this.activeObj.orderPlanId, this.activeObj.fleetId, this.activeObj.customerId, !this.activeObj.xsUserId ? '0' : this.activeObj.xsUserId);
         },
         init() {
            this.inspectData=[]
            this.qiangDanList();
@@ -460,6 +568,15 @@
         },
         // 接单按钮
         qiangDanBtn(value) {
            if(/聚氯乙烯树脂/.test(value.productName) ){
               this.activeObj = value;
              this.showLing =  true;
              this.lingFlag = true;
              return
            }else{
                this.lingFlag = false;
            }
            //是否可以场内接单,1 可以2不可以
            if (value.isInsideConnect === 1) {
               this.insideConnectShow = true
@@ -500,20 +617,25 @@
                  orderPlanId: id,
                  fleetId: fleetId,
                  customerId: customerId,
                  xsUserId: xsUserId
                  xsUserId: xsUserId,
                  pvcForwardId:this.lingFlag? this.radioValue : null
               }, 'params')
               .then(res => {
                  uni.hideLoading()
                  if (res.code == 0) {
                     this.$u.toast('接单成功');
                     this.showLing  =false;
                     
                  } else {
                     this.$u.toast(res.msg ? res.msg : '接单失败');
                        this.showLing  =false;
                  }
               })
               .then(() => {
                  setTimeout(() => {
                     this.qiangDanList();
                     this.radioValue = '';
                     this.showLing =false;
                  }, 1500);
               }).catch(e => {
                  uni.hideLoading()
@@ -549,6 +671,10 @@
               url: `/subPages/bill-of-lading-details/bill-of-lading-details?orderPlanId=${name}`
            });
         },
            openLing() {
               this.getBuild();
            },
         // 请求退单
         cancelAppoint(item) {
            if (item.status >= 3 && item.status !== 24) {
@@ -568,7 +694,7 @@
                  })
                  this.show=true
               } else {
                  this.$u.toast(res.msg ? res.msg : '请添加道路运输证');
                  this.$u.toast(res.msg ? res.msg : '请添加剧毒运输证');
                  uni.navigateTo({
                     url: '/pages/driver-page/drvier-my/certifiCate/certifiCate'
                  })
@@ -617,7 +743,7 @@
            this.activeObj = value;
            if(value.isDanger === 1){
               if(!value.idCardEscort){
                  this.$u.toast('请选择道路运输证司机!');
                  this.$u.toast('请选择剧毒运输证司机!');
                  this.cancelCerifCate(value);
                  return
               }
@@ -681,13 +807,41 @@
                  url: `/pages/driver-page/appointment/appointment?takeCoalId=${this.activeObj.id}&filedId=${this.activeObj.filedId}&deptId=${this.activeObj.deptId}&sendDate=${this.activeObj.sendDate}`
               });
            }
         },
          groupChange(n,item) {
            console.log(n,item,'213')
            if(n == item && this.num == 0){
            // 第一次相等即执行以下代码
            this.num++
            }else {
            // 第一次后相等即执行以下代码
            // 置空 radioGroupValue 即取消选中的值
            this.radioGroupValue = ''
            // 初始化 num
            this.num = 0
            }
         },
         // 当切换其他选项的时候此方法才会执行
         radioChange(n) {
            console.log(n,'213')
         }
      }
    }
   };
</script>
<style lang="scss"
   scoped>
   .tableCon{
      overflow: auto;
          height: 560rpx;
    width: 700rpx;
  .uni-table{
 min-width: 0!important;
}
}
   @mixin formItem {
      width: vww(345);
      height: vww(150);
@@ -766,8 +920,11 @@
      }
   }
   .receiverPopup {
      height: vww(220);
      height: vww(280);
      width: 700rpx;
      padding: 20rpx;
      // overflow: auto;
      // position: relative;
      .image{
         width: 100%;
         height: vww(110);
@@ -788,6 +945,9 @@
      &__btn {
         margin: vww(10) auto;
         width: 50%;
         position: absolute;
         left: 25%;
         top: 87%;
   
         .u-button {
            height: vww(20);
@@ -1274,6 +1434,42 @@
            position: relative;
            top: -240rpx;
         }
      }
         // 领取弹出框
      .receiverPopup {
         height: vww(110);
         .receiverPopup__title {
            margin: vww(10) auto 0;
            width: 80%;
            text-align: center;
         }
         .receiverPopup__input {
            width: 80%;
            margin: vww(10) auto 0;
            .u-input {
               border: 1px solid #dddddd;
            }
         }
         &__btn {
            margin: vww(10) auto;
            width: 50%;
            .u-button {
               height: vww(20);
            }
         }
      }
   }
</style>
<style lang="scss">
.uni-table{
   min-width: 0px!important
}
</style>