Fix Dashboards UI

This commit is contained in:
Samuele E. Locatelli
2020-10-13 18:10:57 +02:00
parent df0c74540f
commit c2cd9adef8
10 changed files with 21 additions and 13 deletions
+1 -1
View File
@@ -3,7 +3,6 @@ declare module Prod {
interface IProd {
numTarget: number;
numDone: number;
numPreHot: number;
timeWarm: number;
timeVent: number;
timeVacuum: number;
@@ -20,6 +19,7 @@ declare module Prod {
interface IProdPanel {
numTarget: number;
numDone: number;
numPreHot: number;
inizioProd: string;
stimaDurata: number;
tempAct: number;
@@ -48,7 +48,7 @@ export default class MainGauge extends Vue {
};
}
get prod() { return store.state.prod.prod }
get prod() { return store.state.prod.panel }
polarToCartesian(centerX, centerY, radius, angleInDegrees) {
@@ -5,7 +5,7 @@
<svg viewBox="8,8,84,84" class="gauge">
<path
class="dial"
:class="{'ok': (prod.numPreHot ==0), 'pre': (prod.numPreHot != 0) }"
:class="{'ok': (!prod.numPreHot || prod.numPreHot ==0), 'pre': (prod.numPreHot && prod.numPreHot != 0) }"
fill="none"
stroke="#eee"
stroke-width="2"
@@ -31,11 +31,11 @@
</svg>
</div>
<div ref="gauge2" class="gauge2"></div>
<span class="done" v-if="prod.numPreHot == 0">
<span class="done" v-if="!prod.numPreHot || prod.numPreHot == 0">
{{prod.numDone}}
<small class="error" v-if="scrapedItems.length">-{{scrapedItems.length}}</small>
</span>
<span class="done" v-if="prod.numPreHot != 0">-{{prod.numPreHot}}</span>
<span class="done" v-if="prod.numPreHot && prod.numPreHot != 0">-{{prod.numPreHot}}</span>
<hr />
<span class="target">{{prod.numTarget}}</span>
</div>
@@ -9,6 +9,13 @@ export default class Item extends Vue {
@Prop()
value: Prod.IProd;
@Prop()
panel: Prod.IProdPanel
get noDisplayNumber(){
return this.panel && this.value.numDone > this.panel.numTarget;
}
showDetails: boolean = false;
async setScrap(num: number) {
@@ -1,7 +1,8 @@
<template>
<div class="history-item">
<div class="body" @click="showDetails = !showDetails">
<label :class="{red: value.isScrap}">{{value.numDone}}</label>
<label v-if="noDisplayNumber">--</label>
<label :class="{red: value.isScrap}" v-else>{{value.numDone}}</label>
<div class="col">
<small>{{'history-item_warmup' | localize("tempo riscaldo")}}</small>
<span>{{Math.floor(value.timeWarm / 60) | round(0)}}'{{value.timeWarm % 60 | round(0)}}''</span>
@@ -48,15 +48,13 @@ export default class Dashboard extends Vue {
@Watch("lastItem", { deep: true })
async lastitemChanged(n: Prod.IProd, o) {
if (this.items.length && n.numDone - 1 != this.items[0].numDone) {
if ((this.items.length && n.numDone - 1 != this.items[0].numDone) || (!this.items.length && n.numDone > 1)) {
let result = await prodService.History(n.numDone - 1, 1);
if (result && result.length) {
for (const i of result) {
this.itemsMap.set(i.numDone, i);
}
this.items = Array.from(this.itemsMap.values()).sort((a, b) => b.numDone - a.numDone);
}
}
@@ -94,6 +92,7 @@ export default class Dashboard extends Vue {
get softKeys(): { [id: number]: SoftKeysConfigurationModel[] } {
return store.state.machineInfo.softKeys as { [id: number]: SoftKeysConfigurationModel[] };
}
get allSoftKeys(): SoftKeysConfigurationModel[] {
var result = [];
@@ -182,7 +182,7 @@
></stats>
</div>
<div class="current-item">
<hitem :value="lastItem"></hitem>
<hitem :value="lastItem" :panel="panel"></hitem>
</div>
<div class="history-list scrollable">
<hitem :value="item" v-for="(item, idx) in items" :key="idx"></hitem>
@@ -18,11 +18,11 @@ import { Hub } from '@/services';
export default class Processo extends Vue {
get actual(): number {
return store.state.prod.prod.numDone;
return store.state.prod.panel.numDone;
};
get tot(): number {
return store.state.prod.prod.numTarget;
return store.state.prod.panel.numTarget;
};
get blocks(): server.Modblock[] {
@@ -45,11 +45,11 @@ export default class AvvioProduzione extends Vue {
async showDashboard() {
await prodService.Start(this.pieces.setpointHMI, this.newjob, this.warmuppieces.setpointHMI);
if (this.newjob) {
messageService.publishToChannel('restart-cycle');
prodActions.resetProd(store);
}
await prodService.Start(this.pieces.setpointHMI, this.newjob, this.warmuppieces.setpointHMI);
ModalHelper.HideModal();
@@ -55,6 +55,7 @@ export const prodStore = {
tempSetpoint: 0,
lastCadenza: 0,
lastTCiclo: 0,
numPreHot: 0
}
},