许宏杰 2 years ago
commit 2901c92ed7

@ -5,5 +5,6 @@ ENV = 'development'
VUE_APP_BASE_API = '/dashboard' VUE_APP_BASE_API = '/dashboard'
VUE_APP_BASE_API2 = 'http://192.168.0.106:9027' VUE_APP_BASE_API2 = 'http://192.168.0.106:9027'
VUE_APP_BASE_API3 = 'http://39.101.188.84:9027'
BASE_API = 'http://10.10.3.35:9070' BASE_API = 'http://10.10.3.35:9070'

@ -0,0 +1,43 @@
import request from "@/utils/request.js";
// 清朗专项行动数据统计 /zongzhi/managescreen/action
export function managescreen() {
return request({
url: "/zongzhi/managescreen/action",
method: "get",
});
}
// 举报总数和处置率
export function networkreport() {
return request({
url: "/zongzhi/managescreen/networkreport",
method: "get",
});
}
// 清朗专项
export function zhuanxiang(query) {
return request({
url: "/zongzhi/managescreen/actiondynamicst",
method: "get",
params: query,
});
}
// 举报事件年度分类统计
export function reportbyyear(query) {
return request({
url: "/zongzhi/managescreen/reportbyyear",
method: "get",
params: query,
});
}
// 清朗专项行动动态
export function zhuanxiangInfo(id) {
return request({
url: "/zongzhi/zhuanxiang/" + id,
method: "get",
});
}

@ -101,6 +101,15 @@ export function listDongtai(query) {
}); });
} }
// 查询详情
export function dongtaiInfo(id) {
return request({
url: `/zongzhi/dongtai/${id}`,
method: "get",
});
}
// 查询等保系统列表 // 查询等保系统列表
export function listSystem(query) { export function listSystem(query) {
return request({ return request({
@ -197,14 +206,6 @@ export function listDanger(query) {
params: query, params: query,
}); });
} }
// 清朗专项行动动态
export function zhuanxiang(query) {
return request({
url: "/zongzhi/zhuanxiang/list",
method: "get",
params: query,
});
}
// 查询安全隐患详细 // 查询安全隐患详细
export function getDanger(id) { export function getDanger(id) {
@ -268,4 +269,4 @@ export function networkAppraiser() {
url: "/zongzhi/network/appraiser", url: "/zongzhi/network/appraiser",
method: "get", method: "get",
}); });
} }

