非正常情况接发列车关键环节控制表--实训操作记录

This commit is contained in:
dong 2023-02-07 13:38:08 +08:00
parent 31c09eea8e
commit 9361a11268
5 changed files with 415 additions and 88 deletions

View File

@ -4362,6 +4362,292 @@ export const OperationEvent = {
endTimeInfo: { endTimeInfo: {
operation: 'b112', operation: 'b112',
domId: '_Tips-TicketOrRegister-RegisterInput-EndTimeInfo' domId: '_Tips-TicketOrRegister-RegisterInput-EndTimeInfo'
},
tabs: {
operation: 'b113',
domId: '_Tips-TicketOrRegister-RegisterInput-tabs'
}
}
},
AbnormalTrainRegister: { // 薄册--非正常情况接发列车关键环节控制表
tabType: {
typeChange: {
operation: 'c000',
domId: '_Tips-AbnormalTrainRegister-tabType-typeChange'
}
},
formInput: {
submit: {
operation: 'c001',
domId: '_Tips-AbnormalTrainRegister-formInput-submit{BOTTOM}'
},
supervisor: {
operation: 'c002',
domId: '_Tips-AbnormalTrainRegister-formInput-supervisor'
},
cadresPost: {
operation: 'c003',
domId: '_Tips-AbnormalTrainRegister-formInput-cadresPost'
},
monitorCadres: {
operation: 'c004',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorCadres'
},
weather: {
operation: 'c005',
domId: '_Tips-AbnormalTrainRegister-formInput-weather'
},
registerDate: {
operation: 'c006',
domId: '_Tips-AbnormalTrainRegister-formInput-registerDate'
},
noticeCadresTimeHour: {
operation: 'c007',
domId: '_Tips-AbnormalTrainRegister-formInput-noticeCadresTimeHour'
},
noticeCadresTimeMinute: {
operation: 'c008',
domId: '_Tips-AbnormalTrainRegister-formInput-noticeCadresTimeMinute'
},
reportDispatcherTimeHour: {
operation: 'c009',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcherTimeHour'
},
reportDispatcherTimeMinute: {
operation: 'c0010',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcherTimeMinute'
},
reportCommandCentreTimeHour: {
operation: 'c0011',
domId: '_Tips-AbnormalTrainRegister-formInput-reportCommandCentreTimeHour'
},
reportCommandCentreTimeMinute: {
operation: 'c0012',
domId: '_Tips-AbnormalTrainRegister-formInput-reportCommandCentreTimeMinute'
},
monitorArriveTimeHour: {
operation: 'c0013',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArriveTimeHour'
},
monitorArriveTimeMinute: {
operation: 'c0014',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArriveTimeMinute'
},
departmentName0: {
operation: 'c0015',
domId: '_Tips-AbnormalTrainRegister-formInput-departmentName0'
},
registration0: {
operation: 'c0016',
domId: '_Tips-AbnormalTrainRegister-formInput-registration0'
},
reportSign0: {
operation: 'c0017',
domId: '_Tips-AbnormalTrainRegister-formInput-reportSign0'
},
reportDispatcher0: {
operation: 'c0018',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcher0'
},
centerDispatchCommandCheck0: {
operation: 'c0019',
domId: '_Tips-AbnormalTrainRegister-formInput-centerDispatchCommandCheck0'
},
monitorArrive0: {
operation: 'c0020',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArrive0'
},
writeOff0: {
operation: 'c0021',
domId: '_Tips-AbnormalTrainRegister-formInput-writeOff0'
},
workerDispatchCommandCheck0: {
operation: 'c0022',
domId: '_Tips-AbnormalTrainRegister-formInput-workerDispatchCommandCheck0'
},
departmentName1: {
operation: 'c0023',
domId: '_Tips-AbnormalTrainRegister-formInput-departmentName1'
},
registration1: {
operation: 'c0024',
domId: '_Tips-AbnormalTrainRegister-formInput-registration1'
},
reportSign1: {
operation: 'c0025',
domId: '_Tips-AbnormalTrainRegister-formInput-reportSign1'
},
reportDispatcher1: {
operation: 'c0026',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcher1'
},
centerDispatchCommandCheck1: {
operation: 'c0027',
domId: '_Tips-AbnormalTrainRegister-formInput-centerDispatchCommandCheck1'
},
monitorArrive1: {
operation: 'c0028',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArrive1'
},
writeOff1: {
operation: 'c0029',
domId: '_Tips-AbnormalTrainRegister-formInput-writeOff1'
},
workerDispatchCommandCheck1: {
operation: 'c0030',
domId: '_Tips-AbnormalTrainRegister-formInput-workerDispatchCommandCheck1'
},
departmentName2: {
operation: 'c0031',
domId: '_Tips-AbnormalTrainRegister-formInput-departmentName2'
},
registration2: {
operation: 'c0032',
domId: '_Tips-AbnormalTrainRegister-formInput-registration2'
},
reportSign2: {
operation: 'c0033',
domId: '_Tips-AbnormalTrainRegister-formInput-reportSign2'
},
reportDispatcher2: {
operation: 'c0034',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcher2'
},
centerDispatchCommandCheck2: {
operation: 'c0035',
domId: '_Tips-AbnormalTrainRegister-formInput-centerDispatchCommandCheck2'
},
monitorArrive2: {
operation: 'c0036',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArrive2'
},
writeOff2: {
operation: 'c0037',
domId: '_Tips-AbnormalTrainRegister-formInput-writeOff2'
},
workerDispatchCommandCheck2: {
operation: 'c0038',
domId: '_Tips-AbnormalTrainRegister-formInput-workerDispatchCommandCheck2'
},
departmentName3: {
operation: 'c0039',
domId: '_Tips-AbnormalTrainRegister-formInput-departmentName3'
},
registration3: {
operation: 'c0040',
domId: '_Tips-AbnormalTrainRegister-formInput-registration3'
},
reportSign3: {
operation: 'c0041',
domId: '_Tips-AbnormalTrainRegister-formInput-reportSign3'
},
reportDispatcher3: {
operation: 'c0042',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcher3'
},
centerDispatchCommandCheck3: {
operation: 'c0043',
domId: '_Tips-AbnormalTrainRegister-formInput-centerDispatchCommandCheck3'
},
monitorArrive3: {
operation: 'c0044',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArrive3'
},
writeOff3: {
operation: 'c0045',
domId: '_Tips-AbnormalTrainRegister-formInput-writeOff3'
},
workerDispatchCommandCheck3: {
operation: 'c0046',
domId: '_Tips-AbnormalTrainRegister-formInput-workerDispatchCommandCheck3'
},
departmentName4: {
operation: 'c0047',
domId: '_Tips-AbnormalTrainRegister-formInput-departmentName4'
},
registration4: {
operation: 'c0048',
domId: '_Tips-AbnormalTrainRegister-formInput-registration4'
},
reportSign4: {
operation: 'c0049',
domId: '_Tips-AbnormalTrainRegister-formInput-reportSign4'
},
reportDispatcher4: {
operation: 'c0050',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcher4'
},
centerDispatchCommandCheck4: {
operation: 'c0051',
domId: '_Tips-AbnormalTrainRegister-formInput-centerDispatchCommandCheck4'
},
monitorArrive4: {
operation: 'c0052',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArrive4'
},
writeOff4: {
operation: 'c0053',
domId: '_Tips-AbnormalTrainRegister-formInput-writeOff4'
},
workerDispatchCommandCheck4: {
operation: 'c0054',
domId: '_Tips-AbnormalTrainRegister-formInput-workerDispatchCommandCheck4'
},
departmentName5: {
operation: 'c0055',
domId: '_Tips-AbnormalTrainRegister-formInput-departmentName5'
},
registration5: {
operation: 'c0056',
domId: '_Tips-AbnormalTrainRegister-formInput-registration5'
},
reportSign5: {
operation: 'c0057',
domId: '_Tips-AbnormalTrainRegister-formInput-reportSign5'
},
reportDispatcher5: {
operation: 'c0058',
domId: '_Tips-AbnormalTrainRegister-formInput-reportDispatcher5'
},
centerDispatchCommandCheck5: {
operation: 'c0059',
domId: '_Tips-AbnormalTrainRegister-formInput-centerDispatchCommandCheck5'
},
monitorArrive5: {
operation: 'c0060',
domId: '_Tips-AbnormalTrainRegister-formInput-monitorArrive5'
},
writeOff5: {
operation: 'c0061',
domId: '_Tips-AbnormalTrainRegister-formInput-writeOff5'
},
workerDispatchCommandCheck5: {
operation: 'c0062',
domId: '_Tips-AbnormalTrainRegister-formInput-workerDispatchCommandCheck5'
},
faultContent: {
operation: 'c0063',
domId: '_Tips-AbnormalTrainRegister-formInput-faultContent'
},
sectionContent: {
operation: 'c0064',
domId: '_Tips-AbnormalTrainRegister-formInput-sectionContent'
},
pickRoutePrepareContent: {
operation: 'c0065',
domId: '_Tips-AbnormalTrainRegister-formInput-pickRoutePrepareContent'
},
pickSignal: {
operation: 'c0066',
domId: '_Tips-AbnormalTrainRegister-formInput-pickSignal'
},
departRoutePrepareContent: {
operation: 'c0067',
domId: '_Tips-AbnormalTrainRegister-formInput-departRoutePrepareContent'
},
otherKeyLinkContent: {
operation: 'c0068',
domId: '_Tips-AbnormalTrainRegister-formInput-otherKeyLinkContent'
} }
} }
}, },

