1032 lines
22 KiB
Plaintext
1032 lines
22 KiB
Plaintext
![]() |
@{
|
|||
|
ViewBag.Title = "Index";
|
|||
|
Layout = "~/Views/Shared/_Index.cshtml";
|
|||
|
}
|
|||
|
@inject Microsoft.AspNetCore.Hosting.IWebHostEnvironment env
|
|||
|
<meta name="renderer" content="webkit">
|
|||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|||
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
|||
|
<style>
|
|||
|
|
|||
|
|
|||
|
.layui-card {
|
|||
|
border: 1px solid #f2f2f2;
|
|||
|
border-radius: 5px;
|
|||
|
}
|
|||
|
|
|||
|
.icon {
|
|||
|
margin-right: 10px;
|
|||
|
color: #1aa094;
|
|||
|
}
|
|||
|
|
|||
|
.icon-cray {
|
|||
|
color: #ffb800 !important;
|
|||
|
}
|
|||
|
|
|||
|
.icon-blue {
|
|||
|
color: #1e9fff !important;
|
|||
|
}
|
|||
|
|
|||
|
.icon-tip {
|
|||
|
color: #ff5722 !important;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-qiuck-module {
|
|||
|
text-align: center;
|
|||
|
margin-top: 10px
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-qiuck-module a i {
|
|||
|
display: inline-block;
|
|||
|
width: 100%;
|
|||
|
height: 60px;
|
|||
|
line-height: 60px;
|
|||
|
text-align: center;
|
|||
|
border-radius: 2px;
|
|||
|
font-size: 30px;
|
|||
|
background-color: #F8F8F8;
|
|||
|
color: #333;
|
|||
|
transition: all .3s;
|
|||
|
-webkit-transition: all .3s;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-qiuck-module a cite {
|
|||
|
position: relative;
|
|||
|
top: 2px;
|
|||
|
display: block;
|
|||
|
color: #666;
|
|||
|
text-overflow: ellipsis;
|
|||
|
overflow: hidden;
|
|||
|
white-space: nowrap;
|
|||
|
font-size: 14px;
|
|||
|
}
|
|||
|
|
|||
|
.welcome-module {
|
|||
|
width: 100%;
|
|||
|
height: 210px;
|
|||
|
}
|
|||
|
|
|||
|
.panel {
|
|||
|
background-color: #fff;
|
|||
|
border: 1px solid transparent;
|
|||
|
border-radius: 3px;
|
|||
|
-webkit-box-shadow: 0 1px 1px rgba(0,0,0,.05);
|
|||
|
box-shadow: 0 1px 1px rgba(0,0,0,.05)
|
|||
|
}
|
|||
|
|
|||
|
.panel-body {
|
|||
|
padding: 10px
|
|||
|
}
|
|||
|
|
|||
|
.panel-title {
|
|||
|
margin-top: 0;
|
|||
|
margin-bottom: 0;
|
|||
|
font-size: 12px;
|
|||
|
color: inherit
|
|||
|
}
|
|||
|
|
|||
|
.label {
|
|||
|
display: inline;
|
|||
|
padding: .2em .6em .3em;
|
|||
|
font-size: 75%;
|
|||
|
font-weight: 700;
|
|||
|
line-height: 1;
|
|||
|
color: #fff;
|
|||
|
text-align: center;
|
|||
|
white-space: nowrap;
|
|||
|
vertical-align: baseline;
|
|||
|
border-radius: .25em;
|
|||
|
margin-top: .3em;
|
|||
|
}
|
|||
|
|
|||
|
.label {
|
|||
|
display: inline;
|
|||
|
padding: .2em .6em .3em;
|
|||
|
font-size: 75%;
|
|||
|
font-weight: 700;
|
|||
|
line-height: 1;
|
|||
|
color: #fff;
|
|||
|
text-align: center;
|
|||
|
white-space: nowrap;
|
|||
|
vertical-align: baseline;
|
|||
|
border-radius: .25em;
|
|||
|
margin-top: .3em;
|
|||
|
}
|
|||
|
|
|||
|
.layui-red {
|
|||
|
color: red
|
|||
|
}
|
|||
|
|
|||
|
.main_btn > p {
|
|||
|
height: 40px;
|
|||
|
}
|
|||
|
|
|||
|
.layui-bg-number {
|
|||
|
background-color: #F8F8F8;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-notice:hover {
|
|||
|
background: #f6f6f6;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-notice {
|
|||
|
padding: 7px 16px;
|
|||
|
clear: both;
|
|||
|
font-size: 12px !important;
|
|||
|
cursor: pointer;
|
|||
|
position: relative;
|
|||
|
transition: background 0.2s ease-in-out;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-notice-title, .layuimini-notice-label {
|
|||
|
padding-right: 70px !important;
|
|||
|
text-overflow: ellipsis !important;
|
|||
|
overflow: hidden !important;
|
|||
|
white-space: nowrap !important;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-notice-title {
|
|||
|
line-height: 28px;
|
|||
|
font-size: 14px;
|
|||
|
}
|
|||
|
|
|||
|
.layuimini-notice-extra {
|
|||
|
position: absolute;
|
|||
|
top: 50%;
|
|||
|
margin-top: -8px;
|
|||
|
right: 16px;
|
|||
|
display: inline-block;
|
|||
|
height: 16px;
|
|||
|
color: #999;
|
|||
|
}
|
|||
|
</style>
|
|||
|
<script>
|
|||
|
layui.use(['layer', 'echarts', 'common'], function () {
|
|||
|
var $ = layui.jquery,
|
|||
|
layer = layui.layer,
|
|||
|
common = layui.common,
|
|||
|
element = layui.element,
|
|||
|
echarts = layui.echarts;
|
|||
|
wcLoading.close();
|
|||
|
|
|||
|
|
|||
|
const fShow = true;
|
|||
|
const tShow = false;
|
|||
|
|
|||
|
|
|||
|
//基准配置项
|
|||
|
const width_iobox = 300;
|
|||
|
const width_iobox_16bit = 200;
|
|||
|
const width_iobox_8bit = 200;
|
|||
|
const height_iobox = 810;
|
|||
|
|
|||
|
const width_iobox_cpu = 200;
|
|||
|
const width_iobox_cm = 200;
|
|||
|
|
|||
|
//拖拽
|
|||
|
const draggable_dev = true;
|
|||
|
|
|||
|
// //开发色彩
|
|||
|
// const fill_backgroud = '#8d98a3';
|
|||
|
// const fill_iobox = '#8d98a3';
|
|||
|
// const stroke_iobox = '#494d52';;
|
|||
|
// const stroke_iobox_line = '#42444a';
|
|||
|
// const stroke_iobox_spiltline = '#474b58';
|
|||
|
// const fill_top_name = '#f1f4f6';
|
|||
|
// const fill_top_name_value = '#f1f4f6';
|
|||
|
// const fill_rect = '#a4a9ab';
|
|||
|
// const fill_rect_text_name = '#e5e9ec';
|
|||
|
// const fill_rect_text_description = '#f3f6f8';
|
|||
|
// const fill_rect_io_on = '#aaff00';
|
|||
|
// const fill_rect_io_off = '#a3a6a9';
|
|||
|
|
|||
|
//新版色彩
|
|||
|
const fill_backgroud = '#28333e';
|
|||
|
//const fill_backgroud = '#2a0056';
|
|||
|
// const fill_iobox = '#2492e9';//00
|
|||
|
// const fill_iobox = '#345266';//001
|
|||
|
const fill_iobox = '#345b87';//002
|
|||
|
// const fill_iobox = '#50657a';//003
|
|||
|
// const fill_iobox = '#334b64';//004
|
|||
|
//const fill_iobox = '#3d5062';//005
|
|||
|
const stroke_iobox = '#494d52';;
|
|||
|
const stroke_iobox_line = '#42444a';
|
|||
|
const stroke_iobox_spiltline = '#474b58';
|
|||
|
const fill_top_name = '#ffffff';
|
|||
|
const fill_top_name_value = '#ffffff';
|
|||
|
const fill_rect = '#cecece';
|
|||
|
const fill_rect_text_name = '#ffffff';
|
|||
|
//const fill_rect_text_name = '#02f2e0';
|
|||
|
const fill_rect_text_description = '#ffffff';
|
|||
|
//const fill_rect_text_description = '#02f2e0';
|
|||
|
const fill_rect_io_on = '#00ff55';//'#00ff7f'
|
|||
|
//const fill_rect_io_on = '#00ff7f'
|
|||
|
const fill_rect_io_off = '#cecece';
|
|||
|
|
|||
|
const leafer = new LeaferUI.Leafer({
|
|||
|
view: 'idmain', // 支持 window 、div、canvas 标签对象, 可使用id字符串(不用加 # 号)
|
|||
|
width: 3000, // 不能设置为 0, 否则会变成自动布局
|
|||
|
height: 900,
|
|||
|
fill: fill_backgroud,
|
|||
|
move: {
|
|||
|
drag: true,
|
|||
|
},
|
|||
|
wheel: {
|
|||
|
zoomMode: true,
|
|||
|
zoomSpeed: 0.01,
|
|||
|
},
|
|||
|
zoom: {
|
|||
|
min: 0.4,
|
|||
|
max: 1.5,
|
|||
|
}
|
|||
|
})
|
|||
|
|
|||
|
const group = new LeaferUI.Group({ x: 0, y: 0 })
|
|||
|
leafer.add(group)
|
|||
|
// const image_cpu = new LeaferUI.Image({
|
|||
|
// x: 100,
|
|||
|
// y: 50,
|
|||
|
// url: '/imagesnet/S71500.png',
|
|||
|
// draggable: draggable_dev,
|
|||
|
// height: 80
|
|||
|
// })
|
|||
|
|
|||
|
|
|||
|
|
|||
|
var b11 = true;
|
|||
|
var b12 = true;
|
|||
|
var b13 = true;
|
|||
|
var b14 = false;
|
|||
|
var b21 = true;
|
|||
|
var b31 = true;
|
|||
|
var b32 = false;
|
|||
|
var b33 = true;
|
|||
|
var b34 = true;
|
|||
|
var b35 = false;
|
|||
|
|
|||
|
if (tShow) {
|
|||
|
const t11 = new LeaferUI.Line({
|
|||
|
id: 'line11',
|
|||
|
points: [350 + 75, 210, 875, 310],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
const true14 = new LeaferUI.Image({
|
|||
|
x: (875 - 350 - 75) / 2 + 350 + 75 - 15,
|
|||
|
y: (310 - 210) / 2 + 210 - 15,
|
|||
|
url: '/imagesnet/true.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 30,
|
|||
|
height: 30,
|
|||
|
})
|
|||
|
group.add(true14)
|
|||
|
}
|
|||
|
if (fShow) {
|
|||
|
const f14 = new LeaferUI.Line({
|
|||
|
id: 'f14',
|
|||
|
points: [1250 + 75, 210, 875, 310],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
const false14 = new LeaferUI.Image({
|
|||
|
x: (1250 + 75 - 875) / 2 + 875 - 15,
|
|||
|
y: (310 - 210) / 2 + 210 - 15,
|
|||
|
url: '/imagesnet/false.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 30,
|
|||
|
height: 30,
|
|||
|
})
|
|||
|
group.add(false14)
|
|||
|
|
|||
|
const f32 = new LeaferUI.Line({
|
|||
|
id: 'line32',
|
|||
|
points: [500 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
const false32 = new LeaferUI.Image({
|
|||
|
x: (875 - 500 - 75) / 2 + 500 + 75 - 15,
|
|||
|
y: (650 - 520) / 2 + 520 - 15,
|
|||
|
url: '/imagesnet/false.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 30,
|
|||
|
height: 30,
|
|||
|
})
|
|||
|
group.add(false32)
|
|||
|
|
|||
|
const f35 = new LeaferUI.Line({
|
|||
|
id: 'line35',
|
|||
|
points: [1400 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
const false35 = new LeaferUI.Image({
|
|||
|
x: (1400 + 75 - 875) / 2 + 875 - 15,
|
|||
|
y: (650 - 520) / 2 + 520 - 15,
|
|||
|
url: '/imagesnet/false.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 30,
|
|||
|
height: 30,
|
|||
|
})
|
|||
|
group.add(false35)
|
|||
|
}
|
|||
|
const image_disk = new LeaferUI.Image({
|
|||
|
x: 350,
|
|||
|
y: 35,
|
|||
|
url: '/imagesnet/面板.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_disk_name = new LeaferUI.Text({
|
|||
|
x: 350,
|
|||
|
y: 35 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '数据大屏',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_disk_name)
|
|||
|
var image_disk_address = new LeaferUI.Text({
|
|||
|
x: 350,
|
|||
|
y: 35 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.130',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_disk_address)
|
|||
|
const line11 = new LeaferUI.Line({
|
|||
|
id: 'line11',
|
|||
|
points: [350+75, 210, 875, 310],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line11);
|
|||
|
|
|||
|
|
|||
|
const image_appserver = new LeaferUI.Image({
|
|||
|
x: 650,
|
|||
|
y: 35,
|
|||
|
url: '/imagesnet/应用服务器.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_appserver_name = new LeaferUI.Text({
|
|||
|
x: 650,
|
|||
|
y: 35 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '管理系统',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_appserver_name)
|
|||
|
var image_appserver_address = new LeaferUI.Text({
|
|||
|
x: 650,
|
|||
|
y: 35 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.247',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_appserver_address)
|
|||
|
const line12 = new LeaferUI.Line({
|
|||
|
id: 'line12',
|
|||
|
points: [650 + 75, 210, 875, 310],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line12);
|
|||
|
|
|||
|
const image_appserver3d = new LeaferUI.Image({
|
|||
|
x: 950,
|
|||
|
y: 35,
|
|||
|
url: '/imagesnet/应用服务器.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_3d_name = new LeaferUI.Text({
|
|||
|
x: 950,
|
|||
|
y: 35 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '3D可视化系统',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_3d_name)
|
|||
|
var image_3d_address = new LeaferUI.Text({
|
|||
|
x: 950,
|
|||
|
y: 35 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.220',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_3d_address)
|
|||
|
const line13 = new LeaferUI.Line({
|
|||
|
id: 'line13',
|
|||
|
points: [950 + 75, 210, 875, 310],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line13);
|
|||
|
|
|||
|
const image_appserver2d = new LeaferUI.Image({
|
|||
|
x: 1250,
|
|||
|
y: 35,
|
|||
|
url: '/imagesnet/应用服务器.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_2d_name = new LeaferUI.Text({
|
|||
|
x: 1250,
|
|||
|
y: 35 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '2D可视化系统',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_2d_name)
|
|||
|
var image_2d_address = new LeaferUI.Text({
|
|||
|
x: 1250,
|
|||
|
y: 35 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.230',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_2d_address)
|
|||
|
const line14 = new LeaferUI.Line({
|
|||
|
id: 'line14',
|
|||
|
points: [1250 + 75, 210, 875, 310],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line14);
|
|||
|
|
|||
|
|
|||
|
const image_exchange = new LeaferUI.Image({
|
|||
|
x: 800,
|
|||
|
y: 250+75,
|
|||
|
url: '/imagesnet/交换机.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_exchange_name = new LeaferUI.Text({
|
|||
|
x: 800,
|
|||
|
y: 250 + 75 + 160 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '交换机',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_exchange_name)
|
|||
|
var image_exchange_address = new LeaferUI.Text({
|
|||
|
x: 800,
|
|||
|
y: 250 + 75 + 160 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.1',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_exchange_address)
|
|||
|
|
|||
|
const image_server = new LeaferUI.Image({
|
|||
|
x: 1300,
|
|||
|
y: 75 + 250,
|
|||
|
url: '/imagesnet/服务器.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_server_name = new LeaferUI.Text({
|
|||
|
x: 1300,
|
|||
|
y: 75 + 250 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: 'L2服务器',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_server_name)
|
|||
|
var image_server_address = new LeaferUI.Text({
|
|||
|
x: 1300,
|
|||
|
y: 75 + 250 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.15',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_server_address)
|
|||
|
const line21 = new LeaferUI.Line({
|
|||
|
id: 'line21',
|
|||
|
points: [1300, 400, 945, 400],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line21);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
const image_PLC = new LeaferUI.Image({
|
|||
|
x: 200,
|
|||
|
y: 150 + 500,
|
|||
|
url: '/imagesnet/PLC.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width:134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_PLC_name = new LeaferUI.Text({
|
|||
|
x: 200,
|
|||
|
y: 150 + 500 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: 'S7 400',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_PLC_name)
|
|||
|
var image_PLC_address = new LeaferUI.Text({
|
|||
|
x: 200,
|
|||
|
y: 150 + 500 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.10',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_PLC_address)
|
|||
|
const line31 = new LeaferUI.Line({
|
|||
|
id: 'line31',
|
|||
|
points: [200 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line31);
|
|||
|
|
|||
|
|
|||
|
const image_PLC2 = new LeaferUI.Image({
|
|||
|
x: 500,
|
|||
|
y: 150 + 500,
|
|||
|
url: '/imagesnet/PLC.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_PLC2_name = new LeaferUI.Text({
|
|||
|
x: 500,
|
|||
|
y: 150 + 500+140+10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: 'S7 300',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_PLC2_name)
|
|||
|
var image_PLC2_address = new LeaferUI.Text({
|
|||
|
x: 500,
|
|||
|
y: 150 + 500 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.20',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_PLC2_address)
|
|||
|
const line32 = new LeaferUI.Line({
|
|||
|
id: 'line32',
|
|||
|
points: [500 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line32);
|
|||
|
|
|||
|
|
|||
|
const image_et = new LeaferUI.Image({
|
|||
|
x: 800,
|
|||
|
y: 150 + 500,
|
|||
|
url: '/imagesnet/PLC.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_et_name = new LeaferUI.Text({
|
|||
|
x: 800,
|
|||
|
y: 150 + 500 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '子站#1 ET200',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_et_name)
|
|||
|
var image_et_address = new LeaferUI.Text({
|
|||
|
x: 800,
|
|||
|
y: 150 + 500 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.130',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_et_address)
|
|||
|
const line33 = new LeaferUI.Line({
|
|||
|
id: 'line33',
|
|||
|
points: [800 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line33);
|
|||
|
|
|||
|
|
|||
|
const image_et2 = new LeaferUI.Image({
|
|||
|
x: 1100,
|
|||
|
y: 150 + 500,
|
|||
|
url: '/imagesnet/PLC.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_et2_name = new LeaferUI.Text({
|
|||
|
x: 1100,
|
|||
|
y: 150 + 500 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '子站#2 S7 200',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_et2_name)
|
|||
|
var image_et2_address = new LeaferUI.Text({
|
|||
|
x: 1100,
|
|||
|
y: 150 + 500 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.140',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_et2_address)
|
|||
|
const line34 = new LeaferUI.Line({
|
|||
|
id: 'line34',
|
|||
|
points: [1100 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line34);
|
|||
|
|
|||
|
|
|||
|
const image_computer = new LeaferUI.Image({
|
|||
|
x: 1400,
|
|||
|
y: 150 + 500,
|
|||
|
url: '/imagesnet/计算机.png',
|
|||
|
draggable: draggable_dev,
|
|||
|
width: 134,
|
|||
|
height: 160,
|
|||
|
})
|
|||
|
var image_computer_name = new LeaferUI.Text({
|
|||
|
x: 1400,
|
|||
|
y: 150 + 500 + 140 + 10,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: 'WINCC上位机',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_computer_name)
|
|||
|
var image_computer_address = new LeaferUI.Text({
|
|||
|
x: 1400,
|
|||
|
y: 150 + 500 + 140 + 25,
|
|||
|
width: 134,
|
|||
|
fill: fill_top_name,
|
|||
|
text: '192.168.100.50',
|
|||
|
textAlign: 'center',
|
|||
|
verticalAlign: 'middle',
|
|||
|
textWrap: 'none',
|
|||
|
padding: 0,
|
|||
|
fontSize: 12
|
|||
|
})
|
|||
|
group.add(image_computer_address)
|
|||
|
const line35 = new LeaferUI.Line({
|
|||
|
id: 'line35',
|
|||
|
points: [1400 + 75, 650, 875, 520],
|
|||
|
strokeWidth: 2,
|
|||
|
stroke: '#cecece',
|
|||
|
shadow: {
|
|||
|
x: 0,
|
|||
|
y: 0,
|
|||
|
blur: 1,
|
|||
|
color: '#cecece',
|
|||
|
visible: true,
|
|||
|
}
|
|||
|
})
|
|||
|
group.add(line35);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//group.add(image_cpu)
|
|||
|
group.add(image_PLC)
|
|||
|
group.add(image_et)
|
|||
|
group.add(image_PLC2)
|
|||
|
group.add(image_et2)
|
|||
|
group.add(image_disk)
|
|||
|
//group.add(image_valve)
|
|||
|
group.add(image_server)
|
|||
|
group.add(image_exchange)
|
|||
|
group.add(image_computer)
|
|||
|
group.add(image_appserver)
|
|||
|
group.add(image_appserver2d)
|
|||
|
group.add(image_appserver3d)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
image_PLC.on(LeaferUI.PointerEvent.DOUBLE_TAP, function () {
|
|||
|
layer.open({
|
|||
|
type: 2, // iframe层类型
|
|||
|
title: 'S7 400 IO状态',
|
|||
|
area: ['95%', '95%'], // 设置弹出层大小
|
|||
|
content: '/PenMeiReportManage/PenMeiJMReportNew/Index' // 指定要加载的URL地址
|
|||
|
});
|
|||
|
});
|
|||
|
// var element = layui.element;
|
|||
|
// debugger;
|
|||
|
// element.tabAdd('layuiminiTab', {
|
|||
|
// title: '设备IO监控'
|
|||
|
// , content: 'http://localhost:8058/PenMeiReportManage/PenMeiJMReportNew/Index' //支持传入html
|
|||
|
// , id: '/PenMeiReportManage/PenMeiJMReportNew/Index'
|
|||
|
// });
|
|||
|
// element.tabChange('layuiminiTab', '/PenMeiChartsManage/PenMeiHistoryTechCharts/Index')
|
|||
|
// debugger;
|
|||
|
|
|||
|
|
|||
|
|
|||
|
var t = null;
|
|||
|
function time() {
|
|||
|
clearTimeout(t); //清除定时器
|
|||
|
UpdataChart()
|
|||
|
t = setTimeout(time, 1 * 1000); //设定定时器,循环运行
|
|||
|
|
|||
|
}
|
|||
|
async function UpdataChart() {
|
|||
|
|
|||
|
myajax = await $.ajax({
|
|||
|
url: "/PenMeiReportManage/PenMeiJMReport/GetRealIOState",
|
|||
|
type: "Get",
|
|||
|
dataType: "json",
|
|||
|
success: function (redata) {
|
|||
|
|
|||
|
}
|
|||
|
});
|
|||
|
$.when(myajax).done(function (redata) {
|
|||
|
//debugger;
|
|||
|
// leafer.findOne('#' + 'RUN1').fill = fill_rect_io_on;
|
|||
|
// leafer.findOne('#' + 'RUN').fill = fill_rect_io_on;
|
|||
|
// leafer.findOne('#' + 'ETH0').fill = fill_rect_io_on;
|
|||
|
// leafer.findOne('#' + 'ETH1').fill = fill_rect_io_on;
|
|||
|
// leafer.findOne('#' + 'ETH2').fill = fill_rect_io_on;
|
|||
|
// for (var ioName in redata) {
|
|||
|
// leafer.findOne('#' + ioName.replace('_', '.')).fill = (redata[ioName] == '1') ? fill_rect_io_on : fill_rect_io_off;
|
|||
|
|
|||
|
// }
|
|||
|
// for (var ioslot = 0; ioslot < 8; ioslot++) {
|
|||
|
// leafer.findOne('#' + 'Slot:' + ioslot + '_OnlineSatate').fill = fill_rect_io_on;
|
|||
|
// }
|
|||
|
|
|||
|
});
|
|||
|
}
|
|||
|
t = setTimeout(time, 1 * 1000); //开始运行
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
var lineT = true;
|
|||
|
var t2 = null;
|
|||
|
function time2() {
|
|||
|
clearTimeout(t2); //清除定时器
|
|||
|
UpShadow()
|
|||
|
if (lineT) {
|
|||
|
t2 = setTimeout(time2, 1 * 100); //设定定时器,循环运行
|
|||
|
} else {
|
|||
|
t2 = setTimeout(time2, 1 * 500); //设定定时器,循环运行
|
|||
|
}
|
|||
|
|
|||
|
//t2 = setTimeout(time2, 1 * 200); //设定定时器,循环运行
|
|||
|
}
|
|||
|
function lineTT(linename,linestate) {
|
|||
|
leafer.findOne('#' + linename).shadow.blur = linestate?10:10;
|
|||
|
leafer.findOne('#' + linename).stroke = linestate ? 'rgb(50,205,121)' : '#FF0000'
|
|||
|
leafer.findOne('#' + linename).shadow.color = linestate ? 'rgb(50,205,121)' : '#FF0000AA'
|
|||
|
}
|
|||
|
function lineTF(linename) {
|
|||
|
leafer.findOne('#' + linename).shadow.blur = 1;
|
|||
|
leafer.findOne('#' + linename).stroke = '#cecece'
|
|||
|
leafer.findOne('#' + linename).shadow.color = '#cecece'
|
|||
|
}
|
|||
|
async function UpShadow() {
|
|||
|
if (lineT) {
|
|||
|
lineTT("line11", b11)
|
|||
|
lineTT("line12", b12)
|
|||
|
lineTT("line13", b13)
|
|||
|
lineTT("line14", b14)
|
|||
|
lineTT("line21", b21)
|
|||
|
lineTT("line31", b31)
|
|||
|
lineTT("line32", b32)
|
|||
|
lineTT("line33", b33)
|
|||
|
lineTT("line34", b34)
|
|||
|
lineTT("line35", b35)
|
|||
|
} else {
|
|||
|
lineTF("line11")
|
|||
|
lineTF("line12")
|
|||
|
lineTF("line13")
|
|||
|
lineTF("line14")
|
|||
|
lineTF("line21")
|
|||
|
lineTF("line31")
|
|||
|
lineTF("line32")
|
|||
|
lineTF("line33")
|
|||
|
lineTF("line34")
|
|||
|
lineTF("line35")
|
|||
|
}
|
|||
|
lineT = !lineT;
|
|||
|
}
|
|||
|
t2 = setTimeout(time2, 1 * 300); //开始运行
|
|||
|
})
|
|||
|
</script>
|
|||
|
<script type="text/javascript" src="~/lib//leafer-ui@1.0.0-rc.8/web.js"></script>
|
|||
|
<div style="width:100%;height:100%;">
|
|||
|
<div class="layuimini-container" style="width:100%;height:100%; ">
|
|||
|
<div id="idmain">
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|