This commit is contained in:
fan 2020-01-20 11:10:37 +08:00
commit 847b80e9d9
15 changed files with 332 additions and 54 deletions

View File

@ -1,27 +0,0 @@
import Group from 'zrender/src/container/Group';
import createPathSvg from './components/pathsvg';
export default class AirConditioner extends Group {
constructor(device) {
super();
this.model = device.model;
this.zlevel = device.model.zlevel;
this.z = device.model.z;
this._type = device.model._type;
this.code = device.model.code;
this.create();
}
create() {
this.grouper = new Group({
id: this.model.code,
position: [this.model.point.x, this.model.point.y]
});
this.path = createPathSvg(this.model);
this.add(this.grouper);
this.grouper.add(this.path);
}
setModel(dx, dy) {
this.model.point.x += dx;
this.model.point.y += dy;
}
}

View File

@ -0,0 +1,27 @@
import Group from 'zrender/src/container/Group';
import createPathSvg from '../components/pathsvg';
export default class airConditioner extends Group {
constructor(device) {
super();
this.model = device.model;
this.zlevel = device.model.zlevel;
this.z = device.model.z;
this._type = device.model._type;
this.code = device.model.code;
this.create();
}
create() {
this.grouper = new Group({
id: this.model.code,
position: [this.model.point.x, this.model.point.y]
});
this.path = createPathSvg(this.model);
this.add(this.grouper);
this.grouper.add(this.path);
}
setModel(dx, dy) {
this.model.point.x += dx;
this.model.point.y += dy;
}
}

View File

@ -31,7 +31,7 @@ export default class chiller extends Group {
},
style: {
stroke:this.model.color,
lineWidth:1
lineWidth:2
}
});
this.circle1 = new Circle({
@ -81,7 +81,7 @@ export default class chiller extends Group {
},
style: {
stroke:this.model.color,
lineWidth:1
lineWidth:2
}
});
@ -104,7 +104,7 @@ export default class chiller extends Group {
},
style: {
stroke:this.model.color,
lineWidth:1
lineWidth:2
}
});
@ -127,7 +127,7 @@ export default class chiller extends Group {
},
style: {
stroke:this.model.color,
lineWidth:1
lineWidth:2
}
});

View File

