diff --git a/app/build.gradle b/app/build.gradle index 34c8584..d9a4138 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -52,6 +52,8 @@ dependencies { implementation libs.constraintlayout implementation libs.cardview implementation 'androidx.recyclerview:recyclerview:1.3.0' + implementation 'androidx.cardview:cardview:1.0.0' + implementation 'com.sunmi:printerlibrary:1.0.15' // Test dependencies diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index df6f285..5267bf8 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -83,6 +83,10 @@ android:name=".transaction.ResultTransactionActivity" android:exported="false" /> + + diff --git a/app/src/main/java/com/example/bdkipoc/MainActivity.java b/app/src/main/java/com/example/bdkipoc/MainActivity.java index 1803dc3..b23ba1e 100644 --- a/app/src/main/java/com/example/bdkipoc/MainActivity.java +++ b/app/src/main/java/com/example/bdkipoc/MainActivity.java @@ -18,16 +18,18 @@ import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; import com.google.android.material.button.MaterialButton; +import com.example.bdkipoc.R; import com.example.bdkipoc.cetakulang.ReprintActivity; import com.example.bdkipoc.cetakulang.ReprintAdapterActivity; import com.example.bdkipoc.histori.HistoryActivity; -import com.example.bdkipoc.R; import com.example.bdkipoc.transaction.CreateTransactionActivity; import com.example.bdkipoc.transaction.ResultTransactionActivity; +import com.example.bdkipoc.bantuan.BantuanActivity; + public class MainActivity extends AppCompatActivity { private boolean isExpanded = false; // False = showing only 9 main menus, True = showing all 15 menus @@ -182,7 +184,7 @@ public class MainActivity extends AppCompatActivity { startActivity(new Intent(MainActivity.this, HistoryActivity.class)); // Col-4 } else if (cardId == R.id.card_bantuan) { - Toast.makeText(this, "Bantuan - Coming Soon", Toast.LENGTH_SHORT).show(); + startActivity(new Intent(MainActivity.this, BantuanActivity.class)); } else if (cardId == R.id.card_info_toko) { Toast.makeText(this, "Info Toko - Coming Soon", Toast.LENGTH_SHORT).show(); } else if (cardId == R.id.card_pengaturan) { diff --git a/app/src/main/java/com/example/bdkipoc/bantuan/BantuanActivity.java b/app/src/main/java/com/example/bdkipoc/bantuan/BantuanActivity.java new file mode 100644 index 0000000..ad131f9 --- /dev/null +++ b/app/src/main/java/com/example/bdkipoc/bantuan/BantuanActivity.java @@ -0,0 +1,104 @@ +package com.example.bdkipoc.bantuan; + +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.Button; +import android.widget.LinearLayout; +import android.widget.TextView; +import androidx.appcompat.app.AppCompatActivity; +import androidx.core.content.ContextCompat; + +import com.example.bdkipoc.R; + +public class BantuanActivity extends AppCompatActivity { + + private LinearLayout tabUmum, tabRiwayat; + private TextView textUmum, textRiwayat; + private View contentUmum, contentRiwayat; + private Button btnForm, btnWhatsApp; + private LinearLayout backNavigation; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + // Default tampilkan tab Umum + setContentView(R.layout.activity_bantuan_umum); + initViews(); + setupListeners(); + } + + private void initViews() { + tabUmum = findViewById(R.id.tab_umum); + tabRiwayat = findViewById(R.id.tab_riwayat); + textUmum = findViewById(R.id.text_umum); + textRiwayat = findViewById(R.id.text_riwayat); + + btnForm = findViewById(R.id.btn_form); + btnWhatsApp = findViewById(R.id.btn_whatsapp); + + // Back navigation dari component_appbar + backNavigation = findViewById(R.id.back_navigation); + } + + private void setupListeners() { + // Back navigation listener + if (backNavigation != null) { + backNavigation.setOnClickListener(v -> onBackPressed()); + } + + // Tab listeners + tabUmum.setOnClickListener(v -> showUmumTab()); + tabRiwayat.setOnClickListener(v -> showRiwayatTab()); + + // Button listeners + btnForm.setOnClickListener(v -> { + setContentView(R.layout.activity_bantuan_form); + setupFormView(); + }); + + btnWhatsApp.setOnClickListener(v -> { + // Handle WhatsApp CS + }); + } + + private void showUmumTab() { + setContentView(R.layout.activity_bantuan_umum); + initViews(); + setupListeners(); + + // Update tab appearance + tabUmum.setBackgroundResource(android.R.color.holo_red_dark); + textUmum.setTextColor(ContextCompat.getColor(this, android.R.color.white)); + + tabRiwayat.setBackgroundResource(android.R.color.transparent); + textRiwayat.setTextColor(ContextCompat.getColor(this, android.R.color.holo_red_dark)); + } + + private void showRiwayatTab() { + setContentView(R.layout.activity_bantuan_riwayat); + initViews(); + setupListeners(); + + // Update tab appearance + tabRiwayat.setBackgroundResource(android.R.color.holo_red_dark); + textRiwayat.setTextColor(ContextCompat.getColor(this, android.R.color.white)); + + tabUmum.setBackgroundResource(android.R.color.transparent); + textUmum.setTextColor(ContextCompat.getColor(this, android.R.color.holo_red_dark)); + } + + private void setupFormView() { + Button btnKirim = findViewById(R.id.btn_kirim); + LinearLayout btnBack = findViewById(R.id.back_navigation); + + if (btnBack != null) { + btnBack.setOnClickListener(v -> showUmumTab()); + } + + btnKirim.setOnClickListener(v -> { + // Handle form submission + }); + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_bantuan_form.xml b/app/src/main/res/layout/activity_bantuan_form.xml new file mode 100644 index 0000000..3ed78ec --- /dev/null +++ b/app/src/main/res/layout/activity_bantuan_form.xml @@ -0,0 +1,176 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +