From c819024e241b9f7c54cc3786373ad0d2998f2190 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期五, 05 五月 2023 08:55:46 +0800
Subject: [PATCH] 修改

---
 src/views/hiddenDangerReview/recheckHiddenDangerList.vue |  139 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 102 insertions(+), 37 deletions(-)

diff --git a/src/views/hiddenDangerReview/recheckHiddenDangerList.vue b/src/views/hiddenDangerReview/recheckHiddenDangerList.vue
index ecff40c..5c1ce53 100644
--- a/src/views/hiddenDangerReview/recheckHiddenDangerList.vue
+++ b/src/views/hiddenDangerReview/recheckHiddenDangerList.vue
@@ -3,7 +3,7 @@
         <div style="">
             <Titlename title="发送隐患单"></Titlename>
             <div class="whole-form">
-                <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="150px" class="demo-ruleForm"
+                <el-form :model="ruleForm" ref="ruleForm" label-width="150px" class="demo-ruleForm"
                          style="margin: 0 14% 0 16%;">
                     <el-row>
                         <el-col :span="9">
@@ -272,7 +272,7 @@
                                     border
                                     style="width: 100%">
                                     <el-table-column
-                                        prop="date"
+                                       type="index"
                                         label="步骤"
                                         align="center"
                                         width="60">
@@ -296,10 +296,11 @@
                                         width="260">
                                         <template slot-scope="scope">
                                             <span size="medium">{{ scope.row.content }}</span>
-                                            <a v-for="item in scope.row.realFileName"
-                                               :href="process.env.BASE_API+'/'+item">
-                                                {{ item.split("fileName=")[1] }}
-                                            </a>
+                                            <span v-for="item in scope.row.realFileName">
+                                                <el-link  type="primary" @click="downloadFile(subFile(item))">
+                                                    {{subFile(item)}}
+                                                </el-link>
+                                            </span>
                                         </template>
                                     </el-table-column>
                                     <el-table-column
@@ -314,18 +315,29 @@
                     </el-row>
                     <el-row>
                         <el-col :span="22">
-                            <el-form-item label="发送流程" prop="name">
-                                <el-input type="textarea" v-model="ruleForm.name" class="multiline"
-                                          :disabled="true"></el-input>
+                            <el-form-item label="发送流程:" prop="name">
+<!--                                <el-input type="textarea" v-model="ruleForm.name" class="multiline"-->
+<!--                                          :disabled="true"></el-input>-->
                             </el-form-item>
                         </el-col>
                     </el-row>
                     <el-row>
                         <el-col :span="22">
-                            <el-form-item label="是否发送" prop="name">
-                                <el-radio-group v-model="ruleForm.ispass">
-                                    <el-radio :label="0">通过</el-radio>
-                                    <el-radio :label="1">不通过</el-radio>
+                            <el-form-item label="下一步:" prop="name">
+                                <span> 流程结束,不通过则返回隐患部门</span>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                </el-form>
+                <el-form :model="sendDataForm" :rules="rules" ref="sendDataForm" label-width="150px"
+                         class="demo-ruleForm"
+                         style="margin: 0 14% 0 16%;">
+                    <el-row>
+                        <el-col :span="22">
+                            <el-form-item label="是否发送" prop="ispass">
+                                <el-radio-group v-model="sendDataForm.ispass">
+                                    <el-radio label="通过">通过</el-radio>
+                                    <el-radio label="不通过">不通过</el-radio>
                                 </el-radio-group>
                             </el-form-item>
                         </el-col>
@@ -334,11 +346,12 @@
                         v-if="ruleForm.safetyInspectionItemResult == 0">
                         <el-row>
                             <el-col :span="9">
-                                <el-form-item label="复查时间" prop="reviewTime">
+                                <el-form-item label="复查时间" prop="CALLBACKTIME">
                                     <el-date-picker
-                                        v-model="ruleForm.CALLBACKTIME"
+                                        v-model="sendDataForm.CALLBACKTIME"
                                         type="date"
                                         placeholder="选择日期"
+                                        value-format="yyyy-MM-dd"
                                         style="width: 100%">
                                     </el-date-picker>
                                 </el-form-item>
@@ -346,23 +359,24 @@
                         </el-row>
                         <el-row>
                             <el-col :span="9">
-                                <el-form-item label="复查人" prop="rechecker">
-                                    <el-input v-model="ruleForm.CALLBACKPERSON" clearable></el-input>
+                                <el-form-item label="复查人" prop="CALLBACKPERSON">
+                                    <el-input v-model="sendDataForm.CALLBACKPERSON" clearable></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
                         <el-row>
                             <el-col :span="22">
-                                <el-form-item label="复查结果" prop="reviewResults">
+                                <el-form-item label="复查结果" prop="CALLBACKRESULT">
                                     <el-input class="textarea2" type="textarea" clearable
-                                              v-model="ruleForm.CALLBACKRESULT"></el-input>
+                                              v-model="sendDataForm.CALLBACKRESULT"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
                         <el-row>
                             <el-col :span="22">
-                                <el-form-item label="备注" prop="desc">
-                                    <el-input class="textarea" type="textarea" v-model="ruleForm.dealContent"></el-input>
+                                <el-form-item label="备注" prop="dealContent">
+                                    <el-input class="textarea" type="textarea"
+                                              v-model="sendDataForm.dealContent"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
@@ -371,9 +385,9 @@
                         v-else="ruleForm.safetyInspectionItemResult == 1">
                         <el-row>
                             <el-col :span="9">
-                                <el-form-item label="复查时间" prop="reviewTime">
+                                <el-form-item label="复查时间" prop="CALLBACKTIME">
                                     <el-date-picker
