|
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- package id.amigogroup.posterminal.api;
-
- import id.amigogroup.posterminal.model.Barang;
- import id.amigogroup.posterminal.model.DNotaTunai;
- import id.amigogroup.posterminal.model.Karyawan;
- import id.amigogroup.posterminal.model.Pagination;
- import id.amigogroup.posterminal.model.MNotaRetur;
- import id.amigogroup.posterminal.model.MNotaTunai;
- import id.amigogroup.posterminal.model.NoBarang;
- import id.amigogroup.posterminal.model.Pelanggan;
- import id.amigogroup.posterminal.model.Tas;
- import id.amigogroup.posterminal.util.AlertUtil;
- import io.reactivex.Observable;
- import io.reactivex.schedulers.Schedulers;
- import java.net.SocketException;
- import java.net.SocketTimeoutException;
- import java.net.UnknownHostException;
- import java.util.List;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- import javafx.application.Platform;
- import javafx.scene.control.Alert;
- import javafx.stage.Window;
- import okhttp3.ResponseBody;
-
- /**
- *
- * @author ronal
- */
- public class AmigoPosRx {
-
- //Barang API
- public Observable<Barang> getBarangByKodeBarang(String kodeBarang) {
- return UtilsApi.getServiceApiBarang().getBarangByKodeBarang(kodeBarang)
- .subscribeOn(Schedulers.trampoline());
- }
-
- public Observable<Pagination<Barang>> getBarangByNamaBarang(String namaBarang) {
- return UtilsApi.getServiceApiBarang().getBarangByNamaBarang(namaBarang)
- .subscribeOn(Schedulers.io());
- }
-
- public Observable<List<NoBarang>> getNoBarangByIdGabunganSortNomor(String idGabungan) {
- return UtilsApi.getServiceApiBarang().getByIdGabunganSortNomor(idGabungan)
- .subscribeOn(Schedulers.trampoline());
- }
-
- public Observable<NoBarang> getNoBarangByIdGabunganNomor(String idGabungan, String nomor) {
- return UtilsApi.getServiceApiBarang().getByIdGabunganNomor(idGabungan, nomor)
- .subscribeOn(Schedulers.io());
- }
-
- public Observable<MNotaTunai> getMNotaTunaiByNoNota(String noNota) {
- return UtilsApi.getServiceApiBarang().getMNotaTunaiByNoNota(noNota)
- .subscribeOn(Schedulers.trampoline());
- }
-
- public Observable<ResponseBody> validasiMNotaTunaiByNoNotaTanggal(String noNota) {
- return UtilsApi.getServiceApiBarang().validasiMNotaTunaiByNoNotaTanggal(noNota)
- .subscribeOn(Schedulers.trampoline());
- }
-
- public Observable<List<DNotaTunai>> getDNotaTunaiByNoNota(String noNota) {
- return UtilsApi.getServiceApiBarang().getDNotaTunaiByNoNota(noNota)
- .subscribeOn(Schedulers.io());
- }
-
- public Observable<MNotaRetur> getMNotaReturByNoNota(String noNota) {
- return UtilsApi.getServiceApiBarang().getMNotaReturByNoNota(noNota)
- .subscribeOn(Schedulers.trampoline());
- }
-
- //Checkin API
- public Observable<List<Tas>> getAllTas() {
- return UtilsApi.getServiceApiCheckin().getAllTas();
- }
-
- //Karyawan API
- public Observable<Karyawan> getKaryawanByNik(String nik) {
- return UtilsApi.getServiceApiKaryawan().getKaryawanByNik(nik)
- .subscribeOn(Schedulers.trampoline());
- }
-
- //Pelanggan API
- public Observable<Pelanggan> getPelangganByKodeMember(String kodeMember) {
- return UtilsApi.getServiceApiPelanggan().getPelangganByKodeMember(kodeMember)
- .subscribeOn(Schedulers.trampoline());
- }
-
- public Observable<Pagination<Pelanggan>> getPelangganByNama(String nama) {
- return UtilsApi.getServiceApiPelanggan().getPelangganByNama(nama)
- .subscribeOn(Schedulers.io());
- }
-
- public Observable<Pagination<Pelanggan>> getPelangganByNoTelpNoHp(String no) {
- return UtilsApi.getServiceApiPelanggan().getPelangganByNoTelpNoHp(no)
- .subscribeOn(Schedulers.io());
- }
-
- public static void handleGenericError(Throwable error, Window window) {
- if (error instanceof SocketException || error instanceof UnknownHostException
- || error instanceof SocketTimeoutException) {
- Platform.runLater(() -> {
- Alert alert = AlertUtil.getAlertError(
- AlertUtil.ERROR_KONEKSI_TIMEOUT_TITLE,
- AlertUtil.ERROR_KONEKSI_TIMEOUT_MESSAGE);
- alert.initOwner(window);
- alert.show();
- });
- } else {
- Platform.runLater(() -> {
- Alert alert = AlertUtil.getAlertError(
- AlertUtil.ERROR_TIDAK_TERDUGA_TITLE,
- AlertUtil.ERROR_TIDAK_TERDUGA_MESSAGE);
- alert.initOwner(window);
- alert.show();
- Logger.getLogger(AmigoPosRx.class.getName()).log(Level.SEVERE, null, error);
- });
- }
- }
- }
|