生产管理接口联调

dev-scheduling
zhangdi 1 month ago
parent 94c3ade0ef
commit 414949c5bf
  1. 5
      public/config.js
  2. 2
      src/api/productionManagement/sjKitPreparation.js
  3. 12
      src/api/workRate/index.js
  4. 38
      src/utils/templateMapper.js
  5. 2
      src/views/productionManagement/productionMonitoring/index.vue
  6. 2705
      src/views/productionManagement/sinteringProductionMonitoring/index.vue
  7. 38
      src/views/qualityTemplate/Template1.vue
  8. 31
      src/views/qualityTemplate/Template10.vue
  9. 47
      src/views/qualityTemplate/Template11.vue
  10. 33
      src/views/qualityTemplate/Template12.vue
  11. 31
      src/views/qualityTemplate/Template13.vue
  12. 53
      src/views/qualityTemplate/Template14.vue
  13. 58
      src/views/qualityTemplate/Template15.vue
  14. 53
      src/views/qualityTemplate/Template16.vue
  15. 53
      src/views/qualityTemplate/Template17.vue
  16. 34
      src/views/qualityTemplate/Template18.vue
  17. 34
      src/views/qualityTemplate/Template19.vue
  18. 42
      src/views/qualityTemplate/Template2.vue
  19. 40
      src/views/qualityTemplate/Template20.vue
  20. 34
      src/views/qualityTemplate/Template21.vue
  21. 39
      src/views/qualityTemplate/Template22.vue
  22. 38
      src/views/qualityTemplate/Template3.vue
  23. 35
      src/views/qualityTemplate/Template4.vue
  24. 42
      src/views/qualityTemplate/Template5.vue
  25. 41
      src/views/qualityTemplate/Template6.vue
  26. 30
      src/views/qualityTemplate/Template7.vue
  27. 35
      src/views/qualityTemplate/Template8.vue
  28. 45
      src/views/qualityTemplate/Template9.vue
  29. 47
      src/views/qualityTemplate/index.js
  30. 985
      src/views/workRate/index.vue
  31. 70
      src/views/workRate/preserveSlotList.vue

@ -11,4 +11,7 @@ window.SCHEDULING_ANALYSIS = "http://192.168.169.172:8088/SCHEDULING_ANALYSIS"
window.PROCESS_QUALITY_RECORD = "http://192.168.169.172:9000/jmreport/view/1153140195292762112" //电子档案-热表分厂-质量记录
window.WARE_MATERIAL_STOCK = "http://192.168.169.172:9000/jmreport/view/1186917825215324160" //仓管-库存汇总-存料登记卡打印
window.WARE_MATERIAL_STOCK = "http://192.168.169.172:9000/jmreport/view/1186917825215324160" //仓管-库存汇总-存料登记卡打印
// 配套单打印
window.COMPANION = "http://192.168.169.172:9000/jmreport/view/1188705683594706944"

