whyczyk
2021-09-28 f48b2102886e3191c757befb15af840a6ba20844
src/pages/alarm-details.vue
@@ -1,13 +1,6 @@
<template>
   <div class="alarm-details">
      <van-nav-bar
         title="告警详情"
         @click-left="$router.back()"
         left-arrow
         fixed
         safe-area-inset-top
         placeholder
      >
      <van-nav-bar title="告警详情" @click-left="$router.back()" left-arrow fixed safe-area-inset-top placeholder>
      </van-nav-bar>
      <div class="detailsCon">
         <div class="card">
@@ -59,39 +52,19 @@
            </div>
            <div class="commonTitle">
               <div class="label">订单状态:</div>
               <div
                  class="text"
                  v-if="alarmInfo.status == 2 && stepsActive == 0"
                  style="color: #eac406"
               >
               <div class="text" v-if="alarmInfo.status == 2 && stepsActive == 0" style="color: #eac406">
                  处理中
               </div>
               <div
                  class="text"
                  v-else-if="alarmInfo.status == 2 && stepsActive == 1"
                  style="color: #eac406"
               >
               <div class="text" v-else-if="alarmInfo.status == 2 && stepsActive == 1" style="color: #eac406">
                  待审核
               </div>
               <div
                  class="text"
                  v-else-if="alarmInfo.status == 3"
                  style="color: #07c160"
               >
               <div class="text" v-else-if="alarmInfo.status == 3" style="color: #07c160">
                  已完成
               </div>
               <div
                  class="text"
                  v-else-if="alarmInfo.status == 0"
                  style="color: #4b88f9"
               >
               <div class="text" v-else-if="alarmInfo.status == 0" style="color: #4b88f9">
                  待派发
               </div>
               <div
                  class="text"
                  v-else-if="alarmInfo.status == 1 && userPower == 0"
                  style="color: #4b88f9"
               >
               <div class="text" v-else-if="alarmInfo.status == 1 && userPower == 0" style="color: #4b88f9">
                  已派发
               </div>
               <div class="text" v-else style="color: #4b88f9">待处理</div>
@@ -107,14 +80,11 @@
            </van-steps>
         </div>
         <!-- 如果是进入审核状态 -->
         <div
            class="card"
            v-if="
         <div class="card" v-if="
               (alarmInfo.status == 2 && stepsActive == 1) ||
               (alarmInfo.status == 2 && stepsActive == 2) ||
               alarmInfo.status == 3
            "
         >
            ">
            <div class="commonTitle cardTitle">告警处理:</div>
            <div class="commonTitle">
               <div class="label">问题描述:</div>
@@ -125,25 +95,13 @@
            <div class="commonTitle">
               <div class="label">处理前照片:</div>
               <div class="text">
                  <div
                     class="van-uploader__wrapper"
                     v-if="
                  <div class="van-uploader__wrapper" v-if="
                        handleInfo.imageBefore &&
                        handleInfo.imageBefore.split(',').length > 0
                     "
                  >
                     <div
                        class="van-uploader__preview"
                        v-for="(item, i) in handleInfo.imageBefore.split(',')"
                        :key="i"
                        @click="toShowImgpreview(handleInfo.imageBefore.split(','))"
                     >
                     ">
                     <div class="van-uploader__preview" v-for="(item, i) in handleInfo.imageBefore.split(',')" :key="i" @click="toShowImgpreview(handleInfo.imageBefore.split(','))">
                        <div class="van-image van-uploader__preview-image">
                           <img
                              :src="$units.getStationSrc(item)"
                              class="van-image__img"
                              style="object-fit: cover"
                           />
                           <img :src="$units.getStationSrc(item)" class="van-image__img" style="object-fit: cover" />
                        </div>
                     </div>
                  </div>
