Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
M
meser
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Muhammad Suryono
meser
Commits
40f6717e
Commit
40f6717e
authored
Sep 04, 2020
by
Muhammad Suryono
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
65083371
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
469 additions
and
89 deletions
+469
-89
Project.xml
.idea/codeStyles/Project.xml
+0
-24
BottomSheets.java
app/src/main/java/com/yono/messeripos/BottomSheets.java
+23
-40
MethodePayment.java
app/src/main/java/com/yono/messeripos/MethodePayment.java
+87
-1
PaymentActivity.java
app/src/main/java/com/yono/messeripos/PaymentActivity.java
+10
-3
TransactionDetail.java
app/src/main/java/com/yono/messeripos/TransactionDetail.java
+136
-1
activity_payment.xml
app/src/main/res/layout/activity_payment.xml
+13
-14
detail_transaction.xml
app/src/main/res/layout/detail_transaction.xml
+196
-0
item_checkout.xml
app/src/main/res/layout/item_checkout.xml
+4
-6
No files found.
.idea/codeStyles/Project.xml
View file @
40f6717e
<component
name=
"ProjectCodeStyleConfiguration"
>
<code_scheme
name=
"Project"
version=
"173"
>
<DBN-PSQL>
<case-options
enabled=
"true"
>
<option
name=
"KEYWORD_CASE"
value=
"lower"
/>
<option
name=
"FUNCTION_CASE"
value=
"lower"
/>
<option
name=
"PARAMETER_CASE"
value=
"lower"
/>
<option
name=
"DATATYPE_CASE"
value=
"lower"
/>
<option
name=
"OBJECT_CASE"
value=
"preserve"
/>
</case-options>
<formatting-settings
enabled=
"false"
/>
</DBN-PSQL>
<DBN-SQL>
<case-options
enabled=
"true"
>
<option
name=
"KEYWORD_CASE"
value=
"lower"
/>
<option
name=
"FUNCTION_CASE"
value=
"lower"
/>
<option
name=
"PARAMETER_CASE"
value=
"lower"
/>
<option
name=
"DATATYPE_CASE"
value=
"lower"
/>
<option
name=
"OBJECT_CASE"
value=
"preserve"
/>
</case-options>
<formatting-settings
enabled=
"false"
>
<option
name=
"STATEMENT_SPACING"
value=
"one_line"
/>
<option
name=
"CLAUSE_CHOP_DOWN"
value=
"chop_down_if_statement_long"
/>
<option
name=
"ITERATION_ELEMENTS_WRAPPING"
value=
"chop_down_if_not_single"
/>
</formatting-settings>
</DBN-SQL>
<DBN-PSQL>
<case-options
enabled=
"true"
>
<option
name=
"KEYWORD_CASE"
value=
"lower"
/>
...
...
app/src/main/java/com/yono/messeripos/BottomSheets.java
View file @
40f6717e
...
...
@@ -167,51 +167,34 @@ public class BottomSheets extends BottomSheetDialogFragment {
PaymentService
paymentService
=
client
.
Client
(
PaymentService
.
class
);
if
(
statusUpdatePayment
==
0
){
paymentsModels1
.
setOrderId
(
sharedPreferences
.
getString
(
ORDER_ID
,
""
));
paymentService
.
postFromCart
(
paymentsModels1
).
enqueue
(
new
Callback
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>()
{
@Override
public
void
onResponse
(
Call
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>
call
,
Response
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>
response
)
{
Log
.
i
(
"CASH_0"
,
"onResponse: "
+
utils
.
convertGson
(
response
.
body
()));
if
(
response
.
body
()
!=
null
){
SharedPreferences
.
Editor
editor
=
PaymentActivity
.
sharedPreferences
.
edit
();
editor
.
putBoolean
(
CHECKOUT
,
false
);
editor
.
putString
(
ORDER_ID
,
""
);
if
(
editor
.
commit
()){
Intent
i
=
new
Intent
(
getActivity
(),
MainActivity
.
class
);
view
.
getContext
().
startActivity
(
i
);
}
}
}
@Override
public
void
onFailure
(
Call
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>
call
,
Throwable
t
)
{
}
});
view
.
getContext
().
startActivity
(
new
Intent
(
getActivity
(),
TransactionDetail
.
class
)
.
putExtra
(
MethodePayment
.
VIA_CASH
,
paymentsModels1
));
// paymentsModels1.setOrderId(sharedPreferences.getString(ORDER_ID, ""));
// paymentService.postFromCart(paymentsModels1).enqueue(new Callback<DataResponse<PaymentsModels<List<VaNumberModels>>>>() {
// @Override
// public void onResponse(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Response<DataResponse<PaymentsModels<List<VaNumberModels>>>> response) {
// Log.i("CASH_0", "onResponse: "+utils.convertGson(response.body()));
// if (response.body() != null){
// SharedPreferences.Editor editor = PaymentActivity.sharedPreferences.edit();
// editor.putBoolean(CHECKOUT, false);
// editor.putString(ORDER_ID, "");
// if (editor.commit()){
// Intent i = new Intent(getActivity(), MainActivity.class);
// view.getContext().startActivity(i);
// }
// }
// }
//
// @Override
// public void onFailure(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Throwable t) {
//
// }
// });
}
else
{
paymentsModels
.
setTransactionStatus
(
"success"
);
paymentsModels
.
setPaymentType
(
"cash"
);
paymentService
.
postFromCartPending
(
paymentsModels
.
getOrderId
(),
paymentsModels
).
enqueue
(
new
Callback
<
DataResponse
>()
{
@Override
public
void
onResponse
(
Call
<
DataResponse
>
call
,
Response
<
DataResponse
>
response
)
{
Log
.
i
(
"CASH_1"
,
"onResponse: "
+
utils
.
convertGson
(
paymentsModels
));
if
(
response
.
body
()
!=
null
){
SharedPreferences
.
Editor
editor
=
PaymentActivity
.
sharedPreferences
.
edit
();
editor
.
putBoolean
(
CHECKOUT
,
false
);
editor
.
putString
(
ORDER_ID
,
""
);
if
(
editor
.
commit
()){
Intent
i
=
new
Intent
(
getActivity
(),
MainActivity
.
class
);
view
.
getContext
().
startActivity
(
i
);
}
}
}
@Override
public
void
onFailure
(
Call
<
DataResponse
>
call
,
Throwable
t
)
{
}
});
}
...
...
app/src/main/java/com/yono/messeripos/MethodePayment.java
View file @
40f6717e
...
...
@@ -7,15 +7,27 @@ import android.nfc.NfcAdapter;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.os.PersistableBundle
;
import
android.util.Log
;
import
android.view.Window
;
import
android.view.WindowManager
;
import
androidx.annotation.Nullable
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.ViewModelProvider
;
import
com.google.android.material.appbar.MaterialToolbar
;
import
com.google.android.material.card.MaterialCardView
;
import
com.google.gson.Gson
;
import
com.yono.messeripos.models.MainViewModels
;
import
com.yono.messeripos.models.MainViewModelsCart
;
import
com.yono.messeripos.models.PaymentsModels
;
import
com.yono.messeripos.models.ProductCartModels
;
import
com.yono.messeripos.utils.Utils
;
import
java.util.List
;
import
static
com
.
yono
.
messeripos
.
MainActivity
.
ORDER_ID
;
public
class
MethodePayment
extends
AppCompatActivity
{
...
...
@@ -24,6 +36,12 @@ public class MethodePayment extends AppCompatActivity {
MaterialCardView
mcCash
,
mcBank
,
mcNfc
;
BottomSheets
bottomSheet
;
NfcAdapter
nfcAdapter
;
MainViewModelsCart
mainViewModels
;
private
long
total
=
0
;
Utils
utils
=
new
Utils
();
public
static
String
METHODE_PAYMENT_DATA
=
"payment_methode_data"
;
public
static
String
VIA_CASH
=
"via_cash"
;
public
static
String
VIA_NFC
=
"via_nfc"
;
@Override
public
void
onCreate
(
Bundle
savedInstanceState
)
{
...
...
@@ -44,6 +62,7 @@ public class MethodePayment extends AppCompatActivity {
sharedPreferences
=
getSharedPreferences
(
MainActivity
.
MY_SHARED_PREFERENCES
,
Context
.
MODE_PRIVATE
);
paymentsModelsIntent
=
getIntent
().
getParcelableExtra
(
CartActivity
.
CODE_SEND_CHECKOUT_HISTORY
);
paymentsModels
=
new
PaymentsModels
();
mainViewModels
=
new
ViewModelProvider
(
MethodePayment
.
this
).
get
(
MainViewModelsCart
.
class
);
MaterialToolbar
toolbars
=
findViewById
(
R
.
id
.
appBarPaymentMethode
);
...
...
@@ -61,6 +80,70 @@ public class MethodePayment extends AppCompatActivity {
mcBank
.
setOnClickListener
(
view
->
bank
());
mcNfc
.
setOnClickListener
(
view
->
nfc
());
getdataCheckout
();
Log
.
i
(
"paymentModels"
,
"onCreate: "
+
utils
.
convertGson
(
paymentsModels
));
Log
.
i
(
"paymentModelsIntent"
,
"onCreate: "
+
utils
.
convertGson
(
paymentsModelsIntent
));
}
private
void
getdataCheckout
()
{
if
(
paymentsModelsIntent
==
null
){
mainViewModels
.
getCartById
(
sharedPreferences
.
getString
(
ORDER_ID
,
""
)).
observe
(
this
,
new
Observer
<
List
<
ProductCartModels
>>()
{
@Override
public
void
onChanged
(
List
<
ProductCartModels
>
productCartModels
)
{
String
js
=
new
Gson
().
toJson
(
productCartModels
);
Log
.
i
(
"On payment"
,
"onChanged: "
+
js
);
for
(
ProductCartModels
pd
:
productCartModels
){
total
=
total
+
pd
.
getPrice_orders
()*
pd
.
getQuantity_orders
();
}
paymentsModels
.
setOrderId
(
productCartModels
.
get
(
0
).
getId_orders
());
paymentsModels
.
setGrossAmount
(
total
);
Log
.
i
(
"paymentModels"
,
"onCreate: "
+
utils
.
convertGson
(
paymentsModels
));
// if (productCartModels.size() !=0){
// getSupportActionBar().setTitle(productCartModels.get(0).getId_orders());
// paymentsModels.setOrderId(productCartModels.get(0).getId_orders());
// paymentsModels.setGrossAmount(total);
// checkoutAdapter.setCheckoutAdapter(PaymentActivity.this, productCartModels);
// recyclerView.setLayoutManager(new LinearLayoutManager(PaymentActivity.this, RecyclerView.VERTICAL, false));
// recyclerView.setAdapter(checkoutAdapter);
// recyclerView.addItemDecoration(dividerItemDecoration);
//// grandTotal.setText(utils.convertPrice("Rp. ", total));
// }
}
});
}
else
{
mainViewModels
.
getCartById
(
paymentsModelsIntent
.
getOrderId
()).
observe
(
this
,
new
Observer
<
List
<
ProductCartModels
>>()
{
@Override
public
void
onChanged
(
List
<
ProductCartModels
>
productCartModels
)
{
String
js
=
new
Gson
().
toJson
(
productCartModels
);
Log
.
i
(
"On Intent_CHANGE"
,
"onChanged: "
+
paymentsModelsIntent
.
getOrderId
());
for
(
ProductCartModels
pd
:
productCartModels
){
total
=
total
+
pd
.
getPrice_orders
()*
pd
.
getQuantity_orders
();
}
paymentsModelsIntent
.
setOrderId
(
productCartModels
.
get
(
0
).
getId_orders
());
paymentsModelsIntent
.
setGrossAmount
(
total
);
Log
.
i
(
"paymentModelsIntent"
,
"onCreate: "
+
utils
.
convertGson
(
paymentsModelsIntent
));
// if (productCartModels.size() != 0){
// getSupportActionBar().setTitle(productCartModels.get(0).getId_orders());
// paymentsModelsIntent.setOrderId(productCartModels.get(0).getId_orders());
// paymentsModelsIntent.setGrossAmount(total);
// checkoutAdapter.setCheckoutAdapter(PaymentActivity.this, productCartModels);
// recyclerView.setLayoutManager(new LinearLayoutManager(PaymentActivity.this, RecyclerView.VERTICAL, false));
// recyclerView.setAdapter(checkoutAdapter);
// recyclerView.addItemDecoration(dividerItemDecoration);
//// grandTotal.setText(utils.convertPrice("Rp. ", total));
// }
}
});
}
}
private
void
nfc
()
{
...
...
@@ -68,7 +151,10 @@ public class MethodePayment extends AppCompatActivity {
}
private
void
bank
()
{
startActivity
(
new
Intent
(
MethodePayment
.
this
,
PaymentActivity
.
class
));
if
(
paymentsModelsIntent
==
null
){
startActivity
(
new
Intent
(
MethodePayment
.
this
,
PaymentActivity
.
class
)
.
putExtra
(
METHODE_PAYMENT_DATA
,
paymentsModels
));
}
}
private
void
cash
()
{
...
...
app/src/main/java/com/yono/messeripos/PaymentActivity.java
View file @
40f6717e
...
...
@@ -70,6 +70,7 @@ public class PaymentActivity extends AppCompatActivity {
BottomSheetBehavior
bottomSheetBank
;
RelativeLayout
qrcodeLayoutBank
;
PaymentsModels
paymentsModelsIntent
;
public
static
String
PAYMENT_VIA_BANK
=
"payment_via_bank"
;
@Override
...
...
@@ -86,7 +87,9 @@ public class PaymentActivity extends AppCompatActivity {
recyclerView
=
findViewById
(
R
.
id
.
rvPayment
);
sharedPreferences
=
getSharedPreferences
(
MainActivity
.
MY_SHARED_PREFERENCES
,
Context
.
MODE_PRIVATE
);
paymentsModelsIntent
=
getIntent
().
getParcelableExtra
(
CartActivity
.
CODE_SEND_CHECKOUT_HISTORY
);
paymentsModelsIntent
=
getIntent
().
getParcelableExtra
(
MethodePayment
.
METHODE_PAYMENT_DATA
);
Log
.
i
(
"OKE"
,
"onCreate: "
+
utils
.
convertGson
(
paymentsModelsIntent
));
paymentsModels
=
new
PaymentsModels
();
...
...
@@ -173,11 +176,15 @@ public class PaymentActivity extends AppCompatActivity {
PaymentAdapter
adapter
=
new
PaymentAdapter
(
paymentResponses
,
this
);
rvPayment
.
setAdapter
(
adapter
);
btnPay
=
findViewById
(
R
.
id
.
btnPay
);
//
btnPay = findViewById(R.id.btnPay);
adapter
.
setListener
(
paymentResponse
->
{
methodPay
=
paymentResponse
.
getBank
();
startActivity
(
new
Intent
(
PaymentActivity
.
this
,
TransactionDetail
.
class
));
paymentsModelsIntent
.
setBank
(
methodPay
);
paymentsModelsIntent
.
setPaymentType
(
"bank_transfer"
);
Log
.
i
(
"SENDING"
,
"onCreate: "
+
utils
.
convertGson
(
paymentsModelsIntent
));
startActivity
(
new
Intent
(
PaymentActivity
.
this
,
TransactionDetail
.
class
)
.
putExtra
(
PAYMENT_VIA_BANK
,
paymentsModelsIntent
));
// btnPay.setEnabled(true);
});
...
...
app/src/main/java/com/yono/messeripos/TransactionDetail.java
View file @
40f6717e
package
com
.
yono
.
messeripos
;
import
android.app.AlertDialog
;
import
android.app.ProgressDialog
;
import
android.content.Context
;
import
android.content.SharedPreferences
;
import
android.os.Bundle
;
import
android.os.PersistableBundle
;
import
android.util.Log
;
import
android.widget.TextView
;
import
androidx.annotation.Nullable
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.ViewModelProvider
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
com.google.android.material.appbar.MaterialToolbar
;
import
com.google.android.material.button.MaterialButton
;
import
com.yono.messeripos.adapter.CheckoutAdapter
;
import
com.yono.messeripos.api.client.Client
;
import
com.yono.messeripos.api.service.PaymentService
;
import
com.yono.messeripos.models.MainViewModelsCart
;
import
com.yono.messeripos.models.PaymentsModels
;
import
com.yono.messeripos.models.ProductCartModels
;
import
com.yono.messeripos.models.VaNumberModels
;
import
com.yono.messeripos.response.DataResponse
;
import
com.yono.messeripos.utils.Utils
;
import
java.util.List
;
import
retrofit2.Call
;
import
retrofit2.Callback
;
import
retrofit2.Response
;
import
static
com
.
yono
.
messeripos
.
MainActivity
.
CHECKOUT
;
import
static
com
.
yono
.
messeripos
.
MainActivity
.
ORDER_ID
;
public
class
TransactionDetail
extends
AppCompatActivity
{
PaymentsModels
paymentsModelsBank
,
paymentsModelsCash
,
paymentsModelsNfc
;
MainViewModelsCart
mainViewModelsCart
;
String
ordersId
,
payment
,
nama_bank
;
Utils
utils
=
new
Utils
();
RecyclerView
recyclerView
;
CheckoutAdapter
checkoutAdapter
;
TextView
paymentMethode
,
grossAmountMethod
,
grossAmount
,
namaBank
;
MaterialButton
btnConfirm
;
ProgressDialog
progressDialog
;
Client
client
=
new
Client
();
PaymentService
paymentService
;
SharedPreferences
sharedPreferences
;
PaymentCreated
paymentCreated
;
@Override
public
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
setContentView
(
R
.
layout
.
activity_detail_transaction
);
setContentView
(
R
.
layout
.
detail_transaction
);
recyclerView
=
findViewById
(
R
.
id
.
lvDetail
);
paymentMethode
=
findViewById
(
R
.
id
.
jenisMethod
);
grossAmountMethod
=
findViewById
(
R
.
id
.
mtdGrossAmount
);
grossAmount
=
findViewById
(
R
.
id
.
grossAmount
);
namaBank
=
findViewById
(
R
.
id
.
jenisTransfer
);
btnConfirm
=
findViewById
(
R
.
id
.
btnConfirm
);
progressDialog
=
new
ProgressDialog
(
TransactionDetail
.
this
);
progressDialog
.
setMessage
(
"Loading..."
);
progressDialog
.
setCancelable
(
false
);
MaterialToolbar
toolbars
=
findViewById
(
R
.
id
.
appBarDetailTransaction
);
setSupportActionBar
(
toolbars
);
getSupportActionBar
().
setDisplayHomeAsUpEnabled
(
true
);
getSupportActionBar
().
setDisplayShowHomeEnabled
(
true
);
getSupportActionBar
().
setTitle
(
"Transaction Detail"
);
toolbars
.
setNavigationOnClickListener
(
view
->
onBackPressed
());
mainViewModelsCart
=
new
ViewModelProvider
(
this
).
get
(
MainViewModelsCart
.
class
);
checkoutAdapter
=
new
CheckoutAdapter
();
paymentCreated
=
new
PaymentCreated
();
paymentCreated
.
setCancelable
(
false
);
sharedPreferences
=
getSharedPreferences
(
MainActivity
.
MY_SHARED_PREFERENCES
,
Context
.
MODE_PRIVATE
);
paymentsModelsBank
=
getIntent
().
getParcelableExtra
(
PaymentActivity
.
PAYMENT_VIA_BANK
);
recyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
this
,
RecyclerView
.
VERTICAL
,
false
));
getListTransaction
();
btnConfirm
.
setOnClickListener
(
view
->
confirm
());
}
private
void
getListTransaction
()
{
if
(
paymentsModelsBank
!=
null
){
grossAmount
.
setText
(
utils
.
convertPrice
(
"Rp. "
,
paymentsModelsBank
.
getGrossAmount
()));
grossAmountMethod
.
setText
(
utils
.
convertPrice
(
"Rp. "
,
paymentsModelsBank
.
getGrossAmount
()));
namaBank
.
setText
(
paymentsModelsBank
.
getBank
().
toUpperCase
());
if
(
paymentsModelsBank
.
getPaymentType
()
==
"bank_transfer"
){
payment
=
"Bank Transfer"
;
}
paymentMethode
.
setText
(
payment
);
ordersId
=
paymentsModelsBank
.
getOrderId
();
}
mainViewModelsCart
.
getCartById
(
ordersId
).
observe
(
this
,
new
Observer
<
List
<
ProductCartModels
>>()
{
@Override
public
void
onChanged
(
List
<
ProductCartModels
>
productCartModels
)
{
Log
.
i
(
"GET ALL PRODUCT"
,
"onChanged: "
+
utils
.
convertGson
(
productCartModels
));
checkoutAdapter
.
setCheckoutAdapter
(
TransactionDetail
.
this
,
productCartModels
);
recyclerView
.
setAdapter
(
checkoutAdapter
);
}
});
}
private
void
confirm
()
{
progressDialog
.
show
();
if
(
paymentsModelsBank
!=
null
){
paymentService
=
client
.
Client
(
PaymentService
.
class
);
paymentService
.
postFromCart
(
paymentsModelsBank
).
enqueue
(
new
Callback
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>()
{
@Override
public
void
onResponse
(
Call
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>
call
,
Response
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>
response
)
{
if
(
response
.
body
()
!=
null
){
SharedPreferences
.
Editor
editor
=
sharedPreferences
.
edit
();
editor
.
putString
(
ORDER_ID
,
""
);
editor
.
putBoolean
(
CHECKOUT
,
false
);
progressDialog
.
dismiss
();
if
(
editor
.
commit
()){
paymentCreated
.
show
(
getSupportFragmentManager
(),
"paymentCreated"
);
}
}
else
{
progressDialog
.
dismiss
();
new
AlertDialog
.
Builder
(
TransactionDetail
.
this
)
.
setTitle
(
"Payment Order"
)
.
setMessage
(
"Erorr save!"
).
show
();
}
}
@Override
public
void
onFailure
(
Call
<
DataResponse
<
PaymentsModels
<
List
<
VaNumberModels
>>>>
call
,
Throwable
t
)
{
progressDialog
.
dismiss
();
new
AlertDialog
.
Builder
(
TransactionDetail
.
this
)
.
setTitle
(
"Payment Order"
)
.
setMessage
(
"Erorr save!"
).
show
();
}
});
}
}
}
app/src/main/res/layout/activity_payment.xml
View file @
40f6717e
...
...
@@ -18,7 +18,6 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_below=
"@id/appbar"
android:layout_above=
"@id/btnPay"
android:overScrollMode=
"never"
android:scrollingCache=
"false"
android:fadingEdge=
"none"
...
...
@@ -42,19 +41,19 @@
</RelativeLayout>
</ScrollView>
<com.google.android.material.button.MaterialButton
android:id=
"@+id/btnPay"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:text=
"pay"
android:padding=
"15dp"
android:textSize=
"16sp"
android:enabled=
"false"
android:layout_margin=
"10dp"
android:layout_alignParentBottom=
"true"
android:layout_alignParentEnd=
"true"
android:layout_alignParentStart=
"true"
/
>
<!-- <com.google.android.material.button.MaterialButton-->
<!-- android:id="@+id/btnPay"-->
<!-- android:layout_width="0dp"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="pay"-->
<!-- android:padding="15dp"-->
<!-- android:textSize="16sp"-->
<!-- android:enabled="false"-->
<!-- android:layout_margin="10dp"-->
<!-- android:layout_alignParentBottom="true"-->
<!-- android:layout_alignParentEnd="true"-->
<!-- android:layout_alignParentStart="true"-->
<!-- />--
>
</RelativeLayout>
...
...
app/src/main/res/layout/
activity_
detail_transaction.xml
→
app/src/main/res/layout/detail_transaction.xml
View file @
40f6717e
...
...
@@ -6,14 +6,14 @@
xmlns:tools=
"http://schemas.android.com/tools"
>
<include
android:id=
"@+id/app
barDetail
"
android:id=
"@+id/app
BarDetailTransaction
"
layout=
"@layout/app_bar"
/>
<com.google.android.material.card.MaterialCardView
android:id=
"@+id/methodePayment"
android:id=
"@+id/
cv
methodePayment"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/app
barDetail
"
app:layout_constraintTop_toBottomOf=
"@id/app
BarDetailTransaction
"
app:cardElevation=
"2dp"
android:layout_marginTop=
"5dp"
android:layout_marginBottom=
"5dp"
...
...
@@ -51,10 +51,10 @@
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.card.MaterialCardView
android:id=
"@+id/detailTransaksi"
android:id=
"@+id/
cv
detailTransaksi"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/methodePayment"
app:layout_constraintTop_toBottomOf=
"@id/
cv
methodePayment"
app:cardElevation=
"2dp"
android:layout_marginTop=
"5dp"
android:layout_marginBottom=
"5dp"
...
...
@@ -75,7 +75,7 @@
android:textColor=
"@android:color/black"
android:textSize=
"18sp"
/>
<List
View
<androidx.recyclerview.widget.Recycler
View
android:id=
"@+id/lvDetail"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
...
...
@@ -100,29 +100,27 @@
app:layout_constraintEnd_toEndOf=
"parent"
android:text=
"Admin Fee"
android:textSize=
"12sp"
android:layout_marginTop=
"10dp"
tools:ignore=
"DuplicateIds"
/>
android:layout_marginTop=
"10dp"
/>
<TextView
android:id=
"@+id/txtgrandTotal
"
android:id=
"@+id/txtGross
"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/txtAdminFee"
app:layout_constraintStart_toStartOf=
"parent"
android:text=
"Gross Amount"
android:textSize=
"18sp"
android:layout_marginTop=
"1
0dp"
/>
android:layout_marginTop=
"2
0dp"
/>
<TextView
android:id=
"@+id/txtgrandTotal
"
android:id=
"@+id/grossAmount
"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/adminFee"
app:layout_constraintEnd_toEndOf=
"parent"
android:text=
"Admin Fee
"
android:text=
"Rp.
"
android:textSize=
"18sp"
android:layout_marginTop=
"10dp"
tools:ignore=
"DuplicateIds"
/>
android:layout_marginTop=
"10dp"
/>
...
...
@@ -130,4 +128,69 @@
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.card.MaterialCardView
android:id=
"@+id/cvMethodePaymentDetail"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/cvdetailTransaksi"
app:cardElevation=
"2dp"
android:layout_marginTop=
"5dp"
android:layout_marginBottom=
"5dp"
android:padding=
"10dp"
>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_height=
"wrap_content"
android:layout_width=
"match_parent"
android:layout_margin=
"10dp"
>
<TextView
android:id=
"@+id/txtMethode"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
android:text=
"Payment Methode"
android:textColor=
"@android:color/black"
android:textSize=
"18sp"
/>
<TextView
android:id=
"@+id/jenisMethod"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/txtMethode"
app:layout_constraintStart_toStartOf=
"parent"
android:text=
""
android:textSize=
"12sp"
android:textColor=
"@android:color/black"
android:layout_marginTop=
"20dp"
tools:text=
"@tools:sample/full_names"
/>
<TextView
android:id=
"@+id/mtdGrossAmount"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toBottomOf=
"@id/txtMethode"
app:layout_constraintEnd_toEndOf=
"parent"
android:text=
""
android:textSize=
"12sp"
android:textColor=
"@android:color/black"
android:layout_marginTop=
"20dp"
tools:text=
"@tools:sample/full_names"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.button.MaterialButton
android:id=
"@+id/btnConfirm"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:text=
"Confirmation"
android:padding=
"15dp"
android:textSize=
"16sp"
android:layout_margin=
"10dp"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/item_checkout.xml
View file @
40f6717e
...
...
@@ -19,7 +19,7 @@
<com.google.android.material.card.MaterialCardView
android:layout_width=
"match_parent"
android:layout_height=
"
6
0dp"
android:layout_height=
"
5
0dp"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
...
...
@@ -27,15 +27,14 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_margin=
"10dp"
>
android:layout_height=
"match_parent"
>
<TextView
android:id=
"@+id/itemCheckout"
android:layout_width=
"200dp"
android:layout_height=
"wrap_content"
tools:text=
"@tools:sample/full_names"
android:textSize=
"
20
sp"
android:textSize=
"
12
sp"
android:lines=
"3"
android:text=
"@{checkout.product_name_orders.toUpperCase()+` x `+checkout.quantity_orders}"
android:layout_margin=
"10dp"
...
...
@@ -47,9 +46,8 @@
android:layout_width=
"200dp"
android:layout_height=
"wrap_content"
tools:text=
"@tools:sample/full_names"
android:textSize=
"
20
sp"
android:textSize=
"
12
sp"
android:text=
"@{subtotal}"
android:textColor=
"@android:color/black"
android:layout_margin=
"10dp"
app:layout_constraintStart_toEndOf=
"@id/itemCheckout"
app:layout_constraintTop_toTopOf=
"parent"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment