• Tidak ada hasil yang ditemukan

NOTE: Do not place your application dependencies here; they belong in the individual module build.gradle files

N/A
N/A
Protected

Academic year: 2019

Membagikan "NOTE: Do not place your application dependencies here; they belong in the individual module build.gradle files"

Copied!
73
0
0

Teks penuh

(1)

APPENDIX

Application Store Admin

build.gradle

// Top-level build file where you can add configuration options

common to all sub-projects/modules.

buildscript {

repositories {

jcenter()

}

dependencies {

classpath 'com.android.tools.build:gradle:2.3.0'

classpath 'com.google.gms:google-services:3.0.0'

// NOTE: Do not place your application dependencies here; they belong

// in the individual module build.gradle files

}

}

allprojects {

repositories {

jcenter()

}

}

task clean(type: Delete) {

delete rootProject.buildDir

}

app/build.gradle

apply plugin: 'com.android.application'

android {

compileSdkVersion 25

buildToolsVersion "25.0.3"

defaultConfig {

applicationId "com.example.root.projectku"

minSdkVersion 17

targetSdkVersion 25

versionCode 1

versionName "1.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

dependencies {

(2)

compile fileTree(dir: 'libs', include: ['*.jar'])

androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {

exclude group: 'com.android.support', module: 'support-annotations'

})

compile files('libs/android-async-http-1.4.6.jar')

compile files('libs/http-core-4.1.jar')

compile files('libs/httpclient-4.0.3.jar')

compile 'com.android.support:appcompat-v7:25.3.0'

compile 'com.android.support.constraint:constraint-layout:1.0.2'

compile 'com.google.firebase:firebase-auth:9.4.0'

compile 'com.google.firebase:firebase-database:9.4.0'

compile 'com.google.android.gms:play-services-maps:9.4.0'

compile 'com.android.support:design:25.3.0'

compile 'com.google.firebase:firebase-storage:9.4.0'

compile 'com.github.bumptech.glide:glide:3.7.0'

testCompile 'junit:junit:4.12'

}

apply plugin: 'com.google.gms.google-services'

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>

<manifest

xmlns:android="http://schemas.android.com/apk/res/android"

package="com.example.root.projectku">

The ACCESS_COARSE/FINE_LOCATION permissions are not

required to use

Google Maps Android API v2, but you must specify either

coarse or fine

location permissions for the 'MyLocation' functionality.

-->

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission

android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission

android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-permission

android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-permission

android:name="com.google.android.providers.gsf.permission.READ_GSE

RVICES" />

<uses-permission

android:name="android.permission.ACCESS_COARSE_LOCATION" />

<uses-permission

android:name="android.permission.WRITE_SETTINGS" />

<uses-permission android:name="android.permission.SEND_SMS" />

<application

android:allowBackup="true"

android:icon="@mipmap/ic_launcher"

(3)

android:label="@string/app_name"

android:roundIcon="@mipmap/ic_launcher_round"

android:supportsRtl="true"

android:theme="@style/AppTheme">

<activity android:name=".MainActivity"></activity>

<activity

android:name=".LoginActivity"

android:label="Login" />

<activity

android:name=".LokasiTokoActivity"

android:label="@string/title_activity_toko" />

<meta-data

android:name="com.google.android.geo.API_KEY"

android:value="@string/google_maps_key" />

<activity android:name=".ListOrderActivity" />

<activity android:name=".HomeActivity"

android:noHistory="true"/>

<activity android:name=".LauncherActivity"

android:noHistory="true">

<intent-filter>

<action

android:name="android.intent.action.MAIN" />

<category

android:name="android.intent.category.LAUNCHER" />

</intent-filter>

</activity>

<activity android:name=".HistoryOrderActivity"></activity>

</application>

</manifest>

LoginActivity.java

package com.example.root.client;

import android.app.ProgressDialog;

import android.content.Intent;

import android.os.Bundle;

import android.support.annotation.NonNull;

import android.support.v7.app.AppCompatActivity;

import android.text.TextUtils;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.TextView;

import android.widget.Toast;

import com.google.android.gms.tasks.OnCompleteListener;

import com.google.android.gms.tasks.Task;

import com.google.firebase.auth.AuthResult;

import com.google.firebase.auth.FirebaseAuth;

import com.google.firebase.auth.FirebaseUser;

(4)

public class LoginActivity extends AppCompatActivity implements

View.OnClickListener {

private Button btSignin;

private EditText etEmail;

private EditText etPasword;

private FirebaseAuth firebaseAuth;

private ProgressDialog progressDialog;

private FirebaseUser firebaseUser;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_login);

firebaseAuth = FirebaseAuth.getInstance();

if(firebaseAuth.getCurrentUser() != null){

finish();

startActivity(new Intent(getApplicationContext(), MenuActivity.class));

}

etEmail

= (EditText) findViewById(R.id.etEmail);

etPassword

= (EditText) findViewById(R.id.etPassword);

btSignin

= (Button) findViewById(R.id.btSignin);

progressDialog = new ProgressDialog(this);

btSignin.setOnClickListener(this);

}

