master
loveflow 11 months ago
parent b29f7445a3
commit e5ae0a4326

@ -0,0 +1,71 @@
import request from "@/utils/request";
//企业风险项趋势分析图
export function enterpriseComprehensiveRisk() {
return request({
url: "/AnomalyChart/EnterpriseComprehensiveRisk",
method: "post",
});
}
//流口人员管理异常
export function abnormalFloatingPopulation() {
return request({
url: "/AnomalyChart/AbnormalFloatingPopulation",
method: "post",
});
}
//人员背景审核异常分析
export function personnelBackground() {
return request({
url: "/AnomalyChart/PersonnelBackground",
method: "post",
});
}
//重点岗位资质核查异常分析
export function keyPosition() {
return request({
url: "/AnomalyChart/keyPosition",
method: "post",
});
}
//人员涉警(案)情况异常分析
export function policeInvolvement() {
return request({
url: "/AnomalyChart/PoliceInvolvement",
method: "post",
});
}
//装卸量差异分析
export function zXDifference() {
return request({
url: "/AnomalyChart/ZXDifference",
method: "post",
});
}
//运输车辆背景异常分析
export function transportVehicleBj() {
return request({
url: "/AnomalyChart/TransportVehicleBj",
method: "post",
});
}
//运输车辆异常预警
export function transportVehicleAnomaly() {
return request({
url: "/AnomalyChart/TransportVehicleAnomaly",
method: "post",
});
}
//驾驶员押运员资质异常分析
export function transportVehicle() {
return request({
url: "/AnomalyChart/TransportVehicle",
method: "post",
});
}
//单位检查情况异常分析
export function unitInspection() {
return request({
url: "/AnomalyChart/UnitInspection",
method: "post",
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,43 @@
import request from "@/utils/request";
//企业综合风险雷达图
export function enterpriseComprehensiveRisk() {
return request({
url: "/IntegratedRisk/EnterpriseComprehensiveRisk",
method: "post",
});
}
//企业综合风险趋势图
export function tendencyChart() {
return request({
url: "/IntegratedRisk/TendencyChart",
method: "post",
});
}
//高风险企业增长趋势分析
export function ventureBusiness() {
return request({
url: "/IntegratedRisk/VentureBusiness",
method: "post",
});
}
//全区企业风险预警总量
export function riskEarlyWarning() {
return request({
url: "/IntegratedRisk/RiskEarlyWarning",
method: "post",
});
}
//全区企业风险标签数量变化趋势
export function variationTrend() {
return request({
url: "/IntegratedRisk/VariationTrend",
method: "post",
});
}
//全区企业风险标签增长趋势
export function growthTrend() {
return request({
url: "/IntegratedRisk/GrowthTrend",
method: "post",
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,99 @@
import request from "@/utils/request";
//车辆的违规信息统计
export function vehicleDetail() {
return request({
url: "/special/vehicleDetail",
method: "post",
});
}
//网络安全评估
export function cybersecurityrisk() {
return request({
url: "/special/cybersecurityrisk",
method: "get",
});
}
//车辆违规数
export function dangerousnum() {
return request({
url: "/special/dangerousnum",
method: "get",
});
}
//运输安全
export function dangerousrun() {
return request({
url: "/special/dangerousrun",
method: "get",
});
}
//防攻击管理
export function defenserisk() {
return request({
url: "/special/defenserisk",
method: "get",
});
}
//消防事件发生
export function firefighting() {
return request({
url: "/special/firefighting",
method: "get",
});
}
//消防制度执行
export function firefightinggo() {
return request({
url: "/special/firefightinggo",
method: "get",
});
}
//消防设施数据
export function firefightinggoods() {
return request({
url: "/special/firefightinggoods",
method: "get",
});
}
//民用枪支
export function gun() {
return request({
url: "/special/gun",
method: "get",
});
}
//企业台账
export function ledger() {
return request({
url: "/special/ledger",
method: "get",
});
}
//单位内部管理
export function peacemanage() {
return request({
url: "/special/peacemanage",
method: "get",
});
}
//人员安全风险评估
export function personnelrisk() {
return request({
url: "/special/personnelrisk",
method: "get",
});
}
//放射源物品
export function radiationmanage() {
return request({
url: "/special/radiationmanage",
method: "get",
});
}
//道路安全管理
export function roadmanage() {
return request({
url: "/special/roadmanage",
method: "get",
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -0,0 +1,9 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
method: "post",
params,
});
}

@ -33,7 +33,7 @@ export default {
}, },
radar: { radar: {
center: ["50%", "50%"], // center: ["50%", "50%"], //
radius: "45%", radius: "40%",
name: { name: {
textStyle: { textStyle: {
color: "#D0DEEE", color: "#D0DEEE",
@ -80,8 +80,8 @@ export default {
data: [ data: [
{ {
value: [80, 80, 80, 80, 80, 80, 80, 80], value: this.chartObj.yData,
name: "车辆违规数", name: this.chartObj.name,
lineStyle: { lineStyle: {
color: "#2B82F3", color: "#2B82F3",
}, },

@ -1,4 +1,5 @@
import { deleteAction, getAction, downFile } from "../api/manage"; import { deleteAction, getAction, downFile } from "../api/manage";
import request from "@/utils/request";
export const tableListMixins = { export const tableListMixins = {
data() { data() {
@ -42,207 +43,29 @@ export const tableListMixins = {
this.dataSource = []; this.dataSource = [];
let params = this.getQueryParams(); let params = this.getQueryParams();
//模拟接口返回数据总数total request({
let total = 40; url: this.url.list,
this.ipagination.total = total; method: "post",
//console.log(this.ipagination); params,
}).then((res) => {
let nameArr = [ if (res.code == 200) {
"杨怡伶", if (!res.data) {
"林亚蓉", this.dataSource = [];
"李家伟", return;
"陈皓茜", }
"杨郁婷", this.dataSource = res.data || [];
"张旺茹", if (res.total) {
"李彦志", this.ipagination.total = res.total;
"张雅玫", } else {
"郭育维", this.ipagination.total = 0;
"吴兰木", }
"江松兰", }
"吴淑霞", });
"许育海",
"赖雅婷",
"谢宜恩",
"储世昌",
"张雅泰",
"周左达",
"林馨仪",
"史怡静",
"苏思翰",
"赵美绍",
"黄崇舜",
"杨季生",
"陈一柏",
"杨信宏",
"叶忠翰",
"林子竹",
"黄千倩",
"蔡冠宇",
"张玉萍",
"丁宜芳",
"谢伟元",
"林婉婷",
"刘冠良",
"侯盈如",
"王薇宣",
"臧杰良",
"陈雅惠",
"叶依婷",
];
let cmyArr = [
"宁波市鼎瑞翔新材料科技有限公司",
"镇海石化海达发展有限责任公司",
"宁波四明化工有限公司",
"宁波特粒科技有限公司",
"宁波市镇海欣利工艺品有限公司",
"宁波安捷化工物流有限公司",
"宁波和盛达能源科技有限公司",
"宁波市镇海俞范三合电镀厂",
"宁波华梦贸易有限公司",
"英力士苯领高分子材料(宁波)有限公司",
"宁波市镇海金泰金属有限公司",
"宁波市银舟表面技术有限公司",
"图腾纺织(宁波)有限公司",
"宁波人健化学制药有限公司",
"宁波明峰检验检测研究院股份有限公司",
"宁波铝亿合金材料有限公司",
"宁波龙宝泰生环保科技有限公司",
"浙江杭州湾腈纶有限公司",
"镇海蛟川物业管理有限公司",
"宁波镇海炼化利安德化工销售有限公司",
];
let timeArr = [
"2023-02-26 10:08:36",
"2023-01-26 10:08:12",
"2023-02-26 09:08:36",
"2023-08-09 10:08:37",
"2023-07-12 10:11:16",
"2023-02-26 10:32:42",
"2023-03-26 09:08:36",
"2023-03-26 10:08:57",
"2023-04-26 10:08:28",
"2023-05-26 10:08:36",
"2023-05-26 10:32:18",
"2023-06-12 10:08:28",
"2023-03-12 10:08:31",
"2023-02-24 10:08:41",
"2023-02-12 09:08:47",
"2023-02-26 11:08:53",
"2023-05-26 09:10:58",
"2023-04-26 10:11:51",
"2023-03-26 10:09:29",
"2023-03-12 10:19:29",
];
let alarmArr = ["GPS驻留", "疲劳驾驶", "反车道", "超载", "超速"];
//console.log(nameArr.length);
let genderArr = ["女", "男"];
let hyArr = ["未婚", "已婚"];
let index =
(this.ipagination.currentPage - 1) * this.ipagination.pageSize;
console.log(index);
let length = index + this.ipagination.pageSize;
for (let i = index; i < length; i++) {
this.dataSource.push({
id: i + 1,
name: nameArr[index + i],
card: "32032119879876321" + i,
phone: "186678879" + i,
cmy: cmyArr[i % 20],
cmyType: i % 5,
time: timeArr[i % 20],
risk: i % 8,
ys: i % 4,
unit: i % 4,
state: i % 3,
dealWay: i % 5,
dealRequire: i % 2,
street: "33021100" + (i % 7),
infoType: i % 3,
tipWay: i % 3,
tipnr: "经过应急管理局现场核查,消防设施无需整改",
carAlarm: alarmArr[i % 5],
rate: "9" + [i % 10] + "%",
whp: "危化品",
caseName: "4.12案件" + i,
caseNr: "案件简介" + i,
gwei: "操作工",
gwlb: ["技术资质", "使用人员", "保管人员"][i % 3],
jyfw: "日常用品",
depart: "生产",
dealUnit: "交警大队",
dealDetail: "",
dealAddress: "卡口",
dealRange: "35分钟",
gender: genderArr[i % 2],
hy: hyArr[i % 2],
address: "镇海区骆驼街道南一西路" + i + "号",
isQ: "是",
isD: "否",
personType: "未登记人员",
date: "2024-02-26 10:0" + (i % 10) + ":36",
sc: "正常",
qyT: "企业类型" + i,
car: "浙B9871" + i,
yType: "GPS驻留" + params.pageNo,
cardList: [
{
name: "矛盾数据",
value: 9,
},
{
name: "劳资纠纷",
value: 9,
},
{
name: "特种设备",
value: 9,
},
],
detail:
" 宁波镇海兴达化工有限公司仓库由于易燃物品存储不当,导致易燃物品燃烧发生火灾。仓库值班人员立即启动火灾预案,组织仓库管理人员、巡逻人员和保安救火,由于火势较大,现场配备的灭火器、消防栓无法迅速扑灭。",
flow: "宁波市北越石化有限公司-人员流动-异常" + i,
flowType: "流动人员异常",
node: "治安大队",
remarks: "加强管理",
times: i + 1,
total: i + 5,
iszg: i % 3,
way: i % 3,
msg: i % 2,
deal: "人工反馈",
jj: i % 3,
qyName: "海兴达化工有限公司" + (i % 3),
sshs: "无",
zd: "重点人员",
mz: "汉",
school: ["职中", "高中", "大专"][i % 3],
wu: "",
you: "有",
pcs: "蛟川派出所",
quxian: "镇海区",
wyh: "新城管理委员会",
zdlb: [
"重要精神病",
"非防人员",
"退役重点人员",
"个人极端人员",
"家暴人员",
"前科人员",
][i % 6],
});
}
//console.log(this.dataSource);
}, },
//处理查询参数 //处理查询参数
getQueryParams() { getQueryParams() {
let param = {}; let param = {};
param.pageNo = this.ipagination.currentPage; //当前页码 param.pageNum = this.ipagination.currentPage; //当前页码
param.pageSize = this.ipagination.pageSize; //每页条数 param.pageSize = this.ipagination.pageSize; //每页条数
return param; return param;
}, },

@ -54,7 +54,7 @@
<div class="riskCol mr18"> <div class="riskCol mr18">
<div class="riskName"> <div class="riskName">
<div class="riskIcon"></div> <div class="riskIcon"></div>
<div class="riskNameText">动人口管理异常</div> <div class="riskNameText">人员管理异常</div>
</div> </div>
<div class="chartPanel"> <div class="chartPanel">
<lineThree :chartObj="tmlObj"></lineThree> <lineThree :chartObj="tmlObj"></lineThree>
@ -144,100 +144,40 @@ import barOne from "@/loveflow/components/echart/bar/one.vue";
import barTwo from "@/loveflow/components/echart/bar/two.vue"; import barTwo from "@/loveflow/components/echart/bar/two.vue";
import lineTwo from "@/loveflow/components/echart/line/two.vue"; import lineTwo from "@/loveflow/components/echart/line/two.vue";
import lineThree from "@/loveflow/components/echart/line/three.vue"; import lineThree from "@/loveflow/components/echart/line/three.vue";
import { groupByReduce } from "@/loveflow/util.js";
import {
enterpriseComprehensiveRisk,
abnormalFloatingPopulation,
personnelBackground,
keyPosition,
policeInvolvement,
zXDifference,
transportVehicleBj,
transportVehicleAnomaly,
transportVehicle,
unitInspection,
} from "@/api/enterpriseRiskIndex/abnormal/index.js";
export default { export default {
components: { barOne, barTwo, lineTwo, lineThree }, components: { barOne, barTwo, lineTwo, lineThree },
data() { data() {
return { return {
curTime: "day", curTime: "day",
dataList: [
[
{
name: "流动人口管理异常",
value: 13211,
icon: require("@/assets/images/screen/11.png"),
},
{
name: "人员背景审核异常分析",
value: 2321,
icon: require("@/assets/images/screen/12.png"),
},
{
name: "重点岗位资质核查异常分析",
value: 3321,
icon: require("@/assets/images/screen/13.png"),
},
],
[
{
name: "人员涉警(案)情况异常分析",
value: 1321,
icon: require("@/assets/images/screen/21.png"),
},
{
name: "装卸量差异分析",
value: 2329,
icon: require("@/assets/images/screen/22.png"),
},
{
name: "运输车辆背景异常分析",
value: 2341,
icon: require("@/assets/images/screen/23.png"),
},
],
[
{
name: "运输车辆异常预警",
value: 12431,
icon: require("@/assets/images/screen/31.png"),
},
{
name: "驾驶员押运员资质异常分析",
value: 2134,
icon: require("@/assets/images/screen/32.png"),
},
{
name: "单位检查情况异常分析",
value: 879,
icon: require("@/assets/images/screen/33.png"),
},
],
],
total: { total: {
name: "今日企业风险项量", name: "今日企业风险项量",
value: 7, value: 0,
}, },
tlObj: { tlObj: {
gridLeft: "8%", gridLeft: "8%",
xData: [ xData: [],
"人员安全", yData: [],
"危化品运输", list: [],
"防攻击管理",
"消防安全",
"列管物品",
"道路安全",
"内部治安",
"网络安全",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12],
name: "风险标签排行", name: "风险标签排行",
}, },
tmlObj: { tmlObj: {
xData: [ xData: [],
"1月", yData: [],
"2月", name: "流口人员管理异常",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "流动人口管理异常",
color: [ color: [
"rgba(20,246,62,0.5)", "rgba(20,246,62,0.5)",
"rgba(30,147,255,0)", "rgba(30,147,255,0)",
@ -246,21 +186,8 @@ export default {
], ],
}, },
tmmObj: { tmmObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "人员背景审核异常分析", name: "人员背景审核异常分析",
color: [ color: [
"rgba(20,246,62,0.5)", "rgba(20,246,62,0.5)",
@ -270,21 +197,8 @@ export default {
], ],
}, },
tmrObj: { tmrObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "重点岗位资质核查异常分析", name: "重点岗位资质核查异常分析",
color: [ color: [
"rgba(20,246,62,0.5)", "rgba(20,246,62,0.5)",
@ -295,21 +209,8 @@ export default {
}, },
mtlObj: { mtlObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "人员涉警(案)情况异常分析", name: "人员涉警(案)情况异常分析",
color: [ color: [
"rgba(255,193,77,0.9)", "rgba(255,193,77,0.9)",
@ -318,21 +219,8 @@ export default {
], ],
}, },
mtmObj: { mtmObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "装卸量差异分析", name: "装卸量差异分析",
color: [ color: [
"rgba(255,193,77,0.9)", "rgba(255,193,77,0.9)",
@ -341,21 +229,8 @@ export default {
], ],
}, },
mtrObj: { mtrObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "运输车辆背景异常分析", name: "运输车辆背景异常分析",
color: [ color: [
"rgba(255,193,77,0.9)", "rgba(255,193,77,0.9)",
@ -364,80 +239,230 @@ export default {
], ],
}, },
mlObj: { mlObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "运输车辆异常预警", name: "运输车辆异常预警",
}, },
mmObj: { mmObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "驾驶员押运员资质异常分析", name: "驾驶员押运员资质异常分析",
}, },
mrObj: { mrObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [12, 11, 13, 14, 15, 11, 14, 12, 15, 11, 12, 13],
name: "单位检查情况异常分析", name: "单位检查情况异常分析",
}, },
dataList: [
[
{
name: "流口人员管理异常",
value: 0,
icon: require("@/assets/images/screen/11.png"),
},
{
name: "人员背景审核异常分析",
value: 0,
icon: require("@/assets/images/screen/12.png"),
},
{
name: "重点岗位资质核查异常分析",
value: 0,
icon: require("@/assets/images/screen/13.png"),
},
],
[
{
name: "人员涉警(案)情况异常分析",
value: 0,
icon: require("@/assets/images/screen/21.png"),
},
{
name: "装卸量差异分析",
value: 0,
icon: require("@/assets/images/screen/22.png"),
},
{
name: "运输车辆背景异常分析",
value: 0,
icon: require("@/assets/images/screen/23.png"),
},
],
[
{
name: "运输车辆异常预警",
value: 0,
icon: require("@/assets/images/screen/31.png"),
},
{
name: "驾驶员押运员资质异常分析",
value: 0,
icon: require("@/assets/images/screen/32.png"),
},
{
name: "单位检查情况异常分析",
value: 0,
icon: require("@/assets/images/screen/33.png"),
},
],
],
}; };
}, },
mounted() {
this.getData();
},
methods: { methods: {
changeTime(val) { changeTime(val) {
this.curTime = val; this.curTime = val;
this.tlObj.yData = [];
this.tlObj.xData = [];
let list = [];
if (val == "day") { if (val == "day") {
this.total.value = 7;
this.total.name = "今日企业风险项量"; this.total.name = "今日企业风险项量";
this.tlObj.yData = [12, 11, 13, 14, 15, 11, 14, 12]; list = this.tlObj.list[0];
} }
if (val == "month") { if (val == "month") {
this.total.value = 23;
this.total.name = "近三月企业风险项量"; this.total.name = "近三月企业风险项量";
this.tlObj.yData = [341, 314, 411, 531, 461, 288, 189, 351]; list = this.tlObj.list[1];
} }
if (val == "year") { if (val == "year") {
this.total.value = 91;
this.total.name = "本年度企业风险项量"; this.total.name = "本年度企业风险项量";
this.tlObj.yData = [1312, 1231, 1253, 1456, 1327, 1571, 1468, 1278]; list = this.tlObj.list[2];
}
for (let i = 0; i < list.length; i++) {
if (list[i]["riskName"] == "企业风险项量") {
this.total.value = list[i]["score"];
} else {
this.tlObj.yData.push(list[i]["score"]);
let name = list[i]["riskName"].replace(/异常分析/, "");
name = name.replace(/异常/, "");
this.tlObj.xData.push(name);
}
} }
}, },
getData() {
enterpriseComprehensiveRisk().then((res) => {
if (res.code == 200) {
let data = res.data || [];
this.tlObj.list = data;
this.changeTime("day");
}
});
abnormalFloatingPopulation().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.tmlObj.xData.push(list[i]["month"] + "月");
this.tmlObj.yData.push(list[i]["score"]);
}
this.dataList[0][0]["value"] = total;
}
});
personnelBackground().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.tmmObj.xData.push(list[i]["month"] + "月");
this.tmmObj.yData.push(list[i]["score"]);
}
this.dataList[0][1]["value"] = total;
}
});
keyPosition().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.tmrObj.xData.push(list[i]["month"] + "月");
this.tmrObj.yData.push(list[i]["score"]);
}
this.dataList[0][2]["value"] = total;
}
});
policeInvolvement().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.mtlObj.xData.push(list[i]["month"] + "月");
this.mtlObj.yData.push(list[i]["score"]);
}
this.dataList[1][0]["value"] = total;
}
});
zXDifference().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.mtmObj.xData.push(list[i]["month"] + "月");
this.mtmObj.yData.push(list[i]["score"]);
}
this.dataList[1][1]["value"] = total;
}
});
transportVehicleBj().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.mtrObj.xData.push(list[i]["month"] + "月");
this.mtrObj.yData.push(list[i]["score"]);
}
this.dataList[1][2]["value"] = total;
}
});
transportVehicleAnomaly().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.mlObj.xData.push(list[i]["month"] + "月");
this.mlObj.yData.push(list[i]["score"]);
}
this.dataList[2][0]["value"] = total;
}
});
transportVehicle().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.mmObj.xData.push(list[i]["month"] + "月");
this.mmObj.yData.push(list[i]["score"]);
}
this.dataList[2][1]["value"] = total;
}
});
unitInspection().then((res) => {
if (res.code == 200) {
let list = res.data || [];
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.mrObj.xData.push(list[i]["month"] + "月");
this.mrObj.yData.push(list[i]["score"]);
}
this.dataList[2][2]["value"] = total;
}
});
},
}, },
}; };
</script> </script>

