Compare commits

..

25 Commits

Author SHA1 Message Date
许宏杰 8faf2a52ff 问题修复
1 year ago
许宏杰 9e67ad68a2 隐患时间去掉
1 year ago
许宏杰 bfe48569a4 安全隐患
1 year ago
许宏杰 2d02e97758 错别字
1 year ago
许宏杰 263969a841 数据来源统计新增总量字段
1 year ago
许宏杰 158e92c3ad 问题修复
1 year ago
许宏杰 14a3de2b7c 启用/禁用执行逻辑
1 year ago
许宏杰 e90b1f71d5 表格添加记录启用与禁用
1 year ago
许宏杰 b5f729e862 +1
1 year ago
许宏杰 7140557b02 新增两种统计页面
1 year ago
许宏杰 ed5b0b795c +1
1 year ago
许宏杰 051ee3f204 数据来源与监管对象页面区分处理
1 year ago
许宏杰 05d3d30a19 数据来源修复
1 year ago
许宏杰 d3221745c3 问题修复
1 year ago
许宏杰 adc50ddbca token过期处理
1 year ago
许宏杰 50e907c8cd 去掉脚注
1 year ago
许宏杰 e2ab9fcbba Merge branch 'master' of http://39.101.188.84:8000/suzhou-jichuang-lanhai/taicangZongzhi-PC
1 year ago
许宏杰 430658bf0c 密码填充修复
1 year ago
杜函宇 e702a0e956 Merge branch 'master' of http://39.101.188.84:8000/suzhou-jichuang-lanhai/taicangZongzhi-PC
2 years ago
杜函宇 2d5e5227c9 优化
2 years ago
许宏杰 e530f491ca Merge branch 'master' of http://39.101.188.84:8000/suzhou-jichuang-lanhai/taicangZongzhi-PC
2 years ago
许宏杰 b2e708953d 1
2 years ago
杜函宇 a82810caae Merge branch 'master' of http://39.101.188.84:8000/suzhou-jichuang-lanhai/taicangZongzhi-PC
2 years ago
杜函宇 c23ad155b7 网络舆情
2 years ago
许宏杰 bbb7d764ce +1
2 years ago

@ -11,7 +11,7 @@ ENV = 'development'
# VUE_APP_BASE_API = 'http://39.101.188.84:9027'
#局域网
VUE_APP_BASE_API = 'http://192.168.0.108:9027'
VUE_APP_BASE_API = 'http://39.101.188.84:9027'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true

@ -5,4 +5,4 @@ VUE_APP_TITLE = 数据中台系统
ENV = 'production'
# 数据中台系统/生产环境
VUE_APP_BASE_API = 'http://192.168.0.110:9027'
VUE_APP_BASE_API = 'http://39.101.188.84:9027'

@ -0,0 +1,53 @@
import request from "@/utils/request";
// 查询数据来源统计列表
export function listSourceTj(query) {
return request({
url: "/zongzhi/sourceTj/list",
method: "get",
params: query,
});
}
// 查询数据来源统计详细
export function getSourceTj(id) {
return request({
url: "/zongzhi/sourceTj/" + id,
method: "get",
});
}
// 新增数据来源统计
export function addSourceTj(data) {
return request({
url: "/zongzhi/sourceTj",
method: "post",
data: data,
});
}
// 修改数据来源统计
export function updateSourceTj(data) {
return request({
url: "/zongzhi/sourceTj",
method: "put",
data: data,
});
}
// 删除数据来源统计
export function delSourceTj(id) {
return request({
url: "/zongzhi/sourceTj/" + id,
method: "delete",
});
}
// 导出数据来源统计
export function exportSourceTj(data) {
return request({
url: "/zongzhi/sourceTj/export",
method: "post",
data,
});
}

@ -0,0 +1,53 @@
import request from "@/utils/request";
// 查询安全隐患统计列表
export function listCounty(query) {
return request({
url: "/zongzhi/county/list",
method: "get",
params: query,
});
}
// 查询安全隐患统计详细
export function getCounty(id) {
return request({
url: "/zongzhi/county/" + id,
method: "get",
});
}
// 新增安全隐患统计
export function addCounty(data) {
return request({
url: "/zongzhi/county",
method: "post",
data: data,
});
}
// 修改安全隐患统计
export function updateCounty(data) {
return request({
url: "/zongzhi/county",
method: "put",
data: data,
});
}
// 删除安全隐患统计
export function delCounty(id) {
return request({
url: "/zongzhi/county/" + id,
method: "delete",
});
}
// 导出安全隐患统计
export function exportCounty(data) {
return request({
url: "/zongzhi/county/export",
method: "post",
data,
});
}

@ -0,0 +1,53 @@
import request from "@/utils/request";
// 查询安全监测受攻击统计列表
export function listTj(query) {
return request({
url: "/zongzhi/tj/list",
method: "get",
params: query,
});
}
// 查询安全监测受攻击统计详细
export function getTj(id) {
return request({
url: "/zongzhi/tj/" + id,
method: "get",
});
}
// 新增安全监测受攻击统计
export function addTj(data) {
return request({
url: "/zongzhi/tj",
method: "post",
data: data,
});
}
// 修改安全监测受攻击统计
export function updateTj(data) {
return request({
url: "/zongzhi/tj",
method: "put",
data: data,
});
}
// 删除安全监测受攻击统计
export function delTj(id) {
return request({
url: "/zongzhi/tj/" + id,
method: "delete",
});
}
// 导出安全监测受攻击统计
export function exportTj(data) {
return request({
url: "/zongzhi/tj/export",
method: "post",
data,
});
}