View File

@ -75,7 +75,7 @@ export function getDomOffset(dom) {
pol = dom.offsetLeft; pol = dom.offsetLeft;
} }
if (pot != dom.offsetTop) { if (pot != dom.offsetTop) {
offsetTop += dom.offsetTop; offsetTop += (dom.offsetTop - dom.scrollTop);
pot = dom.offsetTop; pot = dom.offsetTop;
} }
dom = dom.offsetParent; dom = dom.offsetParent;

View File

@ -9,7 +9,7 @@
<div class="td-div"> <div class="td-div">
<span>值班员</span> <span>值班员</span>
<div class="td-div-input"> <div class="td-div-input">
<el-input v-model="form.supervisor" size="mini" :disabled="!isCreat" /> <el-input :id="formInput.supervisor.domId" v-model="form.supervisor" size="mini" :disabled="!isCreat" @blur="blurChange('supervisor')" />
</div> </div>
</div> </div>
</td> </td>
@ -17,29 +17,28 @@
<div class="td-div"> <div class="td-div">
<span>干部上岗是由</span> <span>干部上岗是由</span>
<div class="td-div-input"> <div class="td-div-input">
<el-input v-model="form.cadresPost" size="mini" :disabled="!isCreat" /> <el-input :id="formInput.cadresPost.domId" v-model="form.cadresPost" size="mini" :disabled="!isCreat" @blur="blurChange('cadresPost')" />
</div> </div>
</div></td> </div></td>
<td colspan="2"> <td colspan="2">
<div class="td-div"> <div class="td-div">
<span>监控干部</span> <span>监控干部</span>
<div class="td-div-input"> <div class="td-div-input">
<el-input v-model="form.monitorCadres" size="mini" :disabled="!isCreat" /> <el-input :id="formInput.monitorCadres.domId" v-model="form.monitorCadres" size="mini" :disabled="!isCreat" @blur="blurChange('monitorCadres')" />
</div> </div>
</div></td> </div></td>
<td colspan="2"> <td colspan="2">
<div class="td-div"> <div class="td-div">
<span>天气</span> <span>天气</span>
<div class="td-div-input"> <div class="td-div-input">
<el-input v-model="form.weather" size="mini" :disabled="!isCreat" /> <el-input :id="formInput.weather.domId" v-model="form.weather" size="mini" :disabled="!isCreat" @blur="blurChange('weather')" />
</div> </div>
</div></td> </div></td>
<td colspan="2"> <td colspan="2">
<div class="td-div"> <div class="td-div">
<span>日期</span> <span>日期</span>
<div class="td-div-input"> <div class="td-div-input">
<!-- <el-input v-model="form.registerDate" size="mini" :disabled="!isCreat" /> --> <el-date-picker :id="formInput.registerDate.domId" v-model="form.registerDate" type="date" size="mini" format="yyyy年MM月dd日" value-format="yyyy年MM月dd日" placeholder="选择日期" class="autoWidth" :disabled="!isCreat" @change="blurChange('registerDate')" />
<el-date-picker v-model="form.registerDate" type="date" size="mini" format="yyyy年MM月dd日" value-format="yyyy年MM月dd日" placeholder="选择日期" class="autoWidth" :disabled="!isCreat" />
</div> </div>
</div></td> </div></td>
</tr> </tr>
@ -47,29 +46,29 @@
<td colspan="2" align="center"> <td colspan="2" align="center">
<p>通知干部上岗 <p>通知干部上岗
<br> <br>
<el-input v-model="form.noticeCadresTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.noticeCadresTimeHour.domId" v-model="form.noticeCadresTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('noticeCadresTime', 'hour')" />
<el-input v-model="form.noticeCadresTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.noticeCadresTimeMinute.domId" v-model="form.noticeCadresTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('noticeCadresTime', 'minute')" />
</p> </p>
</td> </td>
<td colspan="2" align="center"> <td colspan="2" align="center">
<p>报告列车调度员 <p>报告列车调度员
<br> <br>
<el-input v-model="form.reportDispatcherTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.reportDispatcherTimeHour.domId" v-model="form.reportDispatcherTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('reportDispatcherTime', 'hour')" />
<el-input v-model="form.reportDispatcherTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.reportDispatcherTimeMinute.domId" v-model="form.reportDispatcherTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('reportDispatcherTime', 'minute')" />
</p> </p>
</td> </td>
<td colspan="2" align="center"> <td colspan="2" align="center">
<p>报告指挥中心 <p>报告指挥中心
<br> <br>
<el-input v-model="form.reportCommandCentreTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.reportCommandCentreTimeHour.domId" v-model="form.reportCommandCentreTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('reportCommandCentreTime', 'hour')" />
<el-input v-model="form.reportCommandCentreTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.reportCommandCentreTimeMinute.domId" v-model="form.reportCommandCentreTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('reportCommandCentreTime', 'minute')" />
</p> </p>
</td> </td>
<td colspan="2" align="center"> <td colspan="2" align="center">
<p>监控干部到岗 <p>监控干部到岗
<br> <br>
<el-input v-model="form.monitorArriveTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.monitorArriveTimeHour.domId" v-model="form.monitorArriveTime.hour" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('monitorArriveTime', 'hour')" />
<el-input v-model="form.monitorArriveTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" /> <el-input :id="formInput.monitorArriveTimeMinute.domId" v-model="form.monitorArriveTime.minute" oninput="value=value.replace(/[^\d]/g,'')" size="mini" class="timeInput" :disabled="!isCreat" @blur="blurChange('monitorArriveTime', 'minute')" />
</p> </p>
</td> </td>
<td colspan="2" align="center"> <td colspan="2" align="center">
@ -90,99 +89,75 @@
<td align="center">调度命令核对接收</td> <td align="center">调度命令核对接收</td>
</tr> </tr>
<tr v-for="(item, index) in form.registerInfoList" :key="index"> <tr v-for="(item, index) in form.registerInfoList" :key="index">
<td><el-input v-model="item.departmentName" size="mini" :disabled="!isCreat" /></td> <td><el-input :id="formInput['departmentName' + index].domId" v-model="item.departmentName" size="mini" :disabled="!isCreat" @blur="listChange('departmentName', index)" /></td>
<td><el-input v-model="item.registration" size="mini" :disabled="!isCreat" /></td> <td><el-input :id="formInput['registration' + index].domId" v-model="item.registration" size="mini" :disabled="!isCreat" @blur="listChange('registration', index)" /></td>
<td> <td>
<el-select v-model="item.reportSign" size="mini" class="autoWidth" :disabled="!isCreat"> <el-button :id="formInput['reportSign' + index].domId" size="mini" :disabled="!isCreat" class="checkBtn" @click="clickListChange('reportSign', index)">
<el-option <i v-if="item.reportSign" class="el-icon-check" />
v-for="every in Whether" </el-button>
:key="every.value"
:label="every.label"
:value="every.value"
/>
</el-select>
</td> </td>
<td> <td>
<el-select v-model="item.reportDispatcher" size="mini" class="autoWidth" :disabled="!isCreat"> <el-button :id="formInput['reportDispatcher' + index].domId" size="mini" :disabled="!isCreat" class="checkBtn" @click="clickListChange('reportDispatcher', index)">
<el-option <i v-if="item.reportDispatcher" class="el-icon-check" />
v-for="every in Whether" </el-button>
:key="every.value" </td>
:label="every.label"
:value="every.value"
/>
</el-select></td>
<td colspan="2"> <td colspan="2">
<el-select v-model="item.centerDispatchCommandCheck" size="mini" class="autoWidth" :disabled="!isCreat"> <el-button :id="formInput['centerDispatchCommandCheck' + index].domId" size="mini" :disabled="!isCreat" class="checkBtn" @click="clickListChange('centerDispatchCommandCheck', index)">
<el-option <i v-if="item.centerDispatchCommandCheck" class="el-icon-check" />
v-for="every in Whether" </el-button>
:key="every.value" </td>
:label="every.label"
:value="every.value"
/>
</el-select></td>
<td colspan="2"> <td colspan="2">
<el-select v-model="item.monitorArrive" size="mini" class="autoWidth" :disabled="!isCreat"> <el-button :id="formInput['monitorArrive' + index].domId" size="mini" :disabled="!isCreat" class="checkBtn" @click="clickListChange('monitorArrive', index)">
<el-option <i v-if="item.monitorArrive" class="el-icon-check" />
v-for="every in Whether" </el-button>
:key="every.value" </td>
:label="every.label"
:value="every.value"
/>
</el-select></td>
<td> <td>
<el-select v-model="item.writeOff" size="mini" class="autoWidth" :disabled="!isCreat"> <el-button :id="formInput['writeOff' + index].domId" size="mini" :disabled="!isCreat" class="checkBtn" @click="clickListChange('writeOff', index)">
<el-option <i v-if="item.writeOff" class="el-icon-check" />
v-for="every in Whether" </el-button>
:key="every.value" </td>
:label="every.label"
:value="every.value"
/>
</el-select></td>
<td> <td>
<el-select v-model="item.workerDispatchCommandCheck" size="mini" class="autoWidth" :disabled="!isCreat"> <el-button :id="formInput['workerDispatchCommandCheck' + index].domId" size="mini" :disabled="!isCreat" class="checkBtn" @click="clickListChange('workerDispatchCommandCheck', index)">
<el-option <i v-if="item.workerDispatchCommandCheck" class="el-icon-check" />
v-for="every in Whether" </el-button>
:key="every.value" </td>
:label="every.label"
:value="every.value"
/>
</el-select></td>
</tr> </tr>
<tr> <tr>
<td colspan="10">1.以上内容只对涉及的项目监控后划2.车务发现或接到报告设备故障时可立即报告列车调度员然后登记有关单位签认</td> <td colspan="10">1.以上内容只对涉及的项目监控后划2.车务发现或接到报告设备故障时可立即报告列车调度员然后登记有关单位签认</td>
</tr> </tr>
<tr> <tr>
<td colspan="10">故障施工天窗维修作业内容<el-input v-model="form.faultContent" type="textarea" autosize size="mini" :disabled="!isCreat" /></td> <td colspan="10">故障施工天窗维修作业内容<el-input :id="formInput.faultContent.domId" v-model="form.faultContent" type="textarea" autosize size="mini" :disabled="!isCreat" @blur="blurChange('faultContent')" /></td>
</tr> </tr>
<tr> <tr>
<td colspan="2">区间闭塞封闭情况</td> <td colspan="2">区间闭塞封闭情况</td>
<td colspan="8"><el-input v-model="form.sectionContent" size="mini" :disabled="!isCreat" /></td> <td colspan="8"><el-input :id="formInput.sectionContent.domId" v-model="form.sectionContent" size="mini" :disabled="!isCreat" @blur="blurChange('sectionContent')" /></td>
</tr> </tr>
<tr> <tr>
<td colspan="2">接车进路准备方式</td> <td colspan="2">接车进路准备方式</td>
<td colspan="8"><el-input v-model="form.pickRoutePrepareContent" size="mini" :disabled="!isCreat" /></td> <td colspan="8"><el-input :id="formInput.pickRoutePrepareContent.domId" v-model="form.pickRoutePrepareContent" size="mini" :disabled="!isCreat" @blur="blurChange('pickRoutePrepareContent')" /></td>
</tr> </tr>
<tr> <tr>
<td colspan="2">接车信号</td> <td colspan="2">接车信号</td>
<td colspan="8"><el-input v-model="form.pickSignal" size="mini" :disabled="!isCreat" /></td> <td colspan="8"><el-input :id="formInput.pickSignal.domId" v-model="form.pickSignal" size="mini" :disabled="!isCreat" @blur="blurChange('pickSignal')" /></td>
</tr> </tr>
<tr> <tr>
<td colspan="2">发车进路准备方式发车凭证</td> <td colspan="2">发车进路准备方式发车凭证</td>
<td colspan="8"><el-input v-model="form.departRoutePrepareContent" size="mini" :disabled="!isCreat" /></td> <td colspan="8"><el-input :id="formInput.departRoutePrepareContent.domId" v-model="form.departRoutePrepareContent" size="mini" :disabled="!isCreat" @blur="blurChange('departRoutePrepareContent')" /></td>
</tr> </tr>
<tr> <tr>
<td colspan="2">其他关键环节</td> <td colspan="2">其他关键环节</td>
<td colspan="8"><el-input v-model="form.otherKeyLinkContent" size="mini" :disabled="!isCreat" /></td> <td colspan="8"><el-input :id="formInput.otherKeyLinkContent.domId" v-model="form.otherKeyLinkContent" size="mini" :disabled="!isCreat" @blur="blurChange('otherKeyLinkContent')" /></td>
</tr> </tr>
</table> </table>
<div v-if="isCreat" class="footer"> <div v-if="isCreat" class="footer">
<el-button type="primary" size="mini" @click="submit">提交</el-button> <el-button :id="formInput.submit.domId" type="primary" size="mini" @click="submit">提交</el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { deepAssign } from '@/utils/index'; import { deepAssign } from '@/utils/index';
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
export default { export default {
name: 'ControlTable', name: 'ControlTable',
props: { props: {
@ -201,13 +176,15 @@ export default {
}, },
data() { data() {
return { return {
Whether: [{ label: '否', value: false }, { label: '是', value: true }],
form: {} form: {}
}; };
}, },
computed: { computed: {
stationCode() { stationCode() {
return this.$store.state.training.roleDeviceCode; return this.$store.state.training.roleDeviceCode;
},
formInput() {
return OperationEvent.AbnormalTrainRegister.formInput;
} }
}, },
created() { created() {
@ -218,10 +195,38 @@ export default {
} }
}, },
methods: { methods: {
inputLimit(value) { listChange(key, index) {
console.log('🚀 ~ file: controlTable.vue:223 ~ inputLimit ~ value', value); const val = this.form.registerInfoList[index][key];
let val = value.replace(/[^\d]/g, ''); const operate = {
if (Number(val) > 23) { val = 23; } else if (Number(val) < 0) { val = 0; } value = `${val}`; operation: this.formInput[key + index].operation,
param: {val: val}
};
this.$store.dispatch('trainingNew/next', operate);
},
clickListChange(key, index) {
const obj = this.form.registerInfoList[index];
this.$set(obj, key, !obj[key]);
this.listChange(key, index);
},
blurChange() {
const argList = [...arguments];
let key = '';
let val = '';
argList.forEach((item, index) => {
if (index == 0) {
val = this.form[item];
key = item;
} else {
val = val[item];
const n = item[0].toUpperCase() + item.substr(1);
key += n;
}
});
const operate = {
operation: this.formInput[key].operation,
param: {val: val}
};
this.$store.dispatch('trainingNew/next', operate);
}, },
initRegisterInfoData() { initRegisterInfoData() {
const list = []; const list = [];
@ -253,7 +258,7 @@ export default {
obj.stationCode = this.stationCode; obj.stationCode = this.stationCode;
obj.registerInfoList.forEach(item => { obj.registerInfoList.forEach(item => {
const s = Object.values(item).every(ii => { const s = Object.values(item).every(ii => {
return ii == ''; return !ii;
}); });
if (!s) { if (!s) {
list.push(item); list.push(item);
@ -331,6 +336,10 @@ table {
.autoWidth { .autoWidth {
width: 100%; width: 100%;
} }
.checkBtn {
width: 100%;
height: 28px;
}
.footer { .footer {
height: 50px; height: 50px;
display: flex; display: flex;

View File

@ -1,8 +1,8 @@
<template> <template>
<div> <div>
<el-tabs v-model="activeName" type="card"> <el-tabs :id="typeChange.domId" v-model="activeName" type="card" @tab-click="tabClick">
<el-tab-pane label="填写" name="write"> <el-tab-pane label="填写" name="write">
<div class="write-box" :style="{height: boxHeight + 'px'}"> <div ref="writeTabPane" class="write-box" :style="{height: boxHeight + 'px'}">
<ControlTable :is-creat="true" @creat="creatData" /> <ControlTable :is-creat="true" @creat="creatData" />
</div> </div>
</el-tab-pane> </el-tab-pane>
@ -21,6 +21,7 @@
import ControlTable from './controlTable'; import ControlTable from './controlTable';
import { sendCommandNew } from '@/api/jmap/training'; import { sendCommandNew } from '@/api/jmap/training';
import { UserOperationType } from '@/scripts/ConstDic'; import { UserOperationType } from '@/scripts/ConstDic';
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
export default { export default {
name: 'AbnormalTrain', name: 'AbnormalTrain',
components: { components: {
@ -36,6 +37,12 @@ export default {
group() { group() {
return this.$route.query.group; return this.$route.query.group;
}, },
typeChange() {
return OperationEvent.AbnormalTrainRegister.tabType.typeChange;
},
formInput() {
return OperationEvent.AbnormalTrainRegister.formInput;
},
boxHeight() { boxHeight() {
const allH = this.$store.state.app.height; const allH = this.$store.state.app.height;
let h = allH - 103 - 39 - 30 - 41 - 15; let h = allH - 103 - 39 - 30 - 41 - 15;
@ -50,11 +57,29 @@ export default {
} }
} }
}, },
created() { mounted() {
this.$refs.writeTabPane.addEventListener('scroll', this.handleScroll);
},
beforeDestroy() {
this.$refs.writeTabPane.removeEventListener('scroll', this.handleScroll);
}, },
methods: { methods: {
handleScroll() {
this.$nextTick(() => {
this.$store.dispatch('training/emitTipFresh');
});
},
tabClick() {
const operate = {
operation: this.typeChange.operation,
param: {val: this.activeName},
userOperationType: UserOperationType.LEFTCLICK
};
this.$store.dispatch('trainingNew/next', operate);
},
creatData(obj) { creatData(obj) {
const operate = { const operate = {
operation: this.formInput.submit.operation,
param: obj, param: obj,
userOperationType: UserOperationType.LEFTCLICK userOperationType: UserOperationType.LEFTCLICK
}; };
@ -83,13 +108,12 @@ export default {
<style scoped > <style scoped >
.write-box { .write-box {
height: 760px;
overflow: auto; overflow: auto;
display: flex; display: flex;
justify-content: center; justify-content: center;
position: relative;
} }
.search-box { .search-box {
height: 760px;
overflow: auto; overflow: auto;
display: flex; display: flex;
flex-direction: column; flex-direction: column;

View File

@ -1,8 +1,8 @@
<template> <template>
<div style="height: 100%"> <div style="height: 100%">
<div style="padding: 20px;font-size: 20px;text-align: center;">簿册</div> <div style="padding: 20px;font-size: 20px;text-align: center;">簿册</div>
<el-tabs type="border-card" style="height: 100%"> <el-tabs :id="registerInput.tabs.domId" v-model="activeName" type="border-card" style="height: 100%" @tab-click="tabClick">
<el-tab-pane label="行车设备检查登记簿"> <el-tab-pane label="行车设备检查登记簿" name="first">
<div style="text-align: right;"> <div style="text-align: right;">
<el-button :id="registerInput.addData.domId" size="small" style="margin-right: 20px;margin-bottom: 10px;" type="primary" @click="add">新增</el-button> <el-button :id="registerInput.addData.domId" size="small" style="margin-right: 20px;margin-bottom: 10px;" type="primary" @click="add">新增</el-button>
</div> </div>
@ -95,13 +95,13 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="行车设备施工登记簿"> <el-tab-pane label="行车设备施工登记簿" name="second">
<equipment-construction-table /> <equipment-construction-table />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="防洪安全上岗签到表"> <el-tab-pane label="防洪安全上岗签到表" name="third">
<flood-control-safety-table /> <flood-control-safety-table />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="非正常情况接发列车关键环节控制表"> <el-tab-pane label="非正常情况接发列车关键环节控制表" name="fourth">
<AbnormalTrain /> <AbnormalTrain />
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
@ -125,6 +125,7 @@ export default {
}, },
data() { data() {
return { return {
activeName: 'first',
tableData: [], tableData: [],
dataIndex: null, dataIndex: null,
value: '' value: ''
@ -142,6 +143,13 @@ export default {
this.queryData(); this.queryData();
}, },
methods: { methods: {
tabClick() {
const operate = {
operation: this.registerInput.tabs.operation,
param: {val: this.activeName}
};
this.$store.dispatch('trainingNew/next', operate);
},
doClose() { doClose() {
this.dataIndex = null; this.dataIndex = null;
}, },