private void userLogin(){

final String email = etEmail.getText().toString().trim();

String password = etPassword.getText().toString().trim();

if (TextUtils.isEmpty(email)) {

Toast.makeText(this, "enter email please", Toast.LENGTH_LONG).show();

return;

}

if (TextUtils.isEmpty(password)) {

Toast.makeText(this, "enter password please", Toast.LENGTH_LONG).show();

return;

}

progressDialog.setMessage("wait..");

progressDialog.show();

firebaseAuth.signInWithEmailAndPassword(email, password)

.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {

@Override

public void onComplete(@NonNull Task<AuthResult> task) {

progressDialog.dismiss();

if (task.isSuccessful()) {

finish();

startActivity(new Intent(getApplicationContext(), MenuActivity.class));

}

}
(5)

});

}

@Override

public void onClick(View view) {

if(view == buttonSignIn){

userLogin();

}

}

}

activity_login.xml

<?

xml version="1.0" encoding="utf-8"

?>

<android.support.constraint.ConstraintLayout

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context="com.example.root.projectku.LoginActivity">

<LinearLayout

android:layout_centerVertical="true"

android:layout_width="368dp"

android:layout_height="wrap_content"

android:orientation="vertical"

tools:layout_editor_absoluteY="0dp"

tools:layout_editor_absoluteX="8dp">

<TextView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textAppearance="?android:attr/textAppearanceLarge"

android:text="User Login"

android:id="@+id/textView"

android:layout_gravity="center_horizontal" />

<EditText

android:id="@+id/etEmail"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_margin="15dp"

android:hint="Enter email"

android:inputType="textEmailAddress" />

<EditText

android:id="@+id/etPassword"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_margin="15dp"

android:hint="Enter password"

android:inputType="textPassword" />

<Button

android:id="@+id/btSignin"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_margin="15dp"

android:text="Login" />
(6)

</LinearLayout>

</android.support.constraint.ConstraintLayout>

LauncherActivity.java

package com.example.root.projectku;

import android.content.Intent;

import android.os.Bundle;

import android.os.Handler;

import android.support.v7.app.AppCompatActivity;

import com.google.firebase.auth.FirebaseAuth;

import com.google.firebase.database.DatabaseReference;

public class LauncherActivity extends AppCompatActivity {

private FirebaseAuth firebaseAuth;

private static final int SPLASH_TIME = 2 * 1000;

private DatabaseReference firebaseTable,firebaseSubTable;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_launcher);

try {

new Handler().postDelayed(new Runnable() {

public void run() {

firebaseAuth = FirebaseAuth.getInstance();

if(firebaseAuth.getCurrentUser() != null){

Intent intent = new Intent(LauncherActivity.this, HomeActivity.class);

startActivity(intent);

LauncherActivity.this.finish();

}

else

{

Intent intent = new Intent(LauncherActivity.this, MainActivity.class);

startActivity(intent);

LauncherActivity.this.finish();

}

}

}, SPLASH_TIME);

} catch(Exception e){}

}

@Override

public void onBackPressed() {

this.finish();

super.onBackPressed();

}

}

activity_launcher.xml

<?

xml version="1.0" encoding="utf-8"

?>

<android.support.constraint.ConstraintLayout

xmlns:android="http://schemas.android.com/apk/res/android"

(7)

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context="com.example.root.projectku.LauncherActivity">

<TextView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Welcome..."/>

</android.support.constraint.ConstraintLayout>

