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/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue |   96 ++++++++++++++++++++++++++++++-----------------
 1 files changed, 61 insertions(+), 35 deletions(-)

diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
index d948e0f..29c80ea 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
@@ -5,7 +5,7 @@
             <el-form ref="arriveForm" label-width="160px" :model="arrive" :rules="arriveRules" autoComplete="on">
                 <!-- 鍒拌揪鏃堕棿 -->
                 <el-form-item label="鍒拌揪鏃堕棿:" prop="arrivalTime">
-                    <el-date-picker v-model="arrive.arrivalTime" type="datetime" placeholder="閫夋嫨鍒拌揪鏃堕棿">
+                    <el-date-picker v-model="arrive.arrivalTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="閫夋嫨鍒拌揪鏃堕棿">
                     </el-date-picker>
                 </el-form-item>
                 <!-- 鍒拌揪鍦板潃 -->
@@ -14,28 +14,19 @@
                 </el-form-item>
                 <!-- 鐜板満鎯呭喌璇存槑 -->
                 <el-form-item label="鐜板満鎯呭喌璇存槑:" prop="situationExplain">
-                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" maxlength="200" show-word-limit
                         v-model="arrive.situationExplain" placeholder="璇疯緭鍏ユ儏鍐佃鏄�,闄愬埗200瀛椾互鍐�"></el-input>
                 </el-form-item>
                 <!-- 淇¤鍥炲璇存槑 -->
                 <el-form-item label="淇¤鍥炲璇存槑:" prop="replyExplain">
-                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" maxlength="200" show-word-limit
                         v-model="arrive.replyExplain" placeholder="璇疯緭鍏ュ洖璁胯鏄�,闄愬埗200瀛椾互鍐�"></el-input>
                 </el-form-item>
                 <!-- 鐜板満鎯呭喌鐓х墖 -->
                 <el-form-item label="鐜板満鎯呭喌鐓х墖:" prop="situationPic">
-                    <div class="upImg">
-                        <div class="img-list">
-                            <img :src="item" alt="" v-for="(item,index) in arrive.situationPic" :key="index">
-                        </div>
-                        <div class="upload" v-if="arrive.situationPic.length<4">
-                            <el-upload :file-list="fileList" class="upload-demo"
-                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
-                                :limit="4" :on-success="handleSuccess" :headers="getToken()">
-                                <i class="el-icon-plus"></i>
-                            </el-upload>
-                        </div>
-                        <div class="tip">{{arrive.situationPic.length}} / 4</div>
+                    <div class="upImg" >
+                            <MyUpload :picture-list="arrive.situationPic" @setPictureUrl="setPicUrl" @delPictureUrl="delPicUrl"></MyUpload>
+                        <div class="tip">{{ arrive.situationPic.length }} / 4</div>
                     </div>
                 </el-form-item>
             </el-form>
@@ -43,7 +34,18 @@
     </div>
 </template>
 <script>
+import MyUpload from "@/components/myUpload"
+import { deepClone } from "@/utils/helper";
 export default {
+    components: {
+        MyUpload
+    },
+  props: {
+    arriveData: {
+      type: Object,
+      default: () => null
+    }
+  },
     data() {
         const checkTime = (rule, value, callback) => {
             if (value) {
@@ -66,18 +68,11 @@
                 callback(new Error('鐜板満鎯呭喌璇存槑涓嶈兘涓虹┖'));
             }
         }
-        const checkReplay = (rule, value, callback) => {
-            if (value) {
-                callback()
-            } else {
-                callback(new Error('淇¤鍥炲璇存槑涓嶈兘涓虹┖'));
-            }
-        }
         const checkSitPic = (rule, value, callback) => {
-            if (value) {
+            if (value.length !== 0) {
                 callback()
             } else {
-                callback();
+                callback(new Error('璇蜂笂浼犵幇鍦烘儏鍐电収鐗�'));
             }
         }
         return {
@@ -94,21 +89,22 @@
                 situationExplain: [
                     { trigger: 'blur', validator: checkSit }
                 ],
-                replyExplain: [
-                    { trigger: 'blur', validator: checkReplay }
-                ],
                 situationPic: [
-                    { trigger: 'change', validator: checkSitPic }
+                    { trigger: 'blur', validator: checkSitPic }
                 ],
             },
             fileList: [],
         }
     },
-    props:['getArrive'],
-    methods: {
+  created() {
+      if (this.arriveData) {
+        this.arrive = deepClone(this.arriveData);
+        this.arrive.situationPic = this.arriveData.situationPic.split(',');
+      }
+  },
+  methods: {
         handleSuccess(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
-            console.log(res);
             if (this.arrive.situationPic.length < 4) {
                 this.arrive.situationPic.push(baseUrl + res.data.url1)
             }
@@ -121,15 +117,31 @@
             }
         },
         // 鑾峰彇arrive瀵硅薄
-        backData(){
+        backData() {
             const { arrive } = this;
-            this.$emit('getArrive',{arrive});
+            this.$emit('getArrive', { arrive });
+        },
+        // 鍒犻櫎鍥剧墖
+        handleRemove(index) {
+            this.arrive.situationPic.splice(index, 1);
+        },
+        // 璁剧疆涓婁紶鎴愬姛涔嬪悗鐨勫浘鐗囧湴鍧�
+        setPicUrl({ url }) {
+            const baseUrl = 'http://140.143.152.226:8410/';
+            if (this.arrive.situationPic.length < 4) {
+                this.arrive.situationPic.push(baseUrl + url)
+            }
+        },
+        //鍒犻櫎鍥剧墖
+        delPicUrl({url}){
+            const baseUrl = 'http://140.143.152.226:8410/';
+            this.arrive.situationPic.splice(this.arrive.situationPic.indexOf(baseUrl + url),1);
         }
     }
 }
 </script>
 <style lang="scss" scoped>
-.arrive-title{
+.arrive-title {
     line-height: 60px;
     font-weight: 650;
     font-size: 20px;
@@ -149,12 +161,26 @@
     }
 
     .img-list {
-        height: 80px;
+        height: 60px;
         position: relative;
+        display: flex;
 
         img {
             width: 60px;
             height: 60px;
+            margin-right: 10px;
+        }
+
+        .img {
+            height: 60px;
+            position: relative;
+        }
+
+        .myicon {
+            position: absolute;
+            top: 0px;
+            right: 0px;
+            color: #4b9bb7;
         }
     }
 }

--
Gitblit v1.8.0