From 4641a877cd6a94e4d35dca7f7f14bc1443e2d2ad Mon Sep 17 00:00:00 2001
From: luobisheng <727299681@qq.com>
Date: 星期二, 29 十一月 2022 17:59:55 +0800
Subject: [PATCH] 上传处置类型修改

---
 src/views/intelligentPatrol/studyJudge/index.vue |  267 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 264 insertions(+), 3 deletions(-)

diff --git a/src/views/intelligentPatrol/studyJudge/index.vue b/src/views/intelligentPatrol/studyJudge/index.vue
index 9278ea7..63dc317 100644
--- a/src/views/intelligentPatrol/studyJudge/index.vue
+++ b/src/views/intelligentPatrol/studyJudge/index.vue
@@ -1,13 +1,274 @@
 <template>
-  <div>棰勮鐮斿垽</div>
+  <div class="study-judge">
+    <div class="study-judge-header">
+      <span>鎮ㄦ湁{{ eventList.length }}鏉″緟瀹℃牳鎶ヨ淇℃伅,浠婃棩绔嬫0鏉�,鍐嶅涔爗{ countData.review }}鏉�</span>
+    </div>
+    <div class="study-judge-main">
+      <div class="sjm-header">
+        <div class="sjm-header-left">
+          <span class="moni-name">鐩戞帶鐐逛綅鍚嶇О: {{ currentEvent.name }} </span>
+          <span class="moni-area">{{ currentEvent.street }}</span>
+        </div>
+        <div class="sjm-header-right">
+          <el-button size="small">瀹炴椂棰勮</el-button>
+          <el-button size="small">褰曞儚鍥炴斁</el-button>
+        </div>
+      </div>
+      <div class="sjm-content">
+        <div class="sjm-content-left">
+          <div class="img-item" v-for="(item, index) in imageList" :key="item.id">
+            <span>鎶ヨ鍥剧墖</span>
+            <img :src="item">
+            <span v-if="index === 0">鎶ヨ鏃堕棿锛歿{ currentEvent.alarmTime }}</span>
+          </div>
+        </div>
+        <div class="sjm-content-center">
+          鍦板浘瀹瑰櫒
+        </div>
+        <div class="sjm-content-right">
+          <div class="card-box">
+            <div class="card-header">
+              <span>鎶ヨ璁板綍</span>
+              <span>涔卞仠涔辨斁杩濇硶鍗犻亾</span>
+            </div>
+            <el-form ref="currentEvent" label-width="120px" :model="currentEvent" :rules="rules">
+              <el-form-item label="浜嬩欢缂栧彿:">
+                <span>{{ currentEvent.code }}</span>
+              </el-form-item>
+              <el-form-item label="浜嬩欢绛夌骇:">
+                <span>{{ currentEvent.grade }}</span>
+              </el-form-item>
+              <el-form-item label="棣栨鎶ヨ鏃堕棿:">
+                <span>{{ currentEvent.firstTime }}</span>
+              </el-form-item>
+              <el-form-item label="鏈�杩戞姤璀︽椂闂�:">
+                <span>{{ currentEvent.recentTime }}</span>
+              </el-form-item>
+              <el-form-item label="鎸佺画鏃堕棿:">
+                <span>{{ currentEvent.conntinueTime }}</span>
+              </el-form-item>
+              <el-form-item label="澶勭悊鎰忚:" prop="advice">
+                <el-radio-group v-model="currentEvent.advice">
+                  <el-radio :label="item.id" v-for="item in adviceList" :key="item.id">{{ item.label }}</el-radio>
+                </el-radio-group>
+              </el-form-item>
+              <el-form-item label="澶х被鍚嶇О:" prop="categoryId">
+                <el-input v-model="currentEvent.categoryId" placeholder="璇烽�夋嫨澶х被鍚嶇О"></el-input>
+              </el-form-item>
+              <el-form-item label="灏忕被鍚嶇О:" prop="typeId">
+                <el-input v-model="currentEvent.typeId" placeholder="璇烽�夋嫨灏忕被鍚嶇О"></el-input>
+              </el-form-item>
+              <el-form-item label="杞︾墝鍙�:" prop="carNumber">
+                <el-input v-model="currentEvent.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿鐮�"></el-input>
+              </el-form-item>
+              <el-form-item label="澶囨敞:" prop="description">
+                <el-input type="textarea" :rows="5" v-model="currentEvent.description"></el-input>
+              </el-form-item>
+              <el-form-item>
+                <el-button @click="pageChange('prev')">涓婁竴鏉�</el-button>
+                <el-button @click.native.prevent="handleConfirm">纭</el-button>
+                <el-button @click="pageChange('next')">涓嬩竴鏉�</el-button>
+              </el-form-item>
+            </el-form>
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
 </template>
 
 <script>