-                                        v-model="ruleForm.CALLBACKTIME"
+                                        v-model="sendDataForm.CALLBACKTIME"
                                         type="date"
                                         placeholder="选择日期"
                                         style="width: 100%">
@@ -383,23 +397,24 @@
                         </el-row>
                         <el-row>
                             <el-col :span="9">
-                                <el-form-item label="复查人" prop="rechecker">
-                                    <el-input v-model="ruleForm.CALLBACKPERSON" clearable></el-input>
+                                <el-form-item label="复查人" prop="CALLBACKPERSON">
+                                    <el-input v-model="sendDataForm.CALLBACKPERSON" clearable></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
                         <el-row>
                             <el-col :span="22">
-                                <el-form-item label="复查结果" prop="reviewResults">
+                                <el-form-item label="复查结果" prop="CALLBACKRESULT">
                                     <el-input class="textarea2" type="textarea"
-                                              v-model="ruleForm.CALLBACKRESULT"></el-input>
+                                              v-model="sendDataForm.CALLBACKRESULT"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
                         <el-row>
                             <el-col :span="22">
-                                <el-form-item label="备注" prop="desc1">
-                                    <el-input class="textarea" type="textarea" v-model="ruleForm.dealContent"></el-input>
+                                <el-form-item label="备注" prop="dealContent">
+                                    <el-input class="textarea" type="textarea"
+                                              v-model="sendDataForm.dealContent"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
@@ -407,7 +422,8 @@
                     <el-row>
                         <el-col :span="22">
                             <el-form-item style="text-align: center;">
-                                <el-button class="btn" size="small" type="primary" @click="submitForm('ruleForm')">保存
+                                <el-button class="btn" size="small" type="primary" @click="submitForm('sendDataForm')">
+                                    保存
                                 </el-button>
                                 <el-button size="small" @click="close()">关闭</el-button>
                             </el-form-item>
@@ -423,6 +439,7 @@
 <script>
 import Titlename from "../../components/Titlename/index.vue";
 import {sendDangerNext, getDangerDetails, getWfRecordList} from "@/api/sgyhpczl/recheckCancellationNumber";
+import {downloadFile} from "@/api/sgyhpczl/fileUtils";
 
 export default {
     components: {Titlename},
@@ -438,11 +455,19 @@
                 CALLBACKRESULT: "",
                 dealContent: "",
             },
+            sendDataForm: {
+                id: "",
+                step: "3",
+                ispass: "通过",
+                CALLBACKTIME: "",
+                CALLBACKPERSON: "",
+                CALLBACKRESULT: "",
+                dealContent: "",
+            },
             rules: {
                 CALLBACKTIME: {required: true, message: '请填写复查时间', trigger: 'blur'},
                 CALLBACKPERSON: {required: true, message: '请填写复查人', trigger: 'blur'},
                 CALLBACKRESULT: {required: true, message: '请填写复查结果', trigger: 'blur'},
-                dealContent: {required: true, message: '复查不通过时请在备注说明原因!', trigger: 'blur'},
             },
             tableData: [],
             fileList: [],
@@ -450,7 +475,6 @@
         };
     },
     mounted() {
-        console.log(process.env.BASE_API)
         this.getDangerDetails();
         this.getWfRecordList();
     },
@@ -460,7 +484,8 @@
                 var data = res.data;
                 if (data.ok) {
                     this.ruleForm = data.data;
-                    console.log(this.ruleForm);
+                    this.ruleForm.url = process.env.BASE_API;
+                    this.sendDataForm.id = this.ruleForm.id
                 } else {
                     this.$message({type: 'error', message: "数据查询失败,请重试!", duration: 3000})
                 }
@@ -477,11 +502,18 @@
             })
         },
         submitForm(formName) {
-            console.log(this.ruleForm);
             this.$refs[formName].validate((valid) => {
                 if (valid) {
-                    sendDangerNext(this.ruleForm).then(res => {
-
+                    sendDangerNext(this.sendDataForm).then(res => {
+                        var msg = res.data.msg;
+                        if (res.data.ok) {
+                            this.$router.push({
+                                path:"/recheckCancellationNumber",
+                            })
+                            this.$message({type: 'success', message: msg, duration: 3000})
+                        } else {
+                            this.$message({type: 'error', message: msg, duration: 3000})
+                        }
                     })
                     // alert('submit!');
                 } else {
@@ -510,7 +542,40 @@
             this.$router.push({
                 path: "/recheckCancellationNumber"
             })
-        }
+        },
+        subFile(fileName){
+            return  fileName.substring(fileName.indexOf("fileName=")+9)
+        },
+        downloadFile(path){
+            let params = {
+                type: 0,
+                fileName: path,
+            };
+            downloadFile(params).then((res) => {
+                if(res.data.type=='text/json'){
+                    const reader  = new FileReader();
+                    reader.readAsText(res.data, 'utf-8');
+                    reader.onload = e => {
+                        this.$message({
+                            type: "error",
+                            message: JSON.parse(reader.result).msg,
+                            duration: 3000,
+                        });
+                    }
+                } else {
+                    let blob = new Blob([res.data], {type: 'application/octet-stream'})
+                    console.log(blob)
+                    let blobUrl = window.URL.createObjectURL(blob)
+                    let downloadElement = document.createElement('a')
+                    downloadElement.href = blobUrl
+                    downloadElement.download = path
+                    document.body.appendChild(downloadElement)
+                    downloadElement.click()
+                    document.body.removeChild(downloadElement)
+                    window.URL.revokeObjectURL(blobUrl)
+                }
+            });
+        },
     }
 }
 </script>

--
Gitblit v1.9.2