fengxiang
2018-05-02 5e502e366836b3577884bca89372541b42124cd3
src/app/business/services/http/device.service.ts
@@ -1,7 +1,7 @@
import { _HttpClient } from '@delon/theme';
import { environment } from 'environments/environment';
import { Injectable } from '@angular/core';
import { ResultBean } from '@business/entity/grid';
import { ResultBean, PageBean } from '@business/entity/grid';
import { Observable } from 'rxjs/Observable';
import { ExampleService } from '@business/services/util/example.service';
import { Device } from '@business/entity/data';
@@ -11,7 +11,8 @@
  private urls = {
    list: environment.SERVER_BASH_URL + 'device/page-list',
    save: environment.SERVER_BASH_URL + 'device/add-or-modify',
    delete: environment.SERVER_BASH_URL + 'device/delete-by-ids'
    delete: environment.SERVER_BASH_URL + 'device/delete-by-ids',
    count: environment.SERVER_BASH_URL +'device/count-by-example'
  };
  public getListUrl () {
    return this.urls.list;
@@ -31,4 +32,21 @@
  public save(data: Device): Observable<any> {
    return this.http.post(this.urls.save, data);
  }
  public countByExample(example: ExampleService): Observable<ResultBean<number>> {
    return this.http.get(this.urls.count, { queryParams: example.getSqlParam()});
  };
  public getPageByExample(page: PageBean, example: ExampleService): Observable<PageBean> {
    let orderByClause = '';
    const _queryParams = !!example ? example.getSqlParam() : '';
    if (!!page) {
       if ( page.getOrderByClause != null && page.getOrderByClause instanceof Function) {
          orderByClause = page.getOrderByClause();
          }
    } else {
          page =  {pageIndex: 0, pageSize: 20};
    }
    const param: PageBean = {pageSize: page.pageSize, pageIndex: page.pageIndex,
        queryParams: _queryParams, orderByClause: orderByClause};
        return this.http.get(this.urls.list, param);
 }
}