-export default {
+import basecase from "@/api/operate/basecase";
+import { FILE_ORIGINAL_URL } from "@/utils";
 
+export default {
+  created() {
+    this.getInspectionData();
+    basecase.getInspectionCountData()
+        .then(res => {
+          this.countData = res;
+        })
+        .catch(err => this.$message.error(err))
+  },
+  data() {
+    return {
+      eventList: [],
+      countData: {
+        review: 0
+      },
+      currentEvent: {},
+      adviceList: [
+        {
+          id: 1,
+          label: '涓婃姤',
+        },
+        {
+          id: 2,
+          label: '璋冨害',
+        },
+        {
+          id: 3,
+          label: '鍐嶅涔�',
+        },
+        {
+          id: 4,
+          label: '鏆備笉澶勭悊',
+        },
+      ],
+      rules:{
+        advice:[
+          {
+            required: true, trigger:['blur', 'change'], message: '澶勭悊鎰忚涓嶈兘涓虹┖'
+          },
+        ],
+        categoryId:[
+          {
+            required: true, trigger:['blur', 'change'], message: '澶х被鍚嶇О涓嶈兘涓虹┖'
+          }
+        ],
+        typeId:[
+          {
+            required: true, trigger:['blur', 'change'], message: '灏忕被鍚嶇О涓嶈兘涓虹┖'
+          }
+        ],
+        carNumber:[
+          {
+            required: true, trigger:['blur', 'change'], message: '杞︾墝鍙蜂笉鑳戒负绌�'
+          }
+        ]
+      },
+      imageList: [],
+      currentPage: 1
+    }
+  },
+  methods:{
+    pageChange(type) {
+      if (this.eventList.length === this.currentPage) {
+        this.$message.warning('褰撳墠宸叉槸鏈�鍚庝竴椤�');
+        return;
+      }
+      if (type === 'next') {
+        this.currentPage += 1;
+      } else {
+        this.currentPage -= 1;
+      }
+      this.currentEvent = this.eventList[this.currentPage - 1];
+    },
+
+    getInspectionData() {
+      basecase.getInspectionData({ current: this.currentPage })
+          .then(({ records }) => {
+            this.eventList = records;
+            this.eventList.forEach(item => {
+              if (item.picData) {
+                const imageUrls = item.picData.split(',');
+                this.imageList = imageUrls.map(url => `${FILE_ORIGINAL_URL}${url}`);
+              }
+            })
+            this.currentEvent = this.eventList[this.currentPage - 1];
+          })
+          .catch(err => this.$message.error(err))
+    },
+
+    // 纭鐐瑰嚮浜嬩欢
+    handleConfirm(){
+      this.$refs.currentEvent.validate((flag)=>{
+        if(flag){
+          basecase.confirmInspection(this.currentEvent)
+              .then(() => {
+                this.$message.success('鎿嶄綔鎴愬姛');
+                this.getInspectionData();
+              })
+              .catch(err => this.$message.error(err))
+        } else {
+          this.$message.warning('璇锋鏌ュ繀濉」')
+        }
+      })
+    }
+  }
 }
 </script>
 
-<style>
+<style lang="scss" scoped>
+.study-judge {
+  text-align: left;
+  color: #4b9bb7;
+  padding: 20px;
+  .study-judge-header {
+    line-height: 8vh;
+  }
 
+  .study-judge-main {
+    .sjm-header {
+      line-height: 8vh;
+      display: flex;
+      justify-content: space-between;
+
+      .sjm-header-left {
+        flex: 1;
+        display: flex;
+        justify-content: flex-start;
+
+        .moni-area {
+          margin-left: 4vw;
+        }
+      }
+
+      .sjm-header-right {
+        flex: 1;
+        display: flex;
+        justify-content: flex-end;
+
+        .el-button {
+          padding: 0 1vw;
+          height: 4vh;
+        }
+      }
+    }
+
+    .sjm-content {
+      display: flex;
+      justify-content: space-between;
+
+      .sjm-content-left {
+        line-height: 4.8vh;
+
+        .img-item {
+          display: flex;
+          flex-direction: column;
+
+          img {
+            width: 15vw;
+            height: 20vh;
+          }
+        }
+
+        .img-item+.img-item {
+          margin-top: 2vh;
+        }
+      }
+
+      .sjm-content-right {
+        .card-box {
+          .card-header {
+            line-height: 4.8vh;
+          }
+        }
+      }
+    }
+  }
+
+  .el-form {
+    ::v-deep .el-form-item {
+    }
+
+    ::v-deep .el-form-item__label {
+      color: #4b9bb7;
+    }
+  }
+
+  ::v-deep .el-radio__label {
+    color: #4b9bb7;
+  }
+}
 </style>
\ No newline at end of file

--
Gitblit v1.8.0