master
e 8 months ago
parent 6dec70cb56
commit 4c6bf136a6

@ -1,9 +1,50 @@
import request from "@/utils/request"; import request from "@/utils/request";
//专题评估报告详情查询接口 //人防,物防,技防
export function queryListDetails(params) { export function alldefense() {
return request({ return request({
url: "/ThematicEvaluationController/QueryListDetails", url: "/special/defenses/alldefense",
method: "post", 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"; import request from "@/utils/request";
//专题评估报告详情查询接口 //车辆详情
export function queryListDetails(params) { export function vehicledetail() {
return request({ return request({
url: "/ThematicEvaluationController/QueryListDetails", url: "/special/vehicle/vehicledetail",
method: "post", 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"; import request from "@/utils/request";
//专题评估报告详情查询接口 //异常信息
export function queryListDetails(params) { export function exceptioninfo() {
return request({ return request({
url: "/ThematicEvaluationController/QueryListDetails", url: "/special/peace/exceptioninfo",
method: "post", 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 barWrap from "./bar.vue";
import dpie from "./dpie.vue"; import dpie from "./dpie.vue";
import {
alldefense,
antiterrorism,
defenselist,
emergency,
hiddentrouble,
inoutranking,
ranking,
} from "@/api/enterpriseTopic/antiAttack/index.js";
export default { export default {
components: { components: {
colWrap, colWrap,
@ -285,31 +295,11 @@ export default {
], ],
tmlObj: { tmlObj: {
data: [ 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 },
],
color: ["#FFDE9C", "#0E9FF7"], color: ["#FFDE9C", "#0E9FF7"],
}, },
tmrObj: { tmrObj: {
data: [ 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 },
],
color: ["#fac508", "#ee8b56"], color: ["#fac508", "#ee8b56"],
}, },
@ -370,16 +360,16 @@ export default {
data: [ data: [
{ {
name: "无隐患企业家", name: "无隐患企业家",
value: 900, value: 0,
rate: "90%", rate: 0,
itemStyle: { itemStyle: {
color: "#2B82F3", color: "#2B82F3",
}, },
}, },
{ {
name: "安全隐患企业", name: "安全隐患企业",
value: 100, value: 0,
rate: "10%", rate: 0,
itemStyle: { itemStyle: {
color: "#E15A4E", color: "#E15A4E",
}, },
@ -462,7 +452,53 @@ export default {
], ],
}; };
}, },
mounted() {
this.getData();
},
methods: { 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) { gotoPage(path, val) {
this.$router.push({ this.$router.push({
path: path, path: path,

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

@ -22,8 +22,8 @@
<el-form :inline="true" :model="queryParam" class="demo-form-inline"> <el-form :inline="true" :model="queryParam" class="demo-form-inline">
<el-form-item label="关键词:"> <el-form-item label="关键词:">
<el-input <el-input
v-model="queryParam.key" v-model="queryParam.licensePlate"
placeholder="请输入姓名、身份证" placeholder="请输入车牌号"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -46,35 +46,124 @@
> >
<div class="colLeft"> <div class="colLeft">
<div class="colIcon"></div> <div class="colIcon"></div>
<div class="carNum">{{ item.car }}</div> <div class="carNum">{{ item.licensePlate }}</div>
<div class="carType"> <div class="carType">
<span style="color: #d0deee">车型</span> <span style="color: #d0deee">车型</span>
<span>{{ item.type }}</span> <span>{{ item.vehicleType }}</span>
</div> </div>
<div class="carWType"> <div class="carWType">
<span style="color: #d0deee">危化品类别</span> <span style="color: #d0deee">危化品类别</span>
<span>{{ item.wType }}</span> <span>{{ item.dangerousGoodsCategory }}</span>
</div> </div>
<div class="cmpName">{{ item.cmp }}</div> <div class="cmpName">{{ item.affiliatedCompany }}</div>
</div> </div>
<div class="colRight"> <div class="colRight">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col <el-col :span="12" class="carInfo">
:span="12"
class="carInfo"
v-for="info in item.list"
:key="info.name"
>
<div class="carIcon"> <div class="carIcon">
<img v-if="carSelect === item.car" :src="info.aicon" /> <img
<img v-else :src="info.icon" /> v-if="carSelect === item.car"
src="@/assets/images/topic/c11.png"
/>
<img v-else src="@/assets/images/topic/c1.png" />
</div> </div>
<div class="carNameWrap"> <div class="carNameWrap">
<div class="carName">{{ info.name }}</div> <div class="carName">车辆超载</div>
<div class="carValue">({{ info.total }})</div> <div class="carValue">({{ item.overloadedTimes }})</div>
</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>
</div> </div>
</el-col> </el-col>
@ -95,131 +184,42 @@
</template> </template>
<script> <script>
import { tableListMixins } from "@/loveflow/mixins/tableListMixins"; import { tableListMixins } from "@/loveflow/mixins/tableListMixins";
import {
violations,
nums,
} from "@/api/enterpriseTopic/dangerTransport/index.js";
export default { export default {
mixins: [tableListMixins], mixins: [tableListMixins],
data() { data() {
return { return {
leftList: [ leftList: [],
{ selectArr: [],
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"],
columns: [ columns: [
{ {
prop: "name", prop: "name",
label: "姓名", label: "姓名",
}, },
], ],
disableMixinCreated: true,
carSelect: "", carSelect: "",
url: {
list: "special/vehicle/violations",
},
}; };
}, },
created() { created() {
for (let i = 0; i < 20; i++) { nums().then((res) => {
this.dataSource.push({ if (res.code == 200) {
car: "浙B5N86" + i, let data = res.data || {};
type: "重型" + i, this.leftList = [];
wType: "危品" + i, Object.keys(data).forEach((key) => {
cmp: "兴达化工有限公司" + i, this.leftList.push({
list: [ name: key,
{ id: key,
name: "车辆超载", total: data[key],
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"),
},
],
}); });
} }
});
}, },
methods: { methods: {
filterClick(id) { filterClick(id) {

@ -187,6 +187,20 @@ import dPie from "../components/dPie.vue";
import pieWrap from "../components/pie.vue"; import pieWrap from "../components/pie.vue";
import ballWrap from "@/loveflow/components/echart/other/ball.vue"; import ballWrap from "@/loveflow/components/echart/other/ball.vue";
import sevenWrap from "@/loveflow/components/echart/pie/seven.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 { export default {
components: { components: {
colWrap, colWrap,
@ -225,22 +239,22 @@ export default {
tmList: [ tmList: [
{ {
name: "矛盾纠纷", name: "矛盾纠纷",
value: 3145, value: 0,
icon: require("@/assets/images/topic/stmdjf.png"), icon: require("@/assets/images/topic/stmdjf.png"),
}, },
{ {
name: "劳资纠纷", name: "劳资纠纷",
value: 2145, value: 0,
icon: require("@/assets/images/topic/stlzjf.png"), icon: require("@/assets/images/topic/stlzjf.png"),
}, },
{ {
name: "特种设备", name: "特种设备",
value: 145, value: 0,
icon: require("@/assets/images/topic/sttzsb.png"), icon: require("@/assets/images/topic/sttzsb.png"),
}, },
{ {
name: "原材料被盗", name: "原材料被盗",
value: 345, value: 0,
icon: require("@/assets/images/topic/stycl.png"), icon: require("@/assets/images/topic/stycl.png"),
}, },
], ],
@ -455,9 +469,29 @@ export default {
}; };
}, },
mounted() { mounted() {
//this.title = this.$route.query.cmy; this.getData();
}, },
methods: { 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() { gotoPage() {
this.$router.push({ this.$router.push({
path: "/topic/inSecurity/indexDetail", path: "/topic/inSecurity/indexDetail",

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

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

Loading…
Cancel
Save