MrShi
2025-04-16 090ea2c7d46a7082e978e6c0134d3fbeafaa34a0
h5/pages/staff/task/visitorReport.vue
@@ -100,7 +100,10 @@
      info.approveDateVO.canBeApproved != null &&
      info.approveDateVO.canBeApproved == 1
    " class="main_footer">
     <view class="btn" @click="cancelShow = true" v-if="checkAuth('business:visits:cancel') && [0,1,2,5].includes(info.status)">取消预约</view>
     <view style="width: 30rpx; height: 100%;"></view>
      <view class="btn" @click="handleSub(3)">拒绝</view>
     <view style="width: 30rpx; height: 100%;"></view>
      <view class="btn agree" @click="handleSub(2)">同意</view>
    </view>
@@ -111,17 +114,27 @@
          " placeholder-class="placeholder9" />
        <view class="main_footer">
          <view class="btn" @click="showApprModal = false">取消</view>
        <view style="width: 30rpx; height: 100%;"></view>
          <view class="btn agree" @click="onSubmit">提交</view>
        </view>
      </view>
    </u-popup>
   <!-- 取消预约弹窗 -->
   <u-modal
      :show="cancelShow"
      :showCancelButton="true"
      title="系统提示"
      content='确定取消当前预约吗?'
      @cancel="cancelShow = false"
      @confirm="cancel" />
  </view>
</template>
<script>
import {
  getVisitedReDetail, // 访客预约详情
  carUseBookAppr
  carUseBookAppr,
  visitsCancel
} from '@/api'
export default {
  data() {
@@ -129,6 +142,9 @@
      showApprModal: false,
      param: {},
      info: {},
     userInfo: uni.getStorageSync('userInfo') || {
        permissions: []
     },
      id: '',
      type: '',
@@ -146,7 +162,8 @@
        2: '已通过',
        3: '已拒绝',
        4: '已取消',
      }
      },
     cancelShow: false
    }
  },
  onLoad(op) {
@@ -155,6 +172,17 @@
    this.getDetail()
  },
  methods: {
     checkAuth(str) {
        const permissions = this.userInfo.permissions || []
        return permissions.indexOf(str) > -1
     },
     // 取消预约
     cancel() {
        visitsCancel(this.id).then(res => {
           this.cancelShow = false
           this.getDetail()
        })
     },
    getDetail() {
      const { id } = this
      getVisitedReDetail({ id }).then(res => {
@@ -476,7 +504,8 @@
    background: #ffffff;
    .btn {
      width: 336rpx;
      // width: 336rpx;
     flex: 1;
      height: 88rpx;
      line-height: 88rpx;
      background: #ffffff;