This commit is contained in:
joylink_cuiweidong 2020-01-19 18:35:02 +08:00
commit caed94f56d
8 changed files with 155 additions and 17 deletions

View File

@ -203,5 +203,6 @@ export default {
enterPermissionNumInt:'number must interger',
perpetual: 'perpetual',
buyingTips: 'Function upgrade, stay tuned!',
permissionAllNum:'Total permissions'
permissionAllNum:'Total permissions',
set: 'Set'
};

View File

@ -574,5 +574,13 @@ export default {
continueProtect: 'Continue protect',
continueProtectList: 'Continue protect list',
saveRoute: 'Save route',
updataRoute: 'Updata route'
updataRoute: 'Updata route',
leftStopPointOffsetFromStart: 'LeftStopPointOffsetFromStart:',
rightStopPointOffsetFromTerminal: 'RightStopPointOffsetFromTerminal:',
sectionRelationCheck: 'Section relation check',
batchSettings: 'Batch settings',
logicalSectionStartOffset: 'Logical section start offset:',
logicalSectionEndOffset: 'Logical section start offset:',
associateSwitchSection: 'Associate switch section:',
failedToSetParkingPointOffset: 'failed to set parking point offset: the actual length of the section is less than the offset distance.'
};

View File

@ -203,5 +203,6 @@ export default {
enterPermissionNumInt:'权限数量需为整数',
perpetual: '永久',
buyingTips: '功能升级中, 敬请期待!',
permissionAllNum:'权限总数'
permissionAllNum:'权限总数',
set: '设 置'
};

View File

@ -568,5 +568,13 @@ export default {
continueProtect: '延续保护',
continueProtectList: '延续保护列表',
saveRoute: '保存进路',
updataRoute: '修改进路'
updataRoute: '修改进路',
leftStopPointOffsetFromStart: '左向停车点距始端偏移距离:',
rightStopPointOffsetFromTerminal: '右向停车点距离终端偏移距离:',
sectionRelationCheck: '区段关系校验',
batchSettings: '批量设置',
logicalSectionStartOffset: '逻辑区段起点偏移:',
logicalSectionEndOffset: '逻辑区段终点偏移:',
associateSwitchSection: '关联道岔区段:',
failedToSetParkingPointOffset: '设置停车点偏移量失败:区段实际长度小于偏移距离。'
};

View File

@ -0,0 +1,69 @@
<template>
<div style="height: 100%;">
<el-scrollbar wrap-class="scrollbar-wrapper">
<el-form ref="oprt" :model="form" label-width="200px" size="mini">
<el-form-item :label="$t('map.leftStopPointOffsetFromStart')" prop="leftDistance">
<el-input-number v-model="form.leftDistance" :min="0" />
</el-form-item>
<el-form-item :label="$t('map.rightStopPointOffsetFromTerminal')" prop="rightDistance">
<el-input-number v-model="form.rightDistance" :min="0" />
</el-form-item>
<el-form-item>
<el-button-group>
<el-button type="primary" size="big" @click="batchSettings">{{ $t('global.set') }}</el-button>
</el-button-group>
</el-form-item>
</el-form>
</el-scrollbar>
</div>
</template>
<script>
import { deepAssign } from '@/utils/index';
export default {
name: 'BatchSettings',
props: {
sectionList: {
type: Object,
default: function() {
return [];
}
}
},
data() {
return {
form: {
leftDistance: 0,
rightDistance: 0
},
tipInfoList: []
};
},
methods:{
batchSettings() {
this.tipInfoList = [];
const models = [];
if (this.form.leftDistance || this.form.rightDistance) {
this.sectionList.forEach(section => {
if (section.transferTrack || section.reentryTrack || section.standTrack) {
if (section.lengthFact < this.form.leftDistance || section.lengthFact < this.form.rightDistance ) {
this.tipInfoList.push(`${section.name}[${section.code}]${this.$t('map.failedToSetParkingPointOffset')}`);
} else {
const model = deepAssign({}, section);
model.leftStopPointOffset = this.form.leftDistance;
model.rightStopPointOffset = model.lengthFact - this.form.rightDistance;
models.push(model);
}
}
});
this.$emit('updateMapModel', models, 'five');
this.$emit('tipInfoHandle', this.tipInfoList);
}
}
}
};
</script>
<style scoped>
</style>

