renkang
2025-01-03 ccf28d1fed1aa2e5437dbe64b5133ba1cbde6ec7
h5/pages/operation/device.vue
@@ -5,8 +5,8 @@
            <view class="la"><text class="red">*</text>选择设备</view>
            <view class="line">
               <view class="sel_wrap" @click="showModal = true">
                  <view class="left" :class="param.deviceName ? '' : 'placeholder9'">
                     {{ param.deviceName ? param.deviceName : '请选择设备' }}
                  <view class="left" :class="(param.deviceName || param.deviceCode) ? '' : 'placeholder9'">
                     {{ (param.deviceName || param.deviceCode) ? param.deviceName ? `[${param.deviceCode}] ` + param.deviceName : `[${param.deviceCode}]` : '请选择设备' }}
                  </view>
                  <u-icon name="arrow-right" color="#999999" size="17"></u-icon>
               </view>
@@ -83,7 +83,8 @@
   import {
      uploadUrl,
      ywDevicePost,
      ywDeviceCreate
      ywDeviceCreate,
      getPointRecordByCode
   } from '@/api'
   import dayjs from 'dayjs';
   import {
@@ -118,14 +119,37 @@
            } = this
            if (!param.deviceId) return this.showToast('请先选择要维护的设备')
            this.handleP()
         },
         handleP() {
            const {
               param,
               fileList
            } = this
            ywDeviceCreate({
               ...param,
               userId: uni.getStorageSync('userInfo').id,
               dealDate: dayjs().format('YYYY-MM-DD HH:mm:ss'),
               multifileList: fileList
            }).then(res => {
               this.showToast('提交成功')
               uni.navigateBack()
               if (param.status != 0) {
                  uni.showModal({
                     title: '温馨提示',
                     content: '设备运维结果异常,是否前往提交工单?',
                     success: function(res) {
                        if (res.confirm) {
                           uni.redirectTo({
                              url: '/pages/workOrder/edit'
                           })
                        } else if (res.cancel) {
                           uni.navigateBack()
                        }
                     }
                  });
               }else{
                  this.showToast('提交成功')
                  uni.navigateBack()
               }
            })
         },
         getDevice() {
@@ -145,6 +169,7 @@
            } = this
            if (!activeDevice.id) return this.showToast('请先选择设备')
            this.$set(this.param, 'deviceId', activeDevice.id)
            this.$set(this.param, 'deviceCode', activeDevice.code)
            this.$set(this.param, 'deviceName', activeDevice.name)
            this.showModal = false
         },
@@ -261,8 +286,19 @@
                     },
                     (decodeText, decodeResult) => {
                        if (decodeText) { //这里decodeText就是通过扫描二维码得到的内容
                           this.action(decodeText) //对二维码逻辑处理
                           this.stopScan(); //关闭扫码功能
                           this.$set(this.param, 'deviceCode', decodeText)
                           this.stopScan(); //关闭扫码功能
                           getPointRecordByCode({
                              // taskId: this.id,
                              pointCode: decodeText
                           }).then(ress => {
                              if (ress.data) {
                                 console.log('ress', ress.data);
                              } else {
                                 this.showToast('未匹配到巡检点,请重新扫描')
                              }
                           })
                        }
                     },
                     (err) => {
@@ -408,11 +444,12 @@
   }
   .sub_btn {
      position: fixed;
      bottom: 68rpx;
      left: 40rpx;
      // position: fixed;
      // bottom: 68rpx;
      // left: 40rpx;
      width: 670rpx;
      height: 88rpx;
      margin-top: 80rpx;
      background: $primaryColor;
      box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0, 104, 255, 0.3);
      border-radius: 44rpx;
@@ -457,6 +494,7 @@
      .modal_list {
         height: calc(100% - 360rpx);
         margin-bottom: -20rpx;
         .item {
            display: flex;