From 55b0cd22baf5aa729253639877e5bf3656144bf9 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期二, 29 十一月 2022 16:39:11 +0800
Subject: [PATCH] 我的待办

---
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue |  216 +++++++++++++++++++++++++-----------------------------
 1 files changed, 100 insertions(+), 116 deletions(-)

diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
index c48b5e7..b90f6a5 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
@@ -1,127 +1,111 @@
 <template>
-    <div class="vio">
-        <div class="arrive">
-            <div class="arrive-title">鍒板ぇ鐜板満鎯呭喌</div>
-            <div class="arrive-form">
-                <el-form ref="arriveForm" label-width="160px" :model="arrive" :rules="arriveRules" autoComplete="on">
-                    <!-- 鍒拌揪鏃堕棿 -->
-                    <el-form-item label="鍒拌揪鏃堕棿" prop="arriveTime">
-                        <el-input v-model="arrive.arriveTime"></el-input>
-                    </el-form-item>
-                    <!-- 鍒拌揪鍦板潃 -->
-                    <el-form-item label="鍒拌揪鍦板潃" prop="arriveAddr">
-                        <el-input v-model="arrive.arriveAddr"></el-input>
-                    </el-form-item>
-                    <!-- 鐜板満鎯呭喌璇存槑 -->
-                    <el-form-item label="鐜板満鎯呭喌璇存槑" prop="arriveCondition">
-                        <el-input type="textarea" v-model="arrive.arriveCondition"></el-input>
-                    </el-form-item>
-                    <!-- 淇¤鍥炲璇存槑 -->
-                    <el-form-item label="淇¤鍥炲璇存槑" prop="arriveLetter">
-                        <el-input v-model="arrive.arriveLetter"></el-input>
-                    </el-form-item>
-                    <!-- 鐜板満鎯呭喌鐓х墖 -->
-                    <el-form-item label="鐜板満鎯呭喌鐓х墖" prop="arrivePhoto">
-                        <el-input v-model="arrive.arrivePhoto"></el-input>
-                    </el-form-item>
-                </el-form>
-            </div>
-        </div>
-        <div class="evidence">
-            <div class="evidence-title">璋冩煡鍙栬瘉</div>
-            <div class="evidence-form">
-                <el-form ref="evidenceForm" label-width="160px" :model="evidence" :rules="evidenceRules" autoComplete="on">
-                    <!-- 鎵垮姙闃熷憳 -->
-                    <el-form-item label="鎵垮姙闃熷憳" prop="team">
-                        <el-input v-model="evidence.team"></el-input>
-                    </el-form-item>
-                    <!-- 鍗忓姙闃熷憳 -->
-                    <el-form-item label="鍗忓姙闃熷憳" prop="helper">
-                        <el-input v-model="evidence.helper"></el-input>
-                    </el-form-item>
-                    <!-- 鏃堕棿 -->
-                    <el-form-item label="鏃堕棿" prop="time">
-                        <el-input v-model="evidence.time"></el-input>
-                    </el-form-item>
-                    <!-- 鍦板潃 -->
-                    <el-form-item label="鍦板潃" prop="address">
-                        <el-input v-model="evidence.address"></el-input>
-                    </el-form-item>
-                    <!-- 妗堢敱 -->
-                    <el-form-item label="妗堢敱" prop="cause">
-                        <el-input v-model="evidence.cause"></el-input>
-                    </el-form-item>
-                    <!-- 鎵垮姙闃熷憳 -->
-                    <el-form-item label="鎵垮姙闃熷憳" prop="team">
-                        <el-input v-model="evidence.team"></el-input>
-                    </el-form-item>
-                    <!-- 褰撲簨浜轰俊鎭� -->
-                    <el-form-item label="褰撲簨浜轰俊鎭�" prop="appender">
-                        <el-input v-model="evidence.appender"></el-input>
-                    </el-form-item>
-                    <!-- 鎯呭喌鎻忚堪 -->
-                    <el-form-item label="鎯呭喌鎻忚堪" prop="description">
-                        <el-input v-model="evidence.description"></el-input>
-                    </el-form-item>
-                    <!-- 鐓х墖闄勪欢 -->
-                    <el-form-item label="鐓х墖闄勪欢" prop="photo">
-                        <el-input v-model="evidence.photo"></el-input>
-                    </el-form-item>
-                </el-form>
-            </div>
-        </div>
-        <div class="footer">
-            <el-button>纭畾</el-button>
-            <el-button>杩斿洖</el-button>
-        </div>
+  <div class="vio">
+    <!-- 鍒拌揪鐜板満鎯呭喌 -->
+    <MyArrive ref="arrive" :arriveData="arriveData"></MyArrive>
+    <!-- 璋冩煡鍙栬瘉 -->
+    <MyEvidence
+      ref="evidence"
+      :evidenceData="evidenceData"
+      :mytype="1"
+      :mycode="mycode"
+    ></MyEvidence>
+    <!-- 搴曢儴鎸夐挳 -->
+    <div class="footer">
+      <el-button @click="handleSubmit" type="primary">纭畾</el-button>
+      <el-button @click="handleBack">杩斿洖</el-button>
     </div>