@ -0,0 +1,88 @@
import Group from 'zrender/src/container/Group';
import Polygon from 'zrender/src/graphic/shape/Polygon';
import Polyline from 'zrender/src/graphic/shape/Polyline';
import Circle from 'zrender/src/graphic/shape/Circle';
export default class smookProofFd extends Group {
constructor(device) {
super();
this.model = device.model;
this._type = device.model._type;
this._code = device.model.code;
this.zlevel = device.model.zlevel;
this.z = device.model.zlevel;
this.create();
}
create() {
this.grouper = new Group({
id: this.model.code,
position: [this.model.point.x, this.model.point.y]
});
this.polygon1 = new Polygon({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[0, 0],
[this.model.width, 0],
[this.model.width, this.model.width / 2],
[0, this.model.width / 2]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.circle = new Circle({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
cx:this.model.width / 2,
cy:this.model.width / 4,
r:this.model.width / 4
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.polyline1 = new Polyline({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[0, 0],
[this.model.width, this.model.width / 2]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.polyline2 = new Polyline({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[this.model.width, 0],
[0, this.model.width / 2]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.grouper.add(this.polygon1);
this.grouper.add(this.circle);
this.grouper.add(this.polyline1);
this.grouper.add(this.polyline2);
this.add(this.grouper);
}
setModel(dx, dy) {
this.model.point.x += dx;
this.model.point.y += dy;
}
}

View File

@ -26,7 +26,7 @@ export default class frozenPump extends Group {
},
style: {
stroke: this.model.color,
lineWidth:1
lineWidth:2
}
});
this.triangle = new Polygon({

View File

@ -0,0 +1,104 @@
import Group from 'zrender/src/container/Group';
import Polygon from 'zrender/src/graphic/shape/Polygon';
import Polyline from 'zrender/src/graphic/shape/Polyline';
import Ellipse from 'zrender/src/graphic/shape/Ellipse';
export default class smookProofFd extends Group {
constructor(device) {
super();
this.model = device.model;
this._type = device.model._type;
this._code = device.model.code;
this.zlevel = device.model.zlevel;
this.z = device.model.zlevel;
this.create();
}
create() {
this.grouper = new Group({
id: this.model.code,
position: [this.model.point.x, this.model.point.y]
});
this.ellipse = new Ellipse({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
cx:this.model.width / 2,
cy:this.model.width * 0.4,
rx:this.model.width / 2,
ry:this.model.width * 0.4
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.polyline1 = new Polyline({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[this.model.width / 2, this.model.width * 0.8],
[this.model.width / 2, this.model.width * 1.2]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.polyline2 = new Polyline({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[0, this.model.width * 1.2],
[this.model.width, this.model.width * 2.8]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.polyline3 = new Polyline({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[this.model.width, this.model.width * 1.2],
[0, this.model.width * 2.8]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.polygon1 = new Polygon({
zlevel: this.model.zlevel,
z: this.model.z,
shape:{
points:[
[0, this.model.width * 1.2],
[this.model.width, this.model.width * 1.2],
[this.model.width, this.model.width * 2.8],
[0, this.model.width * 2.8]
]
},
style: {
stroke:this.model.color,
lineWidth:2
}
});
this.grouper.add(this.ellipse);
this.grouper.add(this.polyline1);
this.grouper.add(this.polygon1);
this.grouper.add(this.polyline2);
this.grouper.add(this.polyline3);
this.add(this.grouper);
}
setModel(dx, dy) {
this.model.point.x += dx;
this.model.point.y += dy;
}
}

View File

@ -1,7 +1,7 @@
import Group from 'zrender/src/container/Group';
import createPathSvg from './components/pathsvg';
import createPathSvg from '../components/pathsvg';
export default class VolumeControlDamper extends Group {
export default class volumeControlDamper extends Group {
constructor(device) {
super();
this.model = device.model;

View File

@ -23,8 +23,8 @@ import BrakeMachine from './brakeMachine';
import EntranceGuard from './entranceGuard/index';
import SemiAutomaticTicketMachine from './semiAutomaticTicketMachine';
import TicketMachine from './ticketMachine';
import AirConditioner from './airConditioner';
import VolumeControlDamper from './volumeControlDamper';
import AirConditioner from './bas/airConditioner';
import VolumeControlDamper from './bas/volumeControlDamper';
const iscsShape = {};
iscsShape[deviceType.ManualAlarmButton] = ManualAlarmButton;

View File

@ -106,6 +106,8 @@ export default {
$route(val) {
if (val.path === '/orderauthor/rules/manage') {
this.$refs.keMenu.activeIndex = val.path;
} else if (val.path === '/design/home') {
this.$refs.keMenu.activeIndex = val.path;
}
}
},

View File

@ -940,15 +940,15 @@ export const asyncRouter = [
path: '/iscs',
component: Layout,
meta: {
i18n: 'router.iscsSystem',
roles: [admin]
i18n: 'router.iscsSystem'
},
children: [
{
path:'design',
component: IscsDesign,
meta: {
i18n: 'router.iscsDraw'
i18n: 'router.iscsDraw',
roles: [admin]
},
children: [
{
@ -962,7 +962,8 @@ export const asyncRouter = [
path: 'system',
component: IscsSystem,
meta: {
i18n: 'router.iscsSystem'
i18n: 'router.iscsSystem',
roles: [admin, user]
},
children: [
{

View File

@ -5,7 +5,7 @@
<el-input v-model="form.code" :disabled="true" />
</el-form-item>
<el-form-item label="图形宽度" prop="width">
<el-input-number v-model="form.width" :min="40" />
<el-input-number v-model="form.width" :min="20" />
</el-form-item>
<el-form-item label="X轴坐标" prop="x">
<el-input-number v-model="form.x" controls-position="right" :min="1" />
@ -33,7 +33,7 @@ export default {
buttonText: '立即创建',
form:{
code:'',
width: 40,
width: 20,
x: 10,
y: 10
},
@ -103,7 +103,7 @@ export default {
this.showDeleteButton = false;
this.form = {
code:'',
width: 40,
width: 20,
x: 10,
y: 10
};

View File

@ -1,5 +1,5 @@
<template>
<div style="height: 100%; width: 100%;">
<div style="height: 100%; width: 100%;overflow-y: auto;">
<standFAS v-if="mode == 'standFAS'" />
<stationHallFAS v-else-if="mode == 'stationHallFAS'" />
<systemFAS v-else-if="mode == 'systemFAS'" />
@ -44,6 +44,9 @@ export default {
'$route': function(val) {
this.mode = this.$route.params.mode;
}
},
mounted() {
this.mode = this.$route.params.mode;
}
};
</script>

View File

@ -1,6 +1,45 @@
<template>
<div>
紧急发布一览
<div class="main_screen_header">乘客信息</div>
<div class="main_screen_content">
<div class="screen_left">
<div class="screen_left_tab" />
<div class="sceen_left_content" />
</div>
<div class="screen_right">
<div id="screen_right_group">
<div class="each_operate">
<div class="each_operate_text">操作</div>
<div class="each_operate_button">信息发布窗口</div>
</div>
<div class="each_operate">
<div class="each_operate_text">信息清楚</div>
<div class="each_operate_button">清除普通信息</div>
</div>
</div>
</div>
</div>
<div class="main_screen_footer">
<textarea id="screen_footer_text" name="" cols="30" rows="10" />
<div class="footer_button_group">
<div class="each_footer_button">
<div class="each_footer_button_icon" />
<div class="each_footer_button_text">正常</div>
</div>
<div class="each_footer_button">
<div class="each_footer_button_icon" />
<div class="each_footer_button_text">故障</div>
</div>
<div class="each_footer_button">
<div class="each_footer_button_icon" />
<div class="each_footer_button_text">通信故障</div>
</div>
<div class="each_footer_button">
<div class="each_footer_button_icon" />
<div class="each_footer_button_text">选定</div>
</div>
</div>
</div>
</div>
</template>
<script>
@ -8,3 +47,21 @@ export default {
};
</script>
<style lang="scss" scoped>
.main_screen_header{}
.main_screen_content{}
.screen_left{}
.screen_left_tab{}
.sceen_left_content{}
.screen_right{}
#screen_right_group{}
.each_operate{}
.each_operate_text{}
.each_operate_button{}
.footer_button_group{}
.main_screen_footer{}
#screen_footer_text{}
.each_footer_button{}
.each_footer_button_icon{}
.each_footer_button_text{}
</style>

View File

@ -11,13 +11,11 @@
<script>
import TopNav from './nav.vue';
// import bottom from './bottom.vue';
// import ConfigContent from './config/index';
export default {
components: {
TopNav
// bottom,
// ConfigContent
// bottom
},
data() {
return {
@ -31,13 +29,14 @@ export default {
<style lang="scss" scoped>
.iscs-system-box{
position: relative;
// position: relative;
height: 100%;
overflow-y: auto;
}
.content-box{
width: 100%;
height: 100%;
padding: 95px 0 0;
padding: 34px 0 0;
background: #45607B;
}
</style>

View File

@ -13,6 +13,7 @@
<div class="station-name">{{ item.name }}</div>
</div>
</div>
<div class="back-box" @click="back">返回主页面</div>
</div>
</template>
@ -21,8 +22,8 @@ export default {
data() {
return {
selectIndex: 0,
selectChildIndex: 0,
selectStationIndex: 0,
selectChildIndex: -1,
selectStationIndex: -1,
navList: [
{
name: '火灾报警',
@ -199,6 +200,18 @@ export default {
]
};
},
mounted() {
this.navList.forEach((nav, navIndex)=>{
if (nav.children && nav.children.length > 0) {
nav.children.forEach((child, childIndex)=>{
if (child.type && child.type === this.$route.params.mode) {
this.selectIndex = navIndex;
this.selectChildIndex = childIndex;
}
});
}
});
},
methods: {
selectTab(item, index) { //
if (this.selectIndex != index) {
@ -214,8 +227,10 @@ export default {
this.$router.push({ path: `/iscs/system/config/${item.type}` });
},
selectStation(item, index) { //
console.log(item);
this.selectStationIndex = index;
},
back() {
this.$router.push({ path: `/design/home` });
}
}
};
@ -292,6 +307,15 @@ export default {
background: #A1D9DC;
}
}
.back-box{
display: table;
position: absolute;
right: 20px;
top: 15px;
cursor: pointer;
&:hover{
color: #3161cc;
}
}
}
</style>