HomeActivity.java

package com.example.root.projectku;

import android.content.Intent;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.widget.Button;

import com.google.firebase.auth.FirebaseAuth;

import com.google.firebase.database.DataSnapshot;

import com.google.firebase.database.DatabaseError;

import com.google.firebase.database.DatabaseReference;

import com.google.firebase.database.FirebaseDatabase;

import com.google.firebase.database.ValueEventListener;

public class HomeActivity extends AppCompatActivity {

Button btList;

Button btBarang;

Button btHistory;

Button btLogout;

private FirebaseAuth firebaseAuth;

private DatabaseReference firebaseTable,firebaseSubTable;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_home);

firebaseAuth = FirebaseAuth.getInstance();

btBarang = (Button) findViewById(R.id.btBarang);

btList = (Button) findViewById(R.id.btList);

btHistory = (Button) findViewById(R.id.btHistory);

btLogout = (Button) findViewById(R.id.btLogout);

btBarang.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

finish();

startActivity(new Intent(getApplicationContext(), LokasiTokoActivity.class));

}

});

btList.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

firebaseTable = FirebaseDatabase.getInstance().getReference().child("BarangToko");

(8)

firebaseTable.addValueEventListener(new ValueEventListener() {

@Override

public void onDataChange(DataSnapshot snapshot) {

for(DataSnapshot singleSnapshot : snapshot.getChildren()) {

if(singleSnapshot.child("Admin").getValue( ).toString()

.equals(firebaseAuth.getCurrentUs er().getEmail().replace('.',','))) {

ListOrderActivity.KEY_NAMA_TOKO=singl eSnapshot.getKey().toString();

finish();

startActivity(new Intent(getApplicationContext(), ListOrderActivity.class));

}

}

}

@Override

public void onCancelled(DatabaseError databaseError) {

}

});

}

});

btHistory.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

firebaseTable = FirebaseDatabase.getInstance().getReference().child("BarangToko");

firebaseTable.addValueEventListener(new ValueEventListener() {//Membaca dan mendengarkan perubahan untuk seluruh konten jalur.

@Override

public void onDataChange(DataSnapshot snapshot) {

for(DataSnapshot singleSnapshot : snapshot.getChildren()) {

if(singleSnapshot.child("Admin").getValue( ).toString().equals(firebaseAuth.getCurrentUser().getEmail().replace('.', ','))) {

HistoryOrderActivity.KEY_NAMA_TOKO=si ngleSnapshot.getKey().toString();

finish();

startActivity(new Intent(getApplicationContext(), HistoryOrderActivity.class));

}

}

}

@Override

public void onCancelled(DatabaseError databaseError) {

}

});

}

});
(9)

btLogout.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

firebaseAuth.signOut();

finish();

startActivity(new Intent(getApplicationContext(), LoginActivity.class));

}

});

}

}

activity_home.xml

<?

xml version="1.0" encoding="utf-8"

?>

<RelativeLayout

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context="com.example.root.projectku.HomeActivity">

<Button

android:id="@+id/btList"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="List Order"

android:layout_marginTop="24dp"

android:layout_below="@+id/btBarang"

android:layout_centerHorizontal="true" />

<Button

android:id="@+id/btBarang"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="Update Barang"

android:layout_marginTop="21dp"

android:layout_alignParentTop="true"

android:layout_alignStart="@+id/btHistory" />

<Button

android:id="@+id/btHistory"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="Delivery Order"

android:layout_below="@+id/btList"

android:layout_marginTop="21dp"

android:layout_centerHorizontal="true" />

<Button

android:id="@+id/btLogout"

android:layout_width="wrap_content"

android:layout_height="wrap_content"
(10)

android:layout_weight="1"

android:text="Logout"

android:layout_marginTop="21dp"

android:layout_below="@+id/btHistory"

android:layout_centerHorizontal="true" />

</RelativeLayout>

LokasiTokoActivity.java

package com.example.root.projectku;

import android.content.Intent;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.widget.Button;

import android.widget.Toast;

import com.google.firebase.auth.FirebaseAuth;

import com.google.firebase.database.DatabaseReference;

import com.google.firebase.database.FirebaseDatabase;

import java.util.HashMap;

import java.util.Map;

