master
e 7 months ago
parent 6dec70cb56
commit 4c6bf136a6

@ -1,9 +1,50 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
//人防,物防,技防
export function alldefense() {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
url: "/special/defenses/alldefense",
method: "post",
params,
});
}
//反恐目标单位检查数据
export function antiterrorism() {
return request({
url: "/special/defenses/antiterrorism",
method: "get",
});
}
//防攻击列表
export function defenselist() {
return request({
url: "/special/defenses/defenselist",
method: "post",
});
}
//应急预案制定制定异常分析
export function emergency() {
return request({
url: "/special/defenses/emergency",
method: "get",
});
}
//企业隐患分析
export function hiddentrouble() {
return request({
url: "/special/defenses/hiddentrouble",
method: "get",
});
}
//重点人员出入特定区域次数排行
export function inoutranking() {
return request({
url: "/special/defenses/inoutranking",
method: "get",
});
}
//重点人员分类排行
export function ranking() {
return request({
url: "/special/defenses/ranking",
method: "get",
});
}

@ -1,9 +1,29 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
//车辆详情
export function vehicledetail() {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
url: "/special/vehicle/vehicledetail",
method: "post",
params,
});
}
//车辆的违规信息统计
export function violationdetail() {
return request({
url: "/special/vehicle/violationdetail",
method: "post",
});
}
//车辆的违规信息统计
export function violations() {
return request({
url: "/special/vehicle/violations",
method: "post",
});
}
//获取统计数
export function nums() {
return request({
url: "/special/vehicle/nums",
method: "get",
});
}