@ -44,7 +44,7 @@
<div class="riskIcon"></div> <div class="riskIcon"></div>
<div class="riskNameText">异常风险项得分占比</div> <div class="riskNameText">异常风险项得分占比</div>
</div> </div>
<div class="chartPanel flex-center" v-if="show"> <div class="chartPanel flex-center">
<dPie :chartObj="trObj"></dPie> <dPie :chartObj="trObj"></dPie>
</div> </div>
</div> </div>
@ -101,19 +101,12 @@ export default {
components: { barOne, lineOne, barThree, dPie }, components: { barOne, lineOne, barThree, dPie },
data() { data() {
return { return {
curTime: "day", curTime: "",
tlObj: { tlObj: {
xData: [ xData: [],
"流动人员", yData: [],
"重点人员",
"违章事故",
"源头检查",
"企业整改",
"危险化学品",
"民爆物品",
],
yData: [3, 4, 3, 1, 3, 4, 2],
name: "风险监测项评分排行", name: "风险监测项评分排行",
list: [],
}, },
trObj: {}, trObj: {},
tmObj: { tmObj: {
@ -142,33 +135,10 @@ export default {
name: "风险标签排行", name: "风险标签排行",
}, },
bmObj: { bmObj: {
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [
[317, 412, 298, 487, 312, 512, 397, 226, 275, 309, 292, 479],
[517, 512, 698, 587, 412, 712, 597, 426, 475, 509, 392, 379],
[981, 871, 698, 569, 1001, 872, 786, 659, 819, 797, 931, 769],
[801, 987, 1021, 1056, 1301, 1109, 982, 891, 1201, 1118, 1292, 1101],
],
name: "风险总量分析变化趋势图", name: "风险总量分析变化趋势图",
legend: [ legend: [],
"企业风险总量",
"企业风险标签总量",
"企业风险得分",
"风险预警提醒总量",
],
color: [ color: [
["#09C8F5", "rgba(9,200,245,0.1)", "rgba(9,200,245,0.1)"], ["#09C8F5", "rgba(9,200,245,0.1)", "rgba(9,200,245,0.1)"],
["#48EEBD", "rgba(72,238,189,0.1)", "rgba(72,238,189,0.1)"], ["#48EEBD", "rgba(72,238,189,0.1)", "rgba(72,238,189,0.1)"],
@ -197,37 +167,52 @@ export default {
], ],
name: "风险标签排行", name: "风险标签排行",
}, },
show: false,
}; };
}, },
mounted() { mounted() {
this.show = true;
this.getData(); this.getData();
}, },
methods: { methods: {
changeTime(val) { changeTime(val) {
this.curTime = val; this.curTime = val;
if (this.tlObj.list.length < 2) {
return;
}
this.tlObj.yData = [];
this.tlObj.xData = [];
let list = [];
if (val == "day") { if (val == "day") {
this.tlObj.yData = [3, 4, 3, 1, 3, 4, 2]; list = this.tlObj.list[0];
} }
if (val == "month") { if (val == "month") {
this.tlObj.yData = [90, 120, 98, 76, 102, 132, 111]; list = this.tlObj.list[1];
} }
if (val == "year") { if (val == "year") {
this.tlObj.yData = [360, 481, 398, 312, 401, 512, 437]; list = this.tlObj.list[2];
}
for (let i = 0; i < list.length; i++) {
this.tlObj.yData.push(list[i]["score"]);
this.tlObj.xData.push(list[i]["riskName"]);
} }
}, },
//api //api
getData() { getData() {
riskDetection().then((res) => {}); riskDetection().then((res) => {
if (res.code == 200) {
let data = res.data || [];
this.tlObj.list = data;
this.changeTime("day");
}
});
riskLabelRanking().then((res) => {}); riskLabelRanking().then((res) => {});
frequentChangeRisk().then((res) => { frequentChangeRisk().then((res) => {
if (res.code == 200) { if (res.code == 200) {
let data = res.data || []; let data = res.data || [];
console.log(data);
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
if (!this.tmObj.xData.includes(data[i]["month"] + "月")) { if (!this.tmObj.xData.includes(data[i]["month"] + "月")) {
this.tmObj.xData.push(data[i]["month"] + "月"); this.tmObj.xData.push(data[i]["month"] + "月");
@ -236,18 +221,31 @@ export default {
this.tmObj.legend.push(data[i]["riskName"]); this.tmObj.legend.push(data[i]["riskName"]);
} }
} }
let temp = groupByReduce(data, "riskName", "score"); let temp = groupByReduce(data, "riskName", "score");
console.log(temp);
for (let i = 0; i < this.tmObj.legend.length; i++) { for (let i = 0; i < this.tmObj.legend.length; i++) {
this.tmObj.yData.push(temp[this.tmObj.legend[i]]); this.tmObj.yData.push(temp[this.tmObj.legend[i]]);
} }
} }
}); });
aggregateRiskAnalysis().then((res) => {}); aggregateRiskAnalysis().then((res) => {
if (res.code == 200) {
let data = res.data || [];
console.log(data);
for (let i = 0; i < data.length; i++) {
if (!this.bmObj.xData.includes(data[i]["month"] + "月")) {
this.bmObj.xData.push(data[i]["month"] + "月");
}
if (!this.bmObj.legend.includes(data[i]["riskName"])) {
this.bmObj.legend.push(data[i]["riskName"]);
}
}
let temp = groupByReduce(data, "riskName", "score");
for (let i = 0; i < this.bmObj.legend.length; i++) {
this.bmObj.yData.push(temp[this.bmObj.legend[i]]);
}
}
});
riskItemScore().then((res) => {}); riskItemScore().then((res) => {});

@ -1,7 +1,7 @@
<template> <template>
<div class="tableCardWrap"> <div class="tableCardWrap">
<div class="cardRow"> <div class="cardRow">
<div class="title">{{ dataObj.title }}</div> <div class="title">{{ dataObj.periodical }}</div>
</div> </div>
<div class="cardRow"> <div class="cardRow">
<div class="cardCol"> <div class="cardCol">

@ -26,30 +26,27 @@ import topicMain from "./components/topicMain.vue";
import tableCard from "./components/tableCard.vue"; import tableCard from "./components/tableCard.vue";
import { tableListMixins } from "@/loveflow/mixins/tableListMixins"; import { tableListMixins } from "@/loveflow/mixins/tableListMixins";
import { queryListDetails } from "@/api/enterpriseRiskIndex/estimate/index.js";
export default { export default {
components: { topicMain, tableCard }, components: { topicMain, tableCard },
mixins: [tableListMixins], mixins: [tableListMixins],
data() { data() {
return { return {
disableMixinCreated: true,
columns: [ columns: [
{ {
prop: "id", prop: "id",
label: "序号", label: "序号",
}, },
], ],
url: {
list: "/ThematicEvaluationController/QueryList",
},
}; };
}, },
created() { created() {},
for (let i = 0; i < 10; i++) { mounted() {
this.dataSource.push({ this.getData();
id: i,
title: "[20240213]平安企业风险评估报告" + i,
creator: "张雅玫",
model: "通用模板",
createTime: "2024-2-24 12:12:58",
});
}
}, },
methods: { methods: {
checkDetail(item) { checkDetail(item) {
@ -59,6 +56,15 @@ export default {
query: item, query: item,
}); });
}, },
getData() {
queryListDetails({ companyBusinessRiskId: 4 }).then((res) => {
if (res.code == 200) {
let data = res.data || [];
console.log(data);
}
});
},
}, },
}; };
</script> </script>

@ -163,6 +163,17 @@ import leftCard from "./components/leftCard.vue";
import rightCard from "./components/rightCard.vue"; import rightCard from "./components/rightCard.vue";
import totalCard from "./components/totalCard.vue"; import totalCard from "./components/totalCard.vue";
import {
enterpriseComprehensiveRisk,
tendencyChart,
ventureBusiness,
riskEarlyWarning,
variationTrend,
growthTrend,
} from "@/api/enterpriseRiskIndex/synthetical/index.js";
import { groupByReduce } from "@/loveflow/util.js";
export default { export default {
components: { components: {
barOne, barOne,
@ -244,51 +255,18 @@ export default {
blObj: { blObj: {
height: 0, height: 0,
color: ["#2B82F3", "#FFD16A", "#48EEBD", "#FF745A"], color: ["#2B82F3", "#FFD16A", "#48EEBD", "#FF745A"],
data: [ data: [],
{ value: 1048, name: "重点人员预警" }, list: [],
{ value: 735, name: "企业整改预警" },
{ value: 580, name: "流动人员预警" },
{ value: 484, name: "其他" },
],
name: "全区企业风险预警总量", name: "全区企业风险预警总量",
}, },
bmObj: { bmObj: {
gridTop: "25%", gridTop: "25%",
legendTop: "12%", legendTop: "12%",
gridLeft: "8%", gridLeft: "8%",
xData: [ xData: [],
"1月", yData: [],
"2月",
"3月",
"4月",
"5月",
"6月",
"7月",
"8月",
"9月",
"10月",
"11月",
"12月",
],
yData: [
[8, 3, 1, 11, 9, 7, 8, 12, 5, 9, 12, 3],
[1, 7, 2, 9, 4, 10, 7, 3, 1, 11, 5, 8],
[4, 3, 1, 11, 9, 7, 8, 12, 5, 9, 6, 2],
[2, 11, 7, 8, 3, 11, 9, 11, 7, 1, 2, 1],
[3, 9, 1, 11, 11, 6, 9, 9, 4, 7, 8, 3],
[9, 6, 1, 11, 12, 8, 11, 6, 4, 6, 1, 7],
[5, 3, 11, 7, 3, 9, 1, 2, 8, 4, 1, 4],
],
name: "全区企业风险标签数量变化趋势", name: "全区企业风险标签数量变化趋势",
legend: [ legend: [],
"澥浦镇",
"九龙湖镇",
"照宝山街道",
"蛟川街道",
"骆驼街道",
"贵驷街道",
"庄市街道",
],
color: [ color: [
["#09C8F5", "rgba(9,200,245,0.1)", "rgba(9,200,245,0.1)"], ["#09C8F5", "rgba(9,200,245,0.1)", "rgba(9,200,245,0.1)"],
["#48EEBD", "rgba(72,238,189,0.1)", "rgba(72,238,189,0.1)"], ["#48EEBD", "rgba(72,238,189,0.1)", "rgba(72,238,189,0.1)"],
@ -298,6 +276,7 @@ export default {
["#B276FF", "rgba(178,118,255,0.1)", "rgba(178,118,255,0.1)"], ["#B276FF", "rgba(178,118,255,0.1)", "rgba(178,118,255,0.1)"],
["#FF6AEE", "rgba(255,106,238,0.1)", "rgba(255,106,238,0.1)"], ["#FF6AEE", "rgba(255,106,238,0.1)", "rgba(255,106,238,0.1)"],
], ],
list: [],
}, },
trObj: { trObj: {
color: [ color: [
@ -322,8 +301,47 @@ export default {
}, },
}; };
}, },
mounted() {}, mounted() {
this.getData();
},
methods: { methods: {
getData() {
enterpriseComprehensiveRisk().then((res) => {
if (res.code == 200) {
let data = res.data || [];
}
});
tendencyChart().then((res) => {
if (res.code == 200) {
let data = res.data || [];
}
});
ventureBusiness().then((res) => {
if (res.code == 200) {
let data = res.data || [];
}
});
riskEarlyWarning().then((res) => {
if (res.code == 200) {
let data = res.data || [];
this.blObj.list = data;
this.blTime("day");
}
});
variationTrend().then((res) => {
if (res.code == 200) {
let data = res.data || [];
this.bmObj.list = data;
this.bmTime("day");
}
});
growthTrend().then((res) => {
if (res.code == 200) {
let data = res.data || [];
}
});
},
tmTime(val) { tmTime(val) {
if (val == "day") { if (val == "day") {
this.leftData.value = 78; this.leftData.value = 78;
@ -362,73 +380,64 @@ export default {
} }
}, },
blTime(val) { blTime(val) {
if (this.blObj.list.length < 2) {
return;
}
console.log(val)
this.blObj.data = [];
let list = [];
if (val == "day") { if (val == "day") {
this.totalData.value = 7;
this.totalData.name = "今日企业风险项量"; this.totalData.name = "今日企业风险项量";
list = this.blObj.list[0];
} }
if (val == "month") { if (val == "month") {
this.totalData.value = 23;
this.totalData.name = "近三月企业风险项量"; this.totalData.name = "近三月企业风险项量";
list = this.blObj.list[1];
} }
if (val == "year") { if (val == "year") {
this.totalData.value = 91;
this.totalData.name = "本年度企业风险项量"; this.totalData.name = "本年度企业风险项量";
list = this.blObj.list[2];
}
let total = 0;
for (let i = 0; i < list.length; i++) {
total = total + list[i]["score"];
this.blObj.data.push({
name: list[i]["riskName"],
value: list[i]["score"],
});
} }
this.totalData.value = total;
}, },
bmTime(val) { bmTime(val) {
if (this.bmObj.list.length < 2) {
return;
}
this.bmObj.yData = [];
this.bmObj.xData = [];
this.bmObj.legend = [];
let data = [];
if (val == "day") { if (val == "day") {
this.bmObj.yData = [ data = this.bmObj.list[0];
[8, 3, 1, 11, 9, 7, 8, 12, 5, 9, 12, 3],
[1, 7, 2, 9, 4, 10, 7, 3, 1, 11, 5, 8],
[4, 3, 1, 11, 9, 7, 8, 12, 5, 9, 6, 2],
[2, 11, 7, 8, 3, 11, 9, 11, 7, 1, 2, 1],
[3, 9, 1, 11, 11, 6, 9, 9, 4, 7, 8, 3],
[9, 6, 1, 11, 12, 8, 11, 6, 4, 6, 1, 7],
[5, 3, 11, 7, 3, 9, 1, 2, 8, 4, 1, 4],
];
} }
if (val == "month") { if (val == "month") {
this.bmObj.yData = [ data = this.bmObj.list[1];
[618, 711, 678, 811, 671, 812, 734, 597, 638, 712, 812, 768],
[698, 811, 671, 768, 812, 712, 638, 597, 711, 734, 878, 638],
[811, 671, 618, 734, 597, 812, 761, 768, 638, 597, 812, 712],
[671, 734, 811, 711, 618, 768, 671, 712, 768, 690, 638, 798],
[812, 671, 711, 812, 679, 638, 763, 768, 597, 871, 711, 567],
[734, 812, 618, 811, 638, 671, 712, 597, 812, 638, 638, 654],
[812, 811, 597, 711, 811, 618, 734, 638, 812, 712, 897, 638],
];
} }
if (val == "year") { if (val == "year") {
this.bmObj.yData = [ data = this.bmObj.list[2];
[ }
2618, 2711, 2678, 1811, 2671, 2812, 1734, 2597, 2638, 2712, 1812,
2768, for (let i = 0; i < data.length; i++) {
], if (!this.bmObj.xData.includes(data[i]["month"] + "月")) {
[ this.bmObj.xData.push(data[i]["month"] + "月");
2698, 2811, 2671, 1768, 2812, 2712, 2638, 1597, 2711, 1734, 2878, }
2638, if (!this.bmObj.legend.includes(data[i]["riskName"])) {
], this.bmObj.legend.push(data[i]["riskName"]);
[ }
1811, 2671, 2618, 2734, 2597, 2812, 2761, 2768, 1638, 1597, 2812, }
2712, let temp = groupByReduce(data, "riskName", "score");
], for (let i = 0; i < this.bmObj.legend.length; i++) {
[ this.bmObj.yData.push(temp[this.bmObj.legend[i]]);
2671, 2734, 2811, 1711, 2618, 2768, 2671, 1712, 2768, 2690, 1638,
2798,
],
[
1812, 2671, 2711, 2812, 2679, 2638, 1763, 2768, 2597, 2871, 2711,
2567,
],
[
2734, 1812, 2618, 2811, 2638, 1671, 2712, 2597, 2812, 2638, 2638,
2654,
],
[
2812, 2811, 1597, 2711, 2811, 2618, 2734, 2638, 2812, 2712, 2897,
2638,
],
];
} }
}, },
}, },

@ -30,35 +30,21 @@
import * as echarts from "echarts"; import * as echarts from "echarts";
import "echarts-gl"; import "echarts-gl";
export default { export default {
props: {
data: {
type: Array,
default: () => {
return [];
},
},
},
data() { data() {
return { return {
fontSize: 12, fontSize: 12,
data: [
{
name: "资质正常企业数",
value: 128,
itemStyle: {
color: "#2B82F3",
},
},
{
name: "资质异常企业数",
value: 86,
itemStyle: {
color: "#E15A4E",
},
},
],
total: 1,
viewH: 1, viewH: 1,
}; };
}, },
mounted() { mounted() {
this.total = 1;
for (let i = 0; i < this.data.length; i++) {
this.total += this.data[i].value;
}
let temp = this.getHeight(); let temp = this.getHeight();
let height = parseInt(temp / 3); let height = parseInt(temp / 3);
this.viewH = 2 * height; this.viewH = 2 * height;

@ -30,43 +30,22 @@
import * as echarts from "echarts"; import * as echarts from "echarts";
import "echarts-gl"; import "echarts-gl";
export default { export default {
props: {
data: {
type: Array,
default: () => {
return [];
},
},
},
data() { data() {
return { return {
fontSize: 12, fontSize: 12,
data: [
{
name: "竞技体育用枪",
value: 128,
itemStyle: {
color: "#2B82F3",
},
},
{
name: "商业设计馆枪支",
value: 86,
itemStyle: {
color: "#FFD16A",
},
},
{
name: "猎枪",
value: 56,
itemStyle: {
color: "#48EEBD",
},
},
],
total: 1,
viewH: 1, viewH: 1,
}; };
}, },
created() {}, created() {},
mounted() { mounted() {
this.total = 1;
for (let i = 0; i < this.data.length; i++) {
this.total += this.data[i].value;
}
let temp = this.getHeight(); let temp = this.getHeight();
let height = parseInt(temp / 3); let height = parseInt(temp / 3);
this.viewH = 2 * height; this.viewH = 2 * height;
@ -93,7 +72,7 @@ export default {
let sumValue = 0; let sumValue = 0;
let startValue = 0; let startValue = 0;
let endValue = 0; let endValue = 0;
let k = 1 / 5; let k = 1 / 6;
pieData.sort((a, b) => { pieData.sort((a, b) => {
return b.value - a.value; return b.value - a.value;
}); });
@ -116,7 +95,7 @@ export default {
hovered: false, hovered: false,
k: k, k: k,
}, },
radius: "90%", radius: "70%",
center: ["50%", "50%"], center: ["50%", "50%"],
}; };
@ -179,7 +158,7 @@ export default {
viewControl: { viewControl: {
//3d //3d
alpha: 24, // alpha: 24, //
distance: 120, //zoom distance: 140, //zoom
rotateSensitivity: 0, //0 rotateSensitivity: 0, //0
zoomSensitivity: 0, //0 zoomSensitivity: 0, //0
panSensitivity: 0, //0 panSensitivity: 0, //0
@ -196,7 +175,7 @@ export default {
series.sort((a, b) => { series.sort((a, b) => {
return b.pieData.value - a.pieData.value; return b.pieData.value - a.pieData.value;
}); });
return (height * 50) / series[0].pieData.value; return (height * 40) / series[0].pieData.value;
}; };
// series-surface.parametricEquation // series-surface.parametricEquation

@ -57,7 +57,7 @@ export default {
}, },
}, },
{ {
value: 20, value: 4,
name: "", name: "",
itemStyle: { itemStyle: {
normal: { normal: {

@ -34,8 +34,6 @@ export default {
if (height > 40) { if (height > 40) {
this.fontSize = 12; this.fontSize = 12;
} }
let point = this.chartObj.point; //
let total = this.chartObj.total;
this.option = { this.option = {
title: { title: {
// //
@ -95,7 +93,7 @@ export default {
center: ["50%", "45%"], center: ["50%", "45%"],
data: [ data: [
{ {
value: (point / total) * 100, value: this.chartObj.value,
itemStyle: { itemStyle: {
normal: { normal: {
borderRadius: 15, // borderRadius: 15, //
@ -117,7 +115,7 @@ export default {
}, },
}, },
{ {
value: (point / total) * 100, // value: this.chartObj.value, //
itemStyle: { itemStyle: {
normal: { normal: {
borderRadius: 15, // borderRadius: 15, //

@ -23,8 +23,6 @@ export default {
}, },
methods: { methods: {
setOption() { setOption() {
let point = this.chartObj.point; //
let total = this.chartObj.total;
this.option = { this.option = {
title: { title: {
// //
@ -84,7 +82,7 @@ export default {
center: ["50%", "50%"], center: ["50%", "50%"],
data: [ data: [
{ {
value: (point / total) * 100 * 0.8, value: this.chartObj.value,
itemStyle: { itemStyle: {
normal: { normal: {
borderRadius: 15, // borderRadius: 15, //
@ -106,7 +104,7 @@ export default {
}, },
}, },
{ {
value: ((total - point) / total) * 100 * 0.8, // value: this.chartObj.value, //
itemStyle: { itemStyle: {
normal: { normal: {
borderRadius: 15, // borderRadius: 15, //

@ -77,7 +77,7 @@ export default {
], ],
label: { label: {
position: "center", position: "center",
formatter: ((100 * point) / total).toFixed(0) + "%", formatter: ((100 * point) / total).toFixed(1) + "%",
color: this.chartObj.color[0], color: this.chartObj.color[0],
fontSize: 12, fontSize: 12,
}, },
@ -94,7 +94,7 @@ export default {
avoidLabelOverlap: true, // avoidLabelOverlap: true, //
data: [ data: [
{ {
value: total, value: point,
itemStyle: { itemStyle: {
borderRadius: 15, // borderRadius: 15, //
color: { color: {
@ -113,7 +113,6 @@ export default {
}, },
}, },
}, },
{ {
value: total, // value: total, //
itemStyle: { itemStyle: {

@ -28,7 +28,7 @@ export default {
setOption() { setOption() {
let temp = this.getHeight(); let temp = this.getHeight();
let height = parseInt(temp / 4); let height = parseInt(temp / 4);
console.log(height); //console.log(height);
this.fontSize = 12; this.fontSize = 12;
if (height < 30) { if (height < 30) {
this.fontSize = 8; this.fontSize = 8;
@ -36,6 +36,7 @@ export default {
if (height > 40) { if (height > 40) {
this.fontSize = 14; this.fontSize = 14;
} }
let total = 0; let total = 0;
let data = []; let data = [];
let barChartList = this.chartObj.data; let barChartList = this.chartObj.data;
@ -54,7 +55,7 @@ export default {
}, },
}, },
{ {
value: 20, value: 4,
name: "", name: "",
itemStyle: { itemStyle: {
normal: { normal: {

@ -5,25 +5,25 @@
<div class="line"> <div class="line">
<div class="item"> <div class="item">
<div class="label">预警类型</div> <div class="label">预警类型</div>
<div class="value">{{ item.carAlarm }}</div> <div class="value">{{ item.accidentType }}</div>
</div> </div>
<div class="item"> <div class="item">
<div class="label">车牌</div> <div class="label">车牌</div>
<div class="value">{{ item.car }}</div> <div class="value">{{ item.licensePlate }}</div>
</div> </div>
<div class="item" style="flex: 1.5"> <div class="item" style="flex: 1.5">
<div class="label">预警时间</div> <div class="label">预警时间</div>
<div class="value">{{ item.time }}</div> <div class="value">{{ item.startTime }}</div>
</div> </div>
</div> </div>
<div class="line"> <div class="line">
<div class="item" style="flex: 1.32"> <div class="item" style="flex: 1.32">
<div class="label">关联企业</div> <div class="label">关联企业</div>
<div class="value">{{ item.cmy }}</div> <div class="value">{{ item.affiliatedCompany }}</div>
</div> </div>
<div class="item"> <div class="item">
<div class="label">关联驾驶员</div> <div class="label">关联驾驶员</div>
<div class="value">{{ item.name }}</div> <div class="value">{{ item.driver }}</div>
</div> </div>
</div> </div>
</div> </div>
@ -35,7 +35,7 @@
:tableData="dataSource" :tableData="dataSource"
:columns="column" :columns="column"
rowKey="id" rowKey="id"
:pagination="ipagination" :pagination="false"
@pageSizeChange="handlePageSizeChange" @pageSizeChange="handlePageSizeChange"
@currentPageChange="handleCurrentPageChange" @currentPageChange="handleCurrentPageChange"
> >
@ -57,12 +57,13 @@ export default {
}, },
], ],
disableMixinCreated: true, disableMixinCreated: true,
url: {
list: "special/vehicleDetail",
},
}; };
}, },
created() { created() {
this.ipagination.pageSize = 10; this.ipagination.pageSize = 10000;
this.ipagination.pageSizes = [];
this.ipagination.layout = "total, prev, pager, next";
this.loadData(); this.loadData();
}, },
}; };
@ -72,7 +73,7 @@ export default {
.loveflowscreen { .loveflowscreen {
height: 100%; height: 100%;
.tableCustomWrap { .tableCustomWrap {
height: calc(100% - 30px); height: calc(100% - 10px);
overflow: scroll; overflow: scroll;
&::-webkit-scrollbar { &::-webkit-scrollbar {
display: none; display: none;

@ -71,20 +71,14 @@
<div class="topCol"> <div class="topCol">
<subCol title="消防设施数据"> </subCol> <subCol title="消防设施数据"> </subCol>
<div class="xfssWrap"> <div class="xfssWrap">
<div class="item"> <div class="item" v-for="item in xfssList" :key="item.name">
<pieFour :chartObj="sbObj"></pieFour> <pieFour :chartObj="item"></pieFour>
</div>
<div class="item">
<pieFour :chartObj="pzObj"></pieFour>
</div>
<div class="item">
<pieFour :chartObj="byObj"></pieFour>
</div> </div>
</div> </div>
</div> </div>
<div class="topCol"> <div class="topCol">
<subCol title="企业台账数据"></subCol> <subCol title="企业台账数据"></subCol>
<dPieOne :chartObj="{}"></dPieOne> <dPieOne :data="qytzList"></dPieOne>
</div> </div>
<div class="midCol"> <div class="midCol">
<subCol title="消防制度执行"></subCol> <subCol title="消防制度执行"></subCol>
@ -172,7 +166,7 @@
> >
<colWrap title="防攻击管理"> <colWrap title="防攻击管理">
<div class="fgjWrap"> <div class="fgjWrap">
<div class="fgjItem" v-for="item in xfsjList" :key="item.name"> <div class="fgjItem" v-for="item in fgjList" :key="item.name">
<div class="item"> <div class="item">
<p-card :info="item"></p-card> <p-card :info="item"></p-card>
</div> </div>
@ -193,7 +187,7 @@
</div> </div>
<div class="rightCol"> <div class="rightCol">
<subCol title="民用枪支"></subCol> <subCol title="民用枪支"></subCol>
<dPieTwo :chartObj="{}"></dPieTwo> <dPieTwo :data="myqzList"></dPieTwo>
</div> </div>
</div> </div>
</colWrap> </colWrap>
@ -219,6 +213,23 @@ import lineOne from "@/loveflow/components/echart/line/one.vue";
import radarFour from "@/loveflow/components/echart/radar/four.vue"; import radarFour from "@/loveflow/components/echart/radar/four.vue";
import tableCustom from "./components/tableCustom.vue"; import tableCustom from "./components/tableCustom.vue";
import {
vehicleDetail,
cybersecurityrisk,
dangerousnum,
dangerousrun,
defenserisk,
firefighting,
firefightinggo,
firefightinggoods,
gun,
ledger,
peacemanage,
personnelrisk,
radiationmanage,
roadmanage,
} from "@/api/enterpriseTopic/index.js";
export default { export default {
components: { components: {
headWrap, headWrap,
@ -239,44 +250,12 @@ export default {
}, },
data() { data() {
return { return {
carNum: 19766, carNum: 0,
clwgObj: { clwgObj: {
indicator: [ indicator: [],
{ yData: [],
name: "异常",
max: 154,
},
{
name: "疲劳",
max: 135,
},
{
name: "超载",
max: 123,
},
{
name: "闯禁",
max: 213,
},
{
name: "车道",
max: 176,
},
{
name: "离线",
max: 134,
},
{
name: "超速",
max: 219,
},
],
yData: [12, 11, 13, 14, 15, 11, 14],
name: "车辆违规数", name: "车辆违规数",
}, },
tlObj: { tlObj: {
color: [ color: [
"#2B82F3", "#2B82F3",
@ -286,97 +265,86 @@ export default {
"#FF745A", "#FF745A",
"#FEF699", "#FEF699",
], ],
data: [ data: [],
{ value: 484, name: "普通岗位" },
{ value: 567, name: "重点岗位" },
{ value: 489, name: "专家人员" },
{ value: 512, name: "重点人员" },
{ value: 531, name: "企业访问人员" },
{ value: 317, name: "流动人员" },
],
name: "人员安全风险评估", name: "人员安全风险评估",
total: 0,
}, },
fsyObj: { fsyObj: {
color: ["#E4FEF0", "#2B82F3", "#66C3FF", "#FEF699"], color: ["#E4FEF0", "#2B82F3", "#66C3FF", "#FEF699"],
data: [ data: [],
{ value: 484, name: "存储" },
{ value: 567, name: "使用" },
{ value: 489, name: "运输" },
{ value: 512, name: "其他" },
],
name: "放射源物品", name: "放射源物品",
}, },
dlan1Obj: { dlan1Obj: {
name: "源头检查", name: "源头检查",
total: 340, total: 1,
point: 100, point: 0,
icon: require("@/assets/images/topic/pie1b.png"), icon: require("@/assets/images/topic/pie1b.png"),
color: ["#57F0FF", "#37A1CC", "#08FAC4"], color: ["#57F0FF", "#37A1CC", "#08FAC4"],
}, },
dlan2Obj: { dlan2Obj: {
name: "交通事故", name: "交通事故",
total: 340, total: 1,
point: 100, point: 0,
icon: require("@/assets/images/topic/pie2b.png"), icon: require("@/assets/images/topic/pie2b.png"),
color: ["#FFCE57", "#EB9104", "#FAC608"], color: ["#FFCE57", "#EB9104", "#FAC608"],
}, },
dlan3Obj: { dlan3Obj: {
name: "企业整改", name: "企业整改",
total: 340, total: 1,
point: 100, point: 0,
icon: require("@/assets/images/topic/pie4b.png"), icon: require("@/assets/images/topic/pie4b.png"),
color: ["#FFE3E3", "#FF2C2C", "#FF6D6D"], color: ["#FFE3E3", "#FF2C2C", "#FF6D6D"],
}, },
dlan4Obj: { dlan4Obj: {
name: "设施检查", name: "设施检查",
total: 340, total: 1,
point: 100, point: 0,
icon: require("@/assets/images/topic/pie1b.png"), icon: require("@/assets/images/topic/pie1b.png"),
color: ["#57F0FF", "#37A1CC", "#08FAC4"], color: ["#57F0FF", "#37A1CC", "#08FAC4"],
}, },
dlan5Obj: { dlan5Obj: {
name: "违章数据", name: "违章数据",
total: 340, total: 1,
point: 100, point: 0,
icon: require("@/assets/images/topic/pie1b.png"), icon: require("@/assets/images/topic/pie1b.png"),
color: ["#57F0FF", "#37A1CC", "#08FAC4"], color: ["#57F0FF", "#37A1CC", "#08FAC4"],
}, },
xfzdList: [ xfzdList: [
{ {
name: "人员培训率", name: "人员培训率",
value: "98%", value: 0,
icon: require("@/assets/images/topic/zlrypx.png"), icon: require("@/assets/images/topic/zlrypx.png"),
}, },
{ {
name: "演次数", name: "演次数",
value: "98次", value: 0,
icon: require("@/assets/images/topic/zlyxcs.png"), icon: require("@/assets/images/topic/zlyxcs.png"),
}, },
{ {
name: "专业知晓度", name: "专业知晓度",
value: "98%", value: 0,
icon: require("@/assets/images/topic/zlzyzx.png"), icon: require("@/assets/images/topic/zlzyzx.png"),
}, },
], ],
xfsjList: [ xfsjList: [
{ {
name: "火灾事故", name: "火灾事故",
value: "512", value: 0,
icon: require("@/assets/images/topic/zlhzsg.png"), icon: require("@/assets/images/topic/zlhzsg.png"),
}, },
{ {
name: "消防违", name: "消防违",
value: "568", value: 0,
icon: require("@/assets/images/topic/zlxfwg.png"), icon: require("@/assets/images/topic/zlxfwg.png"),
}, },
{ {
name: "协助补救", name: "协助补救",
value: "756", value: 0,
icon: require("@/assets/images/topic/zlxzbj.png"), icon: require("@/assets/images/topic/zlxzbj.png"),
}, },
{ {
name: "其他事故", name: "其他事故",
value: "1218", value: 0,
icon: require("@/assets/images/topic/zlqtsg.png"), icon: require("@/assets/images/topic/zlqtsg.png"),
}, },
], ],
@ -403,45 +371,18 @@ export default {
}, },
], ],
mlObj: { mlObj: {
data: [ data: [],
{ name: "漏洞整改", value: 123 },
{ name: "行政案件", value: 808 },
{ name: "重大网络安全事故", value: 703 },
{ name: "等保定级评审", value: 613 },
{ name: "网站应用系统备案", value: 933 },
{ name: "企业演习/培训", value: 613 },
],
color: ["#FFDE9C", "#0E9FF7"], color: ["#FFDE9C", "#0E9FF7"],
}, },
dwnbObj: { dwnbObj: {
data: [ data: [],
{ name: "应急预案", value: 123 },
{ name: "人防设施", value: 808 },
{ name: "技防设施", value: 703 },
{ name: "物防设施", value: 613 },
],
color: ["#FFDE9C", "#0E9FF7"], color: ["#FFDE9C", "#0E9FF7"],
}, },
bmjcLeft: { bmjcLeft: {
total: 300, value: 0,
point: 120,
name: "安全指数", name: "安全指数",
}, },
sbObj: { xfssList: [],
total: 300,
point: 120,
name: "设备录入率",
},
pzObj: {
total: 300,
point: 150,
name: "配置完成率",
},
byObj: {
total: 200,
point: 120,
name: "日常保养及时率",
},
brlObj: { brlObj: {
gridLeft: "10%", gridLeft: "10%",
gridBtm: "15%", gridBtm: "15%",
@ -458,31 +399,284 @@ export default {
["#6EF59E", "rgba(110,245,158,0.4)", "rgba(110,245,158,0.1)"], ["#6EF59E", "rgba(110,245,158,0.4)", "rgba(110,245,158,0.1)"],
], ],
}, },
wxlList: [ wxlList: [],
qytzList: [
{ {
name: "源头检查", name: "资质正常企业数",
value: 2000, value: 0,
itemStyle: {
color: "#2B82F3",
},
}, },
{ {
name: "违章数据", name: "资质异常企业数",
value: 2000, value: 0,
itemStyle: {
color: "#E15A4E",
},
}, },
],
myqzList: [
{ {
name: "交通事故", name: "竞技体育用枪",
value: 2000, value: 0,
itemStyle: {
color: "#2B82F3",
},
}, },
{ {
name: "企业整改", name: "商业设计馆枪支",
value: 2000, value: 0,
itemStyle: {
color: "#FFD16A",
},
}, },
{ {
name: "交通检查", name: "猎枪",
value: 2000, value: 0,
itemStyle: {
color: "#48EEBD",
},
}, },
], ],
}; };
}, },
mounted() {
this.getData();
},
methods: { methods: {
getData() {
cybersecurityrisk().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.mlObj.data = [];
Object.keys(data).forEach((key) => {
this.mlObj.data.push({
name: key,
value: data[key],
});
});
}
});
dangerousnum().then((res) => {
if (res.code == 200) {
let data = res.data || {};
let list = [];
Object.keys(data).forEach((key) => {
list.push({
name: key,
value: data[key],
});
});
let maxValue = Math.max.apply(
Math,
list.map((item) => {
return item.value;
})
);
for (let i = 0; i < list.length; i++) {
let name = list[i]["name"];
if (name == "未按车道行驶") {
name = "未按车道";
}
if (name == "车辆异常驻留") {
name = "异常驻留";
}
this.clwgObj.indicator.push({
name: name,
max: maxValue,
});
this.clwgObj.yData.push(list[i]["value"]);
}
console.log(this.clwgObj);
}
});
dangerousrun().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.wxlList = [];
this.carNum = 0;
Object.keys(data).forEach((key) => {
this.wxlList.push({
name: key,
value: data[key],
});
this.carNum += data[key];
});
}
});
defenserisk().then((res) => {
if (res.code == 200) {
let data = res.data || {};
Object.keys(data).forEach((key) => {
if (key == "防攻击检查异常数据") {
this.fgjList[0]["value"] = data[key];
}
if (key == "技防数据异常") {
this.fgjList[1]["value"] = data[key];
}
if (key == "人防数据异常") {
this.fgjList[2]["value"] = data[key];
}
if (key == "物防数据异常") {
this.fgjList[3]["value"] = data[key];
}
});
}
});
firefighting().then((res) => {
if (res.code == 200) {
let data = res.data || {};
Object.keys(data).forEach((key) => {
if (key == "火灾事故") {
this.xfsjList[0]["value"] = data[key];
}
if (key == "消防违建") {
this.xfsjList[1]["value"] = data[key];
}
if (key == "协助扑救") {
this.xfsjList[2]["value"] = data[key];
}
if (key == "其他事故") {
this.xfsjList[3]["value"] = data[key];
}
});
}
});
firefightinggo().then((res) => {
if (res.code == 200) {
let data = res.data || {};
Object.keys(data).forEach((key) => {
if (key == "人员培训") {
this.xfzdList[0]["value"] = data[key] + "%";
}
if (key == "消防演习") {
this.xfzdList[1]["value"] = data[key];
}
if (key == "管理层知晓程度") {
this.xfzdList[2]["value"] = data[key] + "%";
}
});
}
});
firefightinggoods().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.xfssList = [];
Object.keys(data).forEach((key) => {
this.xfssList.push({
name: key,
value: data[key],
});
});
}
});
gun().then((res) => {
if (res.code == 200) {
let data = res.data || {};
Object.keys(data).forEach((key) => {
if (key == "竞技体育用枪") {
this.myqzList[0]["value"] = data[key];
}
if (key == "商业射击馆枪支") {
this.myqzList[1]["value"] = data[key];
}
if (key == "猎枪") {
this.myqzList[2]["value"] = data[key];
}
});
}
});
ledger().then((res) => {
if (res.code == 200) {
let data = res.data || {};
Object.keys(data).forEach((key) => {
if (key == "资质异常企业数") {
this.qytzList[1]["value"] = data[key];
}
if (key == "资质正常企业数") {
this.qytzList[0]["value"] = data[key];
}
});
}
});
peacemanage().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.dwnbObj.data = [];
Object.keys(data).forEach((key) => {
if (key === "内部治安安全指数") {
this.bmjcLeft.value = data[key];
} else {
this.dwnbObj.data.push({
name: key,
value: data[key],
});
}
});
}
});
personnelrisk().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.tlObj.data = [];
Object.keys(data).forEach((key) => {
if (key === "count") {
this.tlObj.total = data[key];
} else {
this.tlObj.data.push({
name: key,
value: data[key],
});
}
});
}
});
radiationmanage().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.fsyObj.data = [];
Object.keys(data).forEach((key) => {
this.fsyObj.data.push({
name: key,
value: data[key],
});
});
}
});
roadmanage().then((res) => {
if (res.code == 200) {
let data = res.data || {};
Object.keys(data).forEach((key) => {
if (key == "源头检查") {
this.dlan1Obj["point"] = data[key];
}
if (key == "交通事故") {
this.dlan2Obj["point"] = data[key];
}
if (key == "企业整改") {
this.dlan3Obj["point"] = data[key];
}
if (key == "设施检查") {
this.dlan4Obj["point"] = data[key];
}
if (key == "违章数据") {
this.dlan5Obj["point"] = data[key];
}
});
this.dlan1Obj["total"] = data["count"];
this.dlan2Obj["total"] = data["count"];
this.dlan3Obj["total"] = data["count"];
this.dlan4Obj["total"] = data["count"];
this.dlan5Obj["total"] = data["count"];
}
});
},
gotoPage(path) { gotoPage(path) {
this.$router.push({ this.$router.push({
path: path, path: path,

Loading…
Cancel
Save