@ -34,7 +34,7 @@ export const sendKit = (params) => {
// 生成车间订单
export const loadBigWmsSend = (params) => {
return request({
url: '/blade-desk/workOrder/generateWorkOrder',
url: '/blade-desk/produceMonitor/generateWorkOrder',
method: 'post',
params: params,
});

@ -1,8 +1,18 @@
import request from '@/axios';
export const getOrderDetail = (params) => {
return request({
url: '/blade-desk/workOrder/getOrderDetail',
url: '/blade-desk/produceMonitor/getOrderDetail',
method: 'get',
params: params,
});
};
// 获取工序详情
export const getPlanDetail = (params) => {
return request({
url: '/blade-desk/produceMonitor/getPlanDetail',
method: 'get',
params: params,
});
};

@ -0,0 +1,38 @@
// src/utils/templateMapper.js
/**
* 根据 rfpsType 获取对应的模板组件名称
* @param {number} type - rfpsType 类型值 (1-22)
* @returns {string} 模板组件名称
*/
export function getTemplateComponent(type) {
const componentMap = {
1: 'Template1',
2: 'Template2',
3: 'Template3',
4: 'Template4',
5: 'Template5',
6: 'Template6',
7: 'Template7',
8: 'Template8',
9: 'Template9',
10: 'Template10',
11: 'Template11',
12: 'Template12',
13: 'Template13',
14: 'Template14',
15: 'Template15',
16: 'Template16',
17: 'Template17',
18: 'Template18',
19: 'Template19',
20: 'Template20',
21: 'Template21',
22: 'Template22'
};
return componentMap[type];
}
export default {
getTemplateComponent
};

@ -66,7 +66,7 @@
</template>
</avue-crud>
<!-- 打印标签 -->
<el-dialog append-to-body v-model="printDialog" title="打印标签">
<el-dialog append-to-body v-model="printDialog" title="打印标签" width="20%">
<el-form ref="printForm" :model="printForm" :rules="printRules">
<el-form-item label="数量" prop="quantity">
<el-input

@ -0,0 +1,38 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td rowspan="3" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild"
>
<tr>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,31 @@
<template>
<tr
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<td colspan="4">{{ itemSlot.slotName }}</td>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.qualified ? '合格' : '不合格' }}</td>
</tr>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,47 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="5" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
key="itemSlot.slotName+indexSlot+indexChild+Math.floor(Math.random()*100000)+1"
>
<tr v-if="indexChild <= 1">
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else-if="indexChild == 2">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else-if="indexChild == 3">
<td colspan="4">{{ itemChild.detailName }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,33 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="4" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template v-for="(itemChild, indexChild) in itemSlot.childrenList" :key="itemSlot.slotName+indexSlot+indexChild+Math.floor(Math.random()*100000)+1">
<tr >
<td v-if="indexChild ==0" :rowspan="3" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild ==0" :rowspan="3" colspan="2">{{ itemChild.ask }}</td>
<td>{{ itemChild.paramName }}</td>
<td colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,31 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="11" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template v-for="(itemChild, indexChild) in itemSlot.childrenList" :key="itemSlot.slotName+indexSlot+indexChild+Math.floor(Math.random()*100000)+1">
<tr >
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,53 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="13" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild <= 1">
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else-if="indexChild == 2">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else-if="indexChild == 3">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td>{{ itemChild.paramName }}</td>
<td colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,58 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="15" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild <= 1">
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else-if="indexChild == 2">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else-if="indexChild == 3 || indexChild == 4">
<td v-if="indexChild == 3" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 3" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td :colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else-if="indexChild == 5">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td>{{ itemChild.paramName }}</td>
<td colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,53 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="17" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild <= 1">
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else-if="indexChild == 2">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else-if="indexChild == 3">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td>{{ itemChild.paramName }}</td>
<td colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,53 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="9" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild <= 1">
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else-if="indexChild == 2">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else-if="indexChild == 3">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td>{{ itemChild.paramName }}</td>
<td colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,34 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="2" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr>
<td colspan="2">{{ itemSlot.childrenList[0].detailName }}</td>
<td colspan="5">{{ itemSlot.childrenList[0].paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,34 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="13" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,42 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td rowspan="4" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild <= 1">
<td v-if="indexChild == 0" rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,40 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="9" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild <= 3">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,34 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="11" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,39 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td rowspan="6" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild == 0">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="4">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else>
<td colspan="3">{{ itemChild.detailName }}</td>
<td colspan="4">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,38 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td rowspan="5" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template v-for="(itemChild, indexChild) in itemSlot.childrenList" :key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1">
<tr>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild > 1" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild > 1" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild > 1" colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,35 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td rowspan="4" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,42 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td rowspan="6" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr v-if="indexChild == 0">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="4">{{ itemChild.paramValue }}</td>
</tr>
<tr
v-else
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<td colspan="3">{{ itemChild.detailName }}</td>
<td colspan="4">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,41 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="7" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template v-for="(itemChild, indexChild) in itemSlot.childrenList" :key="
itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1
">
<tr
v-if="indexChild <= 2"
>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
<tr v-else :key="itemSlot.slotName+indexSlot+indexChild+Math.floor(Math.random()*100000)+1">
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="5">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,30 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="2" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td colspan="2">{{ itemSlot.childrenList[0].detailName }}</td>
<td colspan="2">{{ itemSlot.childrenList[0].ask }}</td>
<td colspan="3">{{ itemSlot.childrenList[0].paramValue }}</td>
</tr>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,35 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="3" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template
v-for="(itemChild, indexChild) in itemSlot.childrenList"
:key="itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1"
>
<tr>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,45 @@
<template>
<tr :key="itemSlot.slotName + indexSlot + Math.floor(Math.random() * 100000) + 1">
<td :rowspan="6" colspan="4">{{ itemSlot.slotName }}</td>
</tr>
<template v-for="(itemChild, indexChild) in itemSlot.childrenList" :key="
itemSlot.slotName + indexSlot + indexChild + Math.floor(Math.random() * 100000) + 1
">
<tr
v-if="indexChild <= 1"
>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.detailName }}</td>
<td v-if="indexChild == 0" :rowspan="2" colspan="2">{{ itemChild.ask }}</td>
<td v-if="indexChild == 0">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 0" colspan="2">{{ itemChild.rfpdTime }}</td>
<td v-if="indexChild == 1">{{ itemChild.paramName }}</td>
<td v-if="indexChild == 1" colspan="2">{{ itemChild.rfpdTime }}</td>
</tr>
<tr v-else>
<td colspan="2">{{ itemChild.detailName }}</td>
<td colspan="2">{{ itemChild.ask }}</td>
<td colspan="3">{{ itemChild.paramValue }}</td>
</tr>
</template>
</template>
<script>
export default {
props: {
itemSlot: {
type: Object,
default: () => {},
},
indexSlot: {
type: Number,
default: 0,
},
},
data() {
return {};
},
methods: {},
};
</script>
<style lang="scss" scoped>
</style>

@ -0,0 +1,47 @@
import Template1 from './Template1.vue'
import Template2 from './Template2.vue'
import Template3 from './Template3.vue'
import Template4 from './Template4.vue'
import Template5 from './Template5.vue'
import Template6 from './Template6.vue'
import Template7 from './Template7.vue'
import Template8 from './Template8.vue'
import Template9 from './Template9.vue'
import Template10 from './Template10.vue'
import Template11 from './Template11.vue'
import Template12 from './Template12.vue'
import Template13 from './Template13.vue'
import Template14 from './Template14.vue'
import Template15 from './Template15.vue'
import Template16 from './Template16.vue'
import Template17 from './Template17.vue'
import Template18 from './Template18.vue'
import Template19 from './Template19.vue'
import Template20 from './Template20.vue'
import Template21 from './Template21.vue'
import Template22 from './Template22.vue'
export default {
Template1,
Template2,
Template3,
Template4,
Template5,
Template6,
Template7,
Template8,
Template9,
Template10,
Template11,
Template12,
Template13,
Template14,
Template15,
Template16,
Template17,
Template18,
Template19,
Template20,
Template21,
Template22
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,70 @@
<template>
<div class="printBox">
<table id="cus-table" cellspacing="0" style="width: 100%">
<tr>
<td colspan="3">槽位/工步</td>
<td colspan="5">工艺要求</td>
<td colspan="3">实际参数</td>
</tr>
<template v-for="(itemSlot, indexSlot) in slotList" :key="itemSlot.slotName + indexSlot">
<component
:is="getTemplateComponent(itemSlot.rfpsType)"
:itemSlot="itemSlot"
:indexSlot="indexSlot"
/>
</template>
</table>
</div>
</template>
<script>
import Templates from '../qualityTemplate/index.js';
import { getTemplateComponent } from '@/utils/templateMapper.js';
export default {
name: 'PreserveSlotList',
props: {
slotList: {
type: Array,
default: () => [],
},
},
components: {
...Templates,
},
data() {
return {};
},
watch: {},
created() {},
methods: {
getTemplateComponent(type) {
const componentName = getTemplateComponent(type);
return componentName;
},
},
mounted() {
// console.log(9999999, this.slotList);
},
};
</script>
<style lang="scss">
.printBox {
table {
tr {
page-break-inside: avoid;
}
td {
width: 168px;
height: 30px;
border: 1px solid #000;
background: transparent;
color: #000;
font-size: 14px;
text-align: center;
padding: 0;
margin: 0;
}
}
}
</style>
Loading…
Cancel
Save