819527061@qq.com
2024-07-18 825abb00f52fe7d68b3479f328928bf74a47171e
pages/driver-page/driver-index/bill-of-lading-details/bill-of-lading-details.vue
@@ -29,7 +29,7 @@
               <view class="time-icon"><u-icon name="clock"
                     color="#515151"
                     size="40"></u-icon></view>
               <view class="send-date">{{ coalDetailsData.sendDate }}</view>
               <view class="send-date" >{{ coalDetailsData.sendDate }}</view>
            </view>
            <view class="coal-code">通知单编号:&nbsp;&nbsp;{{ coalDetailsData.code || '' }}</view>
            <view class="order-code">
@@ -72,7 +72,7 @@
                  plain
                  @click="printOrder"
                  shape="circle"
                  :disabled="(currentPageCoalStatus  < 3) || !printNum"></u-button>
                  :disabled="(currentPageCoalStatus  != 3) || !printNum"></u-button>
            </view>
            <view class="bottom-button">
               <u-button text="放空"
@@ -90,18 +90,38 @@
            </view>
         </view>
      </view>
      <view class="weigh-ability" v-if="!isReservation">
      <view class="weigh-ability" v-if="!isReservation && noCarNo != 1">
<!--      <view class="weigh-ability" v-if="!isReservation">-->
         <!-- <view class="weigh-button"><u-button text="展示通知单"
               @click="showCaolPickUpBill"
               type="primary"
               shape="circle"></u-button></view> -->
         <view class="weigh-button"><u-button
         <view class="weigh-button"><u-button
                :disabled="!isapproach"
                text="上磅计量"
               @click="cengZhongClick"
               type="primary"
               shape="circle"></u-button></view>
      </view>
    <view class="weigh-ability" v-if="noCarNo == 1">
      <view class="weigh-button"><u-button
          :disabled="!isapproach"
          text="申请计量"
          @click="shenqingjiliangClick"
          type="primary"
          shape="circle"></u-button></view>
    </view>
    <view class="weigh-ability" v-if="isShenqingFubangShow">
      <view class="weigh-button"><u-button
          :loading="shenQingFuBangLoading"
          :disabled="!isapproach"
          text="申请复磅"
          @click="shenqingFubangClick"
          type="primary"
          shape="circle"></u-button></view>
    </view>
      <view class="evacuationModal">
         <u-modal :show="evacuationModalShow"
            :title="evacuationTitle"
@@ -118,13 +138,33 @@
            @confirm="completeOutSaleConfirm"
            @cancel="completeOutSaleCancel"></u-modal>
      </view>
      <u-action-sheet
      <u-action-sheet
      :actions="list"
      :show="show"
      :closeOnClickOverlay="true"
      :closeOnClickAction="true"
      @select="selectClick"
      @close="sheetClose" ></u-action-sheet>
      @close="sheetClose" >
    </u-action-sheet>
         <view class="serviece-customer">
         <u-action-sheet
              v-if="serviceInfoObj.serviecePhone"
            :actions="hujiaolist"
            @select="selectClickhujiao"
            @close='serviceClose'
            title="呼叫方式"
            :show="servieceShow"
            cancelText="取消"></u-action-sheet>
      </view>
<!--  磅房列表  -->
    <u-action-sheet
        :actions="bangfangList"
        title="选择磅房"
        :closeOnClickAction="true"
        :closeOnClickOverlay="true"
        @select="bangfangSelectClick"
        :show="bangfangListShow"
        @close="bangfangSheetClose"></u-action-sheet>
   </view>
