Added delete and approve to formulas
This commit is contained in:
parent
0c03326e03
commit
ee4a6f3fc0
@ -34,15 +34,18 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mt-3 mb-5">
|
<div class="row mt-3 mb-5">
|
||||||
<div class="col-12 col-lg-3" style="height: 500px; overflow: auto">
|
<div class="col-12 col-lg-3" style="height: 500px; overflow-y: scroll">
|
||||||
<mat-form-field class="w-100">
|
<mat-form-field class="w-100">
|
||||||
<input #search matInput placeholder="Search">
|
<input #search matInput placeholder="Search">
|
||||||
<mat-icon matSuffix>search</mat-icon>
|
<mat-icon matSuffix>search</mat-icon>
|
||||||
</mat-form-field>
|
</mat-form-field>
|
||||||
<mat-list>
|
<mat-list>
|
||||||
<ng-container *ngFor="let f of store.formulas | async; let i = index">
|
<ng-container *ngFor="let f of formulas | async; let i = index">
|
||||||
<mat-divider *ngIf="f.name.toLowerCase().indexOf(search.value.toLowerCase()) != -1 && i > 0"></mat-divider>
|
<mat-divider *ngIf="f.name.toLowerCase().indexOf(search.value.toLowerCase()) != -1 && i > 0"></mat-divider>
|
||||||
<mat-list-item *ngIf="f.name.toLowerCase().indexOf(search.value.toLowerCase()) != -1" (click)="displayFormula(f)" [ngClass]="{'active': f.id == formula?.id}">{{f.name}}</mat-list-item>
|
<mat-list-item *ngIf="f.name.toLowerCase().indexOf(search.value.toLowerCase()) != -1" (click)="displayFormula(f)" [ngClass]="{'active': f.id == formula?.id}">
|
||||||
|
<mat-icon *ngIf="!f.approved" class="mr-3 text-danger">remove_circle</mat-icon>
|
||||||
|
{{f.name}}
|
||||||
|
</mat-list-item>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
</mat-list>
|
</mat-list>
|
||||||
</div>
|
</div>
|
||||||
@ -109,6 +112,19 @@
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
<div *ngIf="store.user" class="w-100 mt-4">
|
||||||
|
<div class="float-right">
|
||||||
|
<button *ngIf="!formula.approved" mat-raised-button class="mr-3" (click)="approve(formula)">
|
||||||
|
<mat-icon>check</mat-icon>Approve
|
||||||
|
</button>
|
||||||
|
<button mat-raised-button class="mr-3" (click)="edit(formula)">
|
||||||
|
<mat-icon>edit</mat-icon>Edit
|
||||||
|
</button>
|
||||||
|
<button mat-raised-button (click)="delete(formula)">
|
||||||
|
<mat-icon>delete</mat-icon>Delete
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
@ -6,6 +6,8 @@ import {MatDialog} from '@angular/material';
|
|||||||
import {ViewComponents} from './viewComponents/viewComponents.component';
|
import {ViewComponents} from './viewComponents/viewComponents.component';
|
||||||
import {NewFormulaComponent} from './newFormula/newFormula.component';
|
import {NewFormulaComponent} from './newFormula/newFormula.component';
|
||||||
import {AppStore} from '../app.store';
|
import {AppStore} from '../app.store';
|
||||||
|
import {map} from 'rxjs/operators';
|
||||||
|
import {DeleteComponent} from '../delete/delete.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'formula-manager',
|
selector: 'formula-manager',
|
||||||
@ -20,6 +22,7 @@ import {AppStore} from '../app.store';
|
|||||||
})
|
})
|
||||||
export class FormulaManagerComponent {
|
export class FormulaManagerComponent {
|
||||||
formula;
|
formula;
|
||||||
|
formulas;
|
||||||
@LocalStorage({defaultValue: 'g'})
|
@LocalStorage({defaultValue: 'g'})
|
||||||
unit;
|
unit;
|
||||||
|
|
||||||
@ -31,10 +34,13 @@ export class FormulaManagerComponent {
|
|||||||
this._newTotal = new ConvertToGPipe().transform(total, this.unit);
|
this._newTotal = new ConvertToGPipe().transform(total, this.unit);
|
||||||
}
|
}
|
||||||
|
|
||||||
constructor(public electron: ElectronService, private dialog: MatDialog, public store: AppStore) {}
|
constructor(public electron: ElectronService, private dialog: MatDialog, public store: AppStore) {
|
||||||
|
this.formulas = this.store.formulas.pipe(map(rows => rows.filter(row => this.store.user || row.approved)));
|
||||||
|
}
|
||||||
|
|
||||||
openComponents() {
|
approve(formula) {
|
||||||
this.dialog.open(ViewComponents, {height: '500px'});
|
formula.approved = true;
|
||||||
|
formula.ref.update({approved: true});
|
||||||
}
|
}
|
||||||
|
|
||||||
cost() {
|
cost() {
|
||||||
@ -45,6 +51,10 @@ export class FormulaManagerComponent {
|
|||||||
return cost;
|
return cost;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
delete(formula) {
|
||||||
|
this.dialog.open(DeleteComponent, {data: formula});
|
||||||
|
}
|
||||||
|
|
||||||
displayFormula(formula) {
|
displayFormula(formula) {
|
||||||
formula.total = formula.components.reduce((acc, row) => (acc += row.quantity), 0);
|
formula.total = formula.components.reduce((acc, row) => (acc += row.quantity), 0);
|
||||||
this.newTotal = new ConvertFromGPipe().transform(formula.total, this.unit);
|
this.newTotal = new ConvertFromGPipe().transform(formula.total, this.unit);
|
||||||
@ -54,4 +64,8 @@ export class FormulaManagerComponent {
|
|||||||
newFormula() {
|
newFormula() {
|
||||||
this.dialog.open(NewFormulaComponent);
|
this.dialog.open(NewFormulaComponent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
openComponents() {
|
||||||
|
this.dialog.open(ViewComponents, {height: '500px'});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user