Added: Alembic for migrations
Moving from Pyramid to FastAPI
This commit is contained in:
@ -40,9 +40,13 @@ export class ProductListDataSource extends DataSource<Product> {
|
||||
|
||||
private getFilteredData(data: Product[]): Product[] {
|
||||
const filter = (this.filterValue === undefined) ? '' : this.filterValue;
|
||||
if (filter === '') {
|
||||
return data;
|
||||
} else {
|
||||
return data.filter(x => {
|
||||
return x.menuCategory.id === filter || filter === '';
|
||||
return x.menuCategory.id === filter;
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,7 +3,6 @@ import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { FormBuilder, FormGroup } from '@angular/forms';
|
||||
import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';
|
||||
import { ProductListDataSource } from './product-list-datasource';
|
||||
import { MatTable } from '@angular/material';
|
||||
import { Product } from '../../core/product';
|
||||
import { ToCsvService } from '../../shared/to-csv.service';
|
||||
import { ToasterService } from '../../core/toaster.service';
|
||||
@ -17,7 +16,6 @@ import { BehaviorSubject } from 'rxjs';
|
||||
styleUrls: ['./product-list.component.css']
|
||||
})
|
||||
export class ProductListComponent implements OnInit {
|
||||
@ViewChild('table', { static: true }) table: MatTable<Product>;
|
||||
dataSource: ProductListDataSource;
|
||||
filter: BehaviorSubject<string>;
|
||||
form: FormGroup;
|
||||
@ -30,7 +28,6 @@ export class ProductListComponent implements OnInit {
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private fb: FormBuilder,
|
||||
private router: Router,
|
||||
private toaster: ToasterService,
|
||||
private toCsv: ToCsvService,
|
||||
private ser: ProductService
|
||||
@ -50,20 +47,24 @@ export class ProductListComponent implements OnInit {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.dataSource = new ProductListDataSource(this.filter, this.data);
|
||||
this.route.data
|
||||
.subscribe((data: { list: Product[], menuCategories: MenuCategory[] }) => {
|
||||
this.data.next(data.list);
|
||||
this.menuCategories = data.menuCategories;
|
||||
this.loadData(data.list, data.menuCategories);
|
||||
});
|
||||
this.dataSource = new ProductListDataSource(this.filter, this.data);
|
||||
}
|
||||
|
||||
loadData(list: Product[], menuCategories: MenuCategory[]) {
|
||||
this.menuCategories = menuCategories;
|
||||
this.data.next(list);
|
||||
}
|
||||
|
||||
updateSortOrder() {
|
||||
this.ser.updateSortOrder(this.dataSource.viewData)
|
||||
.subscribe(
|
||||
(result) => {
|
||||
(result: Product[]) => {
|
||||
this.toaster.show('Success', '');
|
||||
this.router.navigateByUrl('/products');
|
||||
this.loadData(result, this.menuCategories);
|
||||
},
|
||||
(error) => {
|
||||
this.toaster.show('Danger', error.error);
|
||||
|
||||
Reference in New Issue
Block a user