</template>
@@ -151,6 +191,8 @@
            orderPlanId: null,
            yyId: null,
            show:false,
            hujiaolist: [{ name: '手机号', subname: '', id: 1 }], //呼叫客服选项 { name: '微信语音', id: 2 }
            servieceShow:false,
            chengZhongFlag:true, // 上榜称重状态
            dayRZ: [],
            list: [
@@ -188,9 +230,10 @@
            // 客服信息
            serviceInfoObj: {
               openId: null,
               openName: ''
               openName: '',
               serviecePhone: ''
            },
            coalStatus: ['未称重', '称重中', '验质中', '称重完成', '处理完成'], // 状态
            coalStatus: ['未称重', '称重中', '验质中', '称重完成', '质检完成'], // 状态[0,1,3,4]
            weighHouseCode: '',
            // 放空弹窗控制变量
            evacuationModalShow: false,
@@ -225,6 +268,11 @@
            // 判读网络状态,
            normalCode: true,
            onlineurl,
        bangfangListShow: false,
        bangfangList: [],
        noCarNo:0,  //是否有车牌号(有车牌0,无车牌1)
        shenQingFuBangLoading: false, //申请复磅loading
        orderCode:''
         };
      },
      onShow() {
@@ -259,24 +307,36 @@
            return this.coalDetailsData.hair !== 0 || this.coalDetailsData.skin !== 0;
         },
         isapproach() {
            return this.currentPageCoalStatus < 3;
            return this.currentPageCoalStatus != 3;
         },
         // 展示皮毛净
         showWeigh() {
            return this.coalDetailsData.tmTaskCoalItems ? this.coalDetailsData.tmTaskCoalItems : []
         },
         //司机领取状态按钮全不展示
         //司机领取状态按钮全不展示
         isReservation(){
            return this.reservationIsShow < 1;
         },
         //判断打印单次数
         printNum(){
            return this.coalDetailsData.printTimes2 <= this.coalDetailsData.tmTaskCoalItems.length
         }
            return this.coalDetailsData.printTimes2 <= this.coalDetailsData.tmTaskCoalItems?.length
         },
      roleType() {
        console.log(uni.getStorageSync('userInfo').type,'roleType')
        return uni.getStorageSync('userInfo').type;
      },
      isShenqingFubangShow() {  //申请复磅按钮是否显示
        //条件: 不是 称重完成+不是 未称重+有车牌+司机  【未称重0,称重中1,验质中2,称重完成3,验质完成4】  noCarNo 是否有车牌号(有车牌0,无车牌1)
        if((this.currentPageCoalStatus != 0 && this.currentPageCoalStatus != 3) && this.roleType == 3 && this.noCarNo == 0) {
          return true
        }else {
          return false
        }
      }
      },
      methods: {
         init() {
            this.$reqGet('coalDayPage', { id: this.orderPlanId }).then(res => {
          init() {
             this.$reqGet('coalDayPage', { id: this.orderPlanId }).then(res => {
               if (res.code == 0) {
                  this.dayRZ = res.data.map(v => {
                     let slicedate = v.taskStatusDes.slice(0, 10);
@@ -291,9 +351,8 @@
                  });
               }
            });
            this.coalDayPage(); //获取日志
            this.getTakeCoal(); //获取通知单详情
            this.getgetService(); //获取客服
         this.coalDayPage(); //获取日志
         this.getTakeCoal(); //获取通知单详情
         },
         // 获取客服openid
         getgetService() {
@@ -304,6 +363,8 @@
               } else {
                  this.serviceInfoObj.openId = res.data.openId;
                  this.serviceInfoObj.openName = res.data.openName;
                  this.serviceInfoObj.serviecePhone = res.data.serviecePhone
                  this.$set(this.hujiaolist[0], 'subname', this.serviceInfoObj.serviecePhone)
                  uni.setStorageSync('customeropenId', this.serviceInfoObj.openId);
                  uni.setStorageSync('customerName', this.serviceInfoObj.openName);
               }
@@ -319,8 +380,10 @@
               if (res.code == 0) {
                  console.log(res, '通知单详情');
                  this.coalDetailsData = res.data;
            this.orderCode = res.data.orderCode
                  this.orderType = this.coalDetailsData.orderType;
                  // 判断是否完成外销订单
            this.noCarNo = res.data.noCarNo
                // 判断是否完成外销订单
                  this.completeOutSale.orderType = this.coalDetailsData.orderType;
                  this.completeOutSale.deptId = this.coalDetailsData.deptId;
                  this.completeOutSale.filedId = this.coalDetailsData.filedId;
@@ -339,16 +402,18 @@
                  this.getServiceOpenid.deptId = this.coalDetailsData.deptId;
                  this.getServiceOpenid.filedId = this.coalDetailsData.filedId;
                  // 获取通知单状态
                  this.currentPageCoalStatus = this.coalDetailsData.statusWeigh;
                  this.currentPageCoalStatus = this.coalDetailsData.statusWeigh;  //【未称重0,称重中1,验质中2,称重完成3,验质完成4】
                  this.reservationIsShow = this.coalDetailsData.status;
                  // 获取原发信息
                  this.primarySkin = this.coalDetailsData.skinTwo;
                  this.primaryHair = this.coalDetailsData.hairTwo;
                  this.primaryClean = this.coalDetailsData.cleanTwo;
                  //初始化磅单数据
                  this.list = this.coalDetailsData.tmTaskCoalItems.map(item=>{
                     return  {name:item.breed + '/' + item.spec,id:item.id}
                  })
            this.getPoundRoomByList()
               } else {
                  this.$u.toast('加载失败');
               }
@@ -368,6 +433,7 @@
                     })
                  }
               }
                   this.getgetService(); //获取客服
            })
         },
         // 日志查询
