zhanghua
2022-11-29 55b0cd22baf5aa729253639877e5bf3656144bf9
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
@@ -1,119 +1,111 @@
<template>
    <div class="vio">
        <!-- 到达现场情况 -->
        <MyArrive ref="arrive"></MyArrive>
        <!-- 调查取证 -->
        <MyEvidence ref="evidence" :mytype="1"></MyEvidence>
        <!-- 底部按钮 -->
        <div class="footer">
            <el-button @click="handleSubmit" type="primary">确定</el-button>
            <el-button @click="handleBack">返回</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 {parseTime} from '@/utils/index'
export default {
    components: {
        MyArrive, MyEvidence
    },
    data() {
        return {
import MyArrive from "../components/arrive";
import MyEvidence from "../components/evidence";
import casequery from "@/api/operate/basecase";
export default {
  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;
        }
      });
    },
    props: ['caseId', 'closeDialog'],
    created() {
        console.log(this.caseId);
    handleBack() {
      this.$emit("closeDialog", { flag: false });
    },
    methods: {
        handleSubmit() {
            const { arrive, evidence } = this.$refs;
            const { arriveForm } = arrive.$refs;
            const { evidenceForm } = evidence.$refs;
            // console.log(evidence.$refs);
            arriveForm.validate((valid) => {
                // console.log(valid);
                if (valid) {
                    evidenceForm.validate((flag) => {
                        if (flag) {
                            // arrive.arrive;evidence.user;evidence.evidence;
                            this.$axios({
                                method: 'post',
                                url: `sccg/dispatch_handle/addition_dispose_result?caseId=`+this.caseId+'&type=1',
                                data:{
                                    arrivalAddress: arrive.arrive.arrivalAddress,
                                    arrivalTime: parseTime(arrive.arrive.arrivalTime),
                                    situationExplain: arrive.arrive.situationExplain,
                                    replyExplain: arrive.arrive.replyExplain,
                                    situationPic: `${arrive.arrive.situationPic}`,
                                    //
                                    undertaker: evidence.evidence.undertaker,
                                    assistant: evidence.evidence.assistant,
                                    investigationTime: parseTime(evidence.evidence.investigationTime),
                                    address: evidence.evidence.address,
                                    caseAction: evidence.evidence.caseAction,
                                    description: evidence.evidence.description,
                                    pic: `${evidence.evidence.pic}`,
                                    //
                                    illegalType: evidence.user.illegalType,
                                    name: evidence.user.name,
                                    phoneCode: evidence.user.phoneCode,
                                    certificateType: evidence.user.certificateType,
                                    certificateCode: evidence.user.certificateCode,
                                    educationDegree: evidence.user.educationDegree,
                                    career: evidence.user.career,
                                    work: evidence.user.work,
                                    nation: evidence.user.nation,
                                    nativePlace: evidence.user.nativePlace,
                                    liveAddress: evidence.user.liveAddress,
                                    registerAddress: evidence.user.registerAddress,
                                }
                            })
                                .then(res => {
                                    console.log(res);
                                    if (res.code === 200) {
                                        this.$message({
                                            type: 'success',
                                            message:'上传成功',
                                        })
                                        this.$emit('closeDialog', { flag: false });
                                    }else{
                                        this.$message({
                                            type:'warning',
                                            message:res.message
                                        })
                                    }
                                })
                        } 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: 20px 200px 100px;
  padding: 20px 200px 100px;
}
.footer {
    display: flex;
    justify-content: flex-end;
  display: flex;
  justify-content: flex-end;
}
</style>