public class LokasiTokoActivity extends AppCompatActivity {

private FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();

private DatabaseReference firebaseDatabase=FirebaseDatabase.getInstance().getReference().getRoot(), firebaseTable, firebaseSubTable, firebaseSubSubTable, firebaseRecord;

String temp_key_id_toko,temp_key_toko,temp_key_barang;

Map<String, Object> map_toko,map_barang;

Button btnMenu;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_lokasi_toko);

btnMenu = (Button) findViewById(R.id.btMenu);

firebaseTable = firebaseDatabase.child("BarangToko");

firebaseSubTable=firebaseTable.child("Alfamart Krakatau");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","1@gmail,com");

map_toko.put("Latitude", "-6.987331");

map_toko.put("Longitude", "110.437260");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Aqua Botol 600ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "4500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Krakatau");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Bango Kecap Manis 600ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "26000");
(11)

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Krakatau");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Indomilk Susu Kental Manis 370gr");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "9500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Krakatau");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Aqua Botol 600ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "4500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Krakatau");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Filma Minyak Goreng 2L");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "2500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Labuhan Raya");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","2@gmail,com");

map_toko.put("Latitude", "-6.988187");

map_toko.put("Longitude", "110.436879");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Tango Wafer 300gr");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "21000");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Labuhan Raya");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Sariwangi Teh Celup Asli 25sachet");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "6900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Labuhan Raya");

firebaseSubSubTable=firebaseSubTable.child("Barang");
(12)

firebaseRecord=firebaseSubSubTable.child("Rejoice Shampoo Rich 320ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "30500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Labuhan Raya");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Sariwangi Teh Celup Asli 25sachet");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "6900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Labuhan Raya");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Nice Facial Tissue Non Perfumed 2Ply 700gr");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "18900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamidi Sidodadi");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","3@gmail,com");

map_toko.put("Latitude", "-6.989611");

map_toko.put("Longitude", "110.434986");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Detol Body Wash Anti Bakteri 450ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "30900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamidi Sidodadi");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Nature E Handbody Lotion 245ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "23900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamidi Sidodadi");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Formula Pasta Gigi Strong Protector 2x100gr");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "17900");
(13)

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamidi Sidodadi");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Rinso Anti Noda Deterjen 1kg");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "27800");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Point Unika");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","4@gmail,com");

map_toko.put("Latitude", "-7.025296");

map_toko.put("Longitude", "110.404211");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Indomie Mie Goreng");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "2000");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Point Unika");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Lifeboy Shampoo Anti Dandruff 170ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "15900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Point Unika");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Close Up Pasta Gigi Menthol");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "15000");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Point Unika");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("So Klin Softergent Powder 800gr");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "14300");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Unika");

map_toko = new HashMap<String, Object>();
(14)

map_toko.put("Admin","5@gmail,com");

map_toko.put("Latitude", "-7.024602");

map_toko.put("Longitude", "110.403863");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Mie Sedap Kari Spesial");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "3500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Unika");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Pantene Shampo Anti Dandruff 170ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "20800");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Unika");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("KRAFT Oreo Selection Biscuit 352gr");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "40900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Unika");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Garnier Men Acno Fight Wasabi 100ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","28900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret dan ATM BCA Tinjomoyo");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","6@gmail,com");

map_toko.put("Latitude", "-7.029462");

map_toko.put("Longitude", "110.408694");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Listerine Mouthwash Antiseptic 250ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "19500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);
(15)

firebaseSubTable=firebaseTable.child("Indomaret dan ATM BCA Tinjomoyo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Nivea Deo Roll On Extra Whitening");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","16400");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret dan ATM BCA Tinjomoyo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Minute Maid Juice Pulpy 350ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","5500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret dan ATM BCA Tinjomoyo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Indomaret Beras Ramos Super 5kg");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","59900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Kadirojo");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","7@gmail,com");

map_toko.put("Latitude", "-7.767377");

map_toko.put("Longitude", "110.448636");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Minyak Goreng Sania Refil 2L");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "23000");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Kadirojo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Sunligh Pencuci Piring 800ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","14500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Kadirojo");
(16)

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Vixal Botol Blue 800ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","14500");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Kadirojo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("HIT Insektisida Spray Orange 600ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","25900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Kadirojo");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","8@gmail,com");

map_toko.put("Latitude", "-7.764747");