@@ -158,25 +116,13 @@
            <div class="commonTitle">
               <div class="label">处理后照片:</div>
               <div class="text">
                  <div
                     class="van-uploader__wrapper"
                     v-if="
                  <div class="van-uploader__wrapper" v-if="
                        handleInfo.imageAfter &&
                        handleInfo.imageAfter.split(',').length > 0
                     "
                  >
                     <div
                        class="van-uploader__preview"
                        v-for="(item, i) in handleInfo.imageAfter.split(',')"
                        :key="i"
                        @click="toShowImgpreview(handleInfo.imageAfter.split(','))"
                     >
                     ">
                     <div class="van-uploader__preview" v-for="(item, i) in handleInfo.imageAfter.split(',')" :key="i" @click="toShowImgpreview(handleInfo.imageAfter.split(','))">
                        <div class="van-image van-uploader__preview-image">
                           <img
                              :src="$units.getStationSrc(item)"
                              class="van-image__img"
                              style="object-fit: cover"
                           />
                           <img :src="$units.getStationSrc(item)" class="van-image__img" style="object-fit: cover" />
                        </div>
                     </div>
                  </div>
@@ -194,53 +140,33 @@
            <div class="subBtn" @click="startHandle" v-if="alarmInfo.status == 1">
               开始处理
            </div>
            <div
               class="subBtn"
               @click="toPage('edit')"
               v-if="alarmInfo.status == 2 && stepsActive == 0"
            >
            <div class="subBtn" @click="toPage('edit')" v-if="alarmInfo.status == 2 && stepsActive == 0">
               继续处理
            </div>
         </div>
         <!-- 如果是维护员并且实时告警已自动消除 -->
         <div
            class="subBtn"
            @click="completeAlarm"
            v-else-if="userPower != 0 && isNoAlarm"
         >
         <div class="subBtn" @click="completeAlarm" v-else-if="userPower != 0 && isNoAlarm">
            确认告警自动消除
         </div>
         <!-- 如果是管理员未派发 -->
         <div v-if="userPower == 0 && alarmInfo.status == 0">
            <div class="card">
               <div class="commonTitle cardTitle">指派人员:</div>
               <van-cell
                  :title="assignUser.UName"
                  is-link
                  @click="
               <van-cell :title="assignUser.UName" is-link @click="
                     $router.push({
                        path: '/userList',
                        query: {
                           stationId: alarmInfo.stationId,
                        },
                     })
                  "
               />
                  " />
            </div>
            <div class="subBtn" @click="toAssign">确认指派</div>
         </div>
         <!-- 如果是管理员待审核 -->
         <div v-if="userPower == 0 && alarmInfo.status == 2 && stepsActive == 1">
            <div class="card">
               <van-field
                  v-model="handleInfo.note"
                  rows="2"
                  autosize
                  label="审核意见"
                  type="textarea"
                  placeholder="请输入审核意见…"
                  show-word-limit
               />
               <van-field v-model="handleInfo.note" rows="2" autosize label="审核意见" type="textarea" placeholder="请输入审核意见…" show-word-limit />
            </div>
            <div class="btnCon">
               <div class="subBtn" @click="suggest(3)">通过</div>
@@ -311,7 +237,6 @@
      if (assignUser) {
         this.assignUser = JSON.parse(assignUser)
      }
      console.log(this.alarmInfo)
      this.loadStatus()
   },
   destroyed() {
@@ -331,12 +256,11 @@
      },
      //确认指派
      toAssign() {
         this.$dialog
            .confirm({
         if (this.assignUser.UId) {
            this.$dialog.confirm({
               title: "提示",
               message: `是否确认把该告警指派给${this.assignUser.UName}?`,
            })
            .then(() => {
            }).then(() => {
               let postData = [
                  {
                     id: this.alarmInfo.id,
@@ -355,10 +279,13 @@
                  .catch((err) => {
                     console.log(err)
                  })
            })
            .catch(() => {
            }).catch(() => {
               // on cancel
            })
         } else {
            this.$toast('请选择指派人员!')
         }
      },
      //确认自动完成告警
      completeAlarm() {