update 基本完成设备近24小时数据

This commit is contained in:
lb 2023-08-30 14:30:08 +08:00
parent 100d28fd68
commit 0f6418fcf9

View File

@ -291,168 +291,468 @@ export default {
], ],
}, },
res: { // res: {
code: 0, // code: 0,
msg: 'success', // msg: 'success',
data: [ // data: [
{ // {
productLine: '产线22', // productLine: '线22',
specification: ['1000*29*1', '898'], // specification: ['1000*29*1', '898'],
data: [ // data: [
{ // {
equipmentName: '下片机', // equipmentName: '',
totalQuantity: 15, // totalQuantity: 15,
hourData: { // hourData: {
'2023-08-29T09:24:09.878': { // '2023-08-29T09:24:09.878': {
inQuantity: 0, // inQuantity: 1,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T10:24:09.878': { // '2023-08-29T10:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 2,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T11:24:09.878': { // '2023-08-29T11:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 3,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T12:24:09.878': { // '2023-08-29T12:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 4.0,
}, // },
'2023-08-29T13:24:09.878': { // '2023-08-29T13:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T14:24:09.878': { // '2023-08-29T14:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T15:24:09.878': { // '2023-08-29T15:24:09.878': {
inQuantity: 9, // inQuantity: 9,
nokQuantity: 6, // nokQuantity: 6,
outQuantity: 8, // outQuantity: 8,
scrapRatio: 0.46153846, // scrapRatio: 0.46153846,
}, // },
'2023-08-29T16:24:09.878': { // '2023-08-29T16:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T17:24:09.878': { // '2023-08-29T17:24:09.878': {
inQuantity: 1, // inQuantity: 1,
nokQuantity: 1, // nokQuantity: 1,
outQuantity: 1, // outQuantity: 1,
scrapRatio: 0.5, // scrapRatio: 0.5,
}, // },
'2023-08-29T18:24:09.878': { // '2023-08-29T18:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T19:24:09.878': { // '2023-08-29T19:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T20:24:09.878': { // '2023-08-29T20:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T21:24:09.878': { // '2023-08-29T21:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T22:24:09.878': { // '2023-08-29T22:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-29T23:24:09.878': { // '2023-08-29T23:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T00:24:09.878': { // '2023-08-30T00:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T01:24:09.878': { // '2023-08-30T01:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T02:24:09.878': { // '2023-08-30T02:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T03:24:09.878': { // '2023-08-30T03:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T04:24:09.878': { // '2023-08-30T04:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T05:24:09.878': { // '2023-08-30T05:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T06:24:09.878': { // '2023-08-30T06:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T07:24:09.878': { // '2023-08-30T07:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
'2023-08-30T08:24:09.878': { // '2023-08-30T08:24:09.878': {
inQuantity: 0, // inQuantity: 0,
nokQuantity: 0, // nokQuantity: 0,
outQuantity: 0, // outQuantity: 0,
scrapRatio: 0.0, // scrapRatio: 0.0,
}, // },
}, // },
}, // },
], // {
}, // equipmentName: '',
], // totalQuantity: 100,
}, // hourData: {
// '2023-08-29T09:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T10:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T11:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T12:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T13:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T14:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T15:24:09.878': {
// inQuantity: 9,
// nokQuantity: 6,
// outQuantity: 8,
// scrapRatio: 0.46153846,
// },
// '2023-08-29T16:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T17:24:09.878': {
// inQuantity: 1,
// nokQuantity: 1,
// outQuantity: 1,
// scrapRatio: 0.5,
// },
// '2023-08-29T18:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T19:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T20:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T21:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T22:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T23:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T00:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T01:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T02:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T03:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T04:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T05:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T06:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T07:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T08:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// },
// },
// {
// equipmentName: '',
// totalQuantity: 88,
// hourData: {
// '2023-08-29T09:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T10:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T11:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T12:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T13:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T14:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T15:24:09.878': {
// inQuantity: 9,
// nokQuantity: 6,
// outQuantity: 8,
// scrapRatio: 0.46153846,
// },
// '2023-08-29T16:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T17:24:09.878': {
// inQuantity: 1,
// nokQuantity: 1,
// outQuantity: 1,
// scrapRatio: 0.5,
// },
// '2023-08-29T18:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T19:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T20:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T21:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T22:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-29T23:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T00:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T01:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T02:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T03:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T04:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T05:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T06:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T07:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// '2023-08-30T08:24:09.878': {
// inQuantity: 0,
// nokQuantity: 0,
// outQuantity: 0,
// scrapRatio: 0.0,
// },
// },
// },
// ],
// },
// ],
// },
spanInfo: {}, spanInfo: {},
}; };
@ -483,7 +783,12 @@ export default {
{ prop: key + '__in', label: '进数据', align: 'center' }, { prop: key + '__in', label: '进数据', align: 'center' },
{ prop: key + '__out', label: '出数据', align: 'center' }, { prop: key + '__out', label: '出数据', align: 'center' },
{ prop: key + '__nok', label: '报废数据', align: 'center' }, { prop: key + '__nok', label: '报废数据', align: 'center' },
{ prop: key + '__ratio', label: '报废率', align: 'center' }, {
prop: key + '__ratio',
label: '报废率',
align: 'center',
filter: (val) => (val != null ? val + ' %' : '-'),
},
], ],
}; };
props.push(subprop); props.push(subprop);
@ -495,7 +800,6 @@ export default {
/** 把 list 里的数据转换成 tableProps 对应的格式 */ /** 把 list 里的数据转换成 tableProps 对应的格式 */
convertList(list) { convertList(list) {
this.list.splice(0); this.list.splice(0);
let row = {};
let rowIndex = 0; let rowIndex = 0;
for (const line of list) { for (const line of list) {
const { productLine, specification, data } = line; const { productLine, specification, data } = line;
@ -503,25 +807,24 @@ export default {
// span // span
this.spanInfo[rowIndex] = data.length; this.spanInfo[rowIndex] = data.length;
for (const equipment of data) { for (const equipment of data) {
const { equipmentName, totalQuantity } = equipment;
let row = {
productLine,
specification: specification.join('、'),
equipmentName,
totalQuantity,
};
rowIndex += 1; rowIndex += 1;
for (const [key, hourData] of Object.entries(equipment.hourData)) { for (const [key, hourData] of Object.entries(equipment.hourData)) {
const { equipmentName, totalQuantity } = equipment;
const { inQuantity, outQuantity, nokQuantity, scrapRatio } = const { inQuantity, outQuantity, nokQuantity, scrapRatio } =
hourData; hourData;
row = {
productLine,
specification: specification.join('、'),
equipmentName,
totalQuantity,
};
row[key + '__in'] = inQuantity; row[key + '__in'] = inQuantity;
row[key + '__out'] = outQuantity; row[key + '__out'] = outQuantity;
row[key + '__nok'] = nokQuantity; row[key + '__nok'] = nokQuantity;
row[key + '__ratio'] = scrapRatio; row[key + '__ratio'] = scrapRatio;
this.list.push(row);
} }
this.list.push(row);
} }
console.log('list:', this.list, 'spanInfo:', this.spanInfo);
} }
}, },
@ -531,41 +834,35 @@ export default {
/** 合并table列的规则 */ /** 合并table列的规则 */
mergeColumnHandler({ row, column, rowIndex, columnIndex }) { mergeColumnHandler({ row, column, rowIndex, columnIndex }) {
// console.log('handle merge column', row, column, rowIndex, columnIndex); if (columnIndex == 0 || columnIndex == 1) {
if (columnIndex == 0 || columnIndex == 1 || columnIndex == 3) { if (this.spanInfo[rowIndex]) {
if (rowIndex % 3 == 0) {
return [ return [
3, // this.spanInfo[rowIndex], // row span this.spanInfo[rowIndex], // row span
1, // col span 1, // col span
]; ];
} else { } else {
return [0, 0]; return [0, 0];
} }
} }
// return { rowspan: 3, colspan: 1 };
}, },
async getList() { async getList() {
// const { data } = await this.$axios({ const { data } = await this.$axios({
// url: '/monitoring/equipment-monitor/recent-24-hours', url: '/monitoring/equipment-monitor/recent-24-hours',
// method: 'get', method: 'get',
// }); });
const data = this.res.data; // const data = this.res.data;
console.log('recent-24', data); // console.log('recent-24', data);
this.initing = true;
this.buildProps(data[0]); this.buildProps(data[0]);
this.buildData(data); this.buildData(data);
this.queryParams.pageSize = this.list.length;
// this.initing = true; setTimeout(() => {
// const dynamicProps = handleNameData(nameData); this.initing = false;
// this.tableProps.push(...dynamicProps); }, 1000);
// const dataList = handleDynamicData(dyanmicData);
// this.list = dataList;
// this.queryParams.pageSize = dataList.length;
// setTimeout(() => {
// this.initing = false;
// }, 1000);
}, },
handleEmitFun(payload) { handleEmitFun(payload) {