+  </div>
 </template>
 <script>
+import MyArrive from "../components/arrive";
+import MyEvidence from "../components/evidence";
+import casequery from "@/api/operate/basecase";
+
 export default {
-    data() {
-        return {
-            arrive:{
-
-            },
-            arriveRules:{
-
-            },
-            evidence:{
-
-            },
-            evidenceRules:{
-
+  components: {
+    MyArrive,
+    MyEvidence,
+  },
+  data() {
+    return {
+      arriveData: null,
+      evidenceData: null,
+    };
+  },
+  props: ["caseId", "closeDialog", "mycode", "vioData", "imageResourceId"],
+  created() {
+    this.arriveData = this.vioData.arrivalSituation;
+    this.evidenceData = this.vioData.investigation;
+  },
+  methods: {
+    handleSubmit() {
+      const { arrive, evidence } = this.$refs;
+      const { arriveForm } = arrive.$refs;
+      const { evidenceForm } = evidence.$refs;
+      arriveForm.validate((valid) => {
+        if (valid) {
+          evidenceForm.validate((flag) => {
+            if (flag) {
+              const arriveData = Object.assign({}, arrive.arrive);
+              const evidenceData = Object.assign({}, evidence.evidence);
+              const { partyInfo } = evidenceData;
+              const arrivalSituationId = arriveData.id;
+              const investigationId = evidenceData.id;
+              const partyInfoId = partyInfo ? partyInfo.id : 0;
+              const evidencePic = evidenceData.pic.join(",");
+              const situationPic = arriveData.situationPic.join(",");
+              delete evidenceData.id;
+              delete evidenceData.partyInfo;
+              delete evidenceData.pic;
+              delete arriveData.situationPic;
+              delete arriveData.id;
+              casequery
+                .updateDisposeResult({
+                  caseId: this.caseId,
+                  imageResourceId: this.imageResourceId,
+                  pic: evidencePic,
+                  arrivalSituationId,
+                  situationPic,
+                  partyInfoId,
+                  investigationId,
+                  ...arriveData,
+                  ...evidenceData,
+                  ...partyInfo,
+                })
+                .then(() => {
+                  this.$message.success("鎿嶄綔鎴愬姛");
+                  this.$emit("closeDialog");
+                })
+                .catch((err) => {
+                  this.$message.error(err);
+                });
+            } else {
+              return false;
             }
+          });
+        } else {
+          evidenceForm.validate((flag) => {
+            if (!flag) {
+              return false;
+            }
+          });
+          return false;
         }
-    }
-}
+      });
+    },
+    handleBack() {
+      this.$emit("closeDialog", { flag: false });
+    },
+  },
+};
 </script>
 <style lang="scss" scoped>
-.vio{
-    padding: 50px 100px;
-    .arrive-title,.evidence-title{
-        line-height: 40px;
-        font-weight: 650;
-        font-size: 20px;
-        width: 160px;
-        padding-right: 12px;
-        text-align: right;
-        color: #4b9bb7;
-    }
-    .footer{
-        display: flex;
-        justify-content: flex-end;
-    }
-    ::v-deep .el-input__inner{
-        background-color: #09152f;
-        border: 1px solid #17324c;
-    }
-    ::v-deep .el-textarea__inner{
-        background-color: #09152f;
-        border: 1px solid #17324c;
-    }
-    ::v-deep .el-form-item__label{
-        color:#4b9bb7;
-    }
+.vio {
+  padding: 20px 200px 100px;
+}
+
+.footer {
+  display: flex;
+  justify-content: flex-end;
 }
 </style>
\ No newline at end of file

--
Gitblit v1.8.0