fengxiang
2017-12-28 55da782025f5728051fea9fff49f9e6b6f602a1e
src/app/core/entity/grid.ts
@@ -3,7 +3,6 @@
export interface Column {
   text?: string;
   name?: string;
   value?: any;
   width?: string;
   sort?: boolean;
   type?: DataType;
@@ -18,13 +17,13 @@
    pageSize?: number ; // 一页多少条
    total?: number;
    data?: any[];
    queryParams?: string;
    queryParams?: string;
}
export class Grid implements PageBean {
export class Grid<T> implements PageBean {
    title = '';
    pageIndex = 0; // 页码
    pageSize = 10; // 每页几行数据
    data: any[] = [];
    data: T[] = [];
    total = 0;
    queryParams = '';   
    pages = 0; // 总页数
@@ -38,7 +37,7 @@
    
    checkAll(value: boolean) {
        this.data.forEach(
            row => {row.checked = value; }
            row => {row['checked'] = value; }
        ); 
        this.refreshStatus();
    }
@@ -57,11 +56,11 @@
    }
    refreshStatus() {
        const data = this.data;
        const allChecked =   data.every(value => value.checked);
        const allUnChecked = data.every(value => !value.checked);
        const allChecked =   data.every(value => value['checked']);
        const allUnChecked = data.every(value => !value['checked']);
        this.allChecked = allChecked;
        this.indeterminate = (!allChecked) && (!allUnChecked);
        this.selectedIndexs = data.filter(value => value.checked).map(
        this.selectedIndexs = data.filter(value => value['checked']).map(
            row => {
               return row['index'] != null ? row['index'] : 0;
            }