View File

@ -7,7 +7,7 @@
</el-scrollbar>
</div>
<div class="button_box">
<el-button type="primary" size="small" style="margin-top: 5px; margin-left: 10px" @click="verifyData">区段关系校验</el-button>
<el-button type="primary" size="small" style="margin-top: 5px; margin-left: 10px" @click="verifyData">{{ $t('map.sectionRelationCheck') }}</el-button>
<el-button-group class="map-draft-group">
<el-button type="primary" size="small" @click="edit">{{ $t('map.updateObj') }}</el-button>
<el-button type="danger" size="small" @click="deleteObj">{{ $t('map.deleteObj') }}</el-button>
@ -23,6 +23,9 @@
<el-tab-pane class="view-control" :label="$t('map.logicBlock')" name="four">
<logic-block ref="logicBlock" :edit-model="editModel" @updateMapModel="updateMapModel" />
</el-tab-pane>
<el-tab-pane class="view-control" :label="$t('map.batchSettings')" name="five">
<batch-settings ref="batchSettings" :section-list="sectionList" @updateMapModel="updateMapModel" @tipInfoHandle="tipInfoHandle" />
</el-tab-pane>
<tip-info ref="tipInfo" :tip-info-list="tipInfoList" />
</el-tabs>
</template>
@ -36,6 +39,7 @@ import LogicBlock from './logicBlock';
import TipInfo from './tipInfo';
import CreateSection from './create';
import SplitOrMerge from './splitOrMerge';
import BatchSettings from './batchSettings';
export default {
name: 'SectionDraft',
components: {
@ -43,7 +47,8 @@ export default {
LogicBlock,
TipInfo,
CreateSection,
SplitOrMerge
SplitOrMerge,
BatchSettings
},
props: {
selected: {
@ -146,8 +151,8 @@ export default {
{ prop: 'sepTypeLeft', label: this.$t('map.sepTypeLeft'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SectionSepTypeList, isHidden: !this.isSwitchSectionType },
{ prop: 'sepTypeRight', label: this.$t('map.sepTypeRight'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SectionSepTypeList, isHidden: !this.isSwitchSectionType },
{ prop: 'points', label: this.$t('map.segmentCoordinates'), type: 'points', width: '100px', isHidden: !this.isPointsShow, pointDisabled: this.isStationCodeDisabled, addPoint: this.addPoint, delPoint: this.delPoint, lastDisabled: true },
{ prop: 'logicSectionStartOffset', label: '逻辑区段起点偏移:', type: 'number', min: 0, width: '150px', isHidden: !this.isLSectionOffsetShow, disabled: true},
{ prop: 'logicSectionEndOffset', label: '逻辑区段终点偏移:', type: 'number', min: 0, width: '150px', isHidden: !this.isLSectionOffsetShow, disabled: true},
{ prop: 'logicSectionStartOffset', label: this.$t('map.logicalSectionStartOffset'), type: 'number', min: 0, width: '150px', isHidden: !this.isLSectionOffsetShow, disabled: true},
{ prop: 'logicSectionEndOffset', label: this.$t('map.logicalSectionEndOffset'), type: 'number', min: 0, width: '150px', isHidden: !this.isLSectionOffsetShow, disabled: true},
{ prop: 'standTrack', label: this.$t('map.isStandTrack'), type: 'checkbox', isHidden: !this.isStandTrackShow }, // 1
{ prop: 'standTrackName', label: this.$t('map.standTrackName'), type: 'input', isHidden: !this.isstandTrackNameShow },
@ -185,16 +190,16 @@ export default {
{value: false, label: this.$t('map.fromLargeToSmall')}
] }, // 1
{ prop: 'curve', label: this.$t('map.isCurve'), type: 'checkbox', isHidden: !this.isSwitchSectionType },
{ prop: 'relevanceSectionList', label: '关联道岔区段:', type: 'multiSelect', optionLabel: 'name&&code', optionValue: 'code', options: this.switchSectionList, isHidden: this.isSwitchSectionType }
{ prop: 'relevanceSectionList', label: this.$t('map.associateSwitchSection'), type: 'multiSelect', optionLabel: 'name&&code', optionValue: 'code', options: this.switchSectionList, isHidden: this.isSwitchSectionType }
]
},
map: {
name: this.$t('map.mapData'),
item: [
{ prop: 'stationCode', label: this.$t('map.equipmentStation') + ':', type: 'select', mode: true, optionLabel: 'name&&code', optionValue: 'code', disabled: this.isStationCodeDisabled, options: this.centralizedStationList },
{ prop: 'lengthFact', label: this.$t('map.actualLength') + ':', type: 'number', min: 0, placeholder: this.$t('map.meter') },
{ prop: 'leftStopPointOffset', label: this.$t('map.leftStopPointOffset'), type: 'number', min: 0, isHidden: !this.isStopPointOffset },
{ prop: 'rightStopPointOffset', label: this.$t('map.rightStopPointOffset'), type: 'number', min: 0, isHidden: !this.isStopPointOffset },
{ prop: 'lengthFact', label: this.$t('map.actualLength') + ':', type: 'number', min: 0, placeholder: this.$t('map.meter'), change: true, deviceChange: this.lengthFactChange },
{ prop: 'leftStopPointOffset', label: this.$t('map.leftStopPointOffset'), type: 'number', min: 0, disabled: true, isHidden: !this.isStopPointOffset },
{ prop: 'rightStopPointOffset', label: this.$t('map.rightStopPointOffset'), type: 'number', min: 0, disabled: true, isHidden: !this.isStopPointOffset },
{ prop: 'region', label: this.$t('map.sectionColon'), type: 'select', optionLabel: 'label', optionValue: 'value', options: this.regionList, isHidden: !this.sectionColonShow },
{ prop: 'kmRangeLeft', label: this.$t('map.leftKilometerMark'), type: 'number', min: 0, placeholder: this.$t('map.meter') },
{ prop: 'kmRangeRight', label: this.$t('map.rightKilometerMark'), type: 'number', min: 0, placeholder: this.$t('map.meter') }
@ -380,6 +385,12 @@ export default {
this.regionList = this.$ConstSelect.RegionTypeList;
},
methods: {
lengthFactChange() {
if (this.editModel.lengthFact > 5 && (this.editModel.transferTrack || this.editModel.reentryTrack || this.editModel.standTrack)) {
this.editModel.leftStopPointOffset = 5;
this.editModel.rightStopPointOffset = this.editModel.lengthFact - 5;
}
},
deviceChange(code) {
this.$emit('setCenter', code);
this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code));
@ -619,6 +630,12 @@ export default {
this.$refs.tipInfo.doShow();
}
},
tipInfoHandle(list) {
if (list.length) {
this.tipInfoList = list;
this.$refs.tipInfo.doShow();
}
},
clear() {
this.$refs.dataform.resetFields();
// 沿

View File

@ -1,13 +1,44 @@
<template>
<div>
<el-row>
<el-col :span="1">
<div class="area-selection">
<el-row><span>特定区域</span></el-row>
<el-row><el-button>全线</el-button></el-row>
<el-row><el-button>全站厅</el-button></el-row>
<el-row><el-button>全上行站台</el-button></el-row>
<el-row><el-button>全下行站台</el-button></el-row>
<el-row><el-button>全办公区</el-button></el-row>
<el-row><el-button>全出入口</el-button></el-row>
<el-row><el-button>全换乘通道</el-button></el-row>
</div>
</el-col>
</el-row>
</div>
</template>
<script>
export default {
name: "homeScreen"
}
export default {
name: 'HomeScreen',
data() {
return {
mes: '1111'
};
}
};
</script>
<style scoped>
.area-selection{
text-align: center;
border: 2px solid #409EFF;
width: 100%;
.el-button{
width: 90%;
padding: 6px 0;
margin-top: 10px;
font-size: 10px;
}
}
</style>

View File

@ -3,6 +3,7 @@
<standFAS v-if="mode == 'standFAS'" />
<stationHallFAS v-if="mode == 'stationHallFAS'" />
<systemFAS v-if="mode == 'systemFAS'" />
<home-screen v-if="mode === 'PA'" />
</div>
</template>
@ -10,12 +11,14 @@
import standFAS from './fire-alarm/stand';
import stationHallFAS from './fire-alarm/stationHall';
import systemFAS from './fire-alarm/system';
import HomeScreen from './broadcast/homeScreen';
export default {
components: {
standFAS,
stationHallFAS,
systemFAS
systemFAS,
HomeScreen
},
props: {
mode: {