Authored by zhangtianqi

禅道:漏洞上传文件

@@ -70,9 +70,9 @@ @@ -70,9 +70,9 @@
70 v-show = "userVulnRole != 'manufacturer' "> 70 v-show = "userVulnRole != 'manufacturer' ">
71 <i class="el-icon-delete"></i> 71 <i class="el-icon-delete"></i>
72 </span> 72 </span>
73 - <!--<span class="icon-bg"@click="handleDownload(scope.row)">-->  
74 - <!-- <i class="el-icon-download" title="下载"></i>-->  
75 - <!--</span>--> 73 + <span class="icon-bg"@click="handleDownload(scope.row)">
  74 + <i class="el-icon-download" title="下载"></i>
  75 + </span>
76 </div> 76 </div>
77 </template> 77 </template>
78 </cm-table-page> 78 </cm-table-page>
@@ -113,7 +113,21 @@ @@ -113,7 +113,21 @@
113 <!--<el-form-item label="修复建议" prop="repairSuggestions">--> 113 <!--<el-form-item label="修复建议" prop="repairSuggestions">-->
114 <!-- <el-input type="textarea" v-model="docForm.repairSuggestions"></el-input>--> 114 <!-- <el-input type="textarea" v-model="docForm.repairSuggestions"></el-input>-->
115 <!--</el-form-item>--> 115 <!--</el-form-item>-->
116 - 116 + <el-form-item label="" prop="remark">
  117 + <el-upload
  118 + ref="upload"
  119 + action="#"
  120 + :limit="1"
  121 + :on-exceed="handleExceed"
  122 + :auto-upload="false"
  123 + accept=".doc,.docx,.txt,.xls,.xlsx,.pdf"
  124 + :on-change="handleUploadChange"
  125 + >
  126 + <template #trigger>
  127 + <el-button type="primary">上 传 附 件</el-button>
  128 + </template>
  129 + </el-upload>
  130 + </el-form-item>
117 131
118 <el-form-item> 132 <el-form-item>
119 <el-button :size="$global.elementConfig.size.button" @click="addFolder('ruleForm')" type="primary"> 133 <el-button :size="$global.elementConfig.size.button" @click="addFolder('ruleForm')" type="primary">
@@ -63,11 +63,13 @@ export default { @@ -63,11 +63,13 @@ export default {
63 level:'', 63 level:'',
64 remark:'', 64 remark:'',
65 impactSite:'', 65 impactSite:'',
66 - repairSuggestions:'' 66 + repairSuggestions:'',
  67 + file:''
67 } 68 }
68 } 69 }
69 // 保存漏洞 70 // 保存漏洞
70 const addFolder = ()=>{ 71 const addFolder = ()=>{
  72 + // console.log(docForm.value);
71 ruleForm.value.validate((validate)=>{ 73 ruleForm.value.validate((validate)=>{
72 if (validate){ 74 if (validate){
73 proxy.$http.post('/api-web/vulnerabilities/save', docForm.value, function (res) { 75 proxy.$http.post('/api-web/vulnerabilities/save', docForm.value, function (res) {
@@ -78,11 +80,23 @@ export default { @@ -78,11 +80,23 @@ export default {
78 docForm.value.remark = ''; 80 docForm.value.remark = '';
79 docForm.value.impactSite = ''; 81 docForm.value.impactSite = '';
80 docForm.value.repairSuggestions = ''; 82 docForm.value.repairSuggestions = '';
  83 + docForm.value.file = "";
81 }) 84 })
82 } 85 }
83 }) 86 })
84 } 87 }
85 88
  89 + let upload = Vue.ref();
  90 + //文件选中时自动替换上一个文件
  91 + const handleExceed = (files)=>{
  92 + upload.value.clearFiles()
  93 + const file = files[0]
  94 + upload.value.handleStart(file)
  95 + }
  96 + const handleUploadChange = (uploadFile)=>{
  97 + docForm.value.file = uploadFile.raw;
  98 + }
  99 +
86 let docForm = Vue.ref({ 100 let docForm = Vue.ref({
87 name:'', 101 name:'',
88 level:'', 102 level:'',
@@ -90,6 +104,7 @@ export default { @@ -90,6 +104,7 @@ export default {
90 remark:'', 104 remark:'',
91 impactSite:'', 105 impactSite:'',
92 repairSuggestions:'', 106 repairSuggestions:'',
  107 + file:''
93 }) 108 })
94 let docRulesForm = Vue.ref({ 109 let docRulesForm = Vue.ref({
95 name:[ 110 name:[
@@ -200,6 +215,11 @@ export default { @@ -200,6 +215,11 @@ export default {
200 215
201 } 216 }
202 217
  218 + // 下载文件
  219 + const handleDownload = (row)=>{
  220 +
  221 + }
  222 +
203 // 获取当前登陆人所属厂商 223 // 获取当前登陆人所属厂商
204 const getManufacturer = ()=>{ 224 const getManufacturer = ()=>{
205 proxy.$http.get('/api-web/vulnerabilities/manufacturer',{}, function (res) { 225 proxy.$http.get('/api-web/vulnerabilities/manufacturer',{}, function (res) {
@@ -259,9 +279,13 @@ export default { @@ -259,9 +279,13 @@ export default {
259 handleQuery, 279 handleQuery,
260 viewDrawer, 280 viewDrawer,
261 detail, 281 detail,
262 - userVulnRole 282 + userVulnRole,
263 // defaultSolveTime, 283 // defaultSolveTime,
264 // defaultSolveDate 284 // defaultSolveDate
  285 + handleExceed,
  286 + upload,
  287 + handleUploadChange,
  288 + handleDownload,
265 }; 289 };
266 }, 290 },
267 } 291 }