生产质量检验修改及电子档案修改

dev-scheduling
jinna 3 weeks ago
parent 13b73eb7c7
commit 3da27665cd
  1. 67
      src/views/productionTesting/components/trialItem.vue
  2. 2
      src/views/productionTesting/productionQuality.vue
  3. 2
      src/views/qualityManagement/inspectionArchiving/ERecord/index.vue
  4. 675
      src/views/qualityManagement/inspectionArchiving/ERecord/printDialog.vue

@ -37,22 +37,31 @@
<div style="margin-top: 20px"> <div style="margin-top: 20px">
<el-table :data="tidList" @selection-change="selectionChangeProject" @select="selectChange"> <el-table :data="tidList" @selection-change="selectionChangeProject" @select="selectChange">
<el-table-column type="selection" width="55px"></el-table-column> <el-table-column type="selection" width="55px"></el-table-column>
<el-table-column label="编码" prop="code"> <el-table-column label="编码" prop="code" align="center">
<template #header>
<span><i style="color: red">*</i>编码</span>
</template>
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.code"></el-input> <el-input v-model="scope.row.code"></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="名称" prop="name"> <el-table-column label="名称" prop="name" align="center">
<template #header>
<span><i style="color: red">*</i>名称</span>
</template>
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.name"></el-input> <el-input v-model="scope.row.name"></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="定额工时" prop="standardWorkMinute"> <!-- <el-table-column label="定额工时" prop="standardWorkMinute" align="center">
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.standardWorkMinute"></el-input> <el-input v-model="scope.row.standardWorkMinute"></el-input>
</template> </template>
</el-table-column> </el-table-column> -->
<el-table-column label="类型" prop="itemType" width="280"> <el-table-column label="类型" prop="itemType" width="280" align="center">
<template #header>
<span><i style="color: red">*</i>类型</span>
</template>
<template #default="scope"> <template #default="scope">
<el-select v-model="scope.row.itemType" placeholder="请选择" style="width: 100%" teleported filterable <el-select v-model="scope.row.itemType" placeholder="请选择" style="width: 100%" teleported filterable
clearable> clearable>
@ -207,29 +216,29 @@ export default {
}, },
], ],
}, },
{ // {
label: '额定工时', // label: '',
prop: 'standardWorkMinute', // prop: 'standardWorkMinute',
addDisplay: false, // addDisplay: false,
// editDisplay: false, // // editDisplay: false,
sortable: 'custom', // sortable: 'custom',
span: 24, // span: 24,
search: true, // search: true,
searchLabelWidth: 50, // searchLabelWidth: 50,
formatter: (row, value) => { // formatter: (row, value) => {
if (value === -1 || value === '-1') { // if (value === -1 || value === '-1') {
return ''; // return '';
} // }
return value; // return value;
}, // },
rules: [ // rules: [
{ // {
required: false, // required: false,
message: '请输入名称', // message: '',
trigger: 'click', // trigger: 'click',
}, // },
], // ],
}, // },
], ],
}, },
typeList: [], typeList: [],
@ -341,7 +350,7 @@ export default {
if (this.tidList.length == 0) { if (this.tidList.length == 0) {
this.$message.error('请至少填写一条数据'); this.$message.error('请至少填写一条数据');
} else { } else {
let tmp = this.tidList.find(item => !item.code || !item.name); let tmp = this.tidList.find(item => !item.code || !item.name || !item.itemType);
if (tmp) { if (tmp) {
this.$message.error('数据请填写完整!'); this.$message.error('数据请填写完整!');
} else { } else {

@ -1633,7 +1633,7 @@ export default {
// } // }
// res.data.data.wpItemList[0].item.name = '' // res.data.data.wpItemList[0].item.name = ''
// res.data.data.wpItemList[0].checkUserRealName = null // res.data.data.wpItemList[0].checkUserRealName = null
let tmp = res.data.data.wpItemList.find(item => item.item.name == '度检测') let tmp = res.data.data.wpItemList.find(item => item.item.name == '度检测')
if(tmp){ if(tmp){
this.showYD = true this.showYD = true
}else{ }else{

@ -767,7 +767,7 @@ export default {
prWorkPlanList:[], prWorkPlanList:[],
dialogType:1, dialogType:1,
prWorkChecked:[], prWorkChecked:[],
rbChecked:[true,false,false,false], rbChecked:[true,true,false,false],
printType:'', printType:'',
checkWoId:'', checkWoId:'',
checkRow:{} checkRow:{}

@ -1,6 +1,6 @@
<template> <template>
<el-dialog title="打印预览" append-to-body :modelValue="showPrint" fullscreen width="85%" <el-dialog title="打印预览" append-to-body :modelValue="showPrint" fullscreen width="85%"
@close="closeDialog" :custom-class="isPrint ? 'noprint' : 'rbdyBox'"> @close="closeDialog" :custom-class="isPrint ? 'noprint' : 'rbdyBox'" @opened="open">
<!-- @click="printData" --> <!-- @click="printData" -->
<el-button v-print="printConfig" type="primary" class="printButton no-print"> </el-button> <el-button v-print="printConfig" type="primary" class="printButton no-print"> </el-button>
<div v-loading="loading" id="printMe" ref="printContent" class="printBox"> <div v-loading="loading" id="printMe" ref="printContent" class="printBox">
@ -10,30 +10,30 @@
</div> --> </div> -->
<div class="fixTopLeft">JONHON受控</div> <div class="fixTopLeft">JONHON受控</div>
<div class="printTitle">热表分厂质量记录卡</div> <div class="printTitle">热表分厂质量记录卡</div>
<div class="tableNo">表号</div> <div class="tableNo" style="text-align: left;width: 180px;float: right;">表号</div>
<table id="cus-table" cellspacing="0" style="width:100%"> <table id="cus-table" cellspacing="0">
<template v-if="modelOne!= null && modelOne.dsPart!= null"> <template v-if="modelOne!= null && modelOne.dsPart!= null">
<tr> <tr>
<td colspan="1">零件号</td> <td colspan="1">零件号</td>
<td colspan="2">{{modelOne.dsPart.partCode || '/'}}</td> <td colspan="2">{{modelOne.dsPart.partCode || '/'}}</td>
<td colspan="1">产品型号</td> <td colspan="1">产品型号</td>
<td colspan="2">{{ modelOne.dsPart.productType || '/' }}</td> <td colspan="2">{{ modelOne.wo.pjYieldOrder.productType || '/' }}</td>
<td colspan="1">生产标识</td> <td colspan="1">生产标识</td>
<td colspan="2">{{modelOne.dsPart.prodIdent || '/'}}</td> <td colspan="2">{{modelOne.wo.pjYieldOrder.prodIdent || '/'}}</td>
</tr> </tr>
<tr> <tr>
<td colspan="1">批次号</td> <td colspan="1">批次号</td>
<td colspan="2">{{modelOne.dsPart.batchNo || '/'}}</td> <td colspan="2">{{ modelOne.wo.batchNo || '/'}}</td>
<td colspan="1">名称</td> <td colspan="1">名称</td>
<td colspan="2">{{modelOne.dsPart.partName || '/'}}</td> <td colspan="2">{{ modelOne.dsPart.partName || '/'}}</td>
<td colspan="1">数量</td> <td colspan="1">数量</td>
<td colspan="2">{{ modelOne.dsPart.qty || '/' }}</td> <td colspan="2">{{ modelOne.wo.pjYieldOrder.poQty || '/' }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="1">硬度</td> <td colspan="1">硬度</td>
<td colspan="5">{{modelOne.dsPart.hardness || '/'}}</td> <td colspan="5">{{ modelOne.dsPart.hardness || '/'}}</td>
<td colspan="1">零件面积(dm²)</td> <td colspan="1">零件面积(dm²)</td>
<td colspan="2">{{ modelOne.dsPart.area || '/' }}</td> <td colspan="2">{{ modelOne.wo.pjYieldOrder.poArea || '/' }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="1">镀种</td> <td colspan="1">镀种</td>
@ -43,7 +43,7 @@
</tr> </tr>
<tr> <tr>
<td colspan="1">工艺路线</td> <td colspan="1">工艺路线</td>
<td colspan="8">{{ modelOne.dsPart.craftWay || '/' }}</td> <td colspan="8">{{ modelOne.wo.pjYieldOrder.primaryCraft || '/' }}</td>
</tr> </tr>
<tr> <tr>
<td colspan="1">质量信息</td> <td colspan="1">质量信息</td>
@ -61,13 +61,19 @@
{{item.orders}} - {{item.procedureSet.ppsName}} 工序详情 {{item.orders}} - {{item.procedureSet.ppsName}} 工序详情
</td> </td>
</tr> </tr>
<tr v-if="item.selfInspection && JSON.stringify(item.selfInspection) != '{}'"> <!-- <tr v-if="item.selfInspection && JSON.stringify(item.selfInspection) != '{}'">
<td colspan="1">自检</td> <td colspan="1">自检</td>
<td colspan="4">{{item.selfInspection.content}}</td> <td colspan="4">{{item.selfInspection.content}}</td>
<td colspan="1">结论</td> <td colspan="1">结论</td>
<td colspan="3">{{item.selfInspection.conclusion}}</td> <td colspan="3">{{item.selfInspection.conclusion}}</td>
</tr> -->
<tr v-if="item.procedureSet.ppsName == '上挂' || item.procedureSet.ppsName == '超声波清洗'">
<td colspan="1">自检</td>
<td colspan="3">零件表面无油污锈蚀磕碰伤划痕等缺陷</td>
<td colspan="2">结论</td>
<td colspan="3">合格</td>
</tr> </tr>
<template v-if="item.auditFile && JSON.stringify(item.auditFile) != '{}'"> <!-- <template v-if="item.auditFile && JSON.stringify(item.auditFile) != '{}'">
<tr> <tr>
<td colspan="5">工艺文件编号/版本号</td> <td colspan="5">工艺文件编号/版本号</td>
<td colspan="4">{{item.auditFile.papers || '/'}}</td> <td colspan="4">{{item.auditFile.papers || '/'}}</td>
@ -76,38 +82,64 @@
<td colspan="5">CPS文件编号/版本号</td> <td colspan="5">CPS文件编号/版本号</td>
<td colspan="4">{{item.auditFile.referenceFile || '/'}}</td> <td colspan="4">{{item.auditFile.referenceFile || '/'}}</td>
</tr> </tr>
</template> -->
<template v-if="item.procedureSet.ppsName != '镀后检验' && item.procedureSet.ppsName != '镀后接收'">
<tr>
<td colspan="4">工艺文件编号/版本号</td>
<td colspan="5">{{item.papers || '/'}}</td>
</tr>
<tr>
<td colspan="4">CPS文件编号/版本号</td>
<td colspan="5">{{item.referenceFile || '/'}}</td>
</tr>
</template> </template>
<tr v-if="(item.gjCode && !item.fbCode && !item.deviceCode) || item.fbCode"> <tr v-if="(item && item.gjCode && !item.fbCode && !item.deviceCode) || (item && item.fbCode)">
<td colspan="1">操作者</td> <td colspan="1">操作者</td>
<td colspan="1">{{item.createMan || '/'}}</td> <td colspan="1">{{item.createMan || '/'}}</td>
<td colspan="1" v-if="item.gjCode && !item.fbCode && !item.deviceCode ">挂具编号</td> <td colspan="1" v-if="item.gjCode && !item.fbCode && !item.deviceCode ">挂具编号</td>
<td colspan="1" v-if="item.gjCode && !item.fbCode && !item.deviceCode">{{item.gjCode || '/'}}</td> <td colspan="1" v-if="item.gjCode && !item.fbCode && !item.deviceCode">{{item.gjCode || '/'}}</td>
<td colspan="1" v-if="item.fbCode">飞拔编号</td> <td colspan="1" v-if="item.fbCode">飞拔编号</td>
<td colspan="1" v-if="item.fbCode">{{item.fbCode || '/'}}</td> <td colspan="1" v-if="item.fbCode">{{item.fbCode || '/'}}</td>
<td colspan="1" v-if="item.procedureSet.ppsName=='荧光检测'"> <td colspan="2" v-if="item.procedureSet.ppsName=='荧光检测'">
{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }} {{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }}
</td> </td>
<td v-else>{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }}</td> <td colspan="2" v-else>{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }}</td>
<template v-if="item.procedureSet.ppsName=='荧光检测'"> <template v-if="item.procedureSet.ppsName=='荧光检测'">
<td colspan="4"><img :src="testManImg(index) ? testManImg(index):'/'" style="width:70px;height:25px;margin:6px 0 6px 0"></br>{{ item.factEndTime || '/' }}</td> <td colspan="3">
<div style="display:flex;align-items:center;justify-content:center;">
<img :src="testManImg(index) ? testManImg(index):'/'" style="width:70px;height:25px;margin-right:6px;">{{ item.factEndTime || '/' }}
</div>
<!-- <img :src="testManImg(index) ? testManImg(index):'/'" style="width:70px;height:25px;margin:6px 0 6px 0"></br>{{ item.factEndTime || '/' }} -->
</td>
</template> </template>
<td colspan="4" v-else> <td colspan="3" v-else>
{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : (testMan(index) ? (testMan(index) + ' / '+item.factEndTime):'/') }} {{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : (testMan(index) ? (testMan(index) + ' / '+item.factEndTime):'/') }}
<!-- 曹鹏飞1/2025-06-28 --> <!-- 曹鹏飞1/2025-06-28 -->
</td> </td>
</tr> </tr>
<tr v-else> <tr v-else>
<td colspan="1">操作者</td> <td :colspan="item.procedureSet.ppsName == '镀后检验' || item.procedureSet.ppsName == '镀后接收' ? '4' : '1'">{{item.procedureSet.ppsName == '镀后接收' ? '保管员' : '操作者'}}</td>
<td colspan="4">{{item.createMan || '/'}}</td> <td :colspan="item.procedureSet.ppsName == '镀后检验' || item.procedureSet.ppsName == '镀后接收' ? '5' : '3'">{{item.createMan || '/'}}</td>
<td colspan="1" v-if="item.procedureSet.ppsName=='荧光检测'"> <td colspan="2" v-if="item.procedureSet.ppsName=='荧光检测'">
{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }} {{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }}
</td> </td>
<td v-else>{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }}</td> <td colspan="2" v-if="item.procedureSet.ppsName != '荧光检测' && item.procedureSet.ppsName != '镀后接收' && item.procedureSet.ppsName != '镀后检验'">
{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : '检验员确认' }}</td>
<template v-if="item.procedureSet.ppsName=='荧光检测'"> <template v-if="item.procedureSet.ppsName=='荧光检测'">
<td colspan="3"><img :src="testManImg(index) ? testManImg(index):'/'" style="width:70px;height:25px;margin:6px 0 6px 0"></br>{{ item.factEndTime || '/' }}</td> <!-- <td colspan="3">
<img :src="testManImg(index) ? testManImg(index):'/'" style="width:70px;height:25px;margin:6px 0 6px 0">
</br>
{{ item.factEndTime || '/' }}
</td> -->
<td colspan="3">
<div style="display:flex;align-items:center;justify-content:center;">
<img :src="testManImg(index) ? testManImg(index):'/'" style="width:70px;height:25px;margin-right:6px;">{{ item.factEndTime || '/' }}
</div>
</td>
</template> </template>
<td colspan="3" v-else> <td colspan="3" v-if="item.procedureSet.ppsName != '荧光检测' && item.procedureSet.ppsName != '镀后接收' && item.procedureSet.ppsName != '镀后检验'">
{{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : (testMan(index) ? (testMan(index) + ' / '+item.factEndTime):'/') }} {{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : (testMan(index) ? (testMan(index) + ' / '+item.factEndTime):'/') }}
<!-- {{ (item.procedureSet.ppsName.indexOf('检验') != -1 || item.procedureSet.ppsName == '镀后接收') ? '/' : (testMan(index) ? (testMan(index) + ' / '+item.factEndTime):'/') }} -->
<!-- 曹鹏飞2/2025-06-28 --> <!-- 曹鹏飞2/2025-06-28 -->
</td> </td>
</tr> </tr>
@ -115,12 +147,12 @@
<td colspan="1">设备编号</td> <td colspan="1">设备编号</td>
<td colspan="4">{{item.deviceCode || '/'}}</td> <td colspan="4">{{item.deviceCode || '/'}}</td>
<td colspan="1">有效期</td> <td colspan="1">有效期</td>
<td colspan="3"></td> <td colspan="3">/</td>
</tr> </tr>
<tr v-if="item.slotList && item.slotList.length>0"> <tr v-if="item.slotList && item.slotList.length>0">
<td colspan="9" >同槽信息</td> <td colspan="9" >同槽信息</td>
</tr> </tr>
<tr v-if="item.tankInfo && JSON.stringify(item.tankInfo) != {}"> <tr v-if="item.tankInfo1 && JSON.stringify(item.tankInfo1) != {}">
<td colspan="1">掺镀件面积(dm²)</td> <td colspan="1">掺镀件面积(dm²)</td>
<td colspan="2">{{item.tankInfo.cdjArea}}</td> <td colspan="2">{{item.tankInfo.cdjArea}}</td>
<td colspan="1">陪镀件面积(dm²)</td> <td colspan="1">陪镀件面积(dm²)</td>
@ -139,7 +171,7 @@
<td colspan="2">总面积(dm²)</td> <td colspan="2">总面积(dm²)</td>
</tr> </tr>
<tr v-for="(slot,index) in item.slotList"> <tr v-for="(slot,index) in item.slotList">
<td v-if="index === 0" :rowspan="item.slotList.length">{{slot.mtnCode || '/'}}</td> <td v-if="index === 0" :rowspan="item.slotList.length">{{slot.mtuCode || '/'}}</td>
<td v-if="!slot.cdj" colspan="2">{{slot.partCode || '/'}}</td> <td v-if="!slot.cdj" colspan="2">{{slot.partCode || '/'}}</td>
<td v-if="!slot.cdj" colspan="1">{{slot.batchNo || '/'}}</td> <td v-if="!slot.cdj" colspan="1">{{slot.batchNo || '/'}}</td>
<td v-if="!slot.cdj" >{{slot.workQty || '/'}}</td> <td v-if="!slot.cdj" >{{slot.workQty || '/'}}</td>
@ -147,7 +179,7 @@
<td v-if="!slot.cdj" >{{slot.area || '/'}}</td> <td v-if="!slot.cdj" >{{slot.area || '/'}}</td>
<td v-if="slot.cdj" colspan="5">{{slot.cdj}}</td> <td v-if="slot.cdj" colspan="5">{{slot.cdj}}</td>
<td v-if="slot.cdj">{{slot.cdjArea}}</td> <td v-if="slot.cdj">{{slot.cdjArea}}</td>
<td v-if="index === 0" :rowspan="item.slotList.length" colspan="2">{{slot.sumArea || '/'}}</td> <td v-if="index === 0" :rowspan="item.slotList.length" colspan="2">{{slot.totalArea || '/'}}</td>
</tr> </tr>
</template> </template>
<template v-if="item.dsRbFilePreserveSlotList && item.dsRbFilePreserveSlotList.length>0"> <template v-if="item.dsRbFilePreserveSlotList && item.dsRbFilePreserveSlotList.length>0">
@ -221,150 +253,93 @@ export default {
// }, // },
printConfig :{ printConfig :{
id: 'printMe', id: 'printMe',
popTitle: '打印66',
ignoreClass: 'noprint',
endCallback: (e) => {
console.log(e, 5555);
},
// extraCss: 'https://cdn.bootcdn.net/ajax/libs/animate.css/4.1.1/animate.compat.css', // extraCss: 'https://cdn.bootcdn.net/ajax/libs/animate.css/4.1.1/animate.compat.css',
extraHead: '<meta http-equiv="Content-Language" content="zh-cn"/>', extraHead: '<meta http-equiv="Content-Language" content="zh-cn"/>',
// preview: true, // preview: true,
// extraCss: `
// @media print {
// body { font-size: 12px; }
// table { width: 98% !important; border-collapse: collapse; }
// .no-print { display: none !important; }
// }
// `
}, },
loading:true,
dsPart:{}, dsPart:{},
modelOne: { modelOne: {
wo: { pjYieldOrder: {}}, // wo: { pjYieldOrder: {}},
checkList: [], // checkList: [],
wpList: [ // wpList: [
{ // {
prWorkOrder: { pjYieldOrder: {}}, // prWorkOrder: { pjYieldOrder: {}},
procedureSet: {}, // procedureSet: {},
partCode: '', // partCode: '',
woCode: '' // woCode: ''
} // }
], // ],
dsPart: {} // dsPart: {}
}, },
isPrint:false, isPrint:false,
modelTwo: [ modelTwo: [
{
orders: '0005',ppsName:'上挂',
Hanger:true,
selfInspection:{content:"零件表面无油污、锈蚀、磕碰伤、划痕等缺陷",conclusion:"合格"}
},
{
orders: '0010',ppsName:'清洗',
deviceCode:"9652249",
qcProduceRunsList:[
// {
// insertIndex: "1",
// rfpsType: 2,
// // slotIndex: "1",
// slotName: "",
// childrenList:[
// {
// "rfpsId": "1",
// "detailName": "min",
// "detailIndex": "1",
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2025/06/28 09:00:49"
// },
// { // {
// "rfpsId": "2", // orders: '0005',ppsName:'',
// "detailName": "min", // Hanger:true,
// "detailIndex": "1", // selfInspection:{content:"",conclusion:""}
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2025/06/28 09:30:49"
// }, // },
// { // {
// "rfpsId": "2", // orders: '0010',ppsName:'',
// "detailName": "", // deviceCode:"9652249",
// "detailIndex": "1", // qcProduceRunsList:[
// "ask": "40~60", // // {
// "rfpdTime": "2026-3-6 18:36:44", // // insertIndex: "1",
// "qualified": "", // // rfpsType: 2,
// "paramName": "1", // // // slotIndex: "1",
// "paramValue": "55" // // slotName: "",
// }, // // childrenList:[
// ] // // {
// }, // // "rfpsId": "1",
{ // // "detailName": "min",
insertIndex: "1", // // "detailIndex": "1",
rfpsType:22, // // "ask": "2040",
// slotIndex: "1", // // "rfpdTime": "2026-3-6 18:36:44",
slotName: "自来水洗", // // "qualified": "",
childrenList:[ // // "paramName": "",
{ // // "paramValue": "2025/06/28 09:00:49"
"rfpsId": "1", // // },
"detailName": "时间(min)", // // {
"detailIndex": "1", // // "rfpsId": "2",
"ask": "20~40", // // "detailName": "min",
"rfpdTime": "2026-3-6 18:36:44", // // "detailIndex": "1",
"qualified": "合格", // // "ask": "2040",
"paramName": "开始", // // "rfpdTime": "2026-3-6 18:36:44",
"paramValue": "2" // // "qualified": "",
}, // // "paramName": "",
{ // // "paramValue": "2025/06/28 09:30:49"
"rfpsId": "1", // // },
"detailName": "时间(min)", // // {
"detailIndex": "1", // // "rfpsId": "2",
"ask": "20~40", // // "detailName": "",
"rfpdTime": "2026-3-6 18:36:44", // // "detailIndex": "1",
"qualified": "合格", // // "ask": "40~60",
"paramName": "开始", // // "rfpdTime": "2026-3-6 18:36:44",
"paramValue": "2" // // "qualified": "",
}, // // "paramName": "1",
{ // // "paramValue": "55"
"rfpsId": "1", // // },
"detailName": "时间(min)", // // ]
"detailIndex": "1", // // },
"ask": "20~40",
"rfpdTime": "2026-3-6 18:36:44",
"qualified": "合格",
"paramName": "开始",
"paramValue": "2"
},
{
"rfpsId": "1",
"detailName": "时间(min)",
"detailIndex": "1",
"ask": "20~40",
"rfpdTime": "2026-3-6 18:36:44",
"qualified": "合格",
"paramName": "开始",
"paramValue": "2"
},
{
"rfpsId": "1",
"detailName": "时间(min)",
"detailIndex": "1",
"ask": "20~40",
"rfpdTime": "2026-3-6 18:36:44",
"qualified": "合格",
"paramName": "开始",
"paramValue": "2"
},
// {
// "rfpsId": "1",
// "detailName": "min",
// "detailIndex": "1",
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// },
// { // {
// "rfpsId": "1", // insertIndex: "1",
// "detailName": "min", // rfpsType:22,
// "detailIndex": "1", // // slotIndex: "1",
// "ask": "2040", // slotName: "",
// "rfpdTime": "2026-3-6 18:36:44", // childrenList:[
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// },
// { // {
// "rfpsId": "1", // "rfpsId": "1",
// "detailName": "min", // "detailName": "min",
@ -415,146 +390,224 @@ export default {
// "paramName": "", // "paramName": "",
// "paramValue": "2" // "paramValue": "2"
// }, // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
]
},
// {
// insertIndex: "1",
// rfpsType: 1,
// // slotIndex: "1",
// slotName: "",
// childrenList:[
// {
// "rfpsId": "1",
// "detailName": "min",
// "detailIndex": "1",
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// },
// {
// "rfpsId": "1",
// "detailName": "min",
// "detailIndex": "1",
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// },
// ] // ]
// }, // },
// { // // {
// insertIndex: "1", // // insertIndex: "1",
// rfpsType: 8, // // rfpsType: 1,
// // slotIndex: "1", // // // slotIndex: "1",
// slotName: "", // // slotName: "",
// childrenList:[ // // childrenList:[
// { // // {
// "rfpsId": "1", // // "rfpsId": "1",
// "detailName": "min", // // "detailName": "min",
// "detailIndex": "1", // // "detailIndex": "1",
// "ask": "2040", // // "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44", // // "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "", // // "qualified": "",
// "paramName": "", // // "paramName": "",
// "paramValue": "2" // // "paramValue": "2"
// }, // // },
// { // // {
// "rfpsId": "1", // // "rfpsId": "1",
// "detailName": "min", // // "detailName": "min",
// "detailIndex": "1", // // "detailIndex": "1",
// "ask": "2040", // // "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44", // // "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "", // // "qualified": "",
// "paramName": "", // // "paramName": "",
// "paramValue": "2" // // "paramValue": "2"
// }, // // },
// // ]
// // },
// // {
// // insertIndex: "1",
// // rfpsType: 8,
// // // slotIndex: "1",
// // slotName: "",
// // childrenList:[
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // ]
// // },
// // {
// // insertIndex: "1",
// // rfpsType: 3,
// // // slotIndex: "1",
// // slotName: "",
// // childrenList:[
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // {
// // "rfpsId": "1",
// // "detailName": "min",
// // "detailIndex": "1",
// // "ask": "2040",
// // "rfpdTime": "2026-3-6 18:36:44",
// // "qualified": "",
// // "paramName": "",
// // "paramValue": "2"
// // },
// // ]
// // }
// ] // ]
// }, // },
// { // {
// insertIndex: "1", // orders: '0020',ppsName:'',
// rfpsType: 3, // deviceCode:"9652249",
// // slotIndex: "1", // tankInfo:{
// slotName: "", // cdjArea:0,
// childrenList:[ // slotList:[
// {
// "rfpsId": "1",
// "detailName": "min",
// "detailIndex": "1",
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// },
// { // {
// "rfpsId": "1", // slotNo:"B- BD2025062814474772",
// "detailName": "min", // partCode:'21E8-570-1122-L36',
// "detailIndex": "1", // batchNo:'Y1702506402'
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// }, // },
// { // {
// "rfpsId": "1", // slotNo:"B- BD2025062814474772",
// "detailName": "min", // partCode:'21E8-570-1122-L37',
// "detailIndex": "1", // batchNo:'Y1702506402'
// "ask": "2040",
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// }, // },
// { // {
// "rfpsId": "1", // slotNo:"B- BD2025062814474772",
// "detailName": "min", // partCode:'21E8-570-1122-L38',
// "detailIndex": "1", // batchNo:'Y1702506402',
// "ask": "2040", // }
// "rfpdTime": "2026-3-6 18:36:44",
// "qualified": "",
// "paramName": "",
// "paramValue": "2"
// },
// ] // ]
// },
// } // }
]
},
{
orders: '0020',ppsName:'挂镀金',
deviceCode:"9652249",
tankInfo:{
cdjArea:0,
slotList:[
{
slotNo:"B- BD2025062814474772",
partCode:'21E8-570-1122-L36',
batchNo:'Y1702506402'
},
{
slotNo:"B- BD2025062814474772",
partCode:'21E8-570-1122-L37',
batchNo:'Y1702506402'
},
{
slotNo:"B- BD2025062814474772",
partCode:'21E8-570-1122-L38',
batchNo:'Y1702506402',
}
]
},
}
], ],
modelThree: { checkList: [], procedureSet: {}}, modelThree: { checkList: [], procedureSet: {}},
modelFour: { procedureSet: {}, prWorkOrder: { pjYieldOrder: {}}}, modelFour: { procedureSet: {}, prWorkOrder: { pjYieldOrder: {}}},
modelFive: [], modelFive: [],
} }
}, },
created(){ mounted(){
},
methods:{
open(){
console.log('111111111111111111111111111')
// const { modelOne, modelTwo, modelThree, modelFour, modelFive } = // const { modelOne, modelTwo, modelThree, modelFour, modelFive } =
// printOrderJson.data; // printOrderJson.data;
// this.modelOne = modelOne // this.modelOne = modelOne
@ -562,17 +615,22 @@ export default {
// this.modelThree = modelThree // this.modelThree = modelThree
// this.modelFour = modelFour; // this.modelFour = modelFour;
// this.modelFive = modelFive; // this.modelFive = modelFive;
this.loading = true
getWordDetail({ getWordDetail({
woId:this.woId, woId:this.woId,
moduleList:this.rbChecked, moduleList:this.rbChecked,
planList:this.checkedList planList:this.checkedList
}).then(res =>{ }).then(res =>{
console.log('res----------',res) console.log('res----------',res)
}) this.modelOne = res.data.data.modelOne
this.modelTwo = res.data.data.modelTwo
this.modelThree = res.data.data.modelThree
this.modelFour = res.data.data.modelFour;
this.modelFive = res.data.data.modelFive;
this.loading = false
})
}, },
methods:{
// //
testMan(index) { testMan(index) {
let testWorkPlan = null; let testWorkPlan = null;
@ -774,10 +832,25 @@ export default {
size: auto; size: auto;
margin: 6mm; margin: 6mm;
} }
/* 隐藏不需要打印的按钮或元素 */
.print-btn {
display: none !important;
}
/* 强制释放表格或容器的高度,防止内容被截断 */
.el-table__body-wrapper {
height: auto !important;
overflow: visible !important;
}
/* 确保背景色和图片能被打印出来 */
// * {
// -webkit-print-color-adjust: exact !important;
// print-color-adjust: exact !important;
// }
} }
// @media print { @page { size:21cm 29.7cm } } // @media print { @page { size:21cm 29.7cm } }
</style> </style>
<style lang="scss"> <style lang="scss" scoped>
@media print { @media print {
.no-print { .no-print {
display: none !important; display: none !important;
@ -796,12 +869,13 @@ export default {
@page { @page {
size: auto; size: auto;
margin: 6mm; margin: 20mm;
} }
.printBox { .printBox {
width: 100% !important; width: 100% !important;
overflow: visible !important; overflow: visible !important;
// background: red;
table { table {
width: 98% !important; width: 98% !important;
@ -815,7 +889,6 @@ export default {
td { td {
width: 8.1%; width: 8.1%;
// &:first-child{ // &:first-child{
// width: 55px; // width: 55px;
// } // }
@ -830,6 +903,38 @@ export default {
box-sizing: border-box !important; box-sizing: border-box !important;
page-break-inside: avoid !important; page-break-inside: avoid !important;
} }
.print-table{
width: 98% !important;
}
}
/* 隐藏 Element 表格的固定列遮罩 */
:deep(.el-table__fixed),
:deep(.el-table__fixed-right) {
display: none !important;
}
/* 确保表格主体宽度正常 */
:deep(.el-table__body-wrapper),
:deep(.el-table__header-wrapper) {
width: 98% !important;
overflow: visible !important;
}
/* 隐藏不需要打印的按钮或元素 */
.print-btn {
display: none !important;
} }
/* 强制释放表格或容器的高度,防止内容被截断 */
.el-table__body-wrapper {
height: auto !important;
overflow: visible !important;
}
// /* */
// * {
// -webkit-print-color-adjust: exact !important;
// print-color-adjust: exact !important;
// }
} }
</style> </style>

Loading…
Cancel
Save