From a80c2bc060c7e69d543ae27fdaff12ad9fe053c8 Mon Sep 17 00:00:00 2001 From: AGNES Date: Thu, 12 Mar 2020 11:07:25 +0800 Subject: [PATCH 1/2] Mencari nota tunda --- .../DialogCariNotaTundaController.java | 91 ++++++++++++++++++- 1 file changed, 89 insertions(+), 2 deletions(-) diff --git a/src/main/java/id/amigogroup/posterminal/pencarian/DialogCariNotaTundaController.java b/src/main/java/id/amigogroup/posterminal/pencarian/DialogCariNotaTundaController.java index 5c210ec..fa06798 100644 --- a/src/main/java/id/amigogroup/posterminal/pencarian/DialogCariNotaTundaController.java +++ b/src/main/java/id/amigogroup/posterminal/pencarian/DialogCariNotaTundaController.java @@ -5,18 +5,38 @@ */ package id.amigogroup.posterminal.pencarian; +import id.amigogroup.posterminal.api.AmigoPosRx; +import id.amigogroup.posterminal.model.MNotaTunai; +import id.amigogroup.posterminal.model.Pagination; +import id.amigogroup.posterminal.transaksi.TabelBarangTunai; +import id.amigogroup.posterminal.util.AlertUtil; +import io.reactivex.Observer; +import io.reactivex.disposables.Disposable; import java.io.IOException; +import java.net.HttpURLConnection; import java.net.URL; import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; +import javafx.beans.property.ReadOnlyObjectWrapper; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; import javafx.scene.Parent; +import javafx.scene.control.Alert; import javafx.scene.control.ButtonBar.ButtonData; import javafx.scene.control.ButtonType; +import javafx.scene.control.ComboBox; import javafx.scene.control.Dialog; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableView; +import javafx.scene.control.cell.PropertyValueFactory; +import javafx.scene.input.KeyEvent; +import javafx.scene.layout.AnchorPane; import javafx.stage.Window; +import retrofit2.HttpException; /** * FXML Controller class @@ -24,6 +44,37 @@ import javafx.stage.Window; * @author ronal */ public class DialogCariNotaTundaController extends Dialog implements Initializable { + + @FXML + AnchorPane apContent; + @FXML + private ComboBox cbxCariNotaTunda; + @FXML + private TableView tbvBarangTunda; + @FXML + private TableColumn tcNo; + @FXML + private TableColumn tcKode; + @FXML + private TableColumn tcNama; + @FXML + private TableColumn tcUkur; + @FXML + private TableColumn tcJml; + @FXML + private TableColumn tcHarga; + @FXML + private TableColumn tcDisc1; + @FXML + private TableColumn tcDisc2; + @FXML + private TableColumn tcSubTotal; + @FXML + private TableColumn tcPromo; + @FXML + private TableColumn tcPramuniaga; + final ObservableList daftarTabelBarangTunai = FXCollections.observableArrayList(); + AmigoPosRx posRx = new AmigoPosRx(); /** * Initializes the controller class. @@ -31,7 +82,9 @@ public class DialogCariNotaTundaController extends Dialog implements Ini @Override public void initialize(URL url, ResourceBundle rb) { getDialogPane().getButtonTypes().add(new ButtonType("Tutup", ButtonData.CANCEL_CLOSE)); - } +// + } + public DialogCariNotaTundaController(/*FormPresensiController parent*/) { try { @@ -44,7 +97,7 @@ public class DialogCariNotaTundaController extends Dialog implements Ini Parent root = loader.load(); getDialogPane().setContent(root); setTitle("Cari Nota Tunda"); - + posRx.getMNotaTunaiByStatus("T", 25).subscribe(getNotaTunaiTundaObserver); // getDialogPane().getButtonTypes().add(ButtonType.CANCEL); // setResultConverter(buttonType -> { // return str; @@ -54,4 +107,38 @@ public class DialogCariNotaTundaController extends Dialog implements Ini .getName()).log(Level.SEVERE, null, e); } } + + + public Observer> getNotaTunaiTundaObserver = new Observer>() { + @Override + public void onSubscribe(Disposable dspsbl) { + } + + @Override + public void onNext(Pagination daftarMNotaTunai) { + for (MNotaTunai mNotaTunai : daftarMNotaTunai.getData()){ + cbxCariNotaTunda.getItems().add(mNotaTunai.getNoNota()); + } + } + + @Override + public void onError(Throwable error) { + if (error instanceof HttpException) { + switch (((HttpException) error).code()) { + case HttpURLConnection.HTTP_NOT_FOUND: + Alert alert = AlertUtil.getAlertError( + AlertUtil.ERROR_TIDAK_DITEMUKAN_TITLE, + "Nota Tunda Tidak Ditemukan"); + alert.initOwner(apContent.getScene().getWindow()); + alert.show(); + } + } else { + AmigoPosRx.handleGenericError(error, apContent.getScene().getWindow()); + } + } + + @Override + public void onComplete() { + } + }; } -- 2.24.1 From a133faaa86b556d57a5dc5e9203d7d552e702464 Mon Sep 17 00:00:00 2001 From: AGNES Date: Thu, 12 Mar 2020 11:10:57 +0800 Subject: [PATCH 2/2] Mencari nota tunda --- .../id/amigogroup/posterminal/api/AmigoPosRx.java | 5 +++++ .../amigogroup/posterminal/api/ServiceApiBarang.java | 6 ++++++ .../transaksi/FormTransaksiReturController.java | 11 ++++++----- .../transaksi/FormTransaksiTunaiController.java | 6 +++--- src/main/resources/fxml/DialogCariNotaTunda.fxml | 5 +++-- 5 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/main/java/id/amigogroup/posterminal/api/AmigoPosRx.java b/src/main/java/id/amigogroup/posterminal/api/AmigoPosRx.java index e71a674..4fb69a7 100644 --- a/src/main/java/id/amigogroup/posterminal/api/AmigoPosRx.java +++ b/src/main/java/id/amigogroup/posterminal/api/AmigoPosRx.java @@ -57,6 +57,11 @@ public class AmigoPosRx { return UtilsApi.getServiceApiBarang().getMNotaTunaiByNoNota(noNota) .subscribeOn(Schedulers.trampoline()); } + + public Observable> getMNotaTunaiByStatus(String status, Integer limit) { + return UtilsApi.getServiceApiBarang().getMNotaTunaiByStatus(status, limit) + .subscribeOn(Schedulers.io()); + } public Observable> getDNotaTunaiByNoNota(String noNota) { return UtilsApi.getServiceApiBarang().getDNotaTunaiByNoNota(noNota) diff --git a/src/main/java/id/amigogroup/posterminal/api/ServiceApiBarang.java b/src/main/java/id/amigogroup/posterminal/api/ServiceApiBarang.java index f79ec8d..381ae6c 100644 --- a/src/main/java/id/amigogroup/posterminal/api/ServiceApiBarang.java +++ b/src/main/java/id/amigogroup/posterminal/api/ServiceApiBarang.java @@ -47,6 +47,12 @@ public interface ServiceApiBarang { @GET("m-nota-tunai/no-nota/{noNota}") Observable getMNotaTunaiByNoNota(@Path("noNota") String noNota); + //Mengambil Master Nota Tunai By Status Tunda + @GET("m-nota-tunai/status/{status}/limit/{limit}") + Observable> getMNotaTunaiByStatus( + @Path("status") String status, + @Path("limit") Integer limit); + //D-NOTA-TUNAI //Mengambil Detail Nota Tunai by No Nota @GET("d-nota-tunai/no-nota/{noNota}") diff --git a/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiReturController.java b/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiReturController.java index f0732e3..0c6cf0c 100644 --- a/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiReturController.java +++ b/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiReturController.java @@ -105,10 +105,11 @@ public class FormTransaksiReturController implements Initializable { @FXML private TableColumn tcPramuniagaRetur; @FXML + private TableColumn tcBtnBatal; + @FXML private StackPane stpReturDrop; @FXML private Label lblTambahKeTabelRetur; - private TableColumn tcAction; private final AmigoPosRx posRx = new AmigoPosRx(); private String noNota = ""; @@ -133,7 +134,7 @@ public class FormTransaksiReturController implements Initializable { tcDisc2.setCellValueFactory(new PropertyValueFactory<>("disc2")); tcSubTotal.setCellValueFactory(new PropertyValueFactory<>("subTotal")); tcPramuniaga.setCellValueFactory(new PropertyValueFactory<>("fldPramuniaga")); - tcAction.setCellValueFactory(new PropertyValueFactory<>("btnAction")); + tcBtnBatal.setCellValueFactory(new PropertyValueFactory<>("btnBatal")); tbvPenjualan.setItems(daftarTabelPenjualan); tcNoRetur.setCellValueFactory((TableColumn.CellDataFeatures cell) -> { @@ -166,8 +167,8 @@ public class FormTransaksiReturController implements Initializable { for (DNotaTunai dNotaTunai : daftarNotaTunai) { //Button - Button btnAction = ButtonUtility.generateButton(ButtonUtility.CLOSE_ICON); - btnAction.setOnAction((t) -> { + Button btnBatal = ButtonUtility.generateButton(ButtonUtility.CLOSE_ICON); + btnBatal.setOnAction((t) -> { Alert alert = AlertUtil.getAlertDialogKonfirmasi( AlertUtil.DIALOG_KONFIRMASI_MESSAGE, "Yakin ingin menghapus barang?"); @@ -198,7 +199,7 @@ public class FormTransaksiReturController implements Initializable { dNotaTunai.getHargaJual() * dNotaTunai.getJumlah() )), fldPramuniaga, - btnAction); + btnBatal); tbt.setData(dNotaTunai); daftarTabelPenjualan.add(tbt); diff --git a/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiTunaiController.java b/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiTunaiController.java index fc2c950..e90efee 100644 --- a/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiTunaiController.java +++ b/src/main/java/id/amigogroup/posterminal/transaksi/FormTransaksiTunaiController.java @@ -12,6 +12,7 @@ import id.amigogroup.posterminal.model.DNotaTunai; import id.amigogroup.posterminal.model.NoBarang; import id.amigogroup.posterminal.util.AmigoPosCache; import id.amigogroup.posterminal.util.AlertUtil; +import id.amigogroup.posterminal.util.ButtonUtility; import id.amigogroup.posterminal.util.Fucout; import io.reactivex.Observable; import io.reactivex.Observer; @@ -90,7 +91,6 @@ public class FormTransaksiTunaiController implements Initializable { final ObservableList daftarTabelTransaksi = FXCollections.observableArrayList(); @FXML private Text lblGrandTotal; - public static final ButtonType btnAction = new ButtonType("BATAL", ButtonBar.ButtonData.YES); private String noNota = ""; private AmigoPosRx posRx = new AmigoPosRx(); @@ -145,7 +145,7 @@ public class FormTransaksiTunaiController implements Initializable { ComboBox cbxPromo = new ComboBox<>(FXCollections.observableArrayList(promo)); cbxPromo.getSelectionModel().select("Ulang Tahun"); //Button - Button btnAction = new Button("BATAL"); + Button btnAction = ButtonUtility.generateButton(ButtonUtility.CLOSE_ICON); btnAction.setOnAction((t) -> { Alert alert = AlertUtil.getAlertError( AlertUtil.DIALOG_KONFIRMASI_MESSAGE, @@ -221,7 +221,7 @@ public class FormTransaksiTunaiController implements Initializable { ComboBox cbxPromo = new ComboBox<>(FXCollections.observableArrayList(promo)); cbxPromo.getSelectionModel().select("Ulang Tahun"); - Button btnAction = new Button("BATAL"); + Button btnAction = ButtonUtility.generateButton(ButtonUtility.CLOSE_ICON); btnAction.setOnAction((t) -> { Alert alert = AlertUtil.getAlertDialogKonfirmasi( AlertUtil.DIALOG_KONFIRMASI_MESSAGE, diff --git a/src/main/resources/fxml/DialogCariNotaTunda.fxml b/src/main/resources/fxml/DialogCariNotaTunda.fxml index 7f87f13..d225154 100644 --- a/src/main/resources/fxml/DialogCariNotaTunda.fxml +++ b/src/main/resources/fxml/DialogCariNotaTunda.fxml @@ -14,7 +14,7 @@ - +