大铁 路票调整
This commit is contained in:
parent
ebb204c475
commit
21e8785ecb
@ -618,6 +618,16 @@ export const menuOperate = {
|
||||
operation: OperationEvent.CTCCommand.setRoute.menu.operation,
|
||||
cmdType: CMD.CTC.CTC_SET_ROUTE
|
||||
}
|
||||
},
|
||||
Rail: {
|
||||
railFillInTicket: {
|
||||
operation: OperationEvent.RailCommand.railFillInTicket.menu.operation,
|
||||
cmdType: CMD.RAIL.CMD_RAIL_FILL_IN_TICKET
|
||||
},
|
||||
railQueryTicket: {
|
||||
operation: OperationEvent.RailCommand.railQueryTicket.menu.operation,
|
||||
cmdType: CMD.RAIL.CMD_RAIL_QUERY_TICKET
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
@ -656,11 +666,11 @@ export function commitOperate(operate, paramList, over, fillStep = {}) {
|
||||
|
||||
Object.assign(step, fillStep);
|
||||
return new Promise(function(resolve, reject) {
|
||||
store.dispatch('training/nextNew', step).then(({ valid }) => {
|
||||
store.dispatch('training/nextNew', step).then(({ valid, response }) => {
|
||||
if (valid) {
|
||||
store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
resolve({ valid: valid, operate: {...step} });
|
||||
resolve({ valid: valid, response: response, operate: {...step} });
|
||||
}).catch(error=>{
|
||||
reject(error);
|
||||
});
|
||||
|
@ -193,7 +193,6 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
console.log(this.$store.state.training.prdType === '02', this.$store.state.training.prdType, this.isShowBar, this.title);
|
||||
this.$nextTick(() => {
|
||||
this.$store.dispatch('config/updateMenuBar');
|
||||
const _that = this;
|
||||
|
@ -117,7 +117,8 @@ export default {
|
||||
{ label: '司机', value: 'Driver' },
|
||||
{ label: '列车', value: 'Train' },
|
||||
{ label: '方向杆', value: 'DirectionRod'},
|
||||
{ label: 'CTC', value: 'CTC' }
|
||||
{ label: 'CTC', value: 'CTC' },
|
||||
{ label: '路票', value: 'RAIL' }
|
||||
],
|
||||
|
||||
simulationDeviceList:[
|
||||
|
@ -406,5 +406,9 @@ export default {
|
||||
CTC_REMOVE_RUN_PLAN_FROM_EDIT_AREA:{value: 'CTC_REMOVE_RUN_PLAN_FROM_EDIT_AREA', label: '删除列车固定径路'},
|
||||
CTC_RELEASE_RUN_PLAN_TO_SIMULATION:{value: 'CTC_RELEASE_RUN_PLAN_TO_SIMULATION', label: '运行计划发布至CTC'},
|
||||
CTC_SET_ROUTE:{value: 'CTC_SET_ROUTE', label: 'CTC办理进路'}
|
||||
},
|
||||
RAIL: {
|
||||
CMD_RAIL_FILL_IN_TICKET: {value: 'RAIL_FILL_IN_TICKET', label: '填写票据'},
|
||||
CMD_RAIL_QUERY_TICKET: {value: 'RAIL_QUERY_TICKET', label: '查询票据'}
|
||||
}
|
||||
};
|
||||
|
@ -3786,6 +3786,20 @@ export const OperationEvent = {
|
||||
domId: '_Tips-CTC-setRoute-Menu{TOP}'
|
||||
}
|
||||
}
|
||||
},
|
||||
RailCommand: {
|
||||
railFillInTicket: {
|
||||
menu: {
|
||||
operation: '1201',
|
||||
domId: '_Tips-Rail-railFillInTicket-Menu{TOP}'
|
||||
}
|
||||
},
|
||||
railQueryTicket: {
|
||||
menu: {
|
||||
operation: '1202',
|
||||
domId: '_Tips-Rail-railQueryTicket'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
@ -696,7 +696,7 @@ const map = {
|
||||
return flag;
|
||||
}
|
||||
},
|
||||
checkStationGuideMaster: state => (stationCode,sGuideMasterLock,xGuideMasterLock) => {
|
||||
checkStationGuideMaster: state => (stationCode, sGuideMasterLock, xGuideMasterLock) => {
|
||||
if (state.showCentralizedStationCode === stationCode) {
|
||||
state.stationSGuideMasterLock = sGuideMasterLock;
|
||||
state.stationXGuideMasterLock = xGuideMasterLock;
|
||||
|
@ -450,6 +450,7 @@ const training = {
|
||||
rtn && rtn.valid && commit('next');
|
||||
}
|
||||
}
|
||||
console.log(rtn, '*********');
|
||||
resolve(rtn);
|
||||
}).catch(error => {
|
||||
// console.error(error);
|
||||
|
@ -1,283 +0,0 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
title="路票"
|
||||
:visible="trainTicketShow"
|
||||
width="640px"
|
||||
:before-close="doClose"
|
||||
:z-index="2000"
|
||||
:modal="false"
|
||||
:close-on-click-modal="false"
|
||||
center
|
||||
>
|
||||
<div>
|
||||
<div style="display: flex;align-items: center;">
|
||||
<div>附件类型:</div>
|
||||
<el-select v-model="attachmentType" size="small" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in typeList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</div>
|
||||
<div v-if="attachmentType === 'trainTicket'" style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">路 票</div>
|
||||
<div style="display: flex;justify-content: center;align-items: center;font-size: 18px;margin-top: 10px;">
|
||||
<div>电话记录 第</div>
|
||||
<el-input v-model="phoneRecords" size="mini" style="width: 80px;" />
|
||||
<div>号</div>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: center;align-items: center;font-size: 18px;margin-top: 10px;">
|
||||
<div style="margin-left: 80px;">车 次</div>
|
||||
<el-input v-model="trainCode" size="mini" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="display: flex; justify-content: center;font-size: 40px;font-weight: bolder;margin-top: 25px">
|
||||
<div>延安</div>
|
||||
<svg-icon icon-class="arrow" style="width: 100px" />
|
||||
<div>延安北</div>
|
||||
</div>
|
||||
<div style="display: flex; justify-content: space-between;font-size: 18px;margin-top: 25px;margin-bottom: 25px;">
|
||||
<div style="margin-left: 50px;">延安站(站名印)</div>
|
||||
<div>编号 123456</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="attachmentType === 'trainTicket'" style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">路 票</div>
|
||||
<div style="display: flex;justify-content: center;align-items: center;font-size: 18px;margin-top: 10px;">
|
||||
<div>电话记录 第</div>
|
||||
<el-input v-model="phoneRecords" size="mini" style="width: 80px;" />
|
||||
<div>号</div>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: center;align-items: center;font-size: 18px;margin-top: 10px;">
|
||||
<div style="margin-left: 80px;">车 次</div>
|
||||
<el-input v-model="trainCode" size="mini" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="display: flex; justify-content: center;font-size: 40px;font-weight: bolder;margin-top: 25px">
|
||||
<div>延安北</div>
|
||||
<svg-icon icon-class="arrow" style="width: 100px" />
|
||||
<div>延安</div>
|
||||
</div>
|
||||
<div style="display: flex; justify-content: space-between;font-size: 18px;margin-top: 25px;margin-bottom: 25px;">
|
||||
<div style="margin-left: 50px;">延安站(站名印)</div>
|
||||
<div>编号 123456</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'greenLicense'" style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">许 可 证</div>
|
||||
<div style="font-size: 14px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 20px;justify-content: end;">
|
||||
<div>第</div>
|
||||
<el-input v-model="hao" size="small" style="width: 80px;" />
|
||||
<div style="margin-right: 20px;">号</div>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 20px;text-indent:36px;">
|
||||
<span>在出站(进路)信号机故障、未设出站信号机、列车头部越过出站(进路)信号机的情况下,准许第</span>
|
||||
<el-input v-model="trainCode" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车由</span>
|
||||
<el-input v-model="line" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>线上发车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 60px;display: flex;align-items: center;justify-content: end;">
|
||||
<div>站(站名印)车站值班员(签名)</div>
|
||||
<el-input v-model="signName" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 10px;justify-content: end;">
|
||||
<el-input v-model="years" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="months" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>日填发</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'redLicense'" style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">许 可 证</div>
|
||||
<div style="font-size: 14px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 20px;justify-content: end;">
|
||||
<div>第</div>
|
||||
<el-input v-model="hao" size="small" style="width: 80px;" />
|
||||
<div style="margin-right: 20px;">号</div>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 10px;text-indent:36px;">
|
||||
<span>现在一切电话中断,准许第</span>
|
||||
<el-input v-model="trainCode" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车自</span>
|
||||
<el-input v-model="stationName" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>站至</span>
|
||||
<el-input v-model="nextStationName" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>站,本列车前于</span>
|
||||
<el-input v-model="hours" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>时</span>
|
||||
<el-input v-model="minutes" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>分发出的第</span>
|
||||
<el-input v-model="trainCode" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车,邻站到达通知</span>
|
||||
<el-checkbox v-model="receive" style="text-indent: 0;">收到</el-checkbox>
|
||||
</div>
|
||||
<div style="text-align: center;font-size: 28px;margin-top: 10px;">通 知 书</div>
|
||||
<div style="font-size: 16px;margin-top: 10px;text-indent: 36px;">
|
||||
<span>1.第</span>
|
||||
<el-input v-model="trainCode" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车到达你站后,准接你站发出的列车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 10px;text-indent: 36px;">
|
||||
<span>2.于</span>
|
||||
<el-input v-model="hours" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>时</span>
|
||||
<el-input v-model="minutes" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>分发出第</span>
|
||||
<el-input v-model="trainCode" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车,并于</span>
|
||||
<el-input v-model="hours" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>时</span>
|
||||
<el-input v-model="minutes" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>分再发出第</span>
|
||||
<el-input v-model="trainCode" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 60px;display: flex;align-items: center;justify-content: end;">
|
||||
<div>站(站名印)车站值班员(签名)</div>
|
||||
<el-input v-model="signName" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 10px;justify-content: end;">
|
||||
<el-input v-model="years" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="months" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>日填发</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'dispatchingCommand'" style="margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">调 度 命 令</div>
|
||||
<div style="margin-top: 10px;display: flex;align-items: center;justify-content: end;">
|
||||
<el-input v-model="years" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="months" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>日</div>
|
||||
<el-input v-model="hours" size="small" style="width: 80px;" />
|
||||
<div>时</div>
|
||||
<el-input v-model="minutes" size="small" style="width: 80px;" />
|
||||
<div>分 第</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>号</div>
|
||||
</div>
|
||||
<div style="border: 1px solid #000;display: flex;align-items: center;margin-top: 10px;">
|
||||
<div style="border-right: 1px solid #000;width: 25%;text-align: center;height: 40px;line-height: 40px;">受令处所</div>
|
||||
<div style="width: 25%;border-right: 1px solid #000;"><el-input v-model="shouingchusuo" /></div>
|
||||
<div style="border-right: 1px solid #000;width: 25%;text-align: center;height: 40px;line-height: 40px;">调度员姓名</div>
|
||||
<div style="width: 25%;"><el-input v-model="dispatcherName" /></div>
|
||||
</div>
|
||||
<div style="border-right: 1px solid #000;border-left: 1px solid #000;display: flex;border-bottom: 1px solid #000;">
|
||||
<div style="border-right: 1px solid #000;width: 25%;text-align: center;height: 96px;line-height: 96px;">内容</div>
|
||||
<div style="width: 75%;">
|
||||
<el-input
|
||||
v-model="content"
|
||||
type="textarea"
|
||||
:rows="4"
|
||||
placeholder="请输入内容"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-top: 10px;display: flex;justify-content: end;align-items: center;">
|
||||
<div>受令车站</div>
|
||||
<el-input v-model="shouLingStation" size="small" style="width: 80px;" />
|
||||
<div>车站值班员</div>
|
||||
<el-input v-model="stationWatchman" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'shuntNotice'" style="border: 1px solid #000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">出站/跟踪调车通知书</div>
|
||||
<div style="text-indent: 36px;font-size: 16px;">
|
||||
<span>对方站承认的号码第</span>
|
||||
<el-input v-model="hao" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>号,准许自/至</span>
|
||||
<el-input v-model="hours" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>时</span>
|
||||
<el-input v-model="minutes" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>分起/止</span>
|
||||
<el-input v-model="trainCode" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>机车由车站向</span>
|
||||
<el-input v-model="qujian" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>区间出战/跟踪调车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 60px;display: flex;align-items: center;justify-content: end;">
|
||||
<div>站(站名印)车站值班(扳道)员(签名)</div>
|
||||
<el-input v-model="signName" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 10px;justify-content: end;">
|
||||
<el-input v-model="years" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="months" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>日填发</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'lightVehicleManual'" style="border: 1px solid #000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">轻 型 车 辆 使 用 书</div>
|
||||
<div style="display: flex;align-items: center;">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
export default {
|
||||
name: 'TrainTicket',
|
||||
data() {
|
||||
return {
|
||||
trainTicketShow: false,
|
||||
attachmentType: 'trainTicket',
|
||||
phoneRecords: '',
|
||||
trainCode: '',
|
||||
line: '',
|
||||
signName: '',
|
||||
years: '',
|
||||
months: '',
|
||||
days: '',
|
||||
hao: '',
|
||||
hours: '',
|
||||
minutes: '',
|
||||
stationName: '',
|
||||
nextStationName: '',
|
||||
receive: '',
|
||||
shouingchusuo: '',
|
||||
dispatcherName: '',
|
||||
content: '',
|
||||
shouLingStation: '',
|
||||
stationWatchman: '',
|
||||
qujian: '',
|
||||
typeList: [
|
||||
{label: '附件1路票', value: 'trainTicket'},
|
||||
{label: '附件2绿色许可证', value: 'greenLicense'},
|
||||
{label: '附件3红色许可证', value: 'redLicense'},
|
||||
{label: '附件4调度命令', value: 'dispatchingCommand'},
|
||||
{label: '附件5出站/跟踪调车通知书', value: 'shuntNotice'},
|
||||
{label: '附近6轻型车辆使用书', value: 'lightVehicleManual'},
|
||||
{label: '附件7调度命令登记簿', value: 'commandRegister'},
|
||||
{label: '附件8书面通知', value: 'writtenNotice'},
|
||||
{label: '附件9半自动闭塞发车进路通知书', value: 'departureNotice'}
|
||||
]
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
doClose() {
|
||||
this.trainTicketShow = false;
|
||||
},
|
||||
doShow() {
|
||||
this.trainTicketShow = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/deep/.inline-input .el-input__inner{
|
||||
width: 80px;
|
||||
}
|
||||
</style>
|
@ -14,7 +14,7 @@
|
||||
</el-select>
|
||||
<el-button-group>
|
||||
<el-button v-if="userRole=== 'STATION_SUPERVISOR'&&$route.query.lineCode ==='16'" size="small" @click="goCtc">CTC</el-button>
|
||||
<el-button v-if="$route.query.lineCode ==='16'" size="small" @click="showTrainTicket">路票</el-button>
|
||||
<el-button v-if="$route.query.lineCode ==='16'&&$store.state.training.prdType === '01'" size="small" @click="showTrainTicket">路票</el-button>
|
||||
<el-button v-if="showDispatcherStation" size="small" @click="changeShowMap">调度台</el-button>
|
||||
<el-button v-if="userRole=== 'STATION_SUPERVISOR' && !$route.query.projectDevice && $route.query.lineCode!='08'" size="small" @click="goIbp">IBP盘</el-button>
|
||||
<el-button v-if="userRole=== 'DISPATCHER' && !$route.query.projectDevice && hasBigScreen" size="small" @click="goBigScreen">大屏</el-button>
|
||||
@ -49,7 +49,7 @@ import { EventBus } from '@/scripts/event-bus';
|
||||
import { timesSpeedPlayback } from '@/api/rtSimulation';
|
||||
import { queryHasIscs } from '@/api/iscs';
|
||||
import { getToken } from '@/utils/auth';
|
||||
import TrainTicket from '../displayNew/trainTicket';
|
||||
import TrainTicket from '../trainTicket/index';
|
||||
export default {
|
||||
name: 'MenuDemonSchema',
|
||||
components:{
|
||||
|
64
src/views/newMap/trainTicket/greenLicence.vue
Normal file
64
src/views/newMap/trainTicket/greenLicence.vue
Normal file
@ -0,0 +1,64 @@
|
||||
<template>
|
||||
<div style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">许 可 证</div>
|
||||
<div style="font-size: 14px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 20px;justify-content: end;">
|
||||
<div>第</div>
|
||||
<el-input v-model="greenLicenseForm.number" size="small" :disabled="switchFlag" style="width: 80px;" />
|
||||
<div style="margin-right: 20px;">号</div>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 20px;">
|
||||
<span style="margin-left: 36px;">在</span>
|
||||
<el-radio-group v-model="greenLicenseForm.reason" :disabled="switchFlag" style="display: inline;">
|
||||
<el-radio label="出站(进路)信号机故障">出站(进路)信号机故障</el-radio>
|
||||
<el-radio label="未设出站信号机" style="margin-left: 5px;">未设出站信号机</el-radio>
|
||||
<el-radio label="列车头部越过出站(进路)信号机" style="margin-left: 5px;">列车头部越过出站(进路)信号机</el-radio>
|
||||
</el-radio-group>
|
||||
<span>的情况下,准许第</span>
|
||||
<el-input v-model="greenLicenseForm.tripNumber" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车由</span>
|
||||
<el-input v-model="greenLicenseForm.line" style="display: inline;" :disabled="switchFlag" size="small" class="inline-input" />
|
||||
<span>线上发车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 60px;display: flex;align-items: center;justify-content: end;">
|
||||
<div><span style="color: #f00;">{{ showCentralizedStationName }}</span>(站名印)车站值班员(签名)</div>
|
||||
<el-input v-model="greenLicenseForm.signature" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 10px;justify-content: end;">
|
||||
<el-input v-model="greenLicenseForm.year" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="greenLicenseForm.moon" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="greenLicenseForm.day" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div>日填发</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'GreenLicence',
|
||||
props: {
|
||||
greenLicenseForm:{
|
||||
type: Object,
|
||||
required: true
|
||||
},
|
||||
switchFlag:{
|
||||
type: Boolean,
|
||||
required: true
|
||||
},
|
||||
showCentralizedStationName: {
|
||||
type: String,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
};
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
281
src/views/newMap/trainTicket/index.vue
Normal file
281
src/views/newMap/trainTicket/index.vue
Normal file
@ -0,0 +1,281 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
title="路票"
|
||||
:visible="trainTicketShow"
|
||||
width="640px"
|
||||
:before-close="doClose"
|
||||
:z-index="2000"
|
||||
:modal="false"
|
||||
:close-on-click-modal="false"
|
||||
center
|
||||
>
|
||||
<div>
|
||||
<div style="display: flex;align-items: center;margin-bottom: 10px;">
|
||||
<div>附件类型:</div>
|
||||
<el-select v-model="attachmentType" size="small" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in typeList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
<el-button v-if="activeName === 'first'" size="small" style="margin-left: 20px;" type="primary" @click="submit">提交</el-button>
|
||||
<el-button v-else style="margin-left: 20px;" size="small" type="primary" @click="query">查询</el-button>
|
||||
</div>
|
||||
<el-tabs v-model="activeName" type="card">
|
||||
<el-tab-pane label="路票填写" name="first">
|
||||
<rail-ticket v-if="attachmentType === 'RAIL_TICKET'" :switch-flag="false" :ticket-form="ticketForm" :station-list="stationList" />
|
||||
<green-licence v-else-if="attachmentType === 'GREEN_LICENCE'" :switch-flag="false" :green-license-form="greenLicenseForm" :show-centralized-station-name="showCentralizedStationName" />
|
||||
<red-licence v-else-if="attachmentType === 'RED_LICENCE'" :show-centralized-station-name="showCentralizedStationName" :switch-flag="false" :red-license-form="redLicenseForm" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="路票查询" name="second">
|
||||
<div v-if="attachmentType === 'RAIL_TICKET'" style="height: 450px;overflow-y: auto;">
|
||||
<template v-for="(item, index) in railTicketList">
|
||||
<rail-ticket :key="index" :switch-flag="true" :ticket-form="item" :station-list="stationList" />
|
||||
</template>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'GREEN_LICENCE'" style="height: 450px;overflow-y: auto;">
|
||||
<template v-for="(item, index) in greenLicenseList">
|
||||
<green-licence :key="index" :show-centralized-station-name="showCentralizedStationName" :switch-flag="true" :green-license-form="item" />
|
||||
</template>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'RED_LICENCE'" style="height: 450px;overflow-y: auto;">
|
||||
<template v-for="(item, index) in redLicenseList">
|
||||
<red-licence :key="index" :show-centralized-station-name="showCentralizedStationName" :switch-flag="true" :red-license-form="item" />
|
||||
</template>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
|
||||
<!-- <div v-else-if="attachmentType === 'dispatchingCommand'" style="margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">调 度 命 令</div>
|
||||
<div style="margin-top: 10px;display: flex;align-items: center;justify-content: end;">
|
||||
<el-input v-model="years" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="months" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>日</div>
|
||||
<el-input v-model="hours" size="small" style="width: 80px;" />
|
||||
<div>时</div>
|
||||
<el-input v-model="minutes" size="small" style="width: 80px;" />
|
||||
<div>分 第</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>号</div>
|
||||
</div>
|
||||
<div style="border: 1px solid #000;display: flex;align-items: center;margin-top: 10px;">
|
||||
<div style="border-right: 1px solid #000;width: 25%;text-align: center;height: 40px;line-height: 40px;">受令处所</div>
|
||||
<div style="width: 25%;border-right: 1px solid #000;"><el-input v-model="shouingchusuo" /></div>
|
||||
<div style="border-right: 1px solid #000;width: 25%;text-align: center;height: 40px;line-height: 40px;">调度员姓名</div>
|
||||
<div style="width: 25%;"><el-input v-model="dispatcherName" /></div>
|
||||
</div>
|
||||
<div style="border-right: 1px solid #000;border-left: 1px solid #000;display: flex;border-bottom: 1px solid #000;">
|
||||
<div style="border-right: 1px solid #000;width: 25%;text-align: center;height: 96px;line-height: 96px;">内容</div>
|
||||
<div style="width: 75%;">
|
||||
<el-input
|
||||
v-model="content"
|
||||
type="textarea"
|
||||
:rows="4"
|
||||
placeholder="请输入内容"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-top: 10px;display: flex;justify-content: end;align-items: center;">
|
||||
<div>受令车站</div>
|
||||
<el-input v-model="shouLingStation" size="small" style="width: 80px;" />
|
||||
<div>车站值班员</div>
|
||||
<el-input v-model="stationWatchman" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'shuntNotice'" style="border: 1px solid #000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">出站/跟踪调车通知书</div>
|
||||
<div style="text-indent: 36px;font-size: 16px;">
|
||||
<span>对方站承认的号码第</span>
|
||||
<el-input v-model="hao" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>号,准许自/至</span>
|
||||
<el-input v-model="hours" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>时</span>
|
||||
<el-input v-model="minutes" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>分起/止</span>
|
||||
<el-input v-model="trainCode" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>机车由车站向</span>
|
||||
<el-input v-model="qujian" size="small" class="inline-input" style="display: inline;" />
|
||||
<span>区间出战/跟踪调车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 60px;display: flex;align-items: center;justify-content: end;">
|
||||
<div>站(站名印)车站值班(扳道)员(签名)</div>
|
||||
<el-input v-model="signName" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 10px;justify-content: end;">
|
||||
<el-input v-model="years" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="months" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="days" size="small" style="width: 80px;" />
|
||||
<div>日填发</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="attachmentType === 'lightVehicleManual'" style="border: 1px solid #000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">轻 型 车 辆 使 用 书</div>
|
||||
<div style="display: flex;align-items: center;" />
|
||||
</div>-->
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { mapGetters } from 'vuex';
|
||||
import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
|
||||
import RailTicket from './trainTicket';
|
||||
import GreenLicence from './greenLicence';
|
||||
import RedLicence from './redLicence';
|
||||
export default {
|
||||
name: 'Index',
|
||||
components: {
|
||||
RailTicket,
|
||||
GreenLicence,
|
||||
RedLicence
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
trainTicketShow: false,
|
||||
attachmentType: 'RAIL_TICKET',
|
||||
railTicketList: [],
|
||||
greenLicenseList: [],
|
||||
redLicenseList: [],
|
||||
activeName: 'first',
|
||||
ticketForm: {
|
||||
number: '',
|
||||
tripNumber: '',
|
||||
station: '',
|
||||
nextStation: '',
|
||||
stationSeal: true,
|
||||
no: '',
|
||||
deputy: false
|
||||
},
|
||||
greenLicenseForm: {
|
||||
number: '',
|
||||
reason: '',
|
||||
tripNumber: '',
|
||||
line: '',
|
||||
stationSeal: true,
|
||||
signature: '',
|
||||
year: '',
|
||||
moon: '',
|
||||
day: ''
|
||||
},
|
||||
redLicenseForm: {
|
||||
number: '',
|
||||
licenseReceived: true,
|
||||
licenseTripNumber: '',
|
||||
licenseStation: '',
|
||||
licenseNextStation: '',
|
||||
licenseHour: '',
|
||||
licenseMinute: '',
|
||||
licenseTripNumber2: '',
|
||||
noticeTripNumber: '',
|
||||
noticeHour1: '',
|
||||
noticeMinute1: '',
|
||||
noticeTripNumber1: '',
|
||||
noticeHour2: '',
|
||||
noticeMinute2: '',
|
||||
noticeTripNumber2: '',
|
||||
stationSeal: true,
|
||||
signature: '',
|
||||
year: '',
|
||||
moon: '',
|
||||
day: ''
|
||||
},
|
||||
typeList: [
|
||||
{label: '路票', value: 'RAIL_TICKET'},
|
||||
{label: '绿色许可证', value: 'GREEN_LICENCE'},
|
||||
{label: '红色许可证', value: 'RED_LICENCE'}
|
||||
// {label: '调度命令', value: 'dispatchingCommand'},
|
||||
// {label: '出站/跟踪调车通知书', value: 'shuntNotice'},
|
||||
// {label: '轻型车辆使用书', value: 'lightVehicleManual'},
|
||||
// {label: '调度命令登记簿', value: 'commandRegister'},
|
||||
// {label: '书面通知', value: 'writtenNotice'},
|
||||
// {label: '半自动闭塞发车进路通知书', value: 'departureNotice'}
|
||||
]
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapGetters('map', [
|
||||
'stationList'
|
||||
]),
|
||||
showCentralizedStationName() {
|
||||
if (this.$store.state.map.showCentralizedStationCode) {
|
||||
const station = this.$store.getters['map/getDeviceByCode'](this.$store.state.map.showCentralizedStationCode);
|
||||
if (station) { return station.name; } else { return ''; }
|
||||
} else { return ''; }
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
doClose() {
|
||||
this.trainTicketShow = false;
|
||||
},
|
||||
doShow() {
|
||||
this.trainTicketShow = true;
|
||||
this.ticketForm.station = this.showCentralizedStationName;
|
||||
},
|
||||
clearData() {
|
||||
this.ticketForm = {number: '', tripNumber: '', station: '', nextStation: '', stationSeal: true, no: '', deputy: false};
|
||||
this.greenLicenseForm = {number: '', reason: '', tripNumber: '', line: '', stationSeal: true, signature: '', year: '', moon: '', day: '' };
|
||||
this.redLicenseForm = {number: '', licenseReceived: true, licenseTripNumber: '', licenseStation: '', licenseNextStation: '', licenseHour: '',
|
||||
licenseMinute: '', licenseTripNumber2: '', noticeTripNumber: '', noticeHour1: '', noticeMinute1: '', noticeTripNumber1: '', noticeHour2: '',
|
||||
noticeMinute2: '', noticeTripNumber2: '', stationSeal: true, signature: '', year: '', moon: '', day: ''};
|
||||
},
|
||||
query() {
|
||||
const params = { type: this.attachmentType, stationCode: this.$store.state.map.showCentralizedStationCode };
|
||||
commitOperate(menuOperate.Rail.railQueryTicket, params, 3).then(({valid, response, operate}) => {
|
||||
if (valid) {
|
||||
if (this.attachmentType === 'RAIL_TICKET') {
|
||||
this.railTicketList = response.data || [];
|
||||
} else if (this.attachmentType === 'GREEN_LICENCE') {
|
||||
this.greenLicenseList = response.data || [];
|
||||
} else if (this.attachmentType === 'RED_LICENCE') {
|
||||
this.redLicenseList = response.data || [];
|
||||
}
|
||||
}
|
||||
}).catch(()=> {
|
||||
this.$message.error('查询路票失败!');
|
||||
});
|
||||
},
|
||||
submit() {
|
||||
const params = { ticket: { type: this.attachmentType }, stationCode: this.$store.state.map.showCentralizedStationCode };
|
||||
if (this.attachmentType === 'RAIL_TICKET') {
|
||||
params.ticket = Object.assign(params.ticket, this.ticketForm);
|
||||
} else if (this.attachmentType === 'GREEN_LICENCE') {
|
||||
params.ticket = Object.assign(params.ticket, this.greenLicenseForm);
|
||||
} else if (this.attachmentType === 'RED_LICENCE') {
|
||||
params.ticket = Object.assign(params.ticket, this.redLicenseForm);
|
||||
}
|
||||
commitOperate(menuOperate.Rail.railFillInTicket, params, 3).then(({valid, operate})=>{
|
||||
this.clearData();
|
||||
this.ticketForm.station = this.showCentralizedStationName;
|
||||
}).catch(()=>{
|
||||
this.$message.error('提交路票失败!');
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/deep/.inline-input .el-input__inner{
|
||||
width: 80px;
|
||||
}
|
||||
/deep/.station-input .el-input__inner{
|
||||
width: 200px;
|
||||
height: 50px;
|
||||
line-height: 50px;
|
||||
font-size: 40px;
|
||||
}
|
||||
/deep/.el-radio__label{
|
||||
font-size: 16px;
|
||||
}
|
||||
/deep/.el-radio{
|
||||
margin-right: 0;
|
||||
}
|
||||
</style>
|
92
src/views/newMap/trainTicket/redLicence.vue
Normal file
92
src/views/newMap/trainTicket/redLicence.vue
Normal file
@ -0,0 +1,92 @@
|
||||
<template>
|
||||
<div style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">许 可 证</div>
|
||||
<div style="font-size: 14px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 20px;justify-content: end;">
|
||||
<div>第</div>
|
||||
<el-input v-model="redLicenseForm.number" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div style="margin-right: 20px;">号</div>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 10px;text-indent:36px;">
|
||||
<span>现在一切电话中断,准许第</span>
|
||||
<el-input v-model="redLicenseForm.licenseTripNumber" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车自</span>
|
||||
<el-input v-model="redLicenseForm.licenseStation" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>站至</span>
|
||||
<el-input v-model="redLicenseForm.licenseNextStation" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>站,本列车前于</span>
|
||||
<el-input v-model="redLicenseForm.licenseHour" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>时</span>
|
||||
<el-input v-model="redLicenseForm.licenseMinute" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>分发出的第</span>
|
||||
<el-input v-model="redLicenseForm.licenseTripNumber2" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车,邻站到达通知</span>
|
||||
<el-radio-group v-model="redLicenseForm.licenseReceived" :disabled="switchFlag" style="display: inline;">
|
||||
<el-radio label="已">已</el-radio>
|
||||
<el-radio label="未" style="margin-left: 5px;">未</el-radio>
|
||||
</el-radio-group>
|
||||
<span>收到</span>
|
||||
</div>
|
||||
<div style="text-align: center;font-size: 28px;margin-top: 10px;">通 知 书</div>
|
||||
<div style="font-size: 16px;margin-top: 10px;text-indent: 36px;">
|
||||
<span>1.第</span>
|
||||
<el-input v-model="redLicenseForm.noticeTripNumber" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车到达你站后,准接你站发出的列车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 10px;text-indent: 36px;">
|
||||
<span>2.于</span>
|
||||
<el-input v-model="redLicenseForm.noticeHour1" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>时</span>
|
||||
<el-input v-model="redLicenseForm.noticeMinute1" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>分发出第</span>
|
||||
<el-input v-model="redLicenseForm.noticeTripNumber1" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车,并于</span>
|
||||
<el-input v-model="redLicenseForm.noticeHour2" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>时</span>
|
||||
<el-input v-model="redLicenseForm.noticeMinute2" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>分再发出第</span>
|
||||
<el-input v-model="redLicenseForm.noticeTripNumber2" :disabled="switchFlag" style="display: inline;" size="small" class="inline-input" />
|
||||
<span>次列车。</span>
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 60px;display: flex;align-items: center;justify-content: end;">
|
||||
<div><span style="color: #f00;">{{ showCentralizedStationName }}</span>(站名印)车站值班员(签名)</div>
|
||||
<el-input v-model="redLicenseForm.signature" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="font-size: 16px;margin-top: 15px;display: flex;align-items: center;margin-bottom: 10px;justify-content: end;">
|
||||
<el-input v-model="redLicenseForm.year" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div>年</div>
|
||||
<el-input v-model="redLicenseForm.moon" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div>月</div>
|
||||
<el-input v-model="redLicenseForm.day" :disabled="switchFlag" size="small" style="width: 80px;" />
|
||||
<div>日填发</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'RedLicence',
|
||||
props: {
|
||||
redLicenseForm:{
|
||||
type: Object,
|
||||
required: true
|
||||
},
|
||||
switchFlag:{
|
||||
type: Boolean,
|
||||
required: true
|
||||
},
|
||||
showCentralizedStationName: {
|
||||
type: String,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
};
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
64
src/views/newMap/trainTicket/trainTicket.vue
Normal file
64
src/views/newMap/trainTicket/trainTicket.vue
Normal file
@ -0,0 +1,64 @@
|
||||
<template>
|
||||
<div style="border: 1px solid #000000;margin-top: 20px;padding: 20px;">
|
||||
<div style="text-align: center;font-size: 28px;">路 票</div>
|
||||
<div style="display: flex;justify-content: center;align-items: center;font-size: 18px;margin-top: 10px;">
|
||||
<div>电话记录 第</div>
|
||||
<el-input v-model="ticketForm.number" :disabled="switchFlag" size="mini" style="width: 80px;" />
|
||||
<div>号</div>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: center;align-items: center;font-size: 18px;margin-top: 10px;">
|
||||
<div style="margin-left: 80px;">车 次</div>
|
||||
<el-input v-model="ticketForm.tripNumber" :disabled="switchFlag" size="mini" style="width: 80px;" />
|
||||
</div>
|
||||
<div style="display: flex; justify-content: center;font-size: 40px;font-weight: bolder;margin-top: 25px;align-items: center;">
|
||||
<div>{{ ticketForm.station }}</div>
|
||||
<svg-icon icon-class="arrow" style="width: 100px" />
|
||||
<div>
|
||||
<el-select v-model="ticketForm.nextStation" size="small" :disabled="switchFlag" class="station-input" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in stationList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.name"
|
||||
/>
|
||||
</el-select>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; justify-content: space-between;font-size: 18px;margin-top: 25px;margin-bottom: 25px;align-items: center;">
|
||||
<div style="margin-left: 50px;"><span style="color: #f00">{{ ticketForm.station }}</span>(站名印)</div>
|
||||
<div>
|
||||
<span>编号</span>
|
||||
<el-input v-model="ticketForm.no" size="small" :disabled="switchFlag" style="width: 80px;" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'TrainTicket',
|
||||
props: {
|
||||
ticketForm:{
|
||||
type: Object,
|
||||
required: true
|
||||
},
|
||||
switchFlag:{
|
||||
type: Boolean,
|
||||
required: true
|
||||
},
|
||||
stationList: {
|
||||
type: Array,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
};
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
Loading…
Reference in New Issue
Block a user