Trang tài liệu Trí Nam

Tài liệu hướng dẫn sử dụng core TNX 5

Tạo Grid

Estimated reading: 2 minutes 494 views

Hình ảnh / Demo link: Hợp đồng chờ ký - ĐẠI HỌC GIAO THÔNG

Các bước tạo grid:

Class này phải kế thừa từ class DataListBase, sau đó thêm các dịch vụ cần dùng ở constructor.

				
					
export class CanboHosoHopDongChoKyComponent extends DataListBase implements OnInit, AfterViewInit {
   
   ...
    constructor(
        protected _injector: Injector,
        protected _canBo_HoSo_HopDongService: CanBo_HoSo_HopDongService,
        private _canBo_HoSoService: CanBo_HoSoService,
        private _dm_LoaiHopDongService: DM_LoaiHopDongService,
        private _canBo_HoSo_LuongService: CanBo_HoSo_LuongService
    ) {
        super(_injector);
    }
    ...
}
				
			

Sau đó sẽ thiết lập cấu hình các cột dữ liệu của bảng ở ngOnInit, mỗi cột là một ColumnSchemaBase
(thường thì lúc gen code cũng có)

				
					
    ngOnInit() {
        this.setting.baseService = this._canBo_HoSo_HopDongService;  // Cấu hình dịch vụ gọi Api đến
        this.setting.popupSize.width = 900;  // set kích thước popup form detail
        this.setting.popupSize.height = 750;

        this.setting.objectName = 'hợp đồng chờ ký';   // tiêu đề trang
        this.setting.modelSchemas = [
            new ModelSchema({
                field: 'idLoaiHopDong',
                name: 'Loại hợp đồng',
                fullName: 'Loại hợp đồng',
                description: 'Loại hợp đồng',
            }),
            new ModelSchema({
                field: 'idCanBo',
                dataType: 'int',
                name: 'Cán bộ',
                fullName: 'Cán bộ',
                description: 'Cán bộ',
            }),
        ];

        this.setting.cols = [
            new ColumnSchemaBase({
                field: 'ngaySinh',   // tên field
                dataType: 'date', 
                label: this._translateService.instant('Ngày sinh'),  // Tiêu đề cột
                allowFilter: false,
                sort: false,
                width: '120px',
            }),
            new ColumnSchemaBase({
                field: 'soHopDong',
                label: this._translateService.instant('Số hợp đồng'),
                fullTextSearch: true,
                width: '150px',
            }),
        ];
        super.ngOnInit();
    }
    

				
			
CONTENTS