AlphaBaseRestService Kullanımı¶
minimum 0.0.39 versiyonu gerekmektedir
-
Get, Update, Delete, GetWithFilter, Create apilerinin otomatik olarak eklenmesi için kullanılır
-
AlphaBaseRestService kullanılmak istenen servise extends edilir.
-
super kelimesi ile kalıtım alınan class'a gerekli parametreler iletilir
-
"/api/v1/Stock/StockKod1/" bölümü api url bilgisini temsil eder. Burada sadece api controller bilgileri yazılır. Create, update, delete, get vb. bölümler yazılmaz
-
AlphaBaseRestService\<StockKod1> bölümünde yer alan StockKod1 alanı serviste kullanılacak olan class ı belirtmektedir.
Servise Nasıl extend edebilirim?
import { AlphaBaseRestService } from "@alpata/octapull.core";
export class Kod1tanimService extends AlphaBaseRestService<StockKod1> {
constructor(private httpClient: HttpClient) {
super(httpClient, "/api/v1/Stock/StockKod1/");
}}
Extend ettiğim servisi nasıl kullanabilirim?
Kullanılmak istenen component.ts dosyasından constructor ile servis enject edilir. Sonrasında tüm fonksiyonlara erişilebilir.
constructor(
private kod1tanimService: Kod1tanimService,
) {}
Örnek p-table veri getirme
async pTableVeriGetir(event: LazyLoadEvent) {
this.isLoadingTableData = true;
this.kod1tanimService.getWithFilterObservable(event).subscribe(
(res: PTableResponseModel) => {
this.itemListe = res.data;
this.totalRecords = res.totalRecords;
this.isLoadingTableData = false;
},
() => {
this.isLoadingTableData = false;
}
Örnek silme işlemi
await this.kod1tanimService.delete(id);
NOT : AlphaBaseRestService extend edildiğinde her api için Promise ve Observable versiyonunu içeren fonksiyonlar yer almaktadır. Proje genelinde harici durumlar dışında Promise versiyonlu apiler kullanılmalıdır p-table veri getirme işlemlerinde Observable api kullanılmalıdır
AlphaBaseRestServiceWithFilterInfo Kullanımı¶
- AlphaBaseRestService in aynısı olup tek fark extra olarak info apilerini de dahil eder
import { AlphaBaseRestServiceWithFilterInfo } from '@alpata/octapull.core';
export class Kod1tanimService extends AlphaBaseRestServiceWithFilterInfo<StockKod1> {
constructor(private httpClient: HttpClient) {
super(httpClient, '/api/v1/Stock/StockKod1/');
}
}