Angus Wiki
  • Group 1
    • Angus Wiki
    • Control Types
      • Text
      • Textarea
      • Password
      • Spacer
      • Integer
      • Double
      • Double4
      • Double5
      • Date
      • Daterange
      • Time
      • Datetime
      • Select
      • Anglookup
      • Boolean
      • Button
      • Filter
      • Radio
      • Multiselect
      • Dbimage
      • Image
      • Html
      • Chart
      • Widget
      • Autocomplete
      • Chip
      • Phoneinput
    • General type
    • Toolbar
    • Menu
    • Grid
    • Grid Filter Panel
    • Page
    • Analysis
    • OptionRecord
    • Record
      • Recordlarda Fuzzy Search Kullanımı
      • Recordlara Panel Ekleme
      • Record Butonlarına da Rol Verilebilir
    • Record scripti
    • Butonda Script Kullanımı
    • Buton ve row actiondan gridfilter veri gönderme
    • Combine Latest
    • Sp ye istek atıp dönen id bir tane ise record fazla ise grid açan buton scripti
  • Group 3
    • Angus Lokal Kurulum Linux
    • İlk kurulum
    • Kubernetes Dashboard
  • Group 2
    • Angus Lokal Kurulum Windows
    • Gerekli Uygulamalar
      • Ubuntu Kurulumu
      • WSL Kurulumu
      • Docker Kurulumu
      • Kubernetes Kurulumu
      • Microsoft SQL Kurulumu
    • Kubernetes Ayarları
    • Sistemin Çalıştırılması
  • Group 4
    • Scriptler
      • Rezervasyon Kartı
      • Rezervasyon Kartı BeforeSave Script
      • Rezervasyon Kartı BeforeClone Script
      • Fatura
      • Fatura BeforeSave Script
      • Fatura Before Print Script Editor
      • Satış Projeleri
      • Satış Projeleri BeforeSave Script
      • Kapalı Oda İşlemleri
      • Kayıp Bulunan Listesi
      • İş Kaydı
      • İş Kaydı BeforeSave Script
      • Hesap Kartı
      • Stok Fiyat Anlaşması
      • Proforma Fatura Listesi
      • Fatura BeforeSave Script
      • Fiş
      • Fiş BeforeSave Script
      • Fiş AfterSave Script
      • Fiş Before Print Script
      • Fiş BeforeClone Script
      • Ödeme Emri
      • Ödeme Emri BeforeSave Script
      • Çek/Senet
      • Banka Ekstresi Oku BeforeSave Script
      • Hesap Mutabakatı
      • Babs Mutabakat
      • Kur Değerleme
      • Kur Değerleme(Toplu Döviz)
      • Yaşlandırma Analizi
      • Seyahat Acentası
      • Fiyat Kodu
      • Kontrat Detay
      • Entegrasyon Bağlantı Tanımları
      • Stok İrsaliye
      • Stok İrsaliye BeforeSave Script
      • Stok Fişi
      • Stok Fişi BeforeSave Script
      • Talep
      • Talep BeforeSave Script
      • Üretim Emri
      • Stok Sayım
      • Stok Sayım BeforeSave Script
      • Tüketim Fişleri
      • Adisyon Before Save Script
      • Stok Fiyat Anlaşması
      • Stok Fiyat Anlaşması BeforeSave Script
      • Misafir Kartı
      • Yeni Talep
      • Yeni Talep BeforeSave Script
      • Yeni Talep AfterSave Script
      • Çağrı Merkezi Kaydı
      • Çağrı Merkezi Kaydı AfterSave Script
      • Üyelik
      • Ödeme Linki
      • Doluluk Grafikleri
      • Dağılım Analizi
      • Park Giriş BeforeClone Script
      • Park Giriş
      • Park Rezervasyonu
      • Park Rezervasyonu BeforeSave Script
      • Park Rezervasyonu BeforeClone Script
      • Seyahat Acentası
      • Kullanıcı Bilgileri
      • Kullanıcı Bilgileri BeforeSave Script
      • Medikal Rezervasyon Kartı
      • Medikal BeforeSave Script
      • Medikal BeforeClone Script
      • Ödeme Linki
      • Ödeme Linki BeforeSave Script
  • Group 5
    • IP Santral Entegrasyonu
    • Ip Santral Sistemi
    • File Transfer Service
    • IP Santral Engtegrasyonu Angus Kullanımı
  • Response Header'larındaki Alanlar ve Anlamları
Powered by GitBook
On this page
  1. Group 4
  2. Scriptler

Kur Değerleme

Kur Değerleme Script

var _dateFC = this.recordService.formGroup.controls.EVALDATE;
let curFC = this.recordService.formGroup.controls.CURRENCYID_CURCODE;
let curRate = this.recordService.formGroup.controls.CURRENCYRATE;
let curRateType = this.recordService.formGroup.controls.CURRENCYTYPE;

let banknoteBuying;
let banknoteSelling;
let forexBuying;
let forexSelling;

const curObservable = curFC.valueChanges.pipe(rxjs.startWith(curFC.value));
const dateObservable = _dateFC.valueChanges.pipe(
  rxjs.startWith(_dateFC.value.toString())
);

console.log('_dateFC.value', _dateFC.value);
window.rxjs
  .combineLatest([curObservable, dateObservable])
  .pipe(
    rxjs.debounceTime(1000),
    rxjs.takeUntil(this.isDestroy$),
    rxjs.switchMap(([cur, _date]) => {
      if (cur && _date) {
        console.log('date', _date);
        return window.angus.api.func({
          Object: 'FN_EASYPMS_GET_TCMBDAILYRATES',
          Parameters: {
            DATE: _dateFC.value, //_date kullandığımızda formatı çok değişiyor onun için kullanmıyoruz MBASAL
            CURCODE: cur,
            BASECURCODE: window.angus.api.tenant.DEFAULTCURRENCY,
          },
        });
      }

      return rxjs.of([]);
    })
  )
  .subscribe((resp) => {
    if (resp?.[0]?.length) {
      banknoteBuying = resp[0][0].BanknoteBuying;
      banknoteSelling = resp[0][0].BanknoteSelling;
      forexBuying = resp[0][0].ForexBuying;
      forexSelling = resp[0][0].ForexSelling;
      switch (curRateType.value) {
      case 1:
        curRate.setValue(forexBuying);
        break;
      case 2:
        curRate.setValue(forexSelling);
        break;
      case 3:
        curRate.setValue(banknoteBuying);
        break;
      case 4:
        curRate.setValue(banknoteSelling);
        break;
      case null:
        curRate.setValue(forexBuying);
        break;
    }
    } else {
      curRate.setValue(1);
    }
  });
curRateType.valueChanges
  .pipe(rxjs.startWith(curRateType.value))
  .subscribe((curRateTypeValue) => { 
    switch (curRateTypeValue) {
      case 1:
        curRate.setValue(forexBuying);
        break;
      case 2:
        curRate.setValue(forexSelling);
        break;
      case 3:
        curRate.setValue(banknoteBuying);
        break;
      case 4:
        curRate.setValue(banknoteSelling);
        break;
      case null:
        curRate.setValue(forexBuying);
        break;
    }
  });
PreviousBabs MutabakatNextKur Değerleme(Toplu Döviz)

Last updated 3 years ago