Files
yudao-dev/src/views/report/Environmental/productionDayR/secondTable.vue
‘937886381’ ecf6745c8a 报表新增
2024-04-19 11:07:14 +08:00

221 lines
6.5 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--
* @Author: zhp
* @Date: 2024-04-18 16:32:03
* @LastEditTime: 2024-04-18 16:34:49
* @LastEditors: zhp
* @Description:
-->
<template>
<div>
<el-row style="float: right; margin-bottom: 5px">
<el-button v-if="!edit && this.$auth.hasPermi('base:report-auto-original-glass:update')" :disabled="noData"
size="small" @click="edit = true">编辑</el-button>
<el-button v-if="edit" size="small" @click="handleReturn()">返回</el-button>
<el-button v-if="edit" size="small" @click="updateData">保存</el-button>
</el-row>
<el-table :id="id" :data="data" border style="width: 100%">
<el-table-column v-for="(item, index) in cols" :key="index" :prop="item.prop" :label="item.label"
:align="item.align ? item.align : 'left'">
<el-table-column v-for="(it, index1) in item.children" :key="index1" :prop="it.prop" :label="it.label"
:align="item.align ? item.align : 'left'">
<el-table-column v-for="(y, index2) in it.children" :key="index2" :prop="y.prop" :label="y.label">
<template slot-scope="scope">
<span v-if="!edit">{{ scope.row[y.prop] }}</span>
<el-input type="number" @change="handleChange" :disabled="y.prop == 'dailyOutputTrend' || y.prop === 'originalGlassStatisticsTrend'
|| y.prop === 'actualProductTrend' || y.prop === 'originalGlassPassTrend' || y.prop === 'originalGlassPassNow' || y.prop === 'originalGlassPassHis'
" v-else v-model="scope.row[y.prop]"></el-input>
</template>
</el-table-column>
</el-table-column>
</el-table-column>
</el-table>
<!-- <el-input type="textarea" v-model="remark" placeholder="备注" :disabled="!edit" :autosize="{ minRows: 2, maxRows: 6}">
</el-input> -->
</div>
</template>
<script>
import { updateGlass, updateGlassRemark } from '@/api/report/glass';
const cols = [
{
prop: 'xc',
label: '许昌安彩新能科技有限公司2024年4月份生产日报',
align: 'center',
children: [
{
prop: 'lineName',
label: '生产线',
},
{
prop: '拉引速度(米/分)',
label: '班次',
},
{
prop: 'width2',
label: '板宽mm',
},
{
prop: 'weight2',
label: '板重(g)',
},
{
prop: 'lineName',
label: '拉引量(吨/班)',
},
{
prop: 'm',
label: '尺寸(长、宽、厚)毫米',
align: 'center',
children: [
{
prop: 'length',
label: '长',
},
{
prop: 'width',
label: '宽',
},
{
prop: 'thick',
label: '高',
}
]
}
]
}
]
export default {
props: {
data: {
type: Array,
default: () => [],
},
id: {
type: String,
default:'exportTable'
},
time: {
type: Array,
default: () => [],
},
date: {
type: String,
default:''
},
sum: {
type: Object,
default: () => {},
},
type: {
type: Number,
default: 3,
}
},
data() {
return {
cols,
remark:null,
edit: false,
noData:false,
};
},
watch: {
data: {
handler(newv, oldv) {
if (newv.length != 0) {
this.noData = false
} else {
this.noData = true
}
}
},
time: {
immediate: true,
handler(newv, oldv) {
if (newv[0] !== '') {
this.cols[0].label = this.date + '(' + newv[0] + '-' + newv[1] + ')'
} else {
this.cols[0].label = this.date
}
}
},
// type: {
// immediate: true,
// handler(newv, oldv) {
// let text1 = '', text2 = '', text3 = ''
// if (newv === 3) {
// text1 = '本周'
// text2 = '上周'
// text3 = '原片合计(片/周)'
// } else if (newv === 4) {
// text1 = '本月'
// text2 = '上月'
// text3 = '原片合计(片/月)'
// } else if (newv === 2) {
// text1 = '今日'
// text2 = '昨日'
// text3 = '原片合计(片/日)'
// } else {
// text1 = '本年'
// text2 = '上年'
// text3 = '原片合计(片/年)'
// }
// this.cols[0].children[1].children[0].label = text1
// this.cols[0].children[1].children[1].label = text2
// this.cols[0].children[2].children[0].label = text1
// this.cols[0].children[2].children[1].label = text2
// this.cols[0].children[3].children[0].label = text1
// this.cols[0].children[3].children[1].label = text2
// this.cols[0].children[4].children[0].label = text1
// this.cols[0].children[4].children[1].label = text2
// this.cols[0].children[2].label = text3
// }
// }
},
methods: {
handleReturn() {
this.edit = false
console.log(this.$parent.getDataList());
},
handleChange(e) {
},
updateData() {
// let obj = {}
// this.data.forEach((ele, index) => {
// if (ele.det === false) {
// this.data[index].lineId = ''
// this.data[index].remark = this.remark
// obj = ele
// delete this.data[index].dailyOutputTrend
// delete this.data[index].originalGlassStatisticsTrend
// delete this.data[index].actualProductTrend
// delete this.data[index].originalGlassPassTrend
// this.data.splice(index, 1)
// }
// })
// let updateArr = this.data
// updateArr.forEach((ele, index) => {
// delete ele.dailyOutputTrend
// delete ele.originalGlassStatisticsTrend
// delete ele.actualProductTrend
// delete ele.originalGlassPassTrend
// });
// this.data.forEach((ele, index) => {
// delete ele.dailyOutputTrend
// delete ele.originalGlassStatisticsTrend
// delete ele.actualProductTrend
// delete ele.originalGlassPassTrend
// });
updateGlass(updateArr).then(response => {
updateGlassRemark(obj).then(res => {
this.$modal.msgSuccess("修改成功");
this.edit = false;
this.$emit("refreshDataList");
});
});
}
}
};
</script>