@ -30,7 +30,7 @@
</template> </template>
<script> <script>
import { networkreport } from '@/api/zongzhi/st.js' import { networkreport } from '@/api/zongzhi/manage.js'
export default { export default {
data() { data() {
return { return {

@ -3,7 +3,7 @@
* @Author: kery.chen * @Author: kery.chen
* @Description: 总体概览左侧 * @Description: 总体概览左侧
* @Date: 2021-11-30 11:08:50 * @Date: 2021-11-30 11:08:50
* @LastEditTime: 2023-08-21 16:01:49 * @LastEditTime: 2023-08-22 17:20:02
* @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\ecosphere\\components\\componentLeft.vue * @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\ecosphere\\components\\componentLeft.vue
--> -->
<template> <template>
@ -267,7 +267,7 @@
highlight-current-row highlight-current-row
@row-click="rowClick" @row-click="rowClick"
> >
<!-- <el-table-column <el-table-column
label="序号" label="序号"
type="index" type="index"
:index=" :index="
@ -277,7 +277,7 @@
" "
width="80" width="80"
align="center" align="center"
/> --> />
<template v-for="item in tableHeader"> <template v-for="item in tableHeader">
<el-table-column <el-table-column
v-if="item !== '序号'" v-if="item !== '序号'"
@ -483,7 +483,7 @@
<script> <script>
import vueSeamlessScroll from 'vue-seamless-scroll' import vueSeamlessScroll from 'vue-seamless-scroll'
import ModuleTitle from '../../common/ModuleTitle.vue' import ModuleTitle from '../../common/ModuleTitle.vue'
import { listEnterprise, listDomain, listWork, listDongtai, listPlatform } from '@/api/zongzhi/st.js' import { listEnterprise, listDomain, listWork, listDongtai, listPlatform, dongtaiInfo } from '@/api/zongzhi/st.js'
import { import {
getBilibiliData, getBilibiliData,
getRedBookData, getRedBookData,
@ -494,6 +494,7 @@ import {
getWeibo, getWeibo,
getTikTok getTikTok
} from '@/api/common' } from '@/api/common'
import { downloadTwo } from '@/utils/safesoft'
const docx = require('docx-preview') const docx = require('docx-preview')
import pdf from 'vue-pdf' import pdf from 'vue-pdf'
import axios from 'axios' import axios from 'axios'
@ -610,7 +611,8 @@ export default {
zoologyWidth: '', zoologyWidth: '',
fileExtension: '', fileExtension: '',
pdfUrl: '', pdfUrl: '',
numPages: '' numPages: '',
dongtaiTotal:0
} }
}, },
computed: { computed: {
@ -632,24 +634,30 @@ export default {
destroyed() { destroyed() {
clearInterval(this.threeTimer) clearInterval(this.threeTimer)
clearInterval(this.zoologyTimer) clearInterval(this.zoologyTimer)
clearInterval(this.time2)
}, },
mounted() { mounted() {
this.zoologyIconData = this.zoologyIconList.slice(0, 4) this.zoologyIconData = this.zoologyIconList.slice(0, 4)
this.getDynamicData() //
// this.getZoologyData() // // this.getZoologyData() //
this.getZoologyChange() // this.getZoologyChange() //
this.inventoryChange() // this.inventoryChange() //
this.getDynamicData() //
this.time2 = setInterval(() => { //
if (this.dynamicList.length >= this.dongtaiTotal) {
clearInterval(this.time2)
} else {
this.getDynamicData()
}
}, 500)
}, },
methods: { methods: {
// //
getDynamicData() { async getDynamicData() {
listDongtai().then(res => { let res = await listDongtai()
console.log(res) this.dongtaiTotal = res.data.count
this.dynamicList = res.data this.dynamicList = [...this.dynamicList, ...res.data.list]
// this.dtTotal = res.total
})
// const tableObject = require('./data.json')
// this.dynamicList = tableObject['']
}, },
// //
@ -669,10 +677,10 @@ export default {
let res = await listPlatform({type:type}); let res = await listPlatform({type:type});
res.rows.map((item)=>{ res.rows.map((item)=>{
let obj = {} let obj = {}
obj['账号ID'] = item.name obj['账号ID'] = item.name
obj['URL'] = item.dns obj['URL'] = item.dns
this.tableData.push(obj) this.tableData.push(obj)
}) })
// res['T_DATA_BILIBILI[]'].forEach((item) => { // res['T_DATA_BILIBILI[]'].forEach((item) => {
// this.tableData.push({ ID: item.account_id, URL: item.url }) // this.tableData.push({ ID: item.account_id, URL: item.url })
// }) // })
@ -1021,20 +1029,29 @@ export default {
this.currentPage = val this.currentPage = val
this.setCurrentPageData() this.setCurrentPageData()
}, },
dynamicClick(item) { async dynamicClick(item) {
console.log('数据', item) this.tableData = []
this.tableHeader.push({ name: '材料路径', value: 'name' }) this.currentPage = 1
const fileName = item.materialsFileName.split(',') this.pageSize = 10
const fileUrl = item.materialsFileUrl.split(',') let data = await dongtaiInfo(item.id)
console.log(data)
this.tableHeader= ['材料名称']
this.dialogTitle = data.data.materialsName
const fileName = data.data.materialsFileName.split(',')
const fileUrl = data.data.materialsFileUrl.split(',')
console.log(fileName)
if (fileName.length > 0) { if (fileName.length > 0) {
// TODO:
fileName.forEach((item, index) => { fileName.forEach((item, index) => {
this.tableData.push({ name: item, url: fileUrl[index] }) this.tableData.push({ '材料名称': item,'材料路径':fileUrl[index] })
}) })
this.networkPlatformDataTwo()
} else { } else {
this.tableData = [] this.tableData = []
} }
this.dynamicStatus = true this.dynamicStatus = true
// this.dialogTitle = val.dynamicName // this.dialogTitle = val.dynamicName
// this.tableData = val.fileList // this.tableData = val.fileList
// this.tableHeader = [] // this.tableHeader = []
@ -1049,39 +1066,47 @@ export default {
// this.setCurrentPageData() // this.setCurrentPageData()
// this.dynamicStatus = true // this.dynamicStatus = true
}, },
networkPlatformDataTwo() {
this.total = this.tableData.length
this.totalPage = Math.ceil(this.tableData.length / this.pageSize)
this.totalPage = this.totalPage === 0 ? 1 : this.totalPage
this.setCurrentPageData()
},
rowClick(row) { rowClick(row) {
console.log(row) console.log(row)
this.dialogDetails = true this.dialogDetails = true
// console.log(row) // console.log(row)
// this.fileExtension = row[''].substring( this.fileExtension = row['材料路径'].substring(
// row[''].lastIndexOf('.') + 1 row['材料路径'].lastIndexOf('.') + 1
// ) )
// console.log('fileExtension', this.fileExtension) console.log('fileExtension', this.fileExtension)
// if (['png', 'jpg', 'jpeg'].includes(row..substring(row..lastIndexOf('.') + 1))) { if (['png', 'jpg', 'jpeg'].includes(row.材料路径.substring(row.材料路径.lastIndexOf('.') + 1))) {
// this.imgSrc = `${process.env.NODE_ENV === 'production' ? window._CONFIG['fileNginxUrl'] : '/fileApi'}${row['']}` this.imgSrc = `${process.env.NODE_ENV === 'production' ? window._CONFIG['fileNginxUrl'] : '/fileApi'}${row['材料路径']}`
// this.dialogImg = true this.dialogImg = true
// } else if (this.fileExtension === 'docx' || this.fileExtension === 'doc') { } else if (this.fileExtension === 'docx' || this.fileExtension === 'doc') {
// axios({ axios({
// method: 'get', method: 'get',
// responseType: 'blob', // responseType: 'blob', //
// url: `${ url: `${
// process.env.NODE_ENV === 'production' process.env.NODE_ENV === 'production'
// ? window._CONFIG['fileNginxUrl'] ? window._CONFIG['fileNginxUrl']
// : '/fileApi' : '/fileApi'
// }${row['']}` }${row['材料路径']}`
// }).then(({ data }) => { }).then(({ data }) => {
// if (data) { if (data) {
// this.dialogDetails = true this.dialogDetails = true
// this.$nextTick(() => { this.$nextTick(() => {
// docx.renderAsync(data, this.$refs.file) // docx.renderAsync(data, this.$refs.file) //
// }) })
// } }
// }) })
// } else if (this.fileExtension === 'pdf') { } else if (this.fileExtension === 'pdf') {
// this.getNumPages(`${process.env.NODE_ENV === 'production' ? window._CONFIG['fileNginxUrl'] : '/fileApi'}${row['']}`) console.log('window._CONFIG[fileNginxUrl]',window._CONFIG['fileNginxUrl'])
// } this.getNumPages(`${process.env.NODE_ENV === 'production' ? window._CONFIG['fileNginxUrl'] : '/fileApi'}${row['材料路径']}`)
}
}, },
getNumPages(url) { getNumPages(url) {
// console.log(url)
axios({ axios({
method: 'GET', method: 'GET',
url: url, // url: url, //

@ -3,7 +3,7 @@
* @Author: kery.chen * @Author: kery.chen
* @Description: 总体概览右侧 * @Description: 总体概览右侧
* @Date: 2021-11-30 11:08:50 * @Date: 2021-11-30 11:08:50
* @LastEditTime: 2023-08-22 08:57:33 * @LastEditTime: 2023-08-22 14:16:17
* @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\ecosphere\\components\\componentRight.vue * @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\ecosphere\\components\\componentRight.vue
--> -->
<template> <template>
@ -110,7 +110,7 @@
<div class="img-item" :data-curData="index"> <div class="img-item" :data-curData="index">
<div <div
:style="{ :style="{
backgroundImage: 'url(' + item.imgList[0].url + ')', backgroundImage: 'url(' + imgUrl + item.zhuanxiangImg[0] + ')',
}" }"
:data-curData="index" :data-curData="index"
style=" style="
@ -137,21 +137,21 @@
<!-- 弹窗 --> <!-- 弹窗 -->
<div v-if="qlzfDialogFlag" class="qlzf-dialog"> <div v-if="qlzfDialogFlag" class="qlzf-dialog">
<div class="close" @click="qlzfDialogFlag = false"></div> <div class="close" @click="qlzfDialogFlag = false"></div>
<div class="title">{{ eldialogData.title }}</div> <div class="title">{{ eldialogData.zhuanxiangTitle }}</div>
<div class="qlzf-dialog_left"> <div class="qlzf-dialog_left">
<div <div
v-for="(item, index) in eldialogData.imgList" v-for="(item, index) in eldialogData.zhuanxiangImg"
:key="index" :key="index"
style="margin-bottom: 18px" style="margin-bottom: 18px"
> >
<img <img
:src="item.url" :src=" imgUrl + item"
style="width: 355px; height: 269px; background-size: 100% 100%" style="width: 355px; height: 269px; background-size: 100% 100%"
/> />
</div> </div>
</div> </div>
<div class="right"> <div class="right">
<div class="qlzf-dialog_right" v-html="eldialogData.content"></div> <div class="qlzf-dialog_right" v-html="eldialogData.zhuanxiangContent"></div>
</div> </div>
</div> </div>
</div> </div>
@ -162,7 +162,7 @@
window.JSZip = require('jszip') window.JSZip = require('jszip')
import { qlzxdtData } from './json' import { qlzxdtData } from './json'
import { getreportNum } from '@/api/common' import { getreportNum } from '@/api/common'
import { zhuanxiang, managescreen } from '@/api/zongzhi/st.js' import { zhuanxiang, managescreen, zhuanxiangInfo, reportbyyear } from '@/api/zongzhi/manage.js'
import { echartsJump } from '../../../../../public/static/echartsJump' import { echartsJump } from '../../../../../public/static/echartsJump'
import { download } from "@/utils/safesoft" import { download } from "@/utils/safesoft"
import vueSeamlessScroll from 'vue-seamless-scroll' import vueSeamlessScroll from 'vue-seamless-scroll'
@ -181,7 +181,7 @@ export default {
{ url: require('@/assets/ecosphere/清朗专项行动图/1-3.png') }, { url: require('@/assets/ecosphere/清朗专项行动图/1-3.png') },
{ url: require('@/assets/ecosphere/清朗专项行动图/1-4.png') } { url: require('@/assets/ecosphere/清朗专项行动图/1-4.png') }
], ],
qlzxdtList: null, qlzxdtList: [],
number: 0, number: 0,
reportingTimer: null, reportingTimer: null,
pieData: [ pieData: [
@ -303,7 +303,9 @@ export default {
qlzfDialogFlag: false, qlzfDialogFlag: false,
eldialogData: null, eldialogData: null,
yhxiTotal: 0, yhxiTotal: 0,
wgptTotal: 0 wgptTotal: 0,
imgUrl:null,
zhuanxiangTotal:0,
} }
}, },
computed: { computed: {
@ -323,22 +325,31 @@ export default {
created() {}, created() {},
destroyed() { destroyed() {
clearInterval(this.reportingTimer) clearInterval(this.reportingTimer)
clearInterval(this.time)
}, },
mounted() { mounted() {
this.qlzxdtList = qlzxdtData // this.qlzxdtList = qlzxdtData
// this.zhuanxiangList() this.imgUrl = process.env.VUE_APP_BASE_API3
// //
this.reportingProcessTimer() this.reportingProcessTimer()
this.zhuanxiangList() //
this.managescreenData() //
this.reportbyyearDate() //
this.inItPie()
// getreportNum().then(res => { // getreportNum().then(res => {
// this.pieData[0].value = res.data.reportTotalCount - 12 // this.pieData[0].value = res.data.reportTotalCount - 12
// this.inItPie() // this.inItPie()
// }) // })
}, },
methods: { methods: {
itemClick(e) { async itemClick(e) {
this.eldialogData = this.qlzxdtList[e.target.dataset.curdata] // console.log(this.qlzxdtList[e.target.dataset.curdata])
let data = await zhuanxiangInfo(this.qlzxdtList[e.target.dataset.curdata].id)
let eldialogData = JSON.parse(JSON.stringify(data.data))
eldialogData.zhuanxiangImg = eldialogData.zhuanxiangImg.split(',')
// this.eldialogData = this.qlzxdtList[e.target.dataset.curdata]
this.eldialogData = eldialogData
this.qlzfDialogFlag = true this.qlzfDialogFlag = true
}, },
changeImg(item, index) { changeImg(item, index) {
@ -348,20 +359,84 @@ export default {
async zhuanxiangList(){ async zhuanxiangList(){
let res = await zhuanxiang(); let res = await zhuanxiang();
let imgArr let imgArr
let qlzxdtList = JSON.parse(JSON.stringify(res.rows)) this.qlzxdtList = JSON.parse(JSON.stringify(res.data))
this.qlzxdtList = qlzxdtList for(let i = 0; i < this.qlzxdtList.length; i++){
for(let i = 0; i < qlzxdtList.length; i++){ imgArr = this.qlzxdtList[i].zhuanxiangImg
imgArr = qlzxdtList[i].zhuanxiangImg
imgArr = imgArr.split(',') imgArr = imgArr.split(',')
this.qlzxdtList[i].zhuanxiangImg = imgArr this.qlzxdtList[i].zhuanxiangImg = imgArr
for(let j = 0; j < imgArr.length; j++){ }
imgArr[j] = process.env.VUE_APP_BASE_API3 + imgArr[j] },
//
async managescreenData(){
let res = await managescreen()
let data = res.data
let arr1 = [],arr2 = []
data.map((item)=>{
item.zhuanxiangTime = this.getDate(item.zhuanxiangTime)
if(item.type == 1) {
arr1.push(item)
}else if(item.type == 2){
arr2.push(item)
} }
})
this.qlzfDataStatistics[1].data.map((item)=>{
arr2.map((arr)=>{
if(item.name == arr.zhuanxiangTime) {
item.num = arr.count
}
})
})
this.qlzfDataStatistics[0].data.map((item)=>{
arr1.map((arr)=>{
if(item.name == arr.zhuanxiangTime) {
item.num = arr.count
}
})
})
},
//
async reportbyyearDate(){
let data = await reportbyyear();
let arr = []
for(let i = 0; i < data.data.length; i++){
let obj = {}
obj.name = data.data[i].source == '1' ? '上级下发' : data.data[i].source == '2' ? '部门转发' : data.data[i].source == '3' ? '小程序' : '无效'
obj.value = data.data[i].count
arr.push(obj)
}
this.pieData = arr;
this.inItPie()
},
//
getDate(date){
switch(date){
case '01':
return '1月';
case '02':
return '2月';
case '03':
return '3月';
case '04':
return '4月';
case '05':
return '5月';
case '06':
return '6月';
case '07':
return '7月';
case '08':
return '8月';
case '09':
return '9月';
case '10':
return '10月';
case '11':
return '11月';
case '12':
return '12月';
default :
break;
} }
// zhuanxiang().then(res => {
// console.log(this.qlzxdtList)
// })
}, },
// //
inItPie() { inItPie() {

@ -3,7 +3,7 @@
* @Author: kery.chen * @Author: kery.chen
* @Description: 总体概览左侧 * @Description: 总体概览左侧
* @Date: 2021-11-30 11:08:50 * @Date: 2021-11-30 11:08:50
* @LastEditTime: 2022-10-31 14:46:40 * @LastEditTime: 2023-08-22 11:04:28
* @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\security\\components\\componentLeft.vue * @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\security\\components\\componentLeft.vue
--> -->
<template> <template>

@ -61,7 +61,7 @@ module.exports = {
} }
}, },
'/fileApi': { '/fileApi': {
target: 'http://47.116.52.164:10002/sitefiles/wxb/', // 这是本地地址 target: 'http://39.101.188.84:9027', // 这是本地地址 http://47.116.52.164:10002/sitefiles/wxb/
ws: false, ws: false,
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {

Loading…
Cancel
Save