Demo

CurrencyExchangeService

Currency များအကြား exchange rate ကို စီမံပါသည် — pair (နှင့် inverse) အပ်ဒိတ်၊ နောက်ဆုံး rate ဖတ်ခြင်း၊ source currency မှ rate စာရင်းတို့ ပါဝင်ပါသည်။

Inject

TSXinject
1import { 2 ContainerRegistryManager, 3 CurrencyExchangeService, 4 Inject, 5 Service, 6} from "@quan-erp/shared-backend-core"; 7 8@Service() 9export class MyPluginService { 10 @Inject(CurrencyExchangeService, ContainerRegistryManager.BUILTIN_PLUGIN) 11 private currencyExchangeService: CurrencyExchangeService; 12}

Method များ

  • updateRate(fromCurrencyId, toCurrencyId, rate) — from→to rate ကို upsert လုပ်ပြီး inverse ကို ထိန်းသိမ်းပါသည်
  • getRate(fromCurrencyId, toCurrencyId) — pair ၏ နောက်ဆုံး rate (entity အမည် CurrencyExchangeRateEnity — source အတိုင်း)
  • getLatestRates(fromCurrencyId) — source currency တစ်ခုမှ နောက်ဆုံး rate များကို ပြန်ပေးပါသည်
TSXrates
1import { 2 ContainerRegistryManager, 3 CurrencyExchangeService, 4 Inject, 5 Service, 6} from "@quan-erp/shared-backend-core"; 7 8@Service() 9export class FxService { 10 @Inject(CurrencyExchangeService, ContainerRegistryManager.BUILTIN_PLUGIN) 11 private fx: CurrencyExchangeService; 12 13 async setUsdToMmk(usdId: number, mmkId: number, rate: number) { 14 await this.fx.updateRate(usdId, mmkId, rate); 15 } 16 17 async convertHint(fromId: number, toId: number) { 18 const row = await this.fx.getRate(fromId, toId); 19 return row?.rate ?? null; 20 } 21 22 async board(fromId: number) { 23 return this.fx.getLatestRates(fromId); 24 } 25}