lijinlong
许宏杰 2 years ago
parent fb723b3a7e
commit 9d30670849

@ -107,24 +107,27 @@
<span>等级</span>
<span>隐患来源</span>
</div>
<div @click="rowDetails($event)">
<vue-seamless-scroll
:data="dangerList"
:class-option="classOption"
class="dangerBox"
>
<div
v-for="(item, idx) in dangerList"
:key="idx"
class="dangerText"
<div @click="rowDetails($event)">
<vue-seamless-scroll
:data="dangerList"
:class-option="classOption"
class="dangerBox"
>
<span :data-url="item.fileUrl">{{ item.unitName }}</span>
<span :data-url="item.fileUrl">{{ item.riskName }}</span>
<span :data-url="item.fileUrl">{{ $filterDict("tc_yh_level", item.level) }}</span>
<span :data-url="item.fileUrl"> {{ $filterDict("tc_yh_source", item.riskSource) }}</span>
</div>
</vue-seamless-scroll>
<div
v-for="(item, idx) in dangerList"
:key="idx"
class="dangerText"
>
<span :data-url="item.fileUrl">{{ item.unitName }}</span>
<span :data-url="item.fileUrl">{{ item.riskName }}</span>
<span :data-url="item.fileUrl">{{
$filterDict("tc_yh_level", item.level)
}}</span>
<span :data-url="item.fileUrl">
{{ $filterDict("tc_yh_source", item.riskSource) }}</span
>
</div>
</vue-seamless-scroll>
</div>
</div>
<!-- 通报处置 -->
@ -136,28 +139,27 @@
<span class="title_three">处置情况</span>
</div>
<div @click="rowDetails($event)">
<vue-seamless-scroll
:data="informList"
:class-option="classOption"
class="table_ctn"
>
<div
v-for="(item, index) in informList"
:key="index"
class="ctn_item"
<vue-seamless-scroll
:data="informList"
:class-option="classOption"
class="table_ctn"
>
<div class="item_name" :data-url="item.fileUrl">
{{ item.depName }}
</div>
<div class="item_ip" :data-url="item.fileUrl">
{{ item.ip }}
<div
v-for="(item, index) in informList"
:key="index"
class="ctn_item"
>
<div class="item_name" :data-url="item.fileUrl">
{{ item.depName }}
</div>
<div class="item_ip" :data-url="item.fileUrl">
{{ item.ip }}
</div>
<span class="item_num" :data-url="item.fileUrl">{{
$filterDict("tc_steam_state", item.state)
}}</span>
</div>
<span class="item_num" :data-url="item.fileUrl">{{
$filterDict("tc_steam_state", item.state)
}}</span>
</div>
</vue-seamless-scroll>
</vue-seamless-scroll>
</div>
</div>
</div>
@ -230,7 +232,7 @@
</template>
<script>
import {safeRisks} from '@/api/wlSafe'
import { safeRisks } from "@/api/wlSafe";
import { listDanger, getDanger, listTb, getTb } from "@/api/zongzhi/st.js";
import vueSeamlessScroll from "vue-seamless-scroll";
import ModuleTitle from "../../common/ModuleTitle.vue";
@ -289,31 +291,31 @@ export default {
{
title: "敏感信息泄露漏洞",
value: 0,
type:1,
type: 1,
},
{
title: "权限许可和访问控制",
type:2,
type: 2,
value: 0,
},
{
title: "未加密登录请求",
value: 0,
type:3,
type: 3,
},
{
title: "其他",
type:6,
type: 6,
value: 0,
},
{
title: "应用程序测试脚本漏洞",
type:4,
type: 4,
value: 0,
},
{
title: "文件上传漏洞",
type:5,
type: 5,
value: 0,
},
],
@ -449,15 +451,15 @@ export default {
* 安全隐患大屏数据
*/
safeListDP() {
safeRisks().then(res=>{
res.data.forEach((value,index)=>{
this.safetyList.forEach((value1,index1)=>{
if(value.type == value1.type){
this.safetyList[index1].value = value.count
safeRisks().then((res) => {
res.data.forEach((value, index) => {
this.safetyList.forEach((value1, index1) => {
if (value.type == value1.type) {
this.safetyList[index1].value = value.count;
}
})
})
})
});
});
});
},
/**
@ -534,13 +536,19 @@ export default {
this.dialogStatus = true;
},
rowDetails(e) {
if(!e.target.dataset.url) return
if (!e.target.dataset.url) {
this.$message({
message: "该记录暂无文件!",
type: "warning",
});
return;
}
this.fileExtension = e.target.dataset.url.substring(
e.target.dataset.url.lastIndexOf(".") + 1
);
if (this.fileExtension == "pdf") {
this.pdfUrl = process.env.VUE_APP_BASE_API2 +e.target.dataset.url;
this.dialogDetails = true;
this.pdfUrl = process.env.VUE_APP_BASE_API2 + e.target.dataset.url;
this.dialogDetails = true;
} else if (
this.fileExtension === "docx" ||
this.fileExtension === "doc"
@ -549,14 +557,19 @@ export default {
method: "get",
responseType: "blob", //
url: process.env.VUE_APP_BASE_API2 + e.target.dataset.url,
}).then(({ data }) => {
if (data) {
this.dialogDetails = true;
this.$nextTick(() => {
docx.renderAsync(data, this.$refs.file1); //
});
}
});
})
.then(({ data }) => {
if (data) {
this.dialogDetails = true;
this.$nextTick(() => {
docx.renderAsync(data, this.$refs.file1); //
});
}
})
.catch((error) => {
this.$message.error(error);
});
}
// const row = JSON.parse(e.target.dataset.obj)
@ -1254,7 +1267,7 @@ export default {
.file-content .docx p {
text-align: center !important;
}
.docx{
.docx {
padding: 104pt 90pt !important;
}
</style>

Loading…
Cancel
Save