@ -1,9 +1,72 @@
import request from "@/utils/request";
//专题评估报告详情查询接口
export function queryListDetails(params) {
//异常信息
export function exceptioninfo() {
return request({
url: "/ThematicEvaluationController/QueryListDetails",
url: "/special/peace/exceptioninfo",
method: "post",
params,
});
}
//重要岗位详情
export function postdetail() {
return request({
url: "/special/peace/postdetail",
method: "post",
});
}
//案件信息
export function caseinfo() {
return request({
url: "/special/peace/caseinfo",
method: "post",
});
}
//矛盾纠纷
export function contradiction() {
return request({
url: "/special/peace/contradiction",
method: "post",
});
}
//劳资纠纷
export function labour() {
return request({
url: "/special/peace/labour",
method: "post",
});
}
//内部治安列表
export function peacelist() {
return request({
url: "/special/peace/peacelist",
method: "post",
});
}
//原材料被盗
export function steal() {
return request({
url: "/special/peace/steal",
method: "post",
});
}
//企业三防以及特种设备数据
export function vkey() {
return request({
url: "/special/peace/visit/key",
method: "post",
});
}
//内部治安统计
export function peacenums() {
return request({
url: "/special/peace/peacenums",
method: "get",
});
}
//数据统计
export function statistics() {
return request({
url: "/special/peace/statistics",
method: "get",
});
}

@ -192,6 +192,16 @@ import pieWrap from "./pie.vue";
import barWrap from "./bar.vue";
import dpie from "./dpie.vue";
import {
alldefense,
antiterrorism,
defenselist,
emergency,
hiddentrouble,
inoutranking,
ranking,
} from "@/api/enterpriseTopic/antiAttack/index.js";
export default {
components: {
colWrap,
@ -285,31 +295,11 @@ export default {
],
tmlObj: {
data: [
{ name: "石化工业园区周边1", value: 1123 },
{ name: "石化工业园区周边2", value: 808 },
{ name: "石化工业园区周边3", value: 703 },
{ name: "石化工业园区周边4", value: 613 },
{ name: "石化工业园区周边5", value: 433 },
{ name: "石化工业园区周边6", value: 333 },
{ name: "石化工业园区周边7", value: 233 },
{ name: "石化工业园区周边8", value: 133 },
{ name: "石化工业园区周边9", value: 533 },
{ name: "石化工业园区周边10", value: 733 },
],
data: [],
color: ["#FFDE9C", "#0E9FF7"],
},
tmrObj: {
data: [
{ name: "重性精神病人", value: 123 },
{ name: "非访人员", value: 808 },
{ name: "退役重点人员", value: 703 },
{ name: "个人极端人员", value: 613 },
{ name: "前科人员", value: 933 },
{ name: "家暴人员", value: 613 },
{ name: "酗酒人员", value: 433 },
{ name: "其他重点人员", value: 333 },
],
data: [],
color: ["#fac508", "#ee8b56"],
},
@ -370,16 +360,16 @@ export default {
data: [
{
name: "无隐患企业家",
value: 900,
rate: "90%",
value: 0,
rate: 0,
itemStyle: {
color: "#2B82F3",
},
},
{
name: "安全隐患企业",
value: 100,
rate: "10%",
value: 0,
rate: 0,
itemStyle: {
color: "#E15A4E",
},
@ -462,7 +452,53 @@ export default {
],
};
},
mounted() {
this.getData();
},
methods: {
getData() {
alldefense().then((res) => {});
antiterrorism().then((res) => {});
defenselist().then((res) => {});
emergency().then((res) => {});
hiddentrouble().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.mlObj.data = [];
Object.keys(data).forEach((key) => {
if (key.indexOf("无隐患") > -1) {
this.trObj.data[0]["value"] = data[key];
}
});
}
});
inoutranking().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.tmlObj.data = [];
Object.keys(data).forEach((key) => {
if (key != "count") {
this.tmlObj.data.push({
name: key,
value: data[key],
});
}
});
}
});
ranking().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.tmrObj.data = [];
Object.keys(data).forEach((key) => {
this.tmrObj.data.push({
name: key,
value: data[key],
});
});
}
});
},
gotoPage(path, val) {
this.$router.push({
path: path,

@ -35,7 +35,6 @@
:tableData="dataSource"
:columns="column"
rowKey="id"
:pagination="false"
@pageSizeChange="handlePageSizeChange"
@currentPageChange="handleCurrentPageChange"
>

@ -22,8 +22,8 @@
<el-form :inline="true" :model="queryParam" class="demo-form-inline">
<el-form-item label="关键词:">
<el-input
v-model="queryParam.key"
placeholder="请输入姓名、身份证"
v-model="queryParam.licensePlate"
placeholder="请输入车牌号"
></el-input>
</el-form-item>
<el-form-item>
@ -46,35 +46,124 @@
>
<div class="colLeft">
<div class="colIcon"></div>
<div class="carNum">{{ item.car }}</div>
<div class="carNum">{{ item.licensePlate }}</div>
<div class="carType">
<span style="color: #d0deee">车型</span>
<span>{{ item.type }}</span>
<span>{{ item.vehicleType }}</span>
</div>
<div class="carWType">
<span style="color: #d0deee">危化品类别</span>
<span>{{ item.wType }}</span>
<span>{{ item.dangerousGoodsCategory }}</span>
</div>
<div class="cmpName">{{ item.cmp }}</div>
<div class="cmpName">{{ item.affiliatedCompany }}</div>
</div>
<div class="colRight">
<el-row :gutter="20">
<el-col
:span="12"
class="carInfo"
v-for="info in item.list"
:key="info.name"
>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img v-if="carSelect === item.car" :src="info.aicon" />
<img v-else :src="info.icon" />
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c11.png"
/>
<img v-else src="@/assets/images/topic/c1.png" />
</div>
<div class="carNameWrap">
<div class="carName">{{ info.name }}</div>
<div class="carValue">({{ info.total }})</div>
<div class="carName">车辆超载</div>
<div class="carValue">({{ item.overloadedTimes }})</div>
</div>
</el-col></el-row
>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c22.png"
/>
<img v-else src="@/assets/images/topic/c2.png" />
</div>
<div class="carNameWrap">
<div class="carName">车辆闯禁</div>
<div class="carValue">({{ item.violationTimes }})</div>
</div>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c33.png"
/>
<img v-else src="@/assets/images/topic/c3.png" />
</div>
<div class="carNameWrap">
<div class="carName">车辆超速</div>
<div class="carValue">({{ item.speedingTimes }})</div>
</div>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c44.png"
/>
<img v-else src="@/assets/images/topic/c4.png" />
</div>
<div class="carNameWrap">
<div class="carName">疲劳驾驶</div>
<div class="carValue">({{ item.fatigueDrivingTimes }})</div>
</div>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c55.png"
/>
<img v-else src="@/assets/images/topic/c5.png" />
</div>
<div class="carNameWrap">
<div class="carName">未按车道行驶</div>
<div class="carValue">({{ item.laneViolationTimes }})</div>
</div>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c66.png"
/>
<img v-else src="@/assets/images/topic/c6.png" />
</div>
<div class="carNameWrap">
<div class="carName">车辆异常驻留</div>
<div class="carValue">({{ item.abnormalResidenceTimes }})</div>
</div>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c77.png"
/>
<img v-else src="@/assets/images/topic/c7.png" />
</div>
<div class="carNameWrap">
<div class="carName">GPS离线</div>
<div class="carValue">({{ item.gpsOfflineTimes }})</div>
</div>
</el-col>
<el-col :span="12" class="carInfo">
<div class="carIcon">
<img
v-if="carSelect === item.car"
src="@/assets/images/topic/c88.png"
/>
<img v-else src="@/assets/images/topic/c8.png" />
</div>
<div class="carNameWrap">
<div class="carName">交通事故</div>
<div class="carValue">({{ item.trafficAccidentTimes }})</div>
</div>
</el-col>
</el-row>
</div>
</div>
</el-col>
@ -95,131 +184,42 @@
</template>
<script>
import { tableListMixins } from "@/loveflow/mixins/tableListMixins";
import {
violations,
nums,
} from "@/api/enterpriseTopic/dangerTransport/index.js";
export default {
mixins: [tableListMixins],
data() {
return {
leftList: [
{
name: "车辆超载",
total: 468,
id: "1",
},
{
name: "车辆闯禁",
total: 612,
id: "2",
},
{
name: "车辆超速",
total: 241,
id: "3",
},
{
name: "疲劳驾驶",
total: 432,
id: "4",
},
{
name: "未按车道行驶",
total: 289,
id: "5",
},
{
name: "车辆异常驻留",
total: 189,
id: "6",
},
{
name: "GPS离线",
total: 78,
id: "7",
},
{
name: "交通事故",
total: 53,
id: "8",
},
],
selectArr: ["1", "2", "3", "4", "5", "6", "7"],
leftList: [],
selectArr: [],
columns: [
{
prop: "name",
label: "姓名",
},
],
disableMixinCreated: true,
carSelect: "",
url: {
list: "special/vehicle/violations",
},
};
},
created() {
for (let i = 0; i < 20; i++) {
this.dataSource.push({
car: "浙B5N86" + i,
type: "重型" + i,
wType: "危品" + i,
cmp: "兴达化工有限公司" + i,
list: [
{
name: "车辆超载",
total: 468,
id: "1",
icon: require("@/assets/images/topic/c1.png"),
aicon: require("@/assets/images/topic/c11.png"),
},
{
name: "车辆闯禁",
total: 612,
id: "2",
icon: require("@/assets/images/topic/c2.png"),
aicon: require("@/assets/images/topic/c22.png"),
},
{
name: "车辆超速",
total: 241,
id: "3",
icon: require("@/assets/images/topic/c3.png"),
aicon: require("@/assets/images/topic/c33.png"),
},
{
name: "疲劳驾驶",
total: 432,
id: "4",
icon: require("@/assets/images/topic/c4.png"),
aicon: require("@/assets/images/topic/c44.png"),
},
{
name: "未按车道行驶",
total: 289,
id: "5",
icon: require("@/assets/images/topic/c5.png"),
aicon: require("@/assets/images/topic/c55.png"),
},
{
name: "车辆异常驻留",
total: 189,
id: "6",
icon: require("@/assets/images/topic/c6.png"),
aicon: require("@/assets/images/topic/c66.png"),
},
{
name: "GPS离线",
total: 78,
id: "7",
icon: require("@/assets/images/topic/c7.png"),
aicon: require("@/assets/images/topic/c77.png"),
},
{
name: "交通事故",
total: 53,
id: "8",
icon: require("@/assets/images/topic/c8.png"),
aicon: require("@/assets/images/topic/c88.png"),
},
],
});
}
nums().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.leftList = [];
Object.keys(data).forEach((key) => {
this.leftList.push({
name: key,
id: key,
total: data[key],
});
});
}
});
},
methods: {
filterClick(id) {

@ -187,6 +187,20 @@ import dPie from "../components/dPie.vue";
import pieWrap from "../components/pie.vue";
import ballWrap from "@/loveflow/components/echart/other/ball.vue";
import sevenWrap from "@/loveflow/components/echart/pie/seven.vue";
import {
exceptioninfo,
postdetail,
caseinfo,
contradiction,
labour,
peacelist,
steal,
vkey,
peacenums,
statistics,
} from "@/api/enterpriseTopic/inSecurity/index.js";
export default {
components: {
colWrap,
@ -225,22 +239,22 @@ export default {
tmList: [
{
name: "矛盾纠纷",
value: 3145,
value: 0,
icon: require("@/assets/images/topic/stmdjf.png"),
},
{
name: "劳资纠纷",
value: 2145,
value: 0,
icon: require("@/assets/images/topic/stlzjf.png"),
},
{
name: "特种设备",
value: 145,
value: 0,
icon: require("@/assets/images/topic/sttzsb.png"),
},
{
name: "原材料被盗",
value: 345,
value: 0,
icon: require("@/assets/images/topic/stycl.png"),
},
],
@ -455,9 +469,29 @@ export default {
};
},
mounted() {
//this.title = this.$route.query.cmy;
this.getData();
},
methods: {
getData() {
exceptioninfo().then((res) => {});
postdetail().then((res) => {});
caseinfo().then((res) => {});
contradiction().then((res) => {});
labour().then((res) => {});
peacelist().then((res) => {});
steal().then((res) => {});
vkey().then((res) => {});
peacenums().then((res) => {
if (res.code == 200) {
let data = res.data || {};
this.tmList[0].value = data["矛盾纠纷"];
this.tmList[1].value = data["劳资纠纷"];
this.tmList[2].value = data["特种设备"];
this.tmList[3].value = data["原材料被盗"];
}
});
statistics().then((res) => {});
},
gotoPage() {
this.$router.push({
path: "/topic/inSecurity/indexDetail",

@ -40,46 +40,44 @@
v-for="item in dataSource"
:key="item.id"
>
<div class="inSecurityThead">{{ item.cmy }}</div>
<div class="inSecurityTbody" @click="gotoPage(item.cmy)">
<div class="inSecurityThead">{{ item.companyType }}</div>
<div class="inSecurityTbody" @click="gotoPage(item.companyType)">
<div class="line">
<div class="item">
<div class="label">信用代码</div>
<div class="value">{{ item.phone }}</div>
<div class="value">{{ item.creditCode }}</div>
</div>
<div class="item">
<div class="label">企业类型</div>
<div class="value">
<gDict
:options="cmyTypeList"
:value="item.cmyType"
></gDict>
{{ item.companyType }}
</div>
</div>
</div>
<div class="line">
<div class="item">
<div class="label">注册地址</div>
<div class="value">{{ item.address }}</div>
<div class="value">{{ item.registeredAddress }}</div>
</div>
</div>
<div class="line">
<div class="item">
<div class="label">经营范围</div>
<div class="value">{{ item.jyfw }}</div>
<div class="value">{{ item.businessScope }}</div>
</div>
</div>
<div class="line mt20">
<div class="item">
<div class="label">内部治安</div>
<div class="value">
<div
{{ item.internalSecurity }}
<!-- <div
class="zaCard"
v-for="info in item.cardList"
:key="info.name"
>
{{ info.name }}({{ info.value || 0 }})
</div>
</div> -->
</div>
</div>
</div>
@ -87,13 +85,14 @@
<div class="item">
<div class="label">内部管理</div>
<div class="value">
<div
{{ item.internalManagement }}
<!-- <div
class="glCard"
v-for="info in item.cardList"
:key="info.name"
>
{{ info.name }}({{ info.value || 0 }})
</div>
</div> -->
</div>
</div>
</div>
@ -101,13 +100,14 @@
<div class="item">
<div class="label">异常信息</div>
<div class="value">
<div
{{ item.abnormalInformation }}
<!-- <div
class="ycCard"
v-for="info in item.cardList"
:key="info.name"
>
{{ info.name }}({{ info.value || 0 }})
</div>
</div> -->
</div>
</div>
</div>
@ -146,6 +146,9 @@ export default {
label: "姓名",
},
],
url: {
list: "special/peace/peacelist",
},
};
},
methods: {

@ -214,7 +214,6 @@ import radarFour from "@/loveflow/components/echart/radar/four.vue";
import tableCustom from "./components/tableCustom.vue";
import {
vehicleDetail,
cybersecurityrisk,
dangerousnum,
dangerousrun,
@ -462,11 +461,13 @@ export default {
if (res.code == 200) {
let data = res.data || {};
let list = [];
this.carNum = 0;
Object.keys(data).forEach((key) => {
list.push({
name: key,
value: data[key],
});
this.carNum += data[key];
});
let maxValue = Math.max.apply(
Math,
@ -497,13 +498,11 @@ export default {
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];
});
}
});

Loading…
Cancel
Save