Browse Source

menambakan scan member di UI form utama, mengubah id di UI dialogTambahNota & controller, membuat fungsi scan member di formUtamaController

pull/2/head
Josua Pascario 5 years ago
parent
commit
1e70da1d09
4 changed files with 26 additions and 23 deletions
  1. +17
    -9
      src/main/java/id/amigogroup/posterminal/FormUtamaController.java
  2. +4
    -11
      src/main/java/id/amigogroup/posterminal/transaksi/DialogTambahNotaController.java
  3. +1
    -1
      src/main/resources/fxml/DialogTambahNota.fxml
  4. +4
    -2
      src/main/resources/fxml/FormUtama.fxml

+ 17
- 9
src/main/java/id/amigogroup/posterminal/FormUtamaController.java View File

@@ -15,7 +15,6 @@ import id.amigogroup.posterminal.transaksi.FormTransaksiTunaiController;
import id.amigogroup.posterminal.util.AlertUtil; import id.amigogroup.posterminal.util.AlertUtil;
import id.amigogroup.posterminal.util.Fucout; import id.amigogroup.posterminal.util.Fucout;
import io.reactivex.Observable; import io.reactivex.Observable;
import static io.reactivex.Observable.error;
import io.reactivex.Observer; import io.reactivex.Observer;
import io.reactivex.disposables.Disposable; import io.reactivex.disposables.Disposable;
import java.io.IOException; import java.io.IOException;
@@ -41,10 +40,12 @@ import javafx.scene.control.Alert;
import javafx.scene.control.Button; import javafx.scene.control.Button;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.control.ScrollPane; import javafx.scene.control.ScrollPane;
import javafx.scene.control.TextField;
import javafx.scene.image.Image; import javafx.scene.image.Image;
import javafx.scene.input.KeyCode; import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyCodeCombination; import javafx.scene.input.KeyCodeCombination;
import javafx.scene.input.KeyCombination; import javafx.scene.input.KeyCombination;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.BorderPane; import javafx.scene.layout.BorderPane;
import javafx.scene.layout.VBox; import javafx.scene.layout.VBox;
import javafx.stage.Stage; import javafx.stage.Stage;
@@ -76,6 +77,8 @@ public class FormUtamaController implements Initializable {
private Label lblTglLahirPelanggan; private Label lblTglLahirPelanggan;
@FXML @FXML
private Label lblNoTelpPelanggan; private Label lblNoTelpPelanggan;
@FXML
private TextField tfScanMember;


private final FormFactory formFactory = new FormFactory(); private final FormFactory formFactory = new FormFactory();


@@ -86,13 +89,13 @@ public class FormUtamaController implements Initializable {
private final char NOTA_PREV = 'p'; private final char NOTA_PREV = 'p';
private final char NOTA_NEXT = 'n'; private final char NOTA_NEXT = 'n';
private Observable<Pelanggan> pelangganObs; private Observable<Pelanggan> pelangganObs;
AmigoPosRx posRx = new AmigoPosRx();


/** /**
* Initializes the controller class. * Initializes the controller class.
*/ */
@Override @Override
public void initialize(URL url, ResourceBundle rb) { public void initialize(URL url, ResourceBundle rb) {
AmigoPosRx posRx = new AmigoPosRx();
//Kode Nur Indah Suciati (00334), Kode Wuryaningsih/RT (010004) //Kode Nur Indah Suciati (00334), Kode Wuryaningsih/RT (010004)
updateLabelMemberNonMember(); updateLabelMemberNonMember();


@@ -384,8 +387,7 @@ public class FormUtamaController implements Initializable {
navigasi.add(buttonBaru); navigasi.add(buttonBaru);
vbNavigasi.getChildren().add(buttonBaru); vbNavigasi.getChildren().add(buttonBaru);
jumlahNota++; jumlahNota++;
}
else if (hasilReturn.isPresent() && hasilReturn.get().equals("Baru:Bon")) {
} else if (hasilReturn.isPresent() && hasilReturn.get().equals("Baru:Bon")) {


Button buttonBaru = generateButtonNota("10-0220-0000X", Button buttonBaru = generateButtonNota("10-0220-0000X",
FormConstanta.TRANSAKSI_BON, FormConstanta.TRANSAKSI_BON,
@@ -393,8 +395,7 @@ public class FormUtamaController implements Initializable {
navigasi.add(buttonBaru); navigasi.add(buttonBaru);
vbNavigasi.getChildren().add(buttonBaru); vbNavigasi.getChildren().add(buttonBaru);
jumlahNota++; jumlahNota++;
}
else if (hasilReturn.isPresent() && hasilReturn.get().equals("Baru:Bawa Dulu")) {
} else if (hasilReturn.isPresent() && hasilReturn.get().equals("Baru:Bawa Dulu")) {


Button buttonBaru = generateButtonNota("10-0220-0000X", Button buttonBaru = generateButtonNota("10-0220-0000X",
FormConstanta.TRANSAKSI_BAWA, FormConstanta.TRANSAKSI_BAWA,
@@ -402,8 +403,7 @@ public class FormUtamaController implements Initializable {
navigasi.add(buttonBaru); navigasi.add(buttonBaru);
vbNavigasi.getChildren().add(buttonBaru); vbNavigasi.getChildren().add(buttonBaru);
jumlahNota++; jumlahNota++;
}
else if (hasilReturn.isPresent() && hasilReturn.get().equals("Baru:Retur")) {
} else if (hasilReturn.isPresent() && hasilReturn.get().equals("Baru:Retur")) {


Button buttonBaru = generateButtonNota("10-0220-0000X", Button buttonBaru = generateButtonNota("10-0220-0000X",
FormConstanta.TRANSAKSI_RETUR, FormConstanta.TRANSAKSI_RETUR,
@@ -411,7 +411,7 @@ public class FormUtamaController implements Initializable {
navigasi.add(buttonBaru); navigasi.add(buttonBaru);
vbNavigasi.getChildren().add(buttonBaru); vbNavigasi.getChildren().add(buttonBaru);
jumlahNota++; jumlahNota++;
} else if(hasilReturn.isPresent() && hasilReturn.get().contains("Checkout:")){
} else if (hasilReturn.isPresent() && hasilReturn.get().contains("Checkout:")) {
Button buttonBaru = generateButtonNota(hasilReturn.get().substring(9), Button buttonBaru = generateButtonNota(hasilReturn.get().substring(9),
FormConstanta.TRANSAKSI_TUNAI, FormConstanta.TRANSAKSI_TUNAI,
Fucout.TIPE_NOTA_TUNAI); Fucout.TIPE_NOTA_TUNAI);
@@ -421,6 +421,14 @@ public class FormUtamaController implements Initializable {
} }
} }


//scan member
@FXML
void scanMemberOnPressed(KeyEvent event) {
if (event.getCode() == KeyCode.ENTER) {
posRx.getPelangganByKodeMember(tfScanMember.getText()).subscribe(pelangganObserver);
}
}

Observer<Pelanggan> pelangganObserver = new Observer<Pelanggan>() { Observer<Pelanggan> pelangganObserver = new Observer<Pelanggan>() {
@Override @Override
public void onSubscribe(Disposable dspsbl) { public void onSubscribe(Disposable dspsbl) {


+ 4
- 11
src/main/java/id/amigogroup/posterminal/transaksi/DialogTambahNotaController.java View File

@@ -41,7 +41,7 @@ public class DialogTambahNotaController extends Dialog<String> implements Initia
@FXML @FXML
private RadioButton rbAmbilDariCheckout; private RadioButton rbAmbilDariCheckout;
@FXML @FXML
private TextField txtFieldAmbilDariCheckout;
private TextField tfAmbilDariCheckout;
public static final ButtonType btnLanjutkan = new ButtonType("Lanjutkan"); public static final ButtonType btnLanjutkan = new ButtonType("Lanjutkan");
public static final ButtonType btnBatal = new ButtonType("Batal"); public static final ButtonType btnBatal = new ButtonType("Batal");
@@ -76,7 +76,7 @@ public class DialogTambahNotaController extends Dialog<String> implements Initia
if (((RadioButton) tgTipe.getSelectedToggle()) == rbBaru) { if (((RadioButton) tgTipe.getSelectedToggle()) == rbBaru) {
return "Baru:" + cbxPilihNota.getValue(); return "Baru:" + cbxPilihNota.getValue();
} else if (((RadioButton) tgTipe.getSelectedToggle()) == rbAmbilDariCheckout) { } else if (((RadioButton) tgTipe.getSelectedToggle()) == rbAmbilDariCheckout) {
return "Checkout:" + txtFieldAmbilDariCheckout.getText();
return "Checkout:" + tfAmbilDariCheckout.getText();
} }
//baru, balikin tipe yang dipilih //baru, balikin tipe yang dipilih
//dari checkout, balikin isi nomor nota (hanya jika nota ditemukan) //dari checkout, balikin isi nomor nota (hanya jika nota ditemukan)
@@ -92,19 +92,12 @@ public class DialogTambahNotaController extends Dialog<String> implements Initia
@FXML @FXML
void rbNotaBaruOnAction(ActionEvent event) { void rbNotaBaruOnAction(ActionEvent event) {
cbxPilihNota.setDisable(false); cbxPilihNota.setDisable(false);
txtFieldAmbilDariCheckout.setDisable(true);
// Button buttonBaru FormConstanta= generateButtonNota("10-0220-0000X",
// FormConstanta.TRANSAKSI_TUNAI,
// Fucout.TIPE_NOTA_TUNAI);
// navigasi.add(buttonBaru);
// vbNavigasi.getChildren().add(buttonBaru);
// jumlahNota++;
tfAmbilDariCheckout.setDisable(true);
} }
@FXML @FXML
void rbAmbilDariCheckoutOnAction(ActionEvent event) { void rbAmbilDariCheckoutOnAction(ActionEvent event) {
cbxPilihNota.setDisable(true); cbxPilihNota.setDisable(true);
txtFieldAmbilDariCheckout.setDisable(false);
tfAmbilDariCheckout.setDisable(false);
} }
} }

+ 1
- 1
src/main/resources/fxml/DialogTambahNota.fxml View File

@@ -21,6 +21,6 @@
</toggleGroup></RadioButton> </toggleGroup></RadioButton>
<RadioButton fx:id="rbAmbilDariCheckout" layoutX="4.0" layoutY="90.0" mnemonicParsing="false" onAction="#rbAmbilDariCheckoutOnAction" text="Ambil dari checkout" toggleGroup="$tgTipe" AnchorPane.leftAnchor="4.0" AnchorPane.rightAnchor="4.0" AnchorPane.topAnchor="90.0" /> <RadioButton fx:id="rbAmbilDariCheckout" layoutX="4.0" layoutY="90.0" mnemonicParsing="false" onAction="#rbAmbilDariCheckoutOnAction" text="Ambil dari checkout" toggleGroup="$tgTipe" AnchorPane.leftAnchor="4.0" AnchorPane.rightAnchor="4.0" AnchorPane.topAnchor="90.0" />
<ComboBox fx:id="cbxPilihNota" layoutX="4.0" layoutY="52.0" prefWidth="150.0" promptText="Pilih nota" AnchorPane.leftAnchor="4.0" AnchorPane.topAnchor="52.0" /> <ComboBox fx:id="cbxPilihNota" layoutX="4.0" layoutY="52.0" prefWidth="150.0" promptText="Pilih nota" AnchorPane.leftAnchor="4.0" AnchorPane.topAnchor="52.0" />
<TextField fx:id="txtFieldAmbilDariCheckout" disable="true" layoutX="4.0" layoutY="112.0" AnchorPane.leftAnchor="4.0" AnchorPane.rightAnchor="4.0" AnchorPane.topAnchor="112.0" />
<TextField fx:id="tfAmbilDariCheckout" disable="true" layoutX="4.0" layoutY="112.0" AnchorPane.leftAnchor="4.0" AnchorPane.rightAnchor="4.0" AnchorPane.topAnchor="112.0" />
</children> </children>
</AnchorPane> </AnchorPane>

+ 4
- 2
src/main/resources/fxml/FormUtama.fxml View File

@@ -6,6 +6,7 @@
<?import javafx.scene.control.ScrollPane?> <?import javafx.scene.control.ScrollPane?>
<?import javafx.scene.control.Separator?> <?import javafx.scene.control.Separator?>
<?import javafx.scene.control.SplitPane?> <?import javafx.scene.control.SplitPane?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.image.Image?> <?import javafx.scene.image.Image?>
<?import javafx.scene.image.ImageView?> <?import javafx.scene.image.ImageView?>
<?import javafx.scene.layout.AnchorPane?> <?import javafx.scene.layout.AnchorPane?>
@@ -123,12 +124,13 @@
</ImageView> </ImageView>
</children> </children>
</HBox> </HBox>
<Label fx:id="lblMemberNonMember" layoutX="14.0" layoutY="85.0" text="Member / Non Member" AnchorPane.leftAnchor="14.0" AnchorPane.topAnchor="85.0">
<TextField fx:id="tfScanMember" alignment="TOP_CENTER" layoutX="4.0" layoutY="89.0" onKeyPressed="#scanMemberOnPressed" promptText="Scan Member" AnchorPane.leftAnchor="4.0" AnchorPane.rightAnchor="4.0" AnchorPane.topAnchor="89.0" />
<Label fx:id="lblMemberNonMember" layoutX="14.0" layoutY="128.0" text="Member / Non Member" AnchorPane.leftAnchor="14.0" AnchorPane.topAnchor="128.0">
<font> <font>
<Font name="System Bold" size="12.0" /> <Font name="System Bold" size="12.0" />
</font> </font>
</Label> </Label>
<GridPane layoutX="14.0" layoutY="102.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="102.0">
<GridPane layoutX="14.0" layoutY="145.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="145.0">
<columnConstraints> <columnConstraints>
<ColumnConstraints prefWidth="60.0" /> <ColumnConstraints prefWidth="60.0" />
<ColumnConstraints hgrow="ALWAYS" maxWidth="1.7976931348623157E308" /> <ColumnConstraints hgrow="ALWAYS" maxWidth="1.7976931348623157E308" />


Loading…
Cancel
Save