map_toko.put("Longitude", "110.448845");

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Minyak Goreng Filma Refil 2L");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "23000");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Kadirojo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Pantene Shampo Anti Dandruff 170ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "20800");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Alfamart Kadirojo");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Alfamart Beras Ramos Super 5kg");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","59900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Maluku");

map_toko = new HashMap<String, Object>();

map_toko.put("Admin","9@gmail,com");

map_toko.put("Latitude", "-6.991882");

map_toko.put("Longitude", "110.436643");
(17)

firebaseSubTable.updateChildren(map_toko);

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Force Magic Lemon 600ml");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "23000");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Maluku");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Marjan Boudoin 500ml All Varian");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga", "18900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

firebaseSubTable=firebaseTable.child("Indomaret Maluku");

firebaseSubSubTable=firebaseSubTable.child("Barang");

firebaseRecord=firebaseSubSubTable.child("Selamat Wafer Kaleng 200g");

map_barang = new HashMap<String, Object>();

map_barang.put("Harga","15900");

map_barang.put("Stok", "1000");

map_barang.put("StokMutasi", "0");

firebaseRecord.updateChildren(map_barang);

Toast.makeText(getApplicationContext(), "BarangToko Sukses ditambahkan", Toast.LENGTH_LONG).show();

btnMenu.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

finish();

startActivity(new Intent(getApplicationContext(), HomeActivity.class));

}

});

}

}

activity_lokasi_toko.xml

<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context="com.example.root.projectku.LokasiTokoActivity">

<RelativeLayout

android:layout_width="wrap_content"

android:layout_height="wrap_content"

tools:layout_editor_absoluteY="4dp"

tools:layout_editor_absoluteX="113dp">

(18)

<Button

android:id="@+id/btMenu"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_centerHorizontal="true"

android:text="Back to Menu"

tools:layout_editor_absoluteX="130dp"

tools:layout_editor_absoluteY="0dp" />

</RelativeLayout>

</android.support.constraint.ConstraintLayout>

ListOrderActivity.java

package com.example.root.projectku;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.content.Intent;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.widget.AdapterView;

import android.widget.Button;

import android.widget.ListView;

import android.widget.TextView;

import android.widget.Toast;

import com.google.firebase.auth.FirebaseAuth;

import com.google.firebase.database.ChildEventListener;

import com.google.firebase.database.DataSnapshot;

import com.google.firebase.database.DatabaseError;

import com.google.firebase.database.DatabaseReference;

import com.google.firebase.database.FirebaseDatabase;

import com.google.firebase.database.Query;

import com.google.firebase.database.ValueEventListener;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

public class ListOrderActivity extends AppCompatActivity {

public static String KEY_NAMA_TOKO="1";

public static String KEY_ID_ORDER="2";

public static String KEY_STATUS="3";

public static String KEY_TANGGAL="4";

public static String KEY_TOTAL="5";

public static String KEY_USERNAME="6";

public static String KEY_ORDER_DETAIL="7";

private FirebaseAuth firebaseAuth = FirebaseAuth.getInstance(); private DatabaseReference firebaseDatabase= FirebaseDatabase.getInstance().getReference().getRoot(),firebaseTable, firebaseSubTable, firebaseSubSubTable, firebaseRecord, firebaseRecordDetail;

String tabel = "Order";

String NamaBarang = "", Qty = "", Stok="0";

int StokInt;

Button btnMenu;

ListView listP, mListData;
(19)

ListOrderAdapter adapter;

ArrayList<HashMap<String, String>> listRow = new ArrayList<HashMap<String, String>>();

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_list_order);

listP = (ListView) findViewById(R.id.listorder);

btnMenu = (Button) findViewById(R.id.btMenu);

firebaseTable = firebaseDatabase.child(tabel);

firebaseSubTable = firebaseTable.child(KEY_NAMA_TOKO);

Query query = firebaseSubTable.orderByKey();

