master
loveflow 7 months ago
parent 5c32ca72d9
commit 22d654a3f0

@ -29,7 +29,7 @@
var point = new BMapGL.Point(121.619992, 30.025703); // 创建点坐标 var point = new BMapGL.Point(121.619992, 30.025703); // 创建点坐标
window.addEventListener('message', function (event) { window.addEventListener('message', function (event) {
let company_list = event.data let company_list = event.data
console.log('data01', company_list); //console.log('data01', company_list);
company_list.forEach((item) => { company_list.forEach((item) => {
let company_point = new BMapGL.Point(item.longitude, item.latitude); let company_point = new BMapGL.Point(item.longitude, item.latitude);
let myIcon = {}; let myIcon = {};

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

@ -1,20 +1,29 @@
<template> <template>
<div style="width: 100%; height: 100%;" class="mainBG"> <div class="mainBody">
<router-view /> <headPage></headPage>
<div class="mainBG">
<router-view />
</div>
</div> </div>
</template> </template>
<script> <script>
import headPage from "@/loveflow/components/menu/head";
export default { export default {
name: "box" name: "box",
} components: { headPage },
};
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.mainBG { .mainBody {
width: 100%; width: 100%;
height: 100%; height: 100%;
background: url('../assets/companyFile/allback.png') no-repeat; background: url("../assets/companyFile/allback.png") no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
} }
.mainBG {
width: 100%;
height: calc(100% - 80px);
}
</style> </style>

@ -113,7 +113,8 @@ export default {
if (res.code === 200) { if (res.code === 200) {
sessionStorage.setItem("activeIndex", "1"); sessionStorage.setItem("activeIndex", "1");
this.$router.push({ this.$router.push({
path: "/home/compositeIndex", //path: "/home/compositeIndex",
path: "/workspace",
}); });
} else { } else {
this.$message.error(res.msg); this.$message.error(res.msg);
@ -504,4 +505,4 @@ export default {
} }
} }
} }
</style> </style>

@ -2,15 +2,14 @@
<div class="gMainTable"> <div class="gMainTable">
<el-table <el-table
ref="gMainTable" ref="gMainTable"
size="small" :size="size"
:header-cell-style="$tableHeaderColor"
:data="tableData" :data="tableData"
:rowKey="rowKey ? rowKey : ''" :rowKey="rowKey ? rowKey : ''"
@selection-change="selectionChange" @selection-change="selectionChange"
> >
<!-- 多选批量操作 --> <!-- 多选批量操作 -->
<el-table-column <el-table-column
v-if="pagination" v-if="rowSelection"
type="selection" type="selection"
width="55" width="55"
:reserve-selection="rowKey ? true : false" :reserve-selection="rowKey ? true : false"
@ -54,6 +53,12 @@
export default { export default {
name: "gMainTable", name: "gMainTable",
props: { props: {
size: {
type: String,
default: () => {
return "";
},
},
tableData: { tableData: {
type: Array, type: Array,
required: true, required: true,
@ -105,7 +110,7 @@ export default {
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
padding: 10px 10px; padding: 10px 10px;
background-color: #fff; background-color: transparent;
} }
} }
</style> </style>

@ -0,0 +1,361 @@
<template>
<div class="topHeader">
<div class="iconbg">
<img
src="../../../assets/companyFile/police.png"
style="width: 60px; height: 60px"
/>
</div>
<div class="headText">镇海平安企业园区</div>
<el-menu
:default-active="activeIndex"
class="el-menu-demo topMenu"
mode="horizontal"
@select="handleSelect"
:router="true"
>
<template v-for="item in menuList">
<div class="shu" :key="item.path"></div>
<el-menu-item :index="item.name" :route="item.path" :key="item.name">{{
item.title
}}</el-menu-item>
</template>
<div class="shu"></div>
</el-menu>
<div class="time_box">
<div class="time_item">{{ this.new_time }}</div>
<div class="day_item">{{ this.new_day }}</div>
</div>
<div class="jingGuan">
<div class="jgtx" @click="check_user">
<img src="../../../assets/companyFile/12110.png" />
</div>
&nbsp;&nbsp; 王警官
</div>
<div class="user_box" v-show="user_show">
<div class="user_box_body">
<!-- 用户个人中心 -->
<div class="user_center">修改密码</div>
<!-- 用户退出登录 -->
<div class="user_check_login" @click="logout">退</div>
</div>
</div>
</div>
</template>
<script>
const days = ["天", "一", "二", "三", "四", "五", "六"]; //
let icnow = new Date(); //
let interval;
export default {
name: "Head",
data() {
return {
activeIndex: "compositeIndex",
user_show: false,
year: icnow.getFullYear(),
month: icnow.getMonth() + 1,
date: icnow.getDate(),
day: days[icnow.getDay() - 1],
time: icnow.toTimeString().substring(0, 8),
menuList: [],
};
},
created() {
console.log(this.$route);
console.log(this.$router);
this.activeIndex = this.$route.name;
interval = setInterval(() => {
let icnow = new Date();
this.year = icnow.getFullYear();
this.month = icnow.getMonth() + 1;
this.date = icnow.getDate();
this.day = days[icnow.getDay()];
this.time = icnow.toTimeString().substring(0, 8);
}, 1000);
this.dealMenu(this.$router.options.routes);
},
computed: {
//
new_time: function () {
return this.time;
},
//
new_day() {
return (
this.year + "年" + this.month + "月" + this.date + "日 星期" + this.day
);
},
},
beforeDestroy() {
clearInterval(interval);
},
methods: {
dealMenu(menu) {
this.menuList = [];
menu = menu || [];
let curRoute = this.$route.path;
//let pUrl = "";
let index = menu.findIndex((e) => {
//pUrl = e.path;
return curRoute.indexOf(e.path) > -1;
});
let tempList = [];
if (index) {
tempList = menu[index].children || [];
}
for (let i = 0; i < tempList.length; i++) {
if (tempList[i]["meta"] && tempList[i]["meta"]["head"]) {
this.menuList.push({
title: tempList[i]["meta"]["title"],
name: tempList[i]["name"],
path: tempList[i]["path"],
});
}
}
console.log(this.menuList);
},
handleSelect(key) {
sessionStorage.setItem("activeIndex", key);
},
// 退
check_user() {
if (this.user_show) {
this.user_show = false;
} else {
this.user_show = true;
}
},
// 退
logout() {
// token
window.sessionStorage.clear();
//
this.$router.push("/login");
},
get_time() {
setInterval(() => {
let date = new Date();
this.hour = date.getHours(); //
this.minutes = date.getMinutes(); //
this.seconds = date.getSeconds(); //
if (this.hour >= 0 && this.hour <= 9) {
this.hour = "0" + this.hour;
}
if (this.minutes >= 0 && this.minutes <= 9) {
this.minutes = "0" + this.minutes;
}
if (this.seconds >= 0 && this.seconds <= 9) {
this.seconds = "0" + this.seconds;
}
}, 1000);
},
},
watch: {
$route(to, from) {
console.log("aside", to);
this.activeIndex = to.name;
},
},
};
</script>
<style lang="less" scoped>
.topHeader {
width: 100%;
height: 80px;
background: url("~@/assets/companyFile/top_menu.png") no-repeat;
background-size: 100% 100%;
display: flex;
align-items: center;
.iconbg {
height: 35px;
width: 3vw;
margin: 0 25px;
// background: url("~@/assets/companyFile/2111.png") no-repeat;
// background-size: 100% 100%;
display: flex;
justify-content: center;
align-items: center;
.img {
height: 35px;
width: 50px;
}
}
.headText {
font-family: YouSheBiaoTiHei;
font-size: 38px;
color: #edf6ff;
letter-spacing: 4px;
text-shadow: 0 8px 8px rgba(0, 0, 0, 0.3);
font-weight: 400;
width: 22vw;
}
.time_box {
width: 12vw;
height: 5vh;
margin-left: 1vw;
.time_item {
width: 12vw;
height: 3vh;
text-align: center;
color: #37fdc7;
font-size: 24px;
font-weight: 600;
}
.day_item {
width: 12vw;
height: 1.5vh;
color: #d9e7ff;
text-align: center;
font-size: 14px;
font-weight: 500;
}
}
.jingGuan {
position: absolute;
right: 3vw;
display: flex;
color: #edf6ff;
align-items: center;
.jgtx {
width: 40px;
height: 40px;
background: url("~@/assets/companyFile/border01.png") no-repeat;
background-size: 100% 100%;
cursor: pointer;
img {
width: 40px;
height: 40px;
}
}
}
.user_box {
position: absolute;
top: 70px;
right: 10px;
width: 180px;
height: 100px;
// border: 0.1px solid #33cccc;
padding: 10px;
background: url("~@/assets/archives/023.png") no-repeat;
background-size: 100% 100%;
z-index: 2;
.user_box_body {
width: 160px;
height: 80px;
// border: 0.1px solid #33cccc;
}
.user_center {
width: 160px;
height: 40px;
color: #d9e7ff;
text-align: center;
line-height: 40px;
cursor: pointer;
}
.user_check_login {
width: 160px;
height: 40px;
color: #d9e7ff;
text-align: center;
line-height: 40px;
cursor: pointer;
}
.user_center:hover,
.user_center:focus {
text-shadow: 0 0 20px rgba(21, 255, 198, 0.64);
}
.user_check_login:hover,
.user_check_login:focus {
text-shadow: 0 0 20px rgba(21, 255, 198, 0.64);
}
}
/deep/.el-menu {
border: 0;
background-color: rgba(0, 0, 0, 0);
display: flex;
align-items: center;
.el-menu-item {
width: 6vw;
height: 35px;
display: flex;
justify-content: center;
align-items: center;
padding: 10px 20px;
background: url("~@/assets/companyFile/Rectangle Copy 4.png") no-repeat;
background-size: 100% 100%;
font-size: 16px;
color: #d9e7ff;
letter-spacing: 3px;
text-align: center;
font-weight: 400;
}
.shu {
border-left: 1px solid rgba(217, 231, 255, 0.4);
width: 0;
height: 24px;
margin: 0 10px;
}
.is-active {
background: url("~@/assets/companyFile/891772.png") no-repeat;
background-size: 100% 100%;
}
/deep/.el-menu {
border: 0;
background-color: rgba(0, 0, 0, 0);
display: flex;
align-items: center;
.el-menu-item {
width: 100px;
height: 35px;
display: flex;
justify-content: center;
align-items: center;
padding: 10px 20px;
background: url("~@/assets/companyFile/Rectangle Copy 4.png") no-repeat;
background-size: 100% 100%;
font-size: 16px;
color: #d9e7ff;
letter-spacing: 3px;
text-align: center;
font-weight: 400;
}
.shu {
border-left: 1px solid rgba(217, 231, 255, 0.4);
width: 0;
height: 24px;
margin: 0 10px;
}
.is-active {
background: url("~@/assets/companyFile/891771.png") no-repeat;
background-size: 100% 100%;
}
.el-menu-item.is-active {
border: 0 !important;
}
}
}
}
</style>

@ -1,115 +1,36 @@
import Vue from 'vue' import Vue from "vue";
import VueRouter from 'vue-router' import VueRouter from "vue-router";
import box from '../components/box'
// import Home from '../views/Home.vue' Vue.use(VueRouter);
Vue.use(VueRouter) import integration from "./routes/integration";
import systemManagement from './routes/systemManagement' import enterpriseTopic from "./routes/enterpriseTopic";
import module from './routes/module' import enterpriseTeamWork from "./routes/enterpriseTeamWork";
import enterpriseRiskIndex from "./routes/enterpriseRiskIndex";
const routes = [ const routes = [
{ {
path: '/', path: "login",
name: 'box', name: "login",
component: box, component: () => import("@/components/login"),
redirect: '/login', },
children: [ {
{ path: "/workspace",
path: 'home', name: "workspace",
name: 'home', component: () => import("@/views/home/workspace"),
component: () => import('@/views/head'), },
children: [ /* 集成驾驶舱 */
// 首页 ...integration,
{ /* 专题驾驶舱 */
path: 'compositeIndex', ...enterpriseTopic,
name: 'compositeIndex', /* 企业协同共治 */
component: () => import('@/views/compositeIndex'), ...enterpriseTeamWork,
}, /* 企业风险指数 */
{ ...enterpriseRiskIndex,
path: 'enterpriseArchives', ];
name: 'enterpriseArchives', //console.log(routes);
component: () => import('@/views/enterpriseArchives'),
},
{
path: 'archives',
name: 'archives',
component: () => import('@/views/archives'),
},
{
path: 'safetyIndex',
name: 'safetyIndex',
component: () => import('@/views/safetyIndex'),
},
{
path: 'companyCanban',
name: 'companyCanban',
component: () => import('@/views/companyCanban'),
},
//企业排名
{
path: 'enterpriseRank',
name: 'enterpriseRank',
component: () => import('@/views/enterpriseRank'),
},
//实时预警
{
path: 'realtimeWarning',
name: 'realtimeWarning',
component: () => import('@/views/realtimeWarning'),
},
//要素资源(预)
{
path: 'factor',
name: 'factor',
component: () => import('@/views/factor'),
},
//要素资源
{
path: 'factorResources',
name: 'factorResources',
component: () => import('@/views/factorResources'),
},
// 系统管理
...systemManagement,
// 闭环处置
{
path: 'closeLoopDispose',
name: 'closeLoopDispose',
component: () => import('@/views/closeLoopDispose'),
},
// 安商惠企
{
path:'applySupermarket',
name:'applySupermarket',
component: () => import('@/views/applySupermarket'),
},
// 封装演示模块
...module,
// {
// path:'module',
// name:'module',
// component: () => import('@/views/module'),
// },
]
},
{
path: 'login',
name: 'login',
component: () => import('@/components/login'),
},
{
path: "/recordManage",
name: "recordManage",
component: () => import("@/views/enterpriseManage/recordManage/index"),
},
]
}]
console.log(routes)
const router = new VueRouter({ const router = new VueRouter({
mode: 'hash', mode: "hash",
routes routes,
}) });
export default router export default router;

@ -1,36 +0,0 @@
import Vue from "vue";
import VueRouter from "vue-router";
//import Home from '../views/Home.vue'
Vue.use(VueRouter);
export default [
//平安企业专题驾驶舱
{
path: "/enterpriseManage/topicCockpit",
name: "topicCockpitIndex",
component: () => import("@/views/enterpriseManage/topicCockpit/index"),
},
//平安企业风险监测
{
path: "/enterpriseManage/riskMonitor",
name: "riskMonitorIndex",
component: () => import("@/views/enterpriseManage/riskMonitor/index"),
},
//企业档案管理
{
path: "/enterpriseManage/recordManage",
name: "recordManageIndex",
component: () => import("@/views/enterpriseManage/recordManage/index"),
},
//企业风险指数应用
{
path: "/enterpriseManage/riskIndex",
name: "riskIndexIndex",
component: () => import("@/views/enterpriseManage/riskIndex/index"),
},
//平安企业协同共治
{
path: "/enterpriseManage/teamWork",
name: "teamWorkIndex",
component: () => import("@/views/enterpriseManage/teamWork/index"),
},
];

@ -0,0 +1,50 @@
import Vue from "vue";
import VueRouter from "vue-router";
import box from "../../components/box";
Vue.use(VueRouter);
export default [
{
path: "/riskIndex",
name: "riskIndex",
component: box,
redirect: "/workspace",
children: [
{
path: "/riskIndex/analysis",
name: "analysis",
meta: {
head: true,
title: "风险分析",
},
component: () => import("@/views/enterpriseRiskIndex/analysis"),
},
{
path: "/riskIndex/synthetical",
name: "synthetical",
meta: {
head: true,
title: "综合风险",
},
component: () => import("@/views/enterpriseRiskIndex/synthetical"),
},
{
path: "/riskIndex/abnormal",
name: "abnormal",
meta: {
head: true,
title: "异常图表",
},
component: () => import("@/views/enterpriseRiskIndex/abnormal"),
},
{
path: "/riskIndex/estimate",
name: "estimate",
meta: {
head: true,
title: "专题评估",
},
component: () => import("@/views/enterpriseRiskIndex/estimate"),
},
],
},
];

@ -0,0 +1,18 @@
import Vue from "vue";
import VueRouter from "vue-router";
import box from "../../components/box";
Vue.use(VueRouter);
export default [
{
path: "/teamWork/screen",
name: "screen",
component: () => import("@/views/enterpriseTeamWork/screen"),
},
{
path: "/teamWork",
name: "teamWork",
component: box,
redirect: "/workspace",
children: [],
},
];

@ -0,0 +1,91 @@
import Vue from "vue";
import VueRouter from "vue-router";
import box from "../../components/box";
Vue.use(VueRouter);
export default [
{
path: "/topic/screen",
name: "screen",
component: () => import("@/views/enterpriseTopic/screen"),
},
{
path: "/topic",
name: "topic",
component: box,
redirect: "/workspace",
children: [
{
path: "/topic/personSafety",
name: "personSafety",
meta: {
head: true,
title: "人员安全",
},
component: () => import("@/views/enterpriseTopic/personSafety"),
},
{
path: "/topic/dangerTransport",
name: "dangerTransport",
meta: {
head: true,
title: "危险品运输",
},
component: () => import("@/views/enterpriseTopic/dangerTransport"),
},
{
path: "/topic/antiAttack",
name: "antiAttack",
meta: {
head: true,
title: "防攻击",
},
component: () => import("@/views/enterpriseTopic/antiAttack"),
},
{
path: "/topic/fireSafety",
name: "fireSafety",
meta: {
head: true,
title: "消防安全",
},
component: () => import("@/views/enterpriseTopic/fireSafety"),
},
{
path: "/topic/listGoods",
name: "listGoods",
meta: {
head: true,
title: "列管物品",
},
component: () => import("@/views/enterpriseTopic/listGoods"),
},
{
path: "/topic/roadSafety",
name: "roadSafety",
meta: {
head: true,
title: "道路安全",
},
component: () => import("@/views/enterpriseTopic/roadSafety"),
},
{
path: "/topic/inSecurity",
name: "inSecurity",
meta: {
head: true,
title: "内部治安",
},
component: () => import("@/views/enterpriseTopic/inSecurity"),
},
{
path: "/topic/netSafety",
name: "netSafety",
meta: {
head: true,
title: "网路安全",
},
component: () => import("@/views/enterpriseTopic/netSafety"),
},
],
},
];

@ -0,0 +1,173 @@
import Vue from "vue";
import VueRouter from "vue-router";
import box from "../../components/box";
import module from "./module";
Vue.use(VueRouter);
export default [
{
path: "/integration",
name: "integration",
component: box,
redirect: "/workspace",
children: [
// 首页
{
path: "/integration/compositeIndex",
name: "compositeIndex",
meta: {
head: true,
title: "综合指数",
},
component: () => import("@/views/compositeIndex"),
},
// 安商惠企
{
path: "/integration/applySupermarket",
name: "applySupermarket",
meta: {
head: true,
title: "安商惠企",
},
component: () => import("@/views/applySupermarket"),
},
{
path: "/integration/enterpriseArchives",
name: "enterpriseArchives",
meta: {
head: true,
title: "企业档案",
},
component: () => import("@/views/enterpriseArchives"),
},
//实时预警
{
path: "/integration/realtimeWarning",
name: "realtimeWarning",
meta: {
head: true,
title: "实时预警",
},
component: () => import("@/views/realtimeWarning"),
},
// 闭环处置
{
path: "/integration/closeLoopDispose",
name: "closeLoopDispose",
meta: {
head: true,
title: "闭环处置",
},
component: () => import("@/views/closeLoopDispose"),
},
//要素资源(预)
{
path: "/integration/factor",
name: "factor",
meta: {
head: true,
title: "要素资源",
},
component: () => import("@/views/factor"),
},
{
path: "/integration/safetyIndex",
name: "safetyIndex",
component: () => import("@/views/safetyIndex"),
},
{
path: "/integration/archives",
name: "archives",
component: () => import("@/views/archives"),
},
{
path: "/integration/companyCanban",
name: "companyCanban",
component: () => import("@/views/companyCanban"),
},
//企业排名
{
path: "/integration/enterpriseRank",
name: "enterpriseRank",
component: () => import("@/views/enterpriseRank"),
},
//要素资源
{
path: "/integration/factorResources",
name: "factorResources",
component: () => import("@/views/factorResources"),
},
// 系统管理
{
path: "integration/systemManagement",
name: "systemManagement",
meta: {
head: true,
title: "系统管理",
},
component: () => import("@/views/systemManagement"),
redirect: "/integration/systemManagement/safeIndex",
children: [
// 平安指数
{
path: "/integration/systemManagement/safeIndex",
name: "systemManagement",
component: () => import("@/views/systemManagement/safeIndex"),
},
// 企业赋分
{
path: "/integration/systemManagement/companyScore",
name: "systemManagement",
component: () => import("@/views/systemManagement/companyScore"),
},
// 企业赋分详情
{
path: "/integration/systemManagement/companyDetails",
name: "companyDetails",
component: () =>
import(
"@/views/systemManagement/companyScore/components/companyDetails"
),
},
// 关联设备
{
path: "/integration/systemManagement/correlationEquipment",
name: "correlationEquipment",
component: () =>
import("@/views/systemManagement/correlationEquipment"),
},
{
path: "/integration/systemManagement/correlationEquipment2",
name: "correlationEquipment2",
component: () =>
import("@/views/systemManagement/correlationEquipment2"),
},
// 企业名单
{
path: "/integration/systemManagement/companyList",
name: "companyList",
component: () => import("@/views/systemManagement/companyList"),
},
{
path: "/integration/systemManagement/floatPopulation",
name: "floatPopulation",
component: () => import("@/views/systemManagement/floatPopulation"),
},
{
path: "/integration/systemManagement/dangerChemicals",
name: "dangerChemicals",
component: () => import("@/views/systemManagement/dangerChemicals"),
},
],
},
// 封装演示模块
...module,
{
path: "/integration/recordManage",
name: "recordManage",
component: () => import("@/views/enterpriseManage/recordManage/index"),
},
],
},
];

@ -1,49 +1,54 @@
import Vue from 'vue' import Vue from "vue";
import VueRouter from 'vue-router' import VueRouter from "vue-router";
// import Home from '../views/Home.vue' // import Home from '../views/Home.vue'
Vue.use(VueRouter) Vue.use(VueRouter);
// 系统管理 // 系统管理
export default [ export default [
{ {
path: 'systemManagement', path: "systemManagement",
name: 'systemManagement', name: "systemManagement",
component: () => import('@/views/systemManagement'), component: () => import("@/views/systemManagement"),
children: [ children: [
// 平安指数 // 平安指数
{ {
path: 'safeIndex', path: "safeIndex",
name: 'safeIndex', name: "safeIndex",
component: () => import('@/views/systemManagement/safeIndex'), component: () => import("@/views/systemManagement/safeIndex"),
}, },
// 企业赋分 // 企业赋分
{ {
path: 'companyScore', path: "companyScore",
name: 'companyScore', name: "companyScore",
component: () => import('@/views/systemManagement/companyScore'), component: () => import("@/views/systemManagement/companyScore"),
}, },
// 企业赋分详情 // 企业赋分详情
{ {
path: 'companyDetails', path: "companyDetails",
name: 'companyDetails', name: "companyDetails",
component: () => import('@/views/systemManagement/companyScore/components/companyDetails'), component: () =>
}, import(
// 关联设备 "@/views/systemManagement/companyScore/components/companyDetails"
{ ),
path: 'correlationEquipment', },
name: 'correlationEquipment', // 关联设备
component: () => import('@/views/systemManagement/correlationEquipment'), {
}, path: "correlationEquipment",
{ name: "correlationEquipment",
path: 'correlationEquipment2', component: () =>
name: 'correlationEquipment2', import("@/views/systemManagement/correlationEquipment"),
component: () => import('@/views/systemManagement/correlationEquipment2'), },
}, {
// 企业名单 path: "correlationEquipment2",
{ name: "correlationEquipment2",
path: 'companyList', component: () =>
name: 'companyList', import("@/views/systemManagement/correlationEquipment2"),
component: () => import('@/views/systemManagement/companyList'), },
} // 企业名单
] {
} path: "companyList",
] name: "companyList",
component: () => import("@/views/systemManagement/companyList"),
},
],
},
];

@ -44,14 +44,13 @@
<div class="key_item_text">警情通报</div> <div class="key_item_text">警情通报</div>
</div> </div>
<!-- 道路拥堵提醒 --> <!-- 道路拥堵提醒 -->
<div class="list_box company_dispute"> <!-- <div class="list_box company_dispute">
<div class="company_dispute_icon_box"> <div class="company_dispute_icon_box">
<!-- 遮罩层 负责旋转动画 -->
<div class="blue_mark turn"></div> <div class="blue_mark turn"></div>
<div class="company_dispute_icon"></div> <div class="company_dispute_icon"></div>
</div> </div>
<div class="company_dispute_text">道路拥堵提醒</div> <div class="company_dispute_text">道路拥堵提醒</div>
</div> </div> -->
<!-- 网络反诈提醒 --> <!-- 网络反诈提醒 -->
<div class="list_box company_notification" @click="fraud_back_change"> <div class="list_box company_notification" @click="fraud_back_change">
<div class="company_notification_icon_box"> <div class="company_notification_icon_box">
@ -98,14 +97,13 @@
<div class="statement_text">证照办理</div> <div class="statement_text">证照办理</div>
</div> </div>
<!-- 企业反馈 --> <!-- 企业反馈 -->
<div class="list_box target" @click="feedback_back_change"> <!-- <div class="list_box target" @click="feedback_back_change">
<div class="target_icon_box"> <div class="target_icon_box">
<!-- 遮罩层 负责旋转动画 -->
<div class="blue_mark turn"></div> <div class="blue_mark turn"></div>
<div class="target_icon"></div> <div class="target_icon"></div>
</div> </div>
<div class="target_text">企业反馈</div> <div class="target_text">企业反馈</div>
</div> </div> -->
</div> </div>
<!-- 跳转至人员背景审查详情 --> <!-- 跳转至人员背景审查详情 -->
<div v-else-if="is_flag === '1'" class="person_back_boxs"> <div v-else-if="is_flag === '1'" class="person_back_boxs">
@ -190,8 +188,7 @@ export default {
.supermarket_body { .supermarket_body {
border: 0px; border: 0px;
width: 98vw; width: 98vw;
height: 89vh; height: 100%;
margin-top: 2vh;
margin-left: 1vw; margin-left: 1vw;
padding-top: 2vh; padding-top: 2vh;
// position: relative; // position: relative;

@ -200,14 +200,14 @@ export default {
methods: { methods: {
get_data() { get_data() {
staffStatistics().then((res) => { staffStatistics().then((res) => {
console.log("resssss", res); //console.log("resssss", res);
this.person_list = res.data.filter((item) => { this.person_list = res.data.filter((item) => {
return item.type != "全部"; return item.type != "全部";
}); });
this.option_data = this.person_list.map((item) => { this.option_data = this.person_list.map((item) => {
return Object.assign({}, { value: item.number, name: item.type }); return Object.assign({}, { value: item.number, name: item.type });
}); });
console.log("this.optionData", this.option_data); //console.log("this.optionData", this.option_data);
this.person_sum = res.data.filter((item) => { this.person_sum = res.data.filter((item) => {
return item.type == "全部"; return item.type == "全部";
})[0].number; })[0].number;
@ -222,7 +222,7 @@ export default {
"%" "%"
); );
} }
console.log("this.optionData123", this.option_data); //console.log("this.optionData123", this.option_data);
let data = [ let data = [
["普通岗位", Number(this.option_data[0].value)], ["普通岗位", Number(this.option_data[0].value)],
["重点岗位", Number(this.option_data[1].value)], ["重点岗位", Number(this.option_data[1].value)],

@ -134,7 +134,7 @@ export default {
init() { init() {
indexGoods().then((res) => { indexGoods().then((res) => {
let chart_list = res.data; let chart_list = res.data;
console.log("chart_list", chart_list); //console.log("chart_list", chart_list);
let data_one = [Number(chart_list[0].storage), Number(chart_list[1].storage), Number(chart_list[2].storage), Number(chart_list[3].storage)]; let data_one = [Number(chart_list[0].storage), Number(chart_list[1].storage), Number(chart_list[2].storage), Number(chart_list[3].storage)];
let data_two = [Number(chart_list[0].produce), Number(chart_list[1].produce), Number(chart_list[2].produce), Number(chart_list[3].produce)]; let data_two = [Number(chart_list[0].produce), Number(chart_list[1].produce), Number(chart_list[2].produce), Number(chart_list[3].produce)];
let data_three = [Number(chart_list[0].purchase), Number(chart_list[1].purchase), Number(chart_list[2].produce), Number(chart_list[3].produce)]; let data_three = [Number(chart_list[0].purchase), Number(chart_list[1].purchase), Number(chart_list[2].produce), Number(chart_list[3].produce)];

@ -100,9 +100,9 @@ export default {
methods: { methods: {
change_map(val) { change_map(val) {
if (val == "2") { if (val == "2") {
console.log("789"); //console.log("789");
this.$router.push({ this.$router.push({
path: "/home/safetyIndex", path: "/integration/safetyIndex",
}); });
} }
}, },
@ -112,7 +112,7 @@ export default {
scoreType: 'month' scoreType: 'month'
} }
let res = await topRanking(params) let res = await topRanking(params)
console.log('restop',res); //console.log('restop',res);
let iframe_window = this.$refs.iframeDom.contentWindow let iframe_window = this.$refs.iframeDom.contentWindow
let data = res.data let data = res.data
iframe_window.postMessage(data,'*') iframe_window.postMessage(data,'*')

@ -1,3 +0,0 @@
<template>
<div></div>
</template>

@ -1,3 +0,0 @@
<template>
<div></div>
</template>

@ -1,3 +0,0 @@
<template>
<div></div>
</template>

@ -1,3 +0,0 @@
<template>
<div></div>
</template>

@ -1,3 +0,0 @@
<template>
<div></div>
</template>

@ -0,0 +1,3 @@
<template>
<div>异常图表</div>
</template>

@ -0,0 +1,3 @@
<template>
<div>风险分析</div>
</template>

@ -0,0 +1,3 @@
<template>
<div>专题评估</div>
</template>

@ -0,0 +1,3 @@
<template>
<div>综合风险</div>
</template>

@ -0,0 +1,3 @@
<template>
<div>平安企业协同共治</div>
</template>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 防攻击 -->
</div>
</template>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 危险品运输 -->
</div>
</template>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 消防安全 -->
</div>
</template>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 内部治安 -->
</div>
</template>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 列管物品 -->
</div>
</template>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 网络安全 -->
</div>
</template>

@ -0,0 +1,7 @@
<template>
<div>
<!-- 人员安全 -->
人员安全
</div>
</template>
<style lang="less"></style>

@ -0,0 +1,5 @@
<template>
<div>
<!-- 道路安全 -->
</div>
</template>

@ -0,0 +1,21 @@
<template>
<div>
<!-- 驾驶舱 -->
专题驾驶舱大屏
<el-button @click="gotoPage('/topic/personSafety')"></el-button>
</div>
</template>
<script>
export default {
data() {
return {};
},
methods: {
gotoPage(val) {
this.$router.push({
path: val,
});
},
},
};
</script>

@ -16,31 +16,33 @@
:router="true" :router="true"
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="1" route="/home/compositeIndex" <el-menu-item index="compositeIndex" route="/home/compositeIndex"
>综合指数</el-menu-item >综合指数</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="6" route="/home/applySupermarket" <el-menu-item index="applySupermarket" route="/home/applySupermarket"
>安商惠企</el-menu-item >安商惠企</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="5" route="/home/enterpriseArchives" <el-menu-item
index="enterpriseArchives"
route="/home/enterpriseArchives"
>企业档案</el-menu-item >企业档案</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="2" route="/home/realtimeWarning" <el-menu-item index="realtimeWarning" route="/home/realtimeWarning"
>实时预警</el-menu-item >实时预警</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="3" route="/home/closeLoopDispose" <el-menu-item index="closeLoopDispose" route="/home/closeLoopDispose"
>闭环处置</el-menu-item >闭环处置</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="4" route="/home/factor" <el-menu-item index="factor" route="/home/factor"
>要素资源</el-menu-item >要素资源</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
<el-menu-item index="7" route="/home/systemManagement/safeIndex" <el-menu-item index="safeIndex" route="/home/systemManagement/safeIndex"
>系统管理</el-menu-item >系统管理</el-menu-item
> >
<div class="shu"></div> <div class="shu"></div>
@ -76,20 +78,18 @@ export default {
name: "Head", name: "Head",
data() { data() {
return { return {
activeIndex: "1", activeIndex: "compositeIndex",
activeIndex2: "1",
user_show: false, user_show: false,
year: icnow.getFullYear(), year: icnow.getFullYear(),
month: icnow.getMonth() + 1, month: icnow.getMonth() + 1,
date: icnow.getDate(), date: icnow.getDate(),
day: days[icnow.getDay() - 1], day: days[icnow.getDay() - 1],
time: icnow.toTimeString().substring(0, 8), time: icnow.toTimeString().substring(0, 8),
menuList: [],
}; };
}, },
created() { created() {
this.activeIndex = sessionStorage.getItem("activeIndex") this.activeIndex = this.$route.name;
? sessionStorage.getItem("activeIndex")
: "1";
interval = setInterval(() => { interval = setInterval(() => {
let icnow = new Date(); let icnow = new Date();
this.year = icnow.getFullYear(); this.year = icnow.getFullYear();
@ -98,25 +98,28 @@ export default {
this.day = days[icnow.getDay()]; this.day = days[icnow.getDay()];
this.time = icnow.toTimeString().substring(0, 8); this.time = icnow.toTimeString().substring(0, 8);
}, 1000); }, 1000);
this.dealMenu(this.$router.options.routes);
}, },
computed: { computed: {
// //
new_time: function () { new_time: function () {
return ( return this.time;
this.time
);
}, },
// //
new_day() { new_day() {
return ( return (
this.year + '年' + this.month + '月' + this.date + '日 星期' + this.day this.year + "年" + this.month + "月" + this.date + "日 星期" + this.day
) );
} },
}, },
beforeDestroy() { beforeDestroy() {
clearInterval(interval); clearInterval(interval);
}, },
methods: { methods: {
dealMenu(menu) {
console.log(menu);
console.log(this.$route);
},
handleSelect(key) { handleSelect(key) {
sessionStorage.setItem("activeIndex", key); sessionStorage.setItem("activeIndex", key);
}, },
@ -153,9 +156,15 @@ export default {
}, 1000); }, 1000);
}, },
}, },
watch: {
$route(to, from) {
console.log("aside", to);
this.activeIndex = to.name;
},
},
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.mainHD { .mainHD {
width: 100%; width: 100%;
@ -356,4 +365,4 @@ export default {
} }
} }
} }
</style> </style>

@ -0,0 +1,140 @@
<template>
<div class="homePage">
<div class="header flex-center">首页</div>
<div class="funMenu">
<div class="line" v-for="(line, index) in menuList" :key="index">
<div
class="item"
v-for="item in line"
:key="item.name"
@click="gotoPage(item.url)"
>
<div class="iconWrap">
<img :src="item.icon" />
</div>
<div class="nameWrap">
{{ item.name }}
</div>
<div class="optWrap">点击进入</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
menuList: [
[
{
name: "集成驾驶舱",
value: "compositeIndex",
icon: require("@/assets/images/base/xj.png"),
url: "/integration/compositeIndex",
},
{
name: "专题驾驶舱",
value: "2",
icon: require("@/assets/images/base/xj.png"),
url: "/topic/screen",
},
{
name: "平安企业协同共治",
value: "3",
icon: require("@/assets/images/base/xj.png"),
url: "/teamWork/screen",
},
],
[
{
name: "平安企业服务",
value: "applySupermarket",
icon: require("@/assets/images/base/xj.png"),
url: "/integration/applySupermarket",
},
{
name: "企业档案管理",
value: "enterpriseArchives",
icon: require("@/assets/images/base/xj.png"),
url: "/integration/enterpriseArchives",
},
{
name: "企业风险指数",
value: "6",
icon: require("@/assets/images/base/xj.png"),
url: "/riskIndex/analysis",
},
],
],
};
},
methods: {
gotoPage(val) {
if (!val) {
return;
}
let jumpPath = this.$router.resolve({
path: val,
query: {},
});
console.log(jumpPath);
window.open(jumpPath.href);
},
},
};
</script>
<style lang="less">
.homePage {
height: 100%;
background-color: #0c294c;
.header {
height: 60px;
background-color: #094b71;
font-size: 18px;
font-weight: bold;
color: #ffffff;
}
.funMenu {
height: calc(100% - 60px);
display: flex;
flex-direction: column;
justify-content: center;
.line {
display: flex;
justify-content: space-evenly;
margin-bottom: 50px;
.item {
width: 180px;
height: 240px;
display: flex;
flex-direction: column;
align-items: center;
background-color: #103e71;
color: #ffffff;
.iconWrap {
margin-top: 20px;
margin-bottom: 30px;
img {
width: 80px;
height: 80px;
}
}
.nameWrap {
margin-bottom: 16px;
}
.optWrap {
padding: 4px 12px;
border-radius: 4px;
background-color: #1b70c7;
}
&:hover {
opacity: 0.8;
cursor: pointer;
}
}
}
}
}
</style>

@ -56,7 +56,7 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
.main { .main {
width: 100%; width: 100%;
height: calc(100% - 80px); height: 100%;
box-sizing: border-box; box-sizing: border-box;
display: flex; display: flex;

@ -262,27 +262,27 @@ export default {
goMore(val) { goMore(val) {
console.log(val, "val"); console.log(val, "val");
this.$router.push({ this.$router.push({
path: "/home/enterpriseRank", path: "/integration/enterpriseRank",
query: { companyParamName: val }, query: { companyParamName: val },
}); });
}, },
toCanban(index) { toCanban(index) {
sessionStorage.setItem("companyID", this.topSortData[index].companyId); sessionStorage.setItem("companyID", this.topSortData[index].companyId);
this.$router.push({ this.$router.push({
path: "/home/companyCanban", path: "/integration/companyCanban",
}); });
}, },
toArchives(val) { toArchives(val) {
sessionStorage.setItem("companyID", val.companyId); sessionStorage.setItem("companyID", val.companyId);
this.$router.push({ this.$router.push({
path: "/home/companyCanban", path: "/integration/companyCanban",
}); });
}, },
change_map(val) { change_map(val) {
if (val == "地图") { if (val == "地图") {
this.$router.push({ this.$router.push({
path: "/home/compositeIndex", path: "/integration/compositeIndex",
}); });
} }
}, },

@ -15,7 +15,7 @@
<el-menu-item <el-menu-item
@click="clickMenu(item)" @click="clickMenu(item)"
v-for="item in menuList" v-for="item in menuList"
:key="item.name" :key="item.label"
:index="item.value" :index="item.value"
> >
<i> <i>
@ -35,33 +35,41 @@ export default {
menu: [ menu: [
// //
{ {
path: "/safeIndex", path: "/integration/systemManagement/safeIndex",
name: "safeIndex",
label: "平安指数", label: "平安指数",
value: "1", value: "1",
src: require("@/assets/companyFile/menu01.png"), src: require("@/assets/companyFile/menu01.png"),
}, },
{ {
path: "/companyScore", path: "/integration/systemManagement/companyScore",
name: "companyScore",
label: "企业赋分", label: "企业赋分",
value: "2", value: "2",
src: require("@/assets/companyFile/menu02.png"), src: require("@/assets/companyFile/menu02.png"),
}, },
{ {
path: "/companyList", path: "/integration/systemManagement/companyList",
name: "companyList",
label: "企业名单", label: "企业名单",
value: "3", value: "3",
src: require("@/assets/companyFile/menu03.png"), src: require("@/assets/companyFile/menu03.png"),
}, },
{ {
path: "/correlationEquipment", path: "/integration/systemManagement/correlationEquipment",
name: "correlationEquipment",
label: "关联设备", label: "关联设备",
value: "4", value: "4",
src: require("@/assets/companyFile/menu04.png"), src: require("@/assets/companyFile/menu04.png"),
}, },
{
path: "/integration/systemManagement/floatPopulation",
label: "流动人口",
value: "5",
src: require("@/assets/companyFile/menu04.png"),
},
{
path: "/integration/systemManagement/dangerChemicals",
label: "危化品风险",
value: "5",
src: require("@/assets/companyFile/menu04.png"),
},
], ],
}; };
}, },
@ -86,7 +94,7 @@ export default {
// //
clickMenu(val) { clickMenu(val) {
this.$router.push({ this.$router.push({
name: val.name, path: val.path,
}); });
}, },
setCurrentRoute() { setCurrentRoute() {

@ -0,0 +1,76 @@
<template>
<el-card class="box-card">
<div class="topZS"></div>
<div class="bottomZS"></div>
<div slot="header" class="clearfix">
<span>流动人口</span>
</div>
<div class="cardBody">
<div class="flexSpaceBetween">
<div class="tableOperator"></div>
<div class="searchWrap">
<el-form :inline="true" :model="queryParam" class="demo-form-inline">
<el-form-item label="姓名">
<el-input
v-model="queryParam.name"
placeholder="企业名称"
></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="searchQuery"></el-button>
<el-button type="primary" plain @click="searchReset"
>重置</el-button
>
</el-form-item>
</el-form>
</div>
</div>
<div>
<gMainTable
ref="gMainTable"
:tableData="dataSource"
:columns="columns"
rowKey="id"
:pagination="ipagination"
@pageSizeChange="handlePageSizeChange"
@currentPageChange="handleCurrentPageChange"
>
</gMainTable>
</div>
</div>
</el-card>
</template>
<script>
import { tableListMixins } from "@/loveflow/mixins/tableListMixins";
export default {
mixins: [tableListMixins],
data() {
return {
columns: [
{
prop: "name",
label: "企业名称",
},
{
prop: "card",
label: "企业风险",
},
{
prop: "tel",
label: "指数",
},
{
prop: "address",
label: "更新时间",
},
],
};
},
};
</script>
<style lang="less" scoped>
@import url("../index.less");
</style>

@ -0,0 +1,89 @@
<template>
<el-card class="box-card">
<div class="topZS"></div>
<div class="bottomZS"></div>
<div slot="header" class="clearfix">
<span>流动人口</span>
</div>
<div class="cardBody">
<div class="flexSpaceBetween">
<div class="tableOperator"></div>
<div class="searchWrap">
<el-form :inline="true" :model="queryParam" class="demo-form-inline">
<el-form-item label="姓名">
<el-input v-model="queryParam.name" placeholder="姓名"></el-input>
</el-form-item>
<el-form-item label="证件号码">
<el-input
v-model="queryParam.card"
placeholder="证件号码"
></el-input>
</el-form-item>
<el-form-item label="联系方式">
<el-input
v-model="queryParam.tel"
placeholder="联系方式"
></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="searchQuery"></el-button>
<el-button type="primary" plain @click="searchReset"
>重置</el-button
>
</el-form-item>
</el-form>
</div>
</div>
<div>
<gMainTable
ref="gMainTable"
:tableData="dataSource"
:columns="columns"
rowKey="id"
:pagination="ipagination"
@pageSizeChange="handlePageSizeChange"
@currentPageChange="handleCurrentPageChange"
>
</gMainTable>
</div>
</div>
</el-card>
</template>
<script>
import { tableListMixins } from "@/loveflow/mixins/tableListMixins";
export default {
mixins: [tableListMixins],
data() {
return {
columns: [
{
prop: "id",
label: "序号",
},
{
prop: "name",
label: "姓名",
},
{
prop: "card",
label: "证件号码",
},
{
prop: "tel",
label: "联系电话",
},
{
prop: "address",
label: "居住地址",
},
],
};
},
};
</script>
<style lang="less" scoped>
@import url("../index.less");
</style>

@ -0,0 +1,152 @@
/* card统一样式 */
.el-card.box-card.is-always-shadow {
border: 0px;
/* 控制card布局高度,用于适配 */
height: calc(100vh - 120px);
position: relative;
background: url("~@/assets/companyFile/22136.png") no-repeat !important;
background-size: 100% 100% !important;
}
/* card统一样式 */
/deep/.el-card__header {
border-bottom: 1px solid #a1a1a1 !important;
.clearfix {
span {
font-size: 17px;
font-weight: 400;
color: #fff;
text-shadow: 0 0 9px rgba(21, 255, 198, 0.64);
}
}
}
.cardBody {
.search_top {
width: 85.2vw;
height: 4.3vh;
// border: 0.1px solid #4d8f89;
display: flex;
justify-content: space-between;
.select_left {
display: flex;
justify-content: space-between;
width: 21vw;
}
.search_right {
display: flex;
.el-button {
display: flex;
align-items: center;
font-size: 17px;
height: 4vh;
border-radius: 0px;
color: #fff;
background: rgba(0, 0, 0, 0);
border: 0.1px solid #495e70;
}
.el-button:hover {
background: #4d8f89;
}
}
/deep/.el-input--suffix .el-input__inner {
color: #fff;
border: 0.1px solid #34a6a6;
border-radius: 0px;
background: rgba(0, 0, 0, 0);
width: 10vw;
height: 4vh;
}
/deep/ .el-input.el-input--prefix {
width: 10vw;
}
/deep/.el-input__icon {
color: #fff;
line-height: 4vh;
height: 4vh;
}
/deep/ .search_right_input.el-input {
.el-input__inner {
color: #fff;
border: 0.1px solid #495e70;
border-radius: 0px;
background: rgba(0, 0, 0, 0);
width: 16vw;
height: 4vh;
}
}
}
.table_body {
width: 85.2vw;
height: 68vh;
margin-top: 3vh;
// border: 0.1px solid #4d8f89;
}
.flexSpaceBetween {
display: flex;
justify-content: space-between;
.searchWrap {
/deep/ .el-input__inner {
color: #fff;
border: 0.1px solid #495e70;
background-color: rgba(0, 0, 0, 0);
}
/deep/ .el-form-item__label {
color: #fff;
}
}
}
/deep/ .el-table {
.el-table__header-wrapper {
tr {
color: #fff;
font-weight: 500;
background: linear-gradient(to right, #284f49, #2f6363, #233b38);
th {
background-color: transparent;
}
}
}
.el-table__body {
color: #ffffff;
background-color: #233438;
tr {
color: #ffffff;
background-color: #233438;
}
}
}
.gPagination {
background-color: transparent;
}
/deep/.el-pagination {
.el-pagination__total {
color: #ffffff;
}
.el-pagination__sizes {
.el-input__inner {
background: #3c4b4a;
color: #fff;
}
}
.btn-prev {
background: #3c4b4a;
color: #fff;
}
.btn-next {
background: #3c4b4a;
color: #fff;
}
.el-pager {
.number {
background: #3c4b4a;
color: #fff;
}
}
.el-pagination__jump {
color: #fff;
.el-input__inner {
background: #3c4b4a;
color: #fff;
}
}
}
}
Loading…
Cancel
Save