From f72f2916f7606a38232223a4092590034852fd2d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期二, 12 三月 2024 10:40:07 +0800
Subject: [PATCH] 背景图

---
 src/views/login.vue                    |    2 
 src/views/home/examine/index.vue       |  143 +++++++++++++++
 src/main.js                            |    3 
 src/views/home/data-chart/index.vue    |    9 
 src/views/home/data-wrapper/index.vue  |   14 +
 src/views/home/data-check/index.vue    |    4 
 src/assets/images/login-background.jpg |    0 
 src/views/home/work-order/index.vue    |  251 +++++++++++++++++++++++++++
 src/views/system/publish/index.vue     |   11 +
 src/views/system/work-order/index.vue  |   71 +++++++
 10 files changed, 495 insertions(+), 13 deletions(-)

diff --git a/src/assets/images/login-background.jpg b/src/assets/images/login-background.jpg
index 7c2c5a3..1178ad2 100644
--- a/src/assets/images/login-background.jpg
+++ b/src/assets/images/login-background.jpg
Binary files differ
diff --git a/src/main.js b/src/main.js
index 402f115..a8d407c 100644
--- a/src/main.js
+++ b/src/main.js
@@ -1,7 +1,7 @@
 import Vue from 'vue'
 
 import Cookies from 'js-cookie'
-
+import {getToken} from "@/utils/auth";
 import Element from 'element-ui'
 import './assets/styles/element-variables.scss'
 
@@ -48,6 +48,7 @@
 Vue.prototype.selectDictLabels = selectDictLabels
 Vue.prototype.download = download
 Vue.prototype.handleTree = handleTree
+Vue.prototype.getToken = getToken
 
 // 鍏ㄥ眬缁勪欢鎸傝浇
 Vue.component('DictTag', DictTag)