@@ -425,6 +491,63 @@
            // if (!this.serviceInfoObj.openId) {
            // this.$u.toast('无客服信息');
            // }
            // wx.getSetting({
            //    success(res) {
            //       console.log('授权success', res);
            //       if (!res.authSetting['scope.camera'] || !res.authSetting['scope.record']) {
            //          if (!res.authSetting['scope.camera']) {
            //             uni.showToast({
            //                title: '无相机权限'
            //             });
            //          } else if (!res.authSetting['scope.record']) {
            //             uni.showToast({
            //                title: '无麦克风权限'
            //             });
            //          }
            //       } else {
            //          wx.join1v1Chat({
            //             caller: {
            //                nickname: uni.getStorageSync('name'),
            //                openid: uni.getStorageSync(
            //                   'openid')
            //             },
            //             listener: {
            //                nickname: uni.getStorageSync('customerName'),
            //                openid: uni.getStorageSync(
            //                   'customeropenId')
            //             },
            //             backgroundType: 2,
            //             roomType: 'voice',
            //             success() {
            //                console.log('一对一成功');
            //             },
            //             fail(err) {
            //                console.log('一对一失败', err);
            //             }
            //          });
            //       }
            //    },
            //    fail() {
            //       console.log('获取失败');
            //    }
            // });
               this.servieceShow = true
         },
         serviceClose() {
            this.servieceShow = false
         },
         selectClickhujiao(v){
            console.log(v,'vvvv')
            if (v.id === 2) {
               this.callCustomerServiceImpl()
            } else if (v.id === 1) {
               console.log(this.serviceInfoObj,'w123456+')
               wx.makePhoneCall({
                  phoneNumber: this.serviceInfoObj.serviecePhone
               })
            }
         },
         callCustomerServiceImpl(){
            wx.getSetting({
               success(res) {
                  console.log('授权success', res);
@@ -441,7 +564,7 @@
                  } else {
                     wx.join1v1Chat({
                        caller: {
                           nickname: uni.getStorageSync('name'),
                           nickname: uni.getStorageSync('username'),
                           openid: uni.getStorageSync(
                              'openid')
                        },
@@ -476,6 +599,7 @@
                  this.weighData.equipmentCode = res.data.lastEquipmentCode;
                  this.weighData.sceneInOut = res.data.sceneInOut;
                  this.weighHouseCode = res.data.code;
                  uni.navigateTo({
                     url: `/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice?takeCoalId=${this.orderPlanId}&sceneId=${
                     res.data.id
@@ -489,6 +613,56 @@
               }
            });
         },
      //申请计量
      shenqingjiliangClick() {
        this.bangfangListShow = true
      },
      bangfangSelectClick(val) {  //选中磅房(司机选择磅房)
        console.log(val,'id----')
        this.$reqPost('applyWeight',{tmId:this.getWeightHouseObj.tmId,houseId:val.id},'params').then(res => {
          console.log(res,'选择磅房====')
          if(res.code == 0) {
            uni.navigateTo({
              url: `/pages/driver-page/driver-index/bill-of-lading-details/nocarNoWeighingDevice/nocarNoWeighingDevice?tmId=${this.getWeightHouseObj.tmId}&houseId=${val?.id}&weighHouseCode=${val?.code}`
            })
          }else {
            this.$u.toast(res.msg);
          }
        })
      },
      bangfangSheetClose() {
         this.bangfangListShow = false
      },
      getPoundRoomByList() {
        console.log(this.getWeightHouseObj.tmId,'this.getWeightHouseObj.tmId===')
        this.$reqGet('getPoundRoomByList',{tmId:this.getWeightHouseObj.tmId}).then(res => {
          console.log(res,'res')
          if(res.data) {
            this.bangfangList = res.data
          }
        })
      },
      shenqingFubangClick() {  //申请复磅
         let params = {
           deptId:this.coalDetailsData.deptId,
           filedId:this.coalDetailsData.filedId,
           tmId:this.coalDetailsData.id
         }
         this.shenQingFuBangLoading = true
        this.$reqPost('applyForRepeatedCar',params,'json').then(res => {
          if(res.code == 0) {
            this.shenQingFuBangLoading = false
          }else {
            this.$u.toast(res.msg);
            this.shenQingFuBangLoading = false
          }
        }).catch(() => {
          this.shenQingFuBangLoading = false
        }).finally(() => {
          this.shenQingFuBangLoading = false
        })
      },
         // 放空
         evacuation() {
            this.evacuationModalShow = true;
@@ -539,11 +713,11 @@
         selectClick(obj){
            this.$reqGet('printerHandler',{tmItemId:obj.id}).then(res => {
               uni.hideLoading();
               this.$u.toast(res.msg)
               this.$u.toast(res.msg ? res.msg : '去打印')
               if (res.data) {
                  // this.$u.toast('打印成功')
                  // this.orderPlanData = res.data
               }
               }
            }).catch((err) => {
               uni.hideLoading();
                  this.$u.toast('打印失败')
@@ -554,13 +728,24 @@
         },
         sheetClose(){
            this.show = false;
         }
         },
      onPullDownRefresh() {  //下拉刷新
        setTimeout(() => {
          this.getTakeCoal(() => {  //获取通知单详情
            uni.stopPullDownRefresh()
          })
        },1000)
      }
      }
   };
</script>
<style lang="scss"
   scoped>
   .send-date{
      font-size: 12px;
      color: #eee;
   }
   .weighing-item{
      min-height: 200rpx!important;
   }
@@ -633,8 +818,8 @@
      .block-information {
         width: 690rpx;
         height: 100%;
         min-height: 420rpx;
         margin: vww(40) auto;
         min-height: 400rpx;
         margin: vww(40) auto 0rpx;
         background: #ffffff;
         box-shadow: 4rpx 6rpx 51rpx 0rpx rgba(73, 120, 240, 0.11);
         border-radius: 20rpx;
@@ -651,8 +836,8 @@
            gap: auto 5rpx;
            width: 94%;
            height: 100%;
            min-height: 380rpx;
            margin: vww(18) vww(7) vww(11) vww(17);
            min-height: 360rpx;
            margin: vww(18) vww(7) vww(8) vww(17);
         }
         .status-button {
@@ -696,7 +881,7 @@
         }
         .time {
            width: 35%;
            width: 100%;
            height: vww(12);
            display: flex;
            justify-content: flex-start;
@@ -725,12 +910,7 @@
      // 称重历史
      .weigh-history {
         @extend .block-information;
         .block-main {
            @extend .block-main;
            gap: 10rpx 20rpx;
            .weigh-item {
               width: 100%;
               height: vww(80);
@@ -775,7 +955,6 @@
      .timeLine {
         height: 300rpx;
         min-height: 300rpx;
         margin: vww(20);
         position: relative;
         // top: vww(120);
         overflow-y: overlay;
@@ -836,7 +1015,6 @@
      .weigh-ability {
         width: 631rpx;
         height: vww(100);
         margin: vww(20) auto;
         margin-bottom: vww(10);
         @include flex;
@@ -844,8 +1022,6 @@
         .weigh-button {
            width: 631rpx;
            height: vww(89);
            .u-button {
               font-size: 28rpx;
               font-weight: 300;
@@ -858,4 +1034,13 @@
         }
      }
   }
</style>
  ::v-deep{
    .u-action-sheet{
      max-height: 900rpx;
      overflow-y: auto;
    }
    .u-action-sheet__item-wrap__item{
      padding: 10px 15px!important;
    }
  }
</style>