<template>
|
<j-modal title="预览(仅可预览已完成工单)" :width="948" :visible="visible" switchFullscreen centered
|
:mask-closable="false" @cancel="handleCancel" cancelText="关闭">
|
<a-spin :spinning="spinning" style="height: 100%">
|
<div id="dataTable">
|
<div v-for="dataItem in dataSource" class="table-container">
|
<div style="page-break-before:always"></div>
|
|
<table class="import-table" :id="dataItem.equipmentCode">
|
<thead>
|
<tr>
|
<td colspan="12" style="border: none">
|
<div style="text-align: right">{{dataItem.hfCode}}</div>
|
</td>
|
</tr>
|
</thead>
|
|
<tbody>
|
<tr style="height: 48px;">
|
<th colspan="12" style="border: none;font-size: 20px">加工设备保养计划变更申请单</th>
|
</tr>
|
|
<tr>
|
<td colspan="6" style="border: none;padding-left: 20px">
|
<div style="text-align: left">申请单位:{{dataItem.zxfactoryOrgCode_dictText}}</div>
|
</td>
|
<td colspan="6" style="border: none;padding-right: 20px">
|
<div style="text-align: right">
|
{{dataItem.applyDate.split('-')[0]}} 年 {{dataItem.applyDate.split('-')[1]}} 月
|
{{dataItem.applyDate.split('-')[2]}} 日
|
</div>
|
</td>
|
</tr>
|
|
<tr style="height: 40px;">
|
<td colspan="2">设备名称</td>
|
<td colspan="2">{{dataItem.equipmentName}}</td>
|
<td colspan="2">型号</td>
|
<td colspan="2">{{dataItem.equipmentModel}}</td>
|
<td colspan="2">统一编号</td>
|
<td colspan="2">{{dataItem.equipmentCode}}</td>
|
</tr>
|
|
<tr style="height: 40px;">
|
<td colspan="2">原计划时间</td>
|
<td colspan="2">{{dataItem.oldPlanDate}}</td>
|
<td colspan="2">申请延保时间</td>
|
<td colspan="2">{{dataItem.deferredMaintenanceDate}}</td>
|
<td colspan="2">设备管理主管</td>
|
<td colspan="2">{{dataItem.applicant_dictText}}</td>
|
</tr>
|
|
<tr>
|
<td colspan="2" style="padding: 5px">延保(或变更)原因</td>
|
<td colspan="10" style="text-align: left;padding: 5px">
|
<div style="text-align: left" v-html="dataItem.equipmentManagerComment"></div>
|
<br/><br/><br/><br/>
|
<div style="text-align: right;padding-right: 20px">
|
主管室级领导签字:{{dataItem.equipmentManagerSignature_dictText}}
|
</div>
|
</td>
|
</tr>
|
|
<tr>
|
<td colspan="2" style="padding: 5px">确认部门</td>
|
<td colspan="10" style="padding: 5px">
|
<div style="text-align: left" v-html="dataItem.departManagerComment"></div>
|
<br/><br/><br/><br/>
|
<div style="text-align: right;padding-right: 20px">
|
主管室级领导签字:{{dataItem.departManagerSignature_dictText}}
|
</div>
|
</td>
|
</tr>
|
|
<tr>
|
<td colspan="2" style="padding: 5px">生产保障部</td>
|
<td colspan="10" style="padding: 5px">
|
<div style="text-align: left" v-html="dataItem.productionSupportComment"></div>
|
<br/><br/><br/><br/>
|
<div style="text-align: right;padding-right: 20px">
|
主管室级领导签字:{{dataItem.productionSupportSignature_dictText}}
|
</div>
|
</td>
|
</tr>
|
|
<tr>
|
<td colspan="12" style="padding: 5px 40px;border: none;">
|
<div style="text-align: left">
|
备注:确认部门为生产指挥部、设备维修部门、项目实施部门。其中因生产任务紧急无法停机的情况须经生产指挥部签字
|
</div>
|
</td>
|
</tr>
|
</tbody>
|
</table>
|
</div>
|
</div>
|
</a-spin>
|
|
<template slot="footer">
|
<a-button @click="handleCancel">关闭</a-button>
|
<a-button type="primary" @click="handleImport">导出</a-button>
|
<a-button type="primary" v-print="'#dataTable'">打印</a-button>
|
</template>
|
</j-modal>
|
</template>
|
|
<script>
|
import { getAction } from '@/api/manage'
|
import $ from 'jquery'
|
import '@/components/table2excel/table2excel'
|
|
export default {
|
name: 'EamThirdMaintenanceChangeBatchPrintModal',
|
data() {
|
return {
|
visible: false,
|
spinning: false,
|
dataSource: [],
|
url: {
|
list: '/eam/eamThirdMaintenanceChange/batchExport'
|
}
|
}
|
},
|
methods: {
|
/**
|
* 批量预览
|
* @param ids String 主页面列表勾选ids
|
*/
|
handlePreview(ids) {
|
this.visible = true
|
this.spinning = true
|
this.dataSource = []
|
const that = this
|
getAction(this.url.list, { ids })
|
.then(res => {
|
if (res.success) that.dataSource = res.result
|
})
|
.finally(() => {
|
that.spinning = false
|
})
|
},
|
|
// 导出到Excel
|
handleImport() {
|
document.querySelectorAll('table.import-table').forEach(item => {
|
$(item).table2excel({
|
exclude: '.noExl',
|
name: 'Excel Document Name',
|
filename: '加工设备保养计划变更申请单-' + item.id,
|
exclude_img: true,
|
fileext: '.xls',
|
exclude_links: true,
|
exclude_inputs: false
|
})
|
})
|
|
},
|
|
handleCancel() {
|
this.close()
|
},
|
|
close() {
|
this.$emit('close')
|
this.visible = false
|
if (this.$refs.form) this.$refs.form.clearValidate()
|
}
|
}
|
}
|
</script>
|
|
<style scoped lang="less">
|
/deep/ .ant-modal {
|
height: 90%;
|
overflow: hidden;
|
|
.ant-modal-content {
|
height: 100%;
|
display: flex;
|
flex-direction: column;
|
overflow: hidden;
|
|
::-webkit-scrollbar {
|
width: 8px;
|
height: 8px;
|
}
|
|
.ant-modal-body {
|
flex: 1;
|
overflow: auto;
|
}
|
}
|
}
|
|
.table-container:not(:last-child) {
|
margin-bottom: 20px;
|
}
|
|
table {
|
width: 100%;
|
text-align: center;
|
table-layout: fixed;
|
|
td, th {
|
border: 1px solid #000;
|
}
|
|
td.vertical-display {
|
transform: rotate(360deg);
|
writing-mode: vertical-lr;
|
letter-spacing: 5px;
|
padding: 10px 0;
|
}
|
}
|
</style>
|