diff --git a/src/views/home/data-chart/index.vue b/src/views/home/data-chart/index.vue
index 2421e0a..0f0d2b4 100644
--- a/src/views/home/data-chart/index.vue
+++ b/src/views/home/data-chart/index.vue
@@ -73,12 +73,12 @@
     initChart() {
       const option = {
         legend: {
-          right: '2%',
-          top: '5%',
+          right: 'right',
+          top: 'top',
+          orient: "vertical",
           icon: 'rect',
           data: [
             {
-
               name: '姝e父鏁�',
               itemStyle: {
                 color: 'rgba(62, 144, 247, 1)'
@@ -193,7 +193,6 @@
   align-items: center;
   z-index: 2;
 
-
   .more-button {
     cursor: pointer;
     font-size: 16px;
@@ -216,4 +215,4 @@
   margin: 0 20px;
   width: 180px;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/home/data-check/index.vue b/src/views/home/data-check/index.vue
index 47307b0..ffeb94b 100644
--- a/src/views/home/data-check/index.vue
+++ b/src/views/home/data-check/index.vue
@@ -109,7 +109,7 @@
 
 <style lang="scss" scoped>
 .data-table-container {
-  height: 400px;
+  height: 445px;
 
   .data-card {
     height: 100%;
@@ -186,4 +186,4 @@
 ::v-deep .el-table::before {
   background-color: transparent;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/home/data-wrapper/index.vue b/src/views/home/data-wrapper/index.vue
index 8e2e315..78ded01 100644
--- a/src/views/home/data-wrapper/index.vue
+++ b/src/views/home/data-wrapper/index.vue
@@ -3,11 +3,17 @@
     <el-row :gutter="40">
       <el-col :xs='24' :md="24" :sm="24" :lg="17" :xl="17">
         <data-table></data-table>
-        <data-chart></data-chart>
+        <examine></examine>
       </el-col>
       <el-col :xs='24' :md="24" :sm="24" :lg="7" :xl="7">
         <data-rank></data-rank>
         <data-check></data-check>
+      </el-col>
+      <el-col :xs='24' :md="24" :sm="24" :lg="17" :xl="12">
+        <data-chart></data-chart>
+      </el-col>
+      <el-col :xs='24' :md="24" :sm="24" :lg="17" :xl="12">
+        <work-order></work-order>
       </el-col>
     </el-row>
   </div>
@@ -15,8 +21,10 @@
 
 <script>
 import DataTable from '../data-table/index.vue';
+import Examine from '../examine/index.vue';
 import DataRank from '../data-rank/index.vue';
 import DataCheck from '../data-check/index.vue';
+import WorkOrder from '../work-order/index.vue';
 import DataChart from '../data-chart/index.vue';
 export default {
   name: 'DataWrapper',
@@ -24,6 +32,8 @@
     DataTable,
     DataRank,
     DataCheck,
+    WorkOrder,
+    Examine,
     DataChart
   }
 }
@@ -31,4 +41,4 @@
 
 <style lang="scss" scoped>
 
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/home/examine/index.vue b/src/views/home/examine/index.vue
new file mode 100644
index 0000000..0532dbc
--- /dev/null
+++ b/src/views/home/examine/index.vue
@@ -0,0 +1,143 @@
+<template>
+  <div class="data-table-container">
+
+    <el-card class="data-card" :body-style="{ height: '100%' }">
+      <div class="card-content">
+        <div class="title-container">
+          <h1>鑰冩牳棰勮</h1>
+          <div class="more-button">
+            <span>鏇村</span>
+            <i class="el-icon-arrow-right"></i>
+          </div>
+        </div>
+
+        <el-table :data="tableData" height="400">
+          <el-table-column prop="date" label="璀︽姤鏃堕棿" align="center">
+          </el-table-column>
+          <el-table-column prop="name" label="鍏徃鍚嶇О" align="center">
+          </el-table-column>
+          <el-table-column prop="rule" label="鑰冩牳瑙勫垯" align="center">
+          </el-table-column>
+          <el-table-column label="鎿嶄綔" align="center">
+            <template slot-scope="scope">
+              <el-button size="mini">璇︽儏</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+    </el-card>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'DataTable',
+  data() {
+    return {
+      tableData: [
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '杞﹁締鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '鐐逛綅鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '杞﹁締鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '鐐逛綅鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '杞﹁締鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '杞﹁締鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '鐐逛綅鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '鐐逛綅鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '杞﹁締鑰冩牳',
+          num: 111,
+        },
+        {
+          date: '2024.02.28 15:14:01',
+          name: '杩愮淮鍏徃鍚嶇О1',
+          address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
+          rule: '鐐逛綅鑰冩牳',
+          num: 111,
+        },
+      ]
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.data-table-container {
+  height: 450px;
+  margin-bottom: 20px;
+
+  .data-card {
+    height: 100%;
+
+    .card-content {
+      width: 100%;
+      height: 100%;
+      display: flex;
+      flex-direction: column;
+    }
+  }
+}
+
+.title-container {
+  width: 100%;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+
+  .more-button {
+    cursor: pointer;
+    font-size: 16px;
+    padding: 0 10px;
+  }
+}
+</style>
diff --git a/src/views/home/work-order/index.vue b/src/views/home/work-order/index.vue
new file mode 100644
index 0000000..62e8f07
--- /dev/null
+++ b/src/views/home/work-order/index.vue
@@ -0,0 +1,251 @@
+<template>
+  <div class="data-chart-container">
+    <el-card class="data-card" :body-style="{ height: '100%' }">
+      <div class="card-content">
+        <div class="title-container">
+          <h1>杩愮淮鐩戞帶鎶ヨ〃</h1>
+          <div class="select-container">
+            <el-select v-model="company" placeholder="璇烽�夋嫨杩愮淮鍏徃" @change="companyChange">
+              <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </div>
+          <div class="date-container">
+            <el-select v-model="dateRange" placeholder="璇烽�夋嫨鏃堕棿鑼冨洿">
+              <el-option v-for="item in options2" :key="item.value" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </div>
+        </div>
+        <div class="chart-container">
+          <div id="chartContent" ref="chartContent"></div>
+        </div>
+      </div>
+    </el-card>
+  </div>
+</template>
+
+<script>
+import * as echarts from 'echarts';
+let lineChart = null;
+let observer = null;
+export default {
+  name: 'DataChart',
+  data() {
+    return {
+      dateRange: '',
+      company: '',
+      options: [
+        { label: '鍏ㄩ儴', value: '鍏ㄩ儴' },
+        { label: 'XX杩愮淮鍏徃1', value: 'XX杩愮淮鍏徃1' },
+        { label: 'XX杩愮淮鍏徃2', value: 'XX杩愮淮鍏徃2' },
+        { label: 'XX杩愮淮鍏徃3', value: 'XX杩愮淮鍏徃3' },
+        { label: 'XX杩愮淮鍏徃4', value: 'XX杩愮淮鍏徃4' },
+      ],
+      options2: [
+        { label: '鏃ュ伐鍗曟暟', value: '鏃ュ伐鍗曟暟' },
+        { label: '鍛ㄥ伐鍗曟暟', value: '鍛ㄥ伐鍗曟暟' },
+        { label: '鏈堝伐鍗曟暟', value: '鏈堝伐鍗曟暟' },
+      ],
+      dataList: [
+        {
+          name: '鍏ㄩ儴',
+          complete: { '1鏈�': 10310, '2鏈�': 23200, '3鏈�': 16430, '4鏈�': 24000, '5鏈�': 31700 },
+          waiting: { '1鏈�': 1500, '2鏈�': 2310, '3鏈�': 14530, '4鏈�': 231, '5鏈�': 1235 },
+          pending: { '1鏈�': 2530, '2鏈�': 2450, '3鏈�': 4000, '4鏈�': 4300, '5鏈�': 3210 }
+        },
+        {
+          name: 'XX杩愮淮鍏徃1',
+          complete: { '1鏈�': 1000, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 },
+          waiting: { '1鏈�': 123, '2鏈�': 213, '3鏈�': 1412, '4鏈�': 23, '5鏈�': 123 },
+          pending: { '1鏈�': 200, '2鏈�': 235, '3鏈�': 300, '4鏈�': 400, '5鏈�': 500 }
+        },
+        {
+          name: 'XX杩愮淮鍏徃2',
+          complete: { '1鏈�': 213, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 },
+          waiting: { '1鏈�': 123, '2鏈�': 123, '3鏈�': 1412, '4鏈�': 23, '5鏈�': 123 },
+          pending: { '1鏈�': 135, '2鏈�': 422, '3鏈�': 425, '4鏈�': 323, '5鏈�': 400 }
+        },
+        {
+          name: 'XX杩愮淮鍏徃3',
+          complete: { '1鏈�': 1000, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 },
+          waiting: { '1鏈�': 123, '2鏈�': 213, '3鏈�': 123, '4鏈�': 23, '5鏈�': 123 },
+          pending: { '1鏈�': 534, '2鏈�': 435, '3鏈�': 422, '4鏈�': 121, '5鏈�': 313 }
+        },
+        {
+          name: 'XX杩愮淮鍏徃4',
+          complete: { '1鏈�': 1000, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 },
+          waiting: { '1鏈�': 123, '2鏈�': 613, '3鏈�': 1412, '4鏈�': 2336, '5鏈�': 123 },
+          pending: { '1鏈�': 123, '2鏈�': 321, '3鏈�': 131, '4鏈�': 321, '5鏈�': 421 }
+        },
+        {
+          name: 'XX杩愮淮鍏徃5',
+          complete: { '1鏈�': 1000, '2鏈�': 433, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 8886 },
+          waiting: { '1鏈�': 123, '2鏈�': 213, '3鏈�': 1412, '4鏈�': 23, '5鏈�': 123 },
+          pending: { '1鏈�': 333, '2鏈�': 245, '3鏈�': 233, '4鏈�': 222, '5鏈�': 111 }
+        },
+      ],
+    }
+  },
+  methods: {
+    initChart() {
+      const option = {
+        legend: {
+          right: 'right',
+          top: 'top',
+          icon: 'rect',
+          orient: "vertical",
+          data: [
+            {
+              name: '瀹屾垚宸ュ崟鏁�',
+              itemStyle: {
+                color: 'rgba(62, 144, 247, 1)'
+              }
+            },
+            {
+              name: '寰呭畬鎴愬伐鍗曟暟',
+              itemStyle: {
+                color: 'rgba(85, 192, 191, 1)'
+              }
+            },
+            {
+              name: '寰呭鎵瑰伐鍗曟暟',
+              itemStyle: {
+                color: 'rgba(255, 165, 0, 1)'
+              }
+            },
+          ],
+        },
+        grid: {
+          left: 0,
+          right: 0,
+          bottom: 0,
+          top: '20%',
+          containLabel: true
+        },
+        tooltip: {},
+        xAxis: {
+          type: 'category',
+          data: Object.keys(this.acitveData.complete),
+        },
+        yAxis: {},
+        series: [
+          {
+            name: '瀹屾垚宸ュ崟鏁�',
+            data: Object.entries(this.acitveData.complete).map(([key, value]) => value),
+            type: 'line',
+            itemStyle: {
+              color: 'rgba(62, 144, 247, 1)'
+            }
+          },
+          {
+            name: '寰呭畬鎴愬伐鍗曟暟',
+            data: Object.entries(this.acitveData.waiting).map(([key, value]) => value),
+            type: 'line',
+            itemStyle: {
+              color: 'rgba(85, 192, 191, 1)'
+            }
+          },
+          {
+            name: '寰呭鎵瑰伐鍗曟暟',
+            data: Object.entries(this.acitveData.pending).map(([key, value]) => value),
+            type: 'line',
+            itemStyle: {
+              color: 'rgba(255, 165, 0, 1)'
+            }
+          }
+        ]
+      };
+      lineChart.setOption(option, true);
+    },
+
+
+    companyChange() {
+      this.acitveData = this.dataList.find((item) => {
+        return item.name === this.company;
+      });
+      if (this.acitveData) {
+        this.initChart();
+      }
+    },
+
+    // 鐩戝惉鍙樺寲
+    observe() {
+      if (!observer) {
+        observer = new ResizeObserver(entries => {
+          this.handleResize();
+        })
+      }
+      observer.observe(this.$refs.chartContent);
+    },
+    // 绐楀彛鍙樻崲
+    handleResize() {
+      if (lineChart) {
+        lineChart.resize();
+      }
+    }
+
+  },
+  mounted() {
+    this.acitveData = this.dataList[0];
+    this.company = this.acitveData.name;
+    lineChart = echarts.init(this.$refs.chartContent);
+    this.initChart();
+    this.observe();
+  },
+  beforeDestroy() {
+    if (lineChart) {
+      lineChart.dispose();
+      observer.unobserve(this.$refs.chartContent);
+    }
+  },
+}
+</script>
+
+<style lang="scss" scoped>
+.data-chart-container {
+  height: 400px;
+  margin-bottom: 20px;
+
+  .data-card {
+    height: 100%;
+
+    .card-content {
+      width: 100%;
+      height: 100%;
+      position: relative;
+    }
+  }
+}
+
+.title-container {
+  position: absolute;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  z-index: 2;
+
+
+  .more-button {
+    cursor: pointer;
+    font-size: 16px;
+    padding: 0 10px;
+  }
+}
+
+.chart-container {
+
+  width: 100%;
+  height: 100%;
+
+  #chartContent {
+    width: 100%;
+    height: 100%;
+  }
+}
+
+.select-container {
+  margin: 0 20px;
+  width: 180px;
+}
+</style>
diff --git a/src/views/login.vue b/src/views/login.vue
index a63965f..0543d82 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -59,7 +59,7 @@
       </el-form-item>
     </el-form>
 
-    <el-dialog title="涓轰簡鎮ㄧ殑璐﹀彿瀹夊叏,棣栨鐧婚檰璇蜂慨鏀瑰瘑鐮�" :visible.sync="loginInfo.firstLogin==0?true:false">
+    <el-dialog title="涓轰簡鎮ㄧ殑璐﹀彿瀹夊叏,棣栨鐧婚檰璇蜂慨鏀瑰瘑鐮�" :visible.sync="loginInfo.firstLogin==0">
          <el-form>
            <el-form-item label="鏂板瘑鐮�">
                <el-input v-model="newPassword" autocomplete="off"></el-input>
diff --git a/src/views/system/publish/index.vue b/src/views/system/publish/index.vue
index 9f793e7..7c10d18 100644
--- a/src/views/system/publish/index.vue
+++ b/src/views/system/publish/index.vue
@@ -39,6 +39,7 @@
           />
         </el-select>
       </el-form-item>
+
       <el-form-item label="鑰冩牳鐘舵��" prop="state">
         <el-select
           v-model="queryParams.state"
@@ -107,6 +108,10 @@
         <dict-tag :options="dict.type.platform_examine_frequency" :value="scope.row.frequency"/>
       </template>
       </el-table-column>
+      <el-table-column label="鎶ヨ鍒嗘暟闃堝��" align="center" prop="alarmScore" />
+      <el-form-item label="鎶ヨ鍒嗘暟闃堝��" prop="alarmScore">
+        <el-input v-model="form.alarmScore" placeholder="璇疯緭鍏ュ垎鏁�" />
+      </el-form-item>
       <el-table-column label="鑰冩牳鐘舵��" align="center" prop="state">
       <template slot-scope="scope">
         <dict-tag :options="dict.type.sys_normal_disable" :value="scope.row.state"/>
@@ -144,7 +149,7 @@
 
     <!-- 娣诲姞鎴栦慨鏀硅�冩牳鍙戝竷瀵硅瘽妗� -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="鑰冩牳鍚�" prop="examineName">
           <el-input v-model="form.examineName" placeholder="璇疯緭鍏ヨ�冩牳鍚�" />
         </el-form-item>
@@ -159,7 +164,6 @@
             </el-option>
           </el-select>
         </el-form-item>
-
         <el-form-item label="鑰冩牳鑼冨洿" prop="examineRange">
           <el-select
             v-model="form.examineRange"
@@ -190,6 +194,9 @@
             />
           </el-select>
         </el-form-item>
+        <el-form-item label="鎶ヨ鍒嗘暟闃堝��" prop="alarmScore">
+          <el-input v-model="form.alarmScore" placeholder="璇疯緭鍏ュ垎鏁�" style="width: 170px"/>
+        </el-form-item>
         <el-form-item label="鑰冩牳鐘舵��" prop="state">
           <el-select
             v-model="form.state"
diff --git a/src/views/system/work-order/index.vue b/src/views/system/work-order/index.vue
index e36bb23..2ead84c 100644
--- a/src/views/system/work-order/index.vue
+++ b/src/views/system/work-order/index.vue
@@ -85,6 +85,7 @@
       <el-table-column label="杩愮淮缁撴灉" align="center" prop="ywResult" />
       <el-table-column label="杩愮淮鎯呭喌" align="center" prop="ywCondition" width="150"/>
       <el-table-column label="杩愮淮妫�娴嬬粨鏋�" align="center" prop="ywCheckResult" width="230"/>
+
       <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="180"/>
 
       <el-table-column label="鎿嶄綔" fixed="right" width="150"  align="center" class-name="small-padding fixed-width">
@@ -163,6 +164,34 @@
         </el-form-item>
         <el-form-item label="杩愮淮浜哄憳" prop="ywPeopleName">
           <el-input v-model="ywConditionForm.ywPeopleName" disabled />
+        </el-form-item>
+        <el-form-item label="鐜板満鍥剧墖" prop="picture">
+          <el-upload
+            class="avatar-uploader"
+            action="/dev-api/common/upload"
+            name="file"
+            :headers="{'Authorization': 'Bearer ' + getToken()}"
+            :on-success="pictureUploadSuccess"
+            :on-remove="pictureRemove"
+            :file-list="pictureList"
+            list-type="picture">
+            <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
+            <div slot="tip" class="el-upload__tip">鍙兘涓婁紶jpg/png鏂囦欢锛屼笖涓嶈秴杩�500kb</div>
+          </el-upload>
+        </el-form-item>
+        <el-form-item label="浣愯瘉鏉愭枡" prop="certificates">
+          <el-upload
+            class="avatar-uploader"
+            action="/dev-api/common/upload"
+            name="file"
+            :headers="{'Authorization': 'Bearer ' + getToken()}"
+            :on-success="certificateUploadSuccess"
+            :on-remove="certificateRemove"
+            :file-list="certificateList"
+            list-type="picture">
+            <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
+            <div slot="tip" class="el-upload__tip">鍙兘涓婁紶jpg/png鏂囦欢锛屼笖涓嶈秴杩�500kb</div>
+          </el-upload>
         </el-form-item>
         <el-form-item label="杩愮淮鎯呭喌" prop="ywCondition">
           <el-input v-model="ywConditionForm.ywCondition" type="textarea" maxlength="150" show-word-limit/>
@@ -253,6 +282,8 @@
   name: "Work-order",
   data() {
     return {
+      certificateList:[],
+      pictureList: [],
       // 閬僵灞�
       loading: true,
       // 閫変腑鏁扮粍
@@ -368,6 +399,32 @@
       this.auditingForm = {};
       this.auditingOpen = false;
     },
+    pictureRemove(file, fileList) {
+      this.form.picture = null,
+
+        this.pictureList = this.pictureList.filter(item => item.name !== file.name)
+    },
+    certificateRemove(file, fileList) {
+      this.form.certificate = null,
+
+        this.certificateList = this.certificateList.filter(item => item.name !== file.name)
+    },
+    pictureUploadSuccess(response, file, fileList) {
+      this.form.picture = response.fileName,
+        this.pictureList.push({
+          name: response.originalFilename,
+          url: response.url,
+          fileName: response.fileName
+        })
+    },
+    certificateUploadSuccess(response, file, fileList) {
+      this.form.certificate = response.fileName,
+        this.certificateList.push({
+          name: response.originalFilename,
+          url: response.url,
+          fileName: response.fileName
+        })
+    },
     // 鎻愪氦杩愮淮鎯呭喌
     submitYwCondition() {
       this.$refs["ywConditionForm"].validate(valid => {
@@ -466,6 +523,20 @@
         this.form = response.data;
         this.open = true;
         this.title = "淇敼杩愮淮宸ュ崟";
+        this.pictureList = JSON.parse(response.data.picture).map(item => {
+          return {
+            name: item,
+            url: process.env.VUE_APP_FILE_API + '/' + item,
+            fileName: item
+          }
+        })
+        this.certificateList = JSON.parse(row.certificate).map(item => {
+          return {
+            name: item,
+            url: process.env.VUE_APP_FILE_API + '/' + item,
+            fileName: item
+          }
+        })
       });
     },
     /** 鎻愪氦鎸夐挳 */

--
Gitblit v1.8.0