@ -12,7 +12,6 @@ export function filterTown(ids) {
}
function filterNames(data, targetIds, results) {
// console.log(data, "1", targetIds, "2", results, "3");
data.forEach((node, index) => {
if (targetIds.includes(node.id)) {
results.push(node.label);

@ -6,6 +6,7 @@ import errorCode from "@/utils/errorCode";
import { tansParams, blobValidate } from "@/utils/ruoyi";
import cache from "@/plugins/cache";
import { saveAs } from "file-saver";
import router from "@/router";
let downloadLoadingInstance;
// 是否显示重新登录
@ -111,7 +112,7 @@ service.interceptors.response.use(
.then(() => {
isRelogin.show = false;
store.dispatch("LogOut").then(() => {
this.$router.replace("/login");
router.replace("/login");
});
})
.catch(() => {

@ -1,6 +1,11 @@
<template>
<div class="login">
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
<el-form
ref="loginForm"
:model="loginForm"
:rules="loginRules"
class="login-form"
>
<h3 class="title">太仓市网络综合治理平台数据中台</h3>
<el-form-item prop="username">
<el-input
@ -9,7 +14,11 @@
auto-complete="off"
placeholder="账号"
>
<svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />
<svg-icon
slot="prefix"
icon-class="user"
class="el-input__icon input-icon"
/>
</el-input>
</el-form-item>
<el-form-item prop="password">
@ -20,7 +29,11 @@
placeholder="密码"
@keyup.enter.native="handleLogin"
>
<svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon" />
<svg-icon
slot="prefix"
icon-class="password"
class="el-input__icon input-icon"
/>
</el-input>
</el-form-item>
<el-form-item prop="code" v-if="captchaEnabled">
@ -31,40 +44,50 @@
style="width: 63%"
@keyup.enter.native="handleLogin"
>
<svg-icon slot="prefix" icon-class="validCode" class="el-input__icon input-icon" />
<svg-icon
slot="prefix"
icon-class="validCode"
class="el-input__icon input-icon"
/>
</el-input>
<div class="login-code">
<img :src="codeUrl" @click="getCode" class="login-code-img"/>
<img :src="codeUrl" @click="getCode" class="login-code-img" />
</div>
</el-form-item>
<el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;"></el-checkbox>
<el-form-item style="width:100%;">
<el-checkbox
v-model="loginForm.rememberMe"
style="margin: 0px 0px 25px 0px"
>记住密码</el-checkbox
>
<el-form-item style="width: 100%">
<el-button
:loading="loading"
size="medium"
type="primary"
style="width:100%;"
style="width: 100%"
@click.native.prevent="handleLogin"
>
<span v-if="!loading"> </span>
<span v-else> ...</span>
</el-button>
<div style="float: right;" v-if="register">
<router-link class="link-type" :to="'/register'">立即注册</router-link>
<div style="float: right" v-if="register">
<router-link class="link-type" :to="'/register'"
>立即注册</router-link
>
</div>
</el-form-item>
</el-form>
<!-- 底部 -->
<div class="el-login-footer">
<!-- <div class="el-login-footer">
<span>Copyright © 2018-2023 ruoyi.vip All Rights Reserved.</span>
</div>
</div> -->
</div>
</template>
<script>
import { getCodeImg } from "@/api/login";
import Cookies from "js-cookie";
import { encrypt, decrypt } from '@/utils/jsencrypt'
import { encrypt, decrypt } from "@/utils/jsencrypt";
export default {
name: "Login",
@ -72,37 +95,37 @@ export default {
return {
codeUrl: "",
loginForm: {
username: "admin",
password: "admin123",
username: "",
password: "",
rememberMe: false,
code: "",
uuid: ""
uuid: "",
},
loginRules: {
username: [
{ required: true, trigger: "blur", message: "请输入您的账号" }
{ required: true, trigger: "blur", message: "请输入您的账号" },
],
password: [
{ required: true, trigger: "blur", message: "请输入您的密码" }
{ required: true, trigger: "blur", message: "请输入您的密码" },
],
code: [{ required: true, trigger: "change", message: "请输入验证码" }]
code: [{ required: true, trigger: "change", message: "请输入验证码" }],
},
loading: false,
//
captchaEnabled: true,
//
register: false,
redirect: undefined
redirect: undefined,
};
},
watch: {
$route: {
handler: function(route) {
this.redirect = '/netSecurity/DataSource';
handler: function (route) {
this.redirect = "/netSecurity/DataSource";
// this.redirect = route.query && route.query.redirect;
},
immediate: true
}
immediate: true,
},
},
created() {
this.getCode();
@ -110,8 +133,9 @@ export default {
},
methods: {
getCode() {
getCodeImg().then(res => {
this.captchaEnabled = res.captchaEnabled === undefined ? true : res.captchaEnabled;
getCodeImg().then((res) => {
this.captchaEnabled =
res.captchaEnabled === undefined ? true : res.captchaEnabled;
if (this.captchaEnabled) {
this.codeUrl = "data:image/gif;base64," + res.img;
this.loginForm.uuid = res.uuid;
@ -121,38 +145,46 @@ export default {
getCookie() {
const username = Cookies.get("username");
const password = Cookies.get("password");
const rememberMe = Cookies.get('rememberMe')
const rememberMe = Cookies.get("rememberMe");
this.loginForm = {
username: username === undefined ? this.loginForm.username : username,
password: password === undefined ? this.loginForm.password : decrypt(password),
rememberMe: rememberMe === undefined ? false : Boolean(rememberMe)
password:
password === undefined ? this.loginForm.password : decrypt(password),
rememberMe: rememberMe === undefined ? false : Boolean(rememberMe),
};
},
handleLogin() {
this.$refs.loginForm.validate(valid => {
this.$refs.loginForm.validate((valid) => {
if (valid) {
this.loading = true;
if (this.loginForm.rememberMe) {
Cookies.set("username", this.loginForm.username, { expires: 30 });
Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 });
Cookies.set("password", encrypt(this.loginForm.password), {
expires: 30,
});
Cookies.set("rememberMe", this.loginForm.rememberMe, {
expires: 30,
});
} else {
Cookies.remove("username");
Cookies.remove("password");
Cookies.remove('rememberMe');
Cookies.remove("rememberMe");
}
this.$store.dispatch("Login", this.loginForm).then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
}).catch(() => {
this.loading = false;
if (this.captchaEnabled) {
this.getCode();
}
});
this.$store
.dispatch("Login", this.loginForm)
.then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(() => {});
})
.catch(() => {
this.loading = false;
if (this.captchaEnabled) {
this.getCode();
}
});
}
});
}
}
},
},
};
</script>

@ -110,6 +110,14 @@
prop="productName"
/>
<el-table-column label="域名" align="center" prop="dns" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -405,6 +413,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateEnterprise(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询重点企业名录列表 */
getList() {
this.loading = true;

@ -76,6 +76,14 @@
<el-table-column label="粉丝数" align="center" prop="fansNum" />
<el-table-column label="网站域名" align="center" prop="dns" />
<el-table-column label="备案许可证号" align="center" prop="licenceNum" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -365,6 +373,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updatePingtai(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络平台列表 */
getList() {
this.loading = true;

@ -126,7 +126,6 @@
</template>
</el-table-column>
<el-table-column label="地址" align="center" prop="address" />
<el-table-column label="举报内容" align="center" prop="content" />
<el-table-column label="状态" align="center" prop="state">
<template slot-scope="scope">
<dict-tag
@ -143,6 +142,14 @@
/>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -445,6 +452,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateReport(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络举报列表 */
getList() {
this.loading = true;

@ -121,6 +121,14 @@
/>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -394,6 +402,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateZhuanxiang(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询清朗专项列表 */
getList() {
this.loading = true;

@ -93,6 +93,14 @@
</template>
</el-table-column>
<el-table-column label="数量" align="center" prop="count" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -304,6 +312,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateQlzxxdsj(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询清郎专项行动数据统计列表 */
getList() {
this.loading = true;

@ -97,6 +97,14 @@
/>
<el-table-column label="主要监管部门" align="center" prop="dep" />
<el-table-column label="主要依据" align="center" prop="zhuyaoYiju" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -185,6 +193,7 @@
<el-form-item label="重点监管内容" prop="zdjgContent">
<el-input
v-model="form.zdjgContent"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item>
@ -196,7 +205,6 @@
>
<el-input
v-model="form.weifaXingwei"
type="textarea"
placeholder="请输入法律法规明令禁止的有关行为"
/>
</el-form-item>
@ -351,6 +359,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateDomain(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询重点领域监管列表 */
getList() {
this.loading = true;

@ -99,6 +99,14 @@
<span>{{ parseTime(scope.row.fabuTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -339,6 +347,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateDongtai(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询工作动态列表 */
getList() {
this.loading = true;

@ -115,7 +115,7 @@
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="推进单位" align="center" prop="unitName" />
<el-table-column label="项目名称" align="center" prop="projectName" />
<el-table-column label="项目内容" align="center" prop="projectContent" />
<!-- <el-table-column label="项目内容" align="center" prop="projectContent" /> -->
<el-table-column label="项目类型" align="center" prop="projectType">
<template slot-scope="scope">
<dict-tag
@ -131,6 +131,14 @@
/>
<el-table-column label="联系电话" align="center" prop="phoneNum" />
<el-table-column label="联系人职务" align="center" prop="linkManDuty" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -401,6 +409,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateWork(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询重点工作项目列表 */
getList() {
this.loading = true;

@ -16,11 +16,12 @@
size="small"
>
<el-option
v-for="dict in dict.type.tc_data_source_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
v-show="filterShow(dict.dictValue)"
v-for="dict in sourceType"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="parseInt(dict.dictValue)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="资产名称" prop="assetName">
@ -133,24 +134,12 @@
prop="url"
show-overflow-tooltip
/>
<el-table-column label="IP地址" align="center" prop="ipAddress" />
<el-table-column label="操作系统" align="center" prop="os">
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<dict-tag :options="dict.type.tc_os" :value="scope.row.os" />
</template>
</el-table-column>
<el-table-column label="版本" align="center" prop="versions" />
<el-table-column label="是否关注重点" align="center" prop="isFocus">
<template slot-scope="scope">
<dict-tag :options="dict.type.tc_yes_no" :value="scope.row.isFocus" />
</template>
</el-table-column>
<el-table-column label="级别" align="center" prop="level">
<template slot-scope="scope">
<dict-tag
:options="dict.type.tc_net_safety_level"
:value="scope.row.level"
/>
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
@ -223,10 +212,11 @@
<el-form-item label="来源类型" prop="type">
<el-select v-model="form.type" placeholder="请选择来源类型">
<el-option
v-for="dict in dict.type.tc_data_source_type"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
v-show="filterShow(dict.dictValue)"
v-for="dict in sourceType"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="parseInt(dict.dictValue)"
></el-option>
</el-select> </el-form-item
></el-col>
@ -423,7 +413,7 @@ export default {
},
name: "Source",
//
dicts: ["tc_yes_no", "tc_data_source_type", "tc_net_safety_level", "tc_os"],
dicts: ["tc_yes_no", "tc_net_safety_level", "tc_data_source_type", "tc_os"],
data() {
return {
tableHeigth: 0,
@ -456,18 +446,40 @@ export default {
pageNum: 1,
pageSize: 20,
type: null,
assetName: null,
affUnit: null,
notType: null,
},
//
form: {},
//
rules: {},
sourceType: [],
};
},
watch: {
$route: {
// $route
handler(to, from) {
if (to.name == "DataSource") {
this.queryParams.notType = "5,6";
//type 5,6
} else if (to.name == "Jgdw") {
this.queryParams.notType = "3,4,6,7";
// type5
} else if (to.name == "Webjc") {
this.queryParams.notType = "3,4,5,7";
// type6
}
},
deep: true, //
immediate: true, //
},
},
created() {
this.getDicts("tc_data_source_type").then((response) => {
this.sourceType = response.data;
});
// //
this.$nextTick(() => {
this.tableHeigth =
@ -479,6 +491,46 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateSource(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/**过滤显示 */
filterShow(value) {
let routeName = this.$route.name;
if (routeName == "DataSource") {
if (value == 3 || value == 4 || value == 7) {
return true;
} else {
return false;
}
} else if (routeName == "Jgdw") {
if (value == 3 || value == 4 || value == 6 || value == 7) {
return false;
} else {
return true;
}
} else if (routeName == "Webjc") {
if (value == 3 || value == 4 || value == 5 || value == 7) {
return false;
} else {
return true;
}
}
},
/**过滤显示 */
filterTitle(name, key) {
let routeName = this.$route.meta.title;
this[key] = name + routeName;
console.log(this.infoTitle);
},
/** 查询数据来源列表 */
getList() {
this.loading = true;
@ -562,14 +614,16 @@ export default {
response.data.areaId = JSON.parse(response.data.areaId);
this.form = response.data;
this.infoOpen = true;
this.infoTitle = "查看数据来源详情";
// this.infoTitle = "";
this.filterTitle("查看", "infoTitle");
});
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加数据来源";
// this.title = "";
this.filterTitle("添加", "title");
},
/** 修改按钮操作 */
handleUpdate(row) {
@ -579,7 +633,8 @@ export default {
response.data.areaId = JSON.parse(response.data.areaId);
this.form = response.data;
this.open = true;
this.title = "修改数据来源";
// this.title = "";
this.filterTitle("修改", "title");
});
},
/** 提交按钮 */

@ -0,0 +1,419 @@
<template>
<div class="container-main" ref="main">
<div class="search-hearder" ref="topSearch">
<!-- <el-form
:model="queryParams"
ref="queryForm"
:inline="true"
v-show="showSearch"
label-width="auto"
>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form> -->
</div>
<div class="layui-table-tool" ref="tableTool">
<el-button
v-show="sourceTjList.length == 0"
type="primary"
size="mini"
@click="handleAdd()"
v-hasPermi="['zongzhi:sourceTj:add']"
>新增</el-button
>
<el-button
type="success"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['zongzhi:sourceTj:edit']"
>修改</el-button
>
<!-- <el-button
type="danger"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['zongzhi:sourceTj:remove']"
>删除</el-button
> -->
<el-button
type="warning"
size="mini"
:loading="exportLoading"
@click="handleExport"
v-hasPermi="['zongzhi:sourceTj:export']"
>导出</el-button
>
</div>
<el-table
v-loading="loading"
:data="sourceTjList"
:height="tableHeigth"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="云端监测(G)" align="center" prop="lable1" />
<el-table-column
label="云端监测(G)总量"
align="center"
prop="lable1Sume"
/>
<el-table-column label="APT(M)" align="center" prop="lable2" />
<el-table-column label="APT(M)总量" align="center" prop="lable2Sume" />
<!-- <el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column> -->
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
width="200"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
@click="handleInfo(scope.row)"
v-hasPermi="['zongzhi:sourceTj:list']"
>
查看
</el-button>
<el-button
type="success"
size="mini"
@click="handleUpdate(scope.row)"
v-hasPermi="['zongzhi:sourceTj:edit']"
>修改</el-button
>
<!-- <el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)"
v-hasPermi="['zongzhi:sourceTj:remove']"
>删除</el-button
> -->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改数据来源统计对话框 -->
<el-dialog
:visible.sync="open"
width="500px"
append-to-body
custom-class="dialog-box"
>
<div slot="title" class="dialog-title">{{ title }}</div>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="auto"
class="dialog-from"
>
<el-form-item label="云端监测(G)" prop="lable1">
<el-input v-model="form.lable1" placeholder="请输入云端监测(G)" />
</el-form-item>
<el-form-item label="云端监测(G)总量" prop="lable1Sume">
<el-input
v-model="form.lable1Sume"
placeholder="请输入云端监测(G)总量"
/>
</el-form-item>
<el-form-item label="APT(M)" prop="lable2">
<el-input v-model="form.lable2" placeholder="请输入APT(M)" />
</el-form-item>
<el-form-item label="APT(M)总量" prop="lable2Sume">
<el-input v-model="form.lable2Sume" placeholder="请输入APT(M)总量" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!--查看数据来源统计详情页-->
<el-dialog
:visible.sync="infoOpen"
width="1200px"
append-to-body
:close-on-click-modal="false"
:destroy-on-close="true"
custom-class="dialog-box"
>
<div slot="title" class="dialog-title">{{ infoTitle }}</div>
<el-descriptions
title="数据来源统计"
:column="2"
border
labelClassName="desLable"
>
<el-descriptions-item label="云端监测(G)">{{
form.lable1
}}</el-descriptions-item>
<el-descriptions-item label="云端监测(G)总量">{{
form.lable1Sume
}}</el-descriptions-item>
<el-descriptions-item label="APT(M)">{{
form.lable2
}}</el-descriptions-item>
<el-descriptions-item label="APT(M)总量">{{
form.lable2Sume
}}</el-descriptions-item>
</el-descriptions>
</el-dialog>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import {
listSourceTj,
getSourceTj,
delSourceTj,
addSourceTj,
updateSourceTj,
exportSourceTj,
} from "@/api/zongzhi/netSecurity/DataSourceTj/index.js";
export default {
computed: {
...mapGetters(["townList"]),
},
name: "SourceTj",
//
data() {
return {
tableHeigth: 0,
//
infoOpen: false,
//
infoTitle: "",
//
loading: true,
//
exportLoading: false,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
sourceTjList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
},
//
form: {},
//
rules: {},
};
},
created() {
// //
this.$nextTick(() => {
this.tableHeigth =
this.$refs.main.offsetHeight -
(this.$refs.topSearch.offsetHeight +
this.$refs.tableTool.offsetHeight) -
46;
this.getList();
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateSourceTj(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询数据来源统计列表 */
getList() {
this.loading = true;
listSourceTj(this.queryParams).then((response) => {
this.sourceTjList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
areaId: null,
lable1: null,
lable1Sume: null,
lable2: null,
lable2Sume: null,
createId: null,
createBy: null,
createTime: null,
updateId: null,
updateBy: null,
updateTime: null,
remark: null,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/**查看按钮操作 */
handleInfo(row) {
this.reset();
const id = row.id || this.ids;
getSourceTj(id).then((response) => {
this.form = response.data;
this.infoOpen = true;
this.infoTitle = "查看数据来源统计详情";
});
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加数据来源统计";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getSourceTj(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改数据来源统计";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.id != null) {
updateSourceTj(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addSourceTj(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$confirm(
'是否确认删除数据来源统计编号为"' + ids + '"的数据项?',
"警告",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}
)
.then(function () {
return delSourceTj(ids);
})
.then(() => {
this.getList();
this.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm("是否确认导出所有数据来源统计数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
this.download(
"/zongzhi/sourceTj/export",
{
...this.queryParams,
},
"数据来源统计_" + new Date().getTime() + ".xlsx"
);
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -9,7 +9,8 @@
label-width="auto"
>
<el-form-item label="隐患类型" prop="type">
<el-select
<el-input v-model="queryParams.type" placeholder="请选择隐患类型" />
<!-- <el-select
v-model="queryParams.type"
placeholder="请选择隐患类型"
clearable
@ -21,7 +22,7 @@
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-select> -->
</el-form-item>
<el-form-item label="隐患名称" prop="riskName">
<el-input
@ -87,9 +88,9 @@
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="隐患类型" align="center" prop="type">
<template slot-scope="scope">
<!-- <template slot-scope="scope">
<dict-tag :options="dict.type.tc_yh_type" :value="scope.row.type" />
</template>
</template> -->
</el-table-column>
<el-table-column label="隐患名称" align="center" prop="riskName" />
<el-table-column label="等级" align="center" prop="level">
@ -115,6 +116,14 @@
</template>
</el-table-column>
<el-table-column label="部门" align="center" prop="depName" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -184,14 +193,15 @@
</el-col>
<el-col :span="12">
<el-form-item label="隐患类型" prop="type">
<el-select v-model="form.type" placeholder="请选择隐患类型">
<el-input v-model="form.type" placeholder="请选择隐患类型" />
<!-- <el-select v-model="form.type" placeholder="请选择隐患类型">
<el-option
v-for="dict in dict.type.tc_yh_type"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-select> -->
</el-form-item>
</el-col>
</el-row>
@ -259,14 +269,14 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="隐患开始时间" prop="startTime">
<el-form-item label="通报时间" prop="startTime">
<el-date-picker
clearable
size="small"
v-model="form.startTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择隐患开始时间"
placeholder="选择通报时间"
>
</el-date-picker>
</el-form-item>
@ -274,7 +284,7 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="隐患结束时间" prop="endTime">
<!-- <el-form-item label="隐患结束时间" prop="endTime">
<el-date-picker
clearable
size="small"
@ -284,7 +294,7 @@
placeholder="选择隐患结束时间"
>
</el-date-picker>
</el-form-item>
</el-form-item> -->
</el-col>
<el-col :span="12">
<el-form-item label="附件上传" prop="fileName">
@ -320,7 +330,8 @@
}}</el-descriptions-item>
<el-descriptions-item label="隐患类型">
<dict-tag :options="dict.type.tc_yh_type" :value="form.type" />
<!-- <dict-tag :options="dict.type.tc_yh_type" :value="form.type" /> -->
{{ form.type }}
</el-descriptions-item>
<el-descriptions-item label="单位名称">{{
@ -362,13 +373,13 @@
form.depName
}}</el-descriptions-item>
<el-descriptions-item label="隐患开始时间">{{
<el-descriptions-item label="通报时间">{{
form.startTime
}}</el-descriptions-item>
<el-descriptions-item label="隐患结束时间">{{
<!-- <el-descriptions-item label="隐患结束时间">{{
form.endTime
}}</el-descriptions-item>
}}</el-descriptions-item> -->
</el-descriptions>
<FileView :fileList="fileList" />
</el-dialog>
@ -447,6 +458,15 @@ export default {
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateDanger(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询安全隐患列表 */
getList() {
this.loading = true;

@ -0,0 +1,377 @@
<template>
<div class="container-main" ref="main">
<div class="search-hearder" ref="topSearch">
<el-form
:model="queryParams"
ref="queryForm"
:inline="true"
v-show="showSearch"
label-width="auto"
>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
</div>
<div class="layui-table-tool" ref="tableTool">
<el-button
v-show="countyList.length < 6"
type="primary"
size="mini"
@click="handleAdd()"
v-hasPermi="['zongzhi:county:add']"
>新增</el-button
>
<el-button
type="success"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['zongzhi:county:edit']"
>修改</el-button
>
<el-button
type="danger"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['zongzhi:county:remove']"
>删除</el-button
>
<el-button
type="warning"
size="mini"
:loading="exportLoading"
@click="handleExport"
v-hasPermi="['zongzhi:county:export']"
>导出</el-button
>
</div>
<el-table
v-loading="loading"
:data="countyList"
:height="tableHeigth"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="类型名称" align="center" prop="typeName" />
<el-table-column label="数量" align="center" prop="totalNum" />
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
width="200"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
@click="handleInfo(scope.row)"
v-hasPermi="['zongzhi:county:list']"
>
查看
</el-button>
<el-button
type="success"
size="mini"
@click="handleUpdate(scope.row)"
v-hasPermi="['zongzhi:county:edit']"
>修改</el-button
>
<el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)"
v-hasPermi="['zongzhi:county:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改安全隐患统计对话框 -->
<el-dialog
:visible.sync="open"
width="500px"
append-to-body
custom-class="dialog-box"
>
<div slot="title" class="dialog-title">{{ title }}</div>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="auto"
class="dialog-from"
>
<el-form-item label="类型名称" prop="typeName">
<el-input v-model="form.typeName" placeholder="请输入类型名称" />
</el-form-item>
<el-form-item label="数量" prop="totalNum">
<el-input v-model="form.totalNum" placeholder="请输入数量" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!--查看安全隐患统计详情页-->
<el-dialog
:visible.sync="infoOpen"
width="90%"
append-to-body
:close-on-click-modal="false"
:destroy-on-close="true"
custom-class="dialog-box"
>
<div slot="title" class="dialog-title">{{ infoTitle }}</div>
<el-descriptions
title="安全隐患统计"
:column="2"
border
labelClassName="desLable"
>
<el-descriptions-item label="类型名称">{{
form.typeName
}}</el-descriptions-item>
<el-descriptions-item label="数量">{{
form.totalNum
}}</el-descriptions-item>
</el-descriptions>
</el-dialog>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import {
listCounty,
getCounty,
delCounty,
addCounty,
updateCounty,
exportCounty,
} from "@/api/zongzhi/netSecurity/SafetyYhTj/index.js";
export default {
computed: {
...mapGetters(["townList"]),
},
name: "County",
//
data() {
return {
tableHeigth: 0,
//
infoOpen: false,
//
infoTitle: "",
//
loading: true,
//
exportLoading: false,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
countyList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
},
//
form: {},
//
rules: {},
};
},
created() {
// //
this.$nextTick(() => {
this.tableHeigth =
this.$refs.main.offsetHeight -
(this.$refs.topSearch.offsetHeight +
this.$refs.tableTool.offsetHeight) -
46;
this.getList();
});
},
methods: {
/** 查询安全隐患统计列表 */
getList() {
this.loading = true;
listCounty(this.queryParams).then((response) => {
this.countyList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
areaId: null,
typeName: null,
totalNum: null,
createId: null,
createBy: null,
createTime: null,
updateId: null,
updateBy: null,
updateTime: null,
remark: null,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/**查看按钮操作 */
handleInfo(row) {
this.reset();
const id = row.id || this.ids;
getCounty(id).then((response) => {
this.form = response.data;
this.infoOpen = true;
this.infoTitle = "查看安全隐患统计详情";
});
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加安全隐患统计";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getCounty(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改安全隐患统计";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.id != null) {
updateCounty(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addCounty(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$confirm(
'是否确认删除安全隐患统计编号为"' + ids + '"的数据项?',
"警告",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}
)
.then(function () {
return delCounty(ids);
})
.then(() => {
this.getList();
this.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm("是否确认导出所有安全隐患统计数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
this.download(
"/zongzhi/county/export",
{
...this.queryParams,
},
"安全隐患统计_" + new Date().getTime() + ".xlsx"
);
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -91,7 +91,7 @@
<span>{{ parseTime(scope.row.attackTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column label="攻击源ID" align="center" prop="sourceIp" />
<el-table-column label="攻击源IP" align="center" prop="sourceIp" />
<el-table-column label="攻击类型" align="center" prop="attackType">
<template slot-scope="scope">
<dict-tag
@ -116,6 +116,14 @@
<el-table-column label="所属单位" align="center" prop="affUnit" />
<el-table-column label="联系电话" align="center" prop="phoneNum" />
<el-table-column label="联系人" align="center" prop="linkMan" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -341,7 +349,7 @@
form.attackTime
}}</el-descriptions-item>
<el-descriptions-item label="攻击源ID">{{
<el-descriptions-item label="攻击源IP">{{
form.sourceIp
}}</el-descriptions-item>
@ -473,6 +481,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateDetection(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询安全检测列表 */
getList() {
this.loading = true;

@ -73,6 +73,14 @@
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="地区名称" align="center" prop="name" />
<el-table-column label="攻击次数" align="center" prop="attackCount" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -237,6 +245,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateAttack(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询地区受攻击列表 */
getList() {
this.loading = true;

@ -0,0 +1,437 @@
<template>
<div class="container-main" ref="main">
<div class="search-hearder" ref="topSearch">
<!-- <el-form
:model="queryParams"
ref="queryForm"
:inline="true"
v-show="showSearch"
label-width="auto"
>
<el-form-item label="网络攻击" prop="totalSum">
<el-input
v-model="queryParams.totalSum"
placeholder="请输入网络攻击"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="入侵攻击" prop="rqSum">
<el-input
v-model="queryParams.rqSum"
placeholder="请输入入侵攻击"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form> -->
</div>
<div class="layui-table-tool" ref="tableTool">
<el-button
v-show="tjList.length == 0"
type="primary"
size="mini"
@click="handleAdd()"
v-hasPermi="['zongzhi:tj:add']"
>新增</el-button
>
<el-button
type="success"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['zongzhi:tj:edit']"
>修改</el-button
>
<!-- <el-button
type="danger"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['zongzhi:tj:remove']"
>删除</el-button
> -->
<el-button
type="warning"
size="mini"
:loading="exportLoading"
@click="handleExport"
v-hasPermi="['zongzhi:tj:export']"
>导出</el-button
>
</div>
<el-table
v-loading="loading"
:data="tjList"
:height="tableHeigth"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="网络攻击" align="center" prop="totalSum" />
<el-table-column label="入侵攻击" align="center" prop="rqSum" />
<el-table-column label="恶意扫描" align="center" prop="eySum" />
<el-table-column label="僵木蠕病毒" align="center" prop="jmrSum" />
<!-- <el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column> -->
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
width="200"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
@click="handleInfo(scope.row)"
v-hasPermi="['zongzhi:tj:list']"
>
查看
</el-button>
<el-button
type="success"
size="mini"
@click="handleUpdate(scope.row)"
v-hasPermi="['zongzhi:tj:edit']"
>修改</el-button
>
<!-- <el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)"
v-hasPermi="['zongzhi:tj:remove']"
>删除</el-button
> -->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改安全监测受攻击统计对话框 -->
<el-dialog
:visible.sync="open"
width="500px"
append-to-body
custom-class="dialog-box"
>
<div slot="title" class="dialog-title">{{ title }}</div>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="auto"
class="dialog-from"
>
<el-form-item label="网络攻击" prop="totalSum">
<el-input v-model="form.totalSum" placeholder="请输入网络攻击" />
</el-form-item>
<el-form-item label="入侵攻击" prop="rqSum">
<el-input v-model="form.rqSum" placeholder="请输入入侵攻击" />
</el-form-item>
<el-form-item label="恶意扫描" prop="eySum">
<el-input v-model="form.eySum" placeholder="请输入恶意扫描" />
</el-form-item>
<el-form-item label="僵木蠕病毒" prop="jmrSum">
<el-input v-model="form.jmrSum" placeholder="请输入僵木蠕病毒" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!--查看安全监测受攻击统计详情页-->
<el-dialog
:visible.sync="infoOpen"
width="1200px"
append-to-body
:close-on-click-modal="false"
:destroy-on-close="true"
custom-class="dialog-box"
>
<div slot="title" class="dialog-title">{{ infoTitle }}</div>
<el-descriptions
title="安全监测受攻击统计"
:column="2"
border
labelClassName="desLable"
>
<el-descriptions-item label="网络攻击">{{
form.totalSum
}}</el-descriptions-item>
<el-descriptions-item label="入侵攻击">{{
form.rqSum
}}</el-descriptions-item>
<el-descriptions-item label="恶意扫描">{{
form.eySum
}}</el-descriptions-item>
<el-descriptions-item label="僵木蠕病毒">{{
form.jmrSum
}}</el-descriptions-item>
</el-descriptions>
</el-dialog>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import {
listTj,
getTj,
delTj,
addTj,
updateTj,
exportTj,
} from "@/api/zongzhi/netSecurity/sgjtj/index.js";
export default {
computed: {
...mapGetters(["townList"]),
},
name: "Tj",
//
data() {
return {
tableHeigth: 0,
//
infoOpen: false,
//
infoTitle: "",
//
loading: true,
//
exportLoading: false,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
tjList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
totalSum: null,
rqSum: null,
},
//
form: {},
//
rules: {},
};
},
created() {
// //
this.$nextTick(() => {
this.tableHeigth =
this.$refs.main.offsetHeight -
(this.$refs.topSearch.offsetHeight +
this.$refs.tableTool.offsetHeight) -
46;
this.getList();
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateTj(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询安全监测受攻击统计列表 */
getList() {
this.loading = true;
listTj(this.queryParams).then((response) => {
this.tjList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
townId: null,
villageId: null,
totalSum: null,
rqSum: null,
eySum: null,
jmrSum: null,
createId: null,
createBy: null,
createTime: null,
updateId: null,
updateBy: null,
updateTime: null,
remark: null,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/**查看按钮操作 */
handleInfo(row) {
this.reset();
const id = row.id || this.ids;
getTj(id).then((response) => {
this.form = response.data;
this.infoOpen = true;
this.infoTitle = "查看安全监测受攻击统计详情";
});
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加安全监测受攻击统计";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getTj(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改安全监测受攻击统计";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.id != null) {
updateTj(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addTj(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$confirm(
'是否确认删除安全监测受攻击统计编号为"' + ids + '"的数据项?',
"警告",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}
)
.then(function () {
return delTj(ids);
})
.then(() => {
this.getList();
this.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm("是否确认导出所有安全监测受攻击统计数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
this.download(
"/zongzhi/tj/export",
{
...this.queryParams,
},
"安全监测受攻击统计_" + new Date().getTime() + ".xlsx"
);
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -117,6 +117,14 @@
/>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -533,6 +541,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateSystem(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询等保系统列表 */
getList() {
this.loading = true;

@ -117,6 +117,14 @@
/>
<el-table-column label="行政区域代码" align="center" prop="areaCode" />
<el-table-column label="单位责任人—姓名" align="center" prop="fuzeName" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -472,6 +480,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateUnit(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询等保单位列表 */
getList() {
this.loading = true;

@ -101,6 +101,14 @@
/>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -322,6 +330,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateWeb(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询政府网站列表 */
getList() {
this.loading = true;

@ -87,6 +87,14 @@
</el-table-column>
<el-table-column label="名称" align="center" prop="unitName" />
<el-table-column label="IP段信息" align="center" prop="ipData" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -287,6 +295,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateIDCunit(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询IDC单位列表 */
getList() {
this.loading = true;

@ -128,6 +128,14 @@
<span>{{ parseTime(scope.row.tbTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -403,6 +411,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateTb(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询通报列表 */
getList() {
this.loading = true;

@ -37,6 +37,7 @@
size="mini"
@click="handleAdd()"
v-hasPermi="['zongzhi:sx:add']"
v-show="sxList.length == 0"
>新增</el-button
>
<el-button
@ -47,14 +48,7 @@
v-hasPermi="['zongzhi:sx:edit']"
>修改</el-button
>
<el-button
type="danger"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['zongzhi:sx:remove']"
>删除</el-button
>
<el-button
type="warning"
size="mini"
@ -97,13 +91,6 @@
v-hasPermi="['zongzhi:sx:edit']"
>修改</el-button
>
<el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)"
v-hasPermi="['zongzhi:sx:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
@ -239,6 +226,8 @@ export default {
form: {},
//
rules: {},
//
isAdd: false,
};
},
created() {
@ -253,10 +242,24 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateSx(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询动态筛选列表 */
getList() {
this.loading = true;
listSx(this.queryParams).then((response) => {
if (response.rows.length > 0) {
this.isAdd = true;
} else {
this.isAdd = false;
}
this.sxList = response.rows;
this.total = response.total;
this.loading = false;

@ -1,11 +1,3 @@
<!--
* @Descripttion:
* @version:
* @Author: JC9527
* @Date: 2023-08-28 13:56:14
* @LastEditors: JC9527
* @LastEditTime: 2023-08-28 13:56:39
-->
<template>
<div class="container-main" ref="main">
<div class="search-hearder" ref="topSearch">
@ -109,7 +101,17 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="舆情名称" align="center" prop="sentimentName" />
<el-table-column label="区域" align="center" prop="areaId">
<template slot-scope="scope">
{{ $filterTown(JSON.parse(scope.row.areaId)) }}
</template>
</el-table-column>
<el-table-column
label="舆情名称"
align="center"
prop="sentimentName"
:show-overflow-tooltip="true"
/>
<el-table-column label="部门名称" align="center" prop="depName" />
<el-table-column
label="发布时间"
@ -174,6 +176,14 @@
<dict-tag :options="dict.type.tc_yes_no" :value="scope.row.isturn" />
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -365,8 +375,8 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否转办" prop="isturn">
<el-select v-model="form.isturn" placeholder="请选择是否转办">
<el-form-item label="是否是转办单">
<el-select v-model="form.isturn" placeholder="请选择是否转办">
<el-option
v-for="dict in dict.type.tc_yes_no"
:key="dict.value"
@ -379,8 +389,26 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="舆情报告类型" prop="source">
<el-select v-model="form.sentimentReportType" placeholder="请选择舆情报告类型">
<el-form-item label="是否提示单">
<el-select
v-model="form.reminder"
placeholder="请选择是否是提示单"
>
<el-option
v-for="dict in dict.type.tc_yes_no"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="舆情报告类型">
<el-select
v-model="form.sentimentReportType"
placeholder="请选择舆情报告类型"
>
<el-option
v-for="dict in dict.type.tc_yqbg_type"
:key="dict.value"
@ -391,6 +419,7 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="附件上传" prop="fileName">
@ -505,7 +534,7 @@ export default {
"tc_yes_no",
"tc_event_type",
"tc_yq_type",
"tc_yqbg_type"
"tc_yqbg_type",
],
data() {
return {
@ -549,19 +578,6 @@ export default {
form: {},
//
rules: {},
//
yqbgType:[
{
label:'专报',
value:'1'
},{
label:'月报',
value:'2'
},{
label:'深度报告',
value:'3'
}
]
};
},
created() {
@ -576,6 +592,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateSentiment(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络舆情列表 */
getList() {
this.loading = true;
@ -636,8 +661,7 @@ export default {
updateTime: null,
remark: null,
sentimentReportType: null,
reminder: null,
};
this.fileList = [];
this.resetForm("form");
@ -727,7 +751,6 @@ export default {
if (valid) {
if (this.form.id != null) {
this.form.areaId = JSON.stringify(this.form.areaId);
this.filterFile(1);
updateSentiment(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -735,6 +758,7 @@ export default {
this.getList();
});
} else {
this.form.areaId = JSON.stringify(this.form.areaId);
addSentiment(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;

@ -115,6 +115,14 @@
</el-table-column>
<el-table-column label="媒体数据" align="center" prop="mediaCount" />
<el-table-column label="涉事数量" align="center" prop="eventCount" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -179,32 +187,43 @@
clearable
></el-cascader>
</el-form-item>
<el-form-item label="媒体类型" prop="mediaType">
<el-select v-model="form.mediaType" placeholder="请选择媒体类型">
<el-option
v-for="dict in dict.type.tc_yq_media"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="涉事类型" prop="eventType">
<el-select v-model="form.eventType" placeholder="请选择涉事类型">
<el-option
v-for="dict in dict.type.tc_ss_type"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="媒体数据" prop="mediaCount">
<el-input v-model="form.mediaCount" placeholder="请输入媒体数据" />
</el-form-item>
<el-form-item label="涉事数量" prop="eventCount">
<el-input v-model="form.eventCount" placeholder="请输入涉事数量" />
<el-form-item label="分类类型">
<el-radio-group v-model="radio">
<el-radio :label="1">媒体类型</el-radio>
<el-radio :label="2">涉事数据</el-radio>
</el-radio-group>
</el-form-item>
<div v-if="radio == 1">
<el-form-item label="媒体类型" prop="mediaType">
<el-select v-model="form.mediaType" placeholder="请选择媒体类型">
<el-option
v-for="dict in dict.type.tc_yq_media"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="媒体数据" prop="mediaCount">
<el-input v-model="form.mediaCount" placeholder="请输入媒体数据" />
</el-form-item>
</div>
<div v-if="radio == 2">
<el-form-item label="涉事类型" prop="eventType">
<el-select v-model="form.eventType" placeholder="请选择涉事类型">
<el-option
v-for="dict in dict.type.tc_ss_type"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="涉事数量" prop="eventCount">
<el-input v-model="form.eventCount" placeholder="请输入涉事数量" />
</el-form-item>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -271,6 +290,7 @@ export default {
dicts: ["tc_yq_media", "tc_ss_type"],
data() {
return {
radio: 1,
tableHeigth: 0,
//
infoOpen: false,
@ -334,6 +354,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateFl(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询舆情分类列表 */
getList() {
this.loading = true;
@ -476,3 +505,10 @@ export default {
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-radio-group {
display: flex;
align-items: center;
height: 32px;
}
</style>

@ -93,6 +93,14 @@
</template>
</el-table-column>
<el-table-column label="数量" align="center" prop="count" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -304,6 +312,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateZs(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询舆情走势图列表 */
getList() {
this.loading = true;

@ -32,13 +32,13 @@
</el-form>
</div>
<div class="layui-table-tool" ref="tableTool">
<el-button
<!-- <el-button
type="primary"
size="mini"
@click="handleAdd()"
v-hasPermi="['zongzhi:bjsj:add']"
>新增</el-button
>
> -->
<el-button
type="success"
size="mini"
@ -47,14 +47,14 @@
v-hasPermi="['zongzhi:bjsj:edit']"
>修改</el-button
>
<el-button
<!-- <el-button
type="danger"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['zongzhi:bjsj:remove']"
>删除</el-button
>
> -->
<el-button
type="warning"
size="mini"
@ -78,6 +78,14 @@
</el-table-column>
<el-table-column label="占比名称" align="center" prop="name" />
<el-table-column label="所占百分比" align="center" prop="percent" />
<!-- <el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column> -->
<el-table-column
label="操作"
align="center"
@ -100,13 +108,13 @@
v-hasPermi="['zongzhi:bjsj:edit']"
>修改</el-button
>
<el-button
<!-- <el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)"
v-hasPermi="['zongzhi:bjsj:remove']"
>删除</el-button
>
> -->
</template>
</el-table-column>
</el-table>
@ -266,6 +274,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateBjsj(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询本级上级网评指令比列 (月)列表 */
getList() {
this.loading = true;

@ -103,6 +103,14 @@
/>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -376,6 +384,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateCommentator(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网评员列表 */
getList() {
this.loading = true;

@ -128,6 +128,14 @@
</template>
</el-table-column>
<el-table-column label="文章地址" align="center" prop="url" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -446,6 +454,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateArticle(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/**评价 */
handPj(row) {
this.currentData = row;

@ -86,6 +86,14 @@
<el-table-column label="联系电话" align="center" prop="tel" />
<el-table-column label="传真号码" align="center" prop="faxNum" />
<el-table-column label="手机号" align="center" prop="phoneNum" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -314,6 +322,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updatePrincipal(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络民情责任人列表 */
getList() {
this.loading = true;

@ -119,6 +119,14 @@
/>
</template>
</el-table-column>
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -375,6 +383,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateEvaluate(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网评列表 */
getList() {
this.loading = true;

@ -97,6 +97,14 @@
<el-table-column label="网络安全官" align="center" prop="networkAqg" />
<el-table-column label="职务_2" align="center" prop="duty2" />
<el-table-column label="电话" align="center" prop="tel" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -361,6 +369,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateSafetyadmin(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络安全官列表 */
getList() {
this.loading = true;

@ -88,6 +88,14 @@
<el-table-column label="单位名称" align="center" prop="name" />
<el-table-column label="联系人" align="center" prop="linkMan" />
<el-table-column label="联系电话" align="center" prop="phoneNum" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -297,6 +305,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateNetSafetyZcUnit(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络安全支持单位列表 */
getList() {
this.loading = true;

@ -96,6 +96,14 @@
<el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="职务" align="center" prop="duty" />
<el-table-column label="联系方式" align="center" prop="phoneNum" />
<el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -343,6 +351,15 @@ export default {
});
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateVolunteer(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网络文明自愿者列表 */
getList() {
this.loading = true;

@ -41,13 +41,13 @@
</el-form>
</div>
<div class="layui-table-tool" ref="tableTool">
<el-button
<!-- <el-button
type="primary"
size="mini"
@click="handleAdd()"
v-hasPermi="['zongzhi:wpyrwwcl:add']"
>新增</el-button
>
> -->
<el-button
type="success"
size="mini"
@ -56,14 +56,14 @@
v-hasPermi="['zongzhi:wpyrwwcl:edit']"
>修改</el-button
>
<el-button
<!-- <el-button
type="danger"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['zongzhi:wpyrwwcl:remove']"
>删除</el-button
>
> -->
<el-button
type="warning"
size="mini"
@ -86,6 +86,14 @@
</template>
</el-table-column>
<el-table-column label="完成率" align="center" prop="finish" />
<!-- <el-table-column label="启用/禁用" align="center">
<template slot-scope="scope">
<el-switch
v-model="scope.row.isStatus"
@change="changeSwitch($event, scope.row.id)"
></el-switch>
</template>
</el-table-column> -->
<el-table-column
label="操作"
align="center"
@ -108,13 +116,13 @@
v-hasPermi="['zongzhi:wpyrwwcl:edit']"
>修改</el-button
>
<el-button
<!-- <el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)"
v-hasPermi="['zongzhi:wpyrwwcl:remove']"
>删除</el-button
>
> -->
</template>
</el-table-column>
</el-table>
@ -269,6 +277,15 @@ export default {
},
},
methods: {
changeSwitch(e, id) {
let data = {
id,
isStatus: e,
};
updateWpyrwwcl(data).then((res) => {
this.$modal.msgSuccess(e == true ? "启用成功" : "禁用成功");
});
},
/** 查询网评员任务完成率心列表 */
getList() {
this.loading = true;

Loading…
Cancel
Save