2026-04-09 16:22:59 +08:00
|
|
|
|
<template>
|
|
|
|
|
|
<el-table :data="list">
|
|
|
|
|
|
<el-table-column label="异常钢卷" align="center" prop="coilId" v-if="showCoil">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<coil-no :coilId="scope.row.coilId">
|
|
|
|
|
|
{{ scope.row.coilNo }}
|
|
|
|
|
|
</coil-no>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column label="缺陷描述" align="center" prop="remark" show-overflow-tooltip />
|
|
|
|
|
|
<el-table-column label="上下板面" align="center" prop="plateSurface"></el-table-column>
|
|
|
|
|
|
<el-table-column label="缺陷位置" align="center" prop="position">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<dict-tag :options="dict.type.coil_abnormal_position" :value="scope.row.position" />
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
|
|
<el-table-column label="开始位置" align="center" prop="startPosition" />
|
|
|
|
|
|
<el-table-column label="结束位置" align="center" prop="endPosition" />
|
|
|
|
|
|
<el-table-column label="缺陷长度" align="center" prop="length" />
|
|
|
|
|
|
<el-table-column label="缺陷代码" align="center" prop="defectCode">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<dict-tag :options="dict.type.coil_abnormal_code" :value="scope.row.defectCode" />
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2026-05-28 15:11:01 +08:00
|
|
|
|
<el-table-column label="主缺陷" prop="mainMark">
|
2026-04-09 16:22:59 +08:00
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<el-tag v-if="scope.row.mainMark" type="success">是</el-tag>
|
|
|
|
|
|
<el-tag v-else type="danger">否</el-tag>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2026-05-28 15:11:01 +08:00
|
|
|
|
<el-table-column label="缺陷图片" align="center" prop="attachmentFiles" width="120">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<template v-if="scope.row.attachmentFiles">
|
|
|
|
|
|
<div v-for="(url, idx) in scope.row.attachmentFiles.split(',')" :key="idx" style="margin-right: 4px;">
|
|
|
|
|
|
<el-image
|
|
|
|
|
|
style="width: 30px; height: 30px; vertical-align: middle; border-radius: 2px;"
|
|
|
|
|
|
:src="url"
|
|
|
|
|
|
:preview-src-list="scope.row.attachmentFiles.split(',')"
|
|
|
|
|
|
fit="cover"
|
|
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2026-04-09 16:22:59 +08:00
|
|
|
|
<el-table-column label="程度" align="center" prop="degree">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<dict-tag :options="dict.type.coil_abnormal_degree" :value="scope.row.degree" />
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2026-05-05 17:42:41 +08:00
|
|
|
|
<el-table-column label="创建人" align="center" prop="createBy" />
|
|
|
|
|
|
<el-table-column label="创建时间" align="center" prop="createTime" />
|
|
|
|
|
|
<el-table-column label="挂载时机" align="center" prop="abnormalTime" v-if="coilInfo.coilId">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
{{ getAbnormalTime(scope.row) }}
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2026-04-09 16:22:59 +08:00
|
|
|
|
|
|
|
|
|
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" v-if="editable">
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button>
|
|
|
|
|
|
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
</el-table>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
|
import CoilNo from '@/components/KLPService/Renderer/CoilNo'
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
props: {
|
|
|
|
|
|
list: {
|
|
|
|
|
|
type: Array,
|
|
|
|
|
|
default: () => []
|
|
|
|
|
|
},
|
|
|
|
|
|
editable: {
|
|
|
|
|
|
type: Boolean,
|
|
|
|
|
|
default: false
|
|
|
|
|
|
},
|
|
|
|
|
|
showCoil: {
|
|
|
|
|
|
type: Boolean,
|
|
|
|
|
|
default: false
|
2026-05-05 17:42:41 +08:00
|
|
|
|
},
|
|
|
|
|
|
coilInfo: {
|
|
|
|
|
|
type: Object,
|
|
|
|
|
|
default: () => ({})
|
2026-04-09 16:22:59 +08:00
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
components: {
|
|
|
|
|
|
CoilNo
|
|
|
|
|
|
},
|
|
|
|
|
|
dicts: ['coil_abnormal_position', 'coil_abnormal_code', 'coil_abnormal_degree'],
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
handleDelete(row) {
|
|
|
|
|
|
if (this.editable) {
|
|
|
|
|
|
this.$emit('delete', row);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
handleUpdate(row) {
|
|
|
|
|
|
if (this.editable) {
|
|
|
|
|
|
this.$emit('update', row);
|
|
|
|
|
|
}
|
2026-05-05 17:42:41 +08:00
|
|
|
|
},
|
|
|
|
|
|
// 计算目标列的异常挂载时机
|
|
|
|
|
|
// 如果coilInfo.coilId存在,且与row.coilId相同,
|
|
|
|
|
|
// 判断钢卷的createBy和row.createBy是否相同
|
|
|
|
|
|
// 判断钢卷的createTime与row的createTime是否在一分钟内
|
|
|
|
|
|
// 如果是,返回'生产时'
|
|
|
|
|
|
// 如果否,返回'补录'
|
|
|
|
|
|
getAbnormalTime(row) {
|
|
|
|
|
|
if (this.coilInfo.coilId === row.coilId) {
|
|
|
|
|
|
if (this.coilInfo.createBy === row.createBy) {
|
|
|
|
|
|
if (Math.abs(new Date(this.coilInfo.createTime) - new Date(row.createTime)) < 60 * 1000) {
|
|
|
|
|
|
return '生产时'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return '补录'
|
2026-04-09 16:22:59 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</script>
|