query.addListenerForSingleValueEvent(new ValueEventListener() {

@Override

public void onDataChange(DataSnapshot dataSnapshot) {

String namaToko = "";

String idOrder = "";

String status = "";

String tanggal = "";

String total = "";

String userName = "";

for (DataSnapshot singleSnapshot : dataSnapshot.getChildren()) {

HashMap<String, String> map = new HashMap<String, String>();

idOrder = singleSnapshot.getKey().toString();

status = singleSnapshot.child("Status").getValue().toString();

tanggal = singleSnapshot.child("Tanggal").getValue().toString();

total = singleSnapshot.child("Total").getValue().toString();

userName = singleSnapshot.child("Username").getValue().toString().replace(",",".");

String orderDetail = "";

for (DataSnapshot singleSnapshot2 : singleSnapshot.child("OrderDetail").getChildren()) {

orderDetail = orderDetail + singleSnapshot2.child("NamaBarang").getValue().toString()

+"-"+singleSnapshot2.child("Harga").getValue().toString() +"-"+singleSnapshot2.child("Qty").getValue().toString()+"\r\n";

}

if(status.equals("Pending")) {

map.put(KEY_ID_ORDER, idOrder);

map.put(KEY_STATUS, status);

map.put(KEY_TANGGAL, tanggal);

map.put(KEY_TOTAL, total);

map.put(KEY_USERNAME, userName);

map.put(KEY_ORDER_DETAIL, orderDetail);

listRow.add(map);

}

}

adapter = new ListOrderAdapter(ListOrderActivity.this, listRow);

listP.setAdapter(adapter);
(20)

}

@Override

public void onCancelled(DatabaseError databaseError) {

}

});

listP.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

@Override

public boolean onItemLongClick(AdapterView<?> parent, final View view, final int position, long id) {

new AlertDialog.Builder(ListOrderActivity.this)

.setTitle(getResources().getString(R.string.st

atus))

.setMessage(getResources().getString(R.string.

status_message))

.setPositiveButton(getResources().getString(R. string.send), new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

TextView idOrderNya = (TextView) view.findViewById(R.id.tvIdOrder);

firebaseRecord=firebaseSubTable.child (idOrderNya.getText().toString());

firebaseRecord.child("Status").setVal ue("Terkirim");

firebaseRecordDetail= firebaseRecord.child("OrderDetail");

firebaseRecordDetail.addChildEventLis tener(new ChildEventListener() {

@Override

public void onChildAdded(DataSnapshot dataSnapshot, String s) {

Iterator i = dataSnapshot.getChildren().iterator();

while (i.hasNext()) {

i.next();

NamaBarang = (String) ((DataSnapshot) i.next()).getValue();

Qty = (String) ((DataSnapshot) i.next()).getValue();

DatabaseReference

firebaseRecordUpdateQty =

firebaseDatabase.child("BarangToko").child(KEY_NAMA_TOKO).child("Barang") .child(NamaBarang);

firebaseRecordUpdateQty. child("StokMutasi").setValue(Qty);

}

}

@Override

public void onChildChanged(DataSnapshot dataSnapshot, String s) {

}

@Override
(21)

public void onChildRemoved(DataSnapshot dataSnapshot) {

}

@Override

public void onChildMoved(DataSnapshot dataSnapshot, String s) {

}

@Override

public void onCancelled(DatabaseError databaseError) {

}

});

DatabaseReference fbStok = firebaseDatabase.child("BarangToko").child(KEY_NAMA_TOKO).child("Barang") ;

fbStok.addListenerForSingleValueEvent (new ValueEventListener() {

@Override

public void onDataChange(DataSnapshot dataSnapshot) {

DatabaseReference fbStok2 = firebaseDatabase.child("BarangToko").child(KEY_NAMA_TOKO).child("Barang") .child(dataSnapshot.getKey());

for(DataSnapshot singleSnapshot1 : dataSnapshot.getChildren())

{

String stok = singleSnapshot1.child("Stok").getValue().toString();

String stokmutasi= singleSnapshot1.child("StokMutasi").getValue().toString();

int stokbaru=Integer.parseInt(stok)-Integer.parseInt(stokmutasi);

}

}

@Override

public void onCancelled(DatabaseError databaseError) {

}

});

Toast.makeText(getApplicationContext( ), "Data "+idOrderNya.getText().toString()+" Sukses disimpan", Toast.LENGTH_LONG).show();

finish();

startActivity(new Intent(getApplicationContext(), HomeActivity.class));

}

})

.setNegativeButton(getResources().getString(R. string.cancel), new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

TextView idOrderNya = (TextView) view.findViewById(R.id.tvIdOrder);
(22)

firebaseRecord=firebaseSubTable.child (idOrderNya.getText().toString());

firebaseRecord.child("Status").setVal ue("Dibatalkan");

Toast.makeText(getApplicationContext( ), "Data "+idOrderNya.getText().toString()+" Sukses dicancel (batalkan)", Toast.LENGTH_LONG).show();

finish();

startActivity(new Intent(getApplicationContext(), HomeActivity.class));

}

})

.show();

return false;

}

});

btnMenu.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

finish();

startActivity(new Intent(getApplicationContext(), HomeActivity.class));

}

});

}

public void onBackPressed() {

this.finish();

super.onBackPressed();

}

}

ListOrderAdapter.java

package com.example.root.projectku;

import android.app.Activity;

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.TextView;

import java.util.ArrayList;

import java.util.HashMap;

public class ListOrderAdapter extends BaseAdapter {

private Activity activity;

private ArrayList<HashMap<String, String>> data;

private static LayoutInflater inflater = null;

public ListOrderAdapter(Activity a, ArrayList<HashMap<String, String>> d) {

activity = a;

data = d;

inflater = (LayoutInflater) activity

.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

}
(23)

public int getCount() {

return data.size();

}

public Object getItem(int position) {

return position;

}

public long getItemId(int position) {

return position;

}

public View getView(int position, View convertView, ViewGroup parent) {

View vi = convertView;

if (convertView == null)

vi = inflater.inflate(R.layout.list_order, null);

TextView tvIdOrder= (TextView) vi.findViewById(R.id.tvIdOrder);

TextView tvStatus= (TextView) vi.findViewById(R.id.tvStatus);

TextView tvTanggal= (TextView) vi.findViewById(R.id.tvTanggal);

TextView tvTotal= (TextView) vi.findViewById(R.id.tvTotal); TextView tvUsername= (TextView) vi.findViewById(R.id.tvUsername);

TextView tvOrderDetail= (TextView) vi.findViewById(R.id.tvOrderDetail);

HashMap<String, String> hasil = new HashMap<String, String>();

hasil = data.get(position);

tvIdOrder.setText(hasil.get(ListOrderActivity.KEY_ID_ORDER));

tvStatus.setText(hasil.get(ListOrderActivity.KEY_STATUS));

tvTanggal.setText(hasil.get(ListOrderActivity.KEY_TANGGAL));

tvTotal.setText(hasil.get(ListOrderActivity.KEY_TOTAL));

tvUsername.setText(hasil.get(ListOrderActivity.KEY_USERNAME));

tvOrderDetail.setText(hasil.get(ListOrderActivity.KEY_ORDER_DETA

IL));

return vi;

}

}

activity_list_order.xml

<?

xml version="1.0" encoding="utf-8"

?>

<android.support.constrain

Referensi

Dokumen terkait

The main objectives of this study are the (1) measurement and mapping of the spatial distribution of the deformation rates in the study area; (2) analysis of

Sistem penilaian dengan system KPI, selain dapat mengukur kinerja orang per orang, juga bisa dilakukan untuk melakukan pengukuran kinerja secara kelompok, baik itu

Dengan menggunakan Akibat 2.3 ini, dapat dikonstruksi sebuah aljabar graf pada graf- berhingga baris tanpa sources seperti halnya pada graf berarah, dinotasikan dengan

Level 3 ini aktor harus memakan lebih banyak keju dan dihadapkan dengan musuh yang lebih banyak maka dari itu pada level 3 ini pemain harus lebih berhati-hati

informasi manajemen rumah sakit adalah suatu sistem berbasis komputer yang.. menghasilkan sekumpulan informasi yang telah diolah dan saling

Pada tahap pelaksanaan, kegiatan pembelajaran dibagi menjadi tiga bagian yaitu kegiatan awal, kegiatan inti dan kegiatan penutup. Pada kegiatan awal dimulai dengan

Tujuan penelitian ini adalah Menganalisa hubungan depresi dengan kadar [9] gula darah acak pada penderita Diabetes Mellitus tipe 2 di Ruang Dahlia RSUD Jombang.. Desain penelitian

operationalization of the Secretariat in accordance with the prevailing laws and regulations of the Host Country. The Host Country Ag reement shall not form part