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
33774882
Commit
33774882
authored
Aug 26, 2020
by
Alfansyah Fadlian
Browse files
Options
Browse Files
Download
Plain Diff
try to fix payment billing
parents
daa844b6
265410a3
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
97 additions
and
60 deletions
+97
-60
misc.xml
.idea/misc.xml
+1
-1
CartActivity.java
app/src/main/java/com/yono/messeripos/CartActivity.java
+42
-44
PaymentActivity.java
app/src/main/java/com/yono/messeripos/PaymentActivity.java
+27
-4
MainViewModelsCart.java
...n/java/com/yono/messeripos/models/MainViewModelsCart.java
+8
-4
activity_payment.xml
app/src/main/res/layout/activity_payment.xml
+19
-7
No files found.
.idea/misc.xml
View file @
33774882
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
languageLevel=
"JDK_1_8"
project-jdk-name=
"
1.8
"
project-jdk-type=
"JavaSDK"
>
<component
name=
"ProjectRootManager"
version=
"2"
languageLevel=
"JDK_1_8"
project-jdk-name=
"
JDK
"
project-jdk-type=
"JavaSDK"
>
<output
url=
"file://$PROJECT_DIR$/build/classes"
/>
<output
url=
"file://$PROJECT_DIR$/build/classes"
/>
</component>
</component>
<component
name=
"ProjectType"
>
<component
name=
"ProjectType"
>
...
...
app/src/main/java/com/yono/messeripos/CartActivity.java
View file @
33774882
...
@@ -35,6 +35,7 @@ public class CartActivity extends AppCompatActivity {
...
@@ -35,6 +35,7 @@ public class CartActivity extends AppCompatActivity {
MainViewModelsCart
modelsCart
;
MainViewModelsCart
modelsCart
;
RecyclerView
recyclerView
;
RecyclerView
recyclerView
;
List
<
ProductCartModels
>
dataCart
=
null
;
List
<
ProductCartModels
>
dataCart
=
null
;
public
static
Boolean
statusPost
;
@RequiresApi
(
api
=
Build
.
VERSION_CODES
.
N
)
@RequiresApi
(
api
=
Build
.
VERSION_CODES
.
N
)
@Override
@Override
...
@@ -55,7 +56,7 @@ public class CartActivity extends AppCompatActivity {
...
@@ -55,7 +56,7 @@ public class CartActivity extends AppCompatActivity {
recyclerView
=
findViewById
(
R
.
id
.
rvCart
);
recyclerView
=
findViewById
(
R
.
id
.
rvCart
);
cartAdapter
=
new
CartAdapter
();
cartAdapter
=
new
CartAdapter
();
btnCheckout
=
findViewById
(
R
.
id
.
btCheckout
);
btnCheckout
=
findViewById
(
R
.
id
.
btCheckout
);
LinearLayoutManager
llm
=
new
LinearLayoutManager
(
this
);
LinearLayoutManager
llm
=
new
LinearLayoutManager
(
this
);
recyclerView
.
setLayoutManager
(
llm
);
recyclerView
.
setLayoutManager
(
llm
);
...
@@ -65,42 +66,42 @@ public class CartActivity extends AppCompatActivity {
...
@@ -65,42 +66,42 @@ public class CartActivity extends AppCompatActivity {
modelsCart
=
new
ViewModelProvider
(
this
).
get
(
MainViewModelsCart
.
class
);
modelsCart
=
new
ViewModelProvider
(
this
).
get
(
MainViewModelsCart
.
class
);
modelsCart
.
getCartProduct
().
observe
(
this
,
new
Observer
<
List
<
ProductCartModels
>>()
{
modelsCart
.
getCartProduct
().
observe
(
this
,
new
Observer
<
List
<
ProductCartModels
>>()
{
@Override
@Override
public
void
onChanged
(
List
<
ProductCartModels
>
productCartModels
)
{
public
void
onChanged
(
List
<
ProductCartModels
>
productCartModels
)
{
if
(
productCartModels
!=
null
)
{
if
(
productCartModels
!=
null
)
{
dataCart
=
productCartModels
;
dataCart
=
productCartModels
;
cartAdapter
.
setCartAdapter
(
CartActivity
.
this
,
productCartModels
);
cartAdapter
.
setCartAdapter
(
CartActivity
.
this
,
productCartModels
);
recyclerView
.
setAdapter
(
cartAdapter
);
recyclerView
.
setAdapter
(
cartAdapter
);
}
}
}
}
});
});
cartAdapter
.
setListener
(
new
CartAdapter
.
CartListener
()
{
cartAdapter
.
setListener
(
new
CartAdapter
.
CartListener
()
{
@Override
@Override
public
void
onDelete
(
ProductCartModels
productCartModels
)
{
public
void
onDelete
(
ProductCartModels
productCartModels
)
{
modelsCart
.
deleteCart
(
productCartModels
);
modelsCart
.
deleteCart
(
productCartModels
);
}
}
@Override
@Override
public
void
onUpdateQuantityPlus
(
ProductCartModels
productCartModels
)
{
public
void
onUpdateQuantityPlus
(
ProductCartModels
productCartModels
)
{
productCartModels
.
setQuantity_orders
(
productCartModels
.
getQuantity_orders
()
+
1
);
productCartModels
.
setQuantity_orders
(
productCartModels
.
getQuantity_orders
()
+
1
);
modelsCart
.
updateCart
(
productCartModels
);
modelsCart
.
updateCart
(
productCartModels
);
}
}
@Override
@Override
public
void
onUpdateQuantityMinus
(
ProductCartModels
productCartModels
)
{
public
void
onUpdateQuantityMinus
(
ProductCartModels
productCartModels
)
{
if
(
productCartModels
.
getQuantity_orders
()
>
1
)
{
if
(
productCartModels
.
getQuantity_orders
()
>
1
)
{
productCartModels
.
setQuantity_orders
(
productCartModels
.
getQuantity_orders
()-
1
);
productCartModels
.
setQuantity_orders
(
productCartModels
.
getQuantity_orders
()
-
1
);
modelsCart
.
updateCart
(
productCartModels
);
modelsCart
.
updateCart
(
productCartModels
);
}
}
}
}
@Override
@Override
public
void
onCheckout
(
ProductCartModels
productCartModels
)
{
public
void
onCheckout
(
ProductCartModels
productCartModels
)
{
}
}
});
});
btnCheckout
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
btnCheckout
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
@Override
...
@@ -111,22 +112,19 @@ public class CartActivity extends AppCompatActivity {
...
@@ -111,22 +112,19 @@ public class CartActivity extends AppCompatActivity {
OrdersResponse
ordersResponse
=
new
OrdersResponse
();
OrdersResponse
ordersResponse
=
new
OrdersResponse
();
List
<
ProductCartModels
>
productCartModels
;
List
<
ProductCartModels
>
productCartModels
;
Log
.
d
(
"Data cart checkout"
,
"onClick: "
+
dataCart
);
Log
.
d
(
"Data cart checkout"
,
"onClick: "
+
dataCart
);
for
(
ProductCartModels
pd
:
dataCart
){
for
(
ProductCartModels
pd
:
dataCart
)
{
ordersResponse
.
setOrders_id
(
pd
.
getId_orders
());
ordersResponse
.
setOrders_id
(
pd
.
getId_orders
());
}
}
ordersResponse
.
setProduct_cart
(
dataCart
);
ordersResponse
.
setProduct_cart
(
dataCart
);
modelsCart
.
insertOrders
(
ordersResponse
);
if
(
modelsCart
.
insertOrders
(
ordersResponse
)){
progressDialog
.
dismiss
();
progressDialog
.
dismiss
();
startActivity
(
new
Intent
(
CartActivity
.
this
,
PaymentActivity
.
class
));
startActivity
(
new
Intent
(
CartActivity
.
this
,
PaymentActivity
.
class
));
finish
();
}
else
{
progressDialog
.
dismiss
();
Snackbar
.
make
(
view
,
"Your orders failed create!"
,
Snackbar
.
LENGTH_LONG
).
show
();
}
}
}
});
});
}
}
}
}
...
...
app/src/main/java/com/yono/messeripos/PaymentActivity.java
View file @
33774882
package
com
.
yono
.
messeripos
;
package
com
.
yono
.
messeripos
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.ViewModelProvider
;
import
androidx.lifecycle.ViewModelProviders
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
android.content.Intent
;
import
android.content.Intent
;
import
android.os.Build
;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.view.View
;
import
android.view.View
;
import
android.view.Window
;
import
android.view.Window
;
import
android.view.WindowManager
;
import
android.view.WindowManager
;
...
@@ -15,16 +19,23 @@ import android.widget.Toast;
...
@@ -15,16 +19,23 @@ import android.widget.Toast;
import
android.widget.Toolbar
;
import
android.widget.Toolbar
;
import
com.google.android.material.appbar.MaterialToolbar
;
import
com.google.android.material.appbar.MaterialToolbar
;
import
com.google.android.material.snackbar.Snackbar
;
import
com.google.gson.Gson
;
import
com.yono.messeripos.adapter.PaymentAdapter
;
import
com.yono.messeripos.adapter.PaymentAdapter
;
import
com.yono.messeripos.models.MainViewModels
;
import
com.yono.messeripos.models.MainViewModelsCart
;
import
com.yono.messeripos.models.ProductCartModels
;
import
com.yono.messeripos.response.PaymentResponse
;
import
com.yono.messeripos.response.PaymentResponse
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
PaymentActivity
extends
AppCompatActivity
{
public
class
PaymentActivity
extends
AppCompatActivity
{
private
ArrayList
<
PaymentResponse
>
paymentResponses
=
new
ArrayList
<>();
private
ArrayList
<
PaymentResponse
>
paymentResponses
=
new
ArrayList
<>();
public
static
String
methodPay
=
""
;
public
static
String
methodPay
=
""
;
private
Button
btnPay
;
private
Button
btnPay
;
private
MainViewModelsCart
mainViewModels
;
@Override
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
...
@@ -38,10 +49,17 @@ public class PaymentActivity extends AppCompatActivity {
...
@@ -38,10 +49,17 @@ public class PaymentActivity extends AppCompatActivity {
MaterialToolbar
toolbars
=
findViewById
(
R
.
id
.
appbar
);
MaterialToolbar
toolbars
=
findViewById
(
R
.
id
.
appbar
);
setSupportActionBar
(
toolbars
);
setSupportActionBar
(
toolbars
);
getSupportActionBar
().
setDisplayHomeAsUpEnabled
(
true
);
getSupportActionBar
().
setDisplayShowHomeEnabled
(
true
);
mainViewModels
=
new
ViewModelProvider
(
PaymentActivity
.
this
).
get
(
MainViewModelsCart
.
class
);
getSupportActionBar
().
setTitle
(
"Payment"
);
mainViewModels
.
getCartProduct
().
observe
(
this
,
new
Observer
<
List
<
ProductCartModels
>>()
{
toolbars
.
setNavigationOnClickListener
(
view
->
onBackPressed
());
@Override
public
void
onChanged
(
List
<
ProductCartModels
>
productCartModels
)
{
String
js
=
new
Gson
().
toJson
(
productCartModels
);
Log
.
i
(
"On payment"
,
"onChanged: "
+
js
);
getSupportActionBar
().
setTitle
(
productCartModels
.
get
(
0
).
getId_orders
());
}
});
RecyclerView
rvPayment
=
findViewById
(
R
.
id
.
rvPayment
);
RecyclerView
rvPayment
=
findViewById
(
R
.
id
.
rvPayment
);
...
@@ -71,5 +89,10 @@ public class PaymentActivity extends AppCompatActivity {
...
@@ -71,5 +89,10 @@ public class PaymentActivity extends AppCompatActivity {
}
}
});
});
}
}
@Override
public
void
onBackPressed
()
{
super
.
onBackPressed
();
}
}
}
app/src/main/java/com/yono/messeripos/models/MainViewModelsCart.java
View file @
33774882
...
@@ -11,6 +11,7 @@ import androidx.lifecycle.MutableLiveData;
...
@@ -11,6 +11,7 @@ import androidx.lifecycle.MutableLiveData;
import
androidx.lifecycle.Transformations
;
import
androidx.lifecycle.Transformations
;
import
com.google.gson.Gson
;
import
com.google.gson.Gson
;
import
com.yono.messeripos.CartActivity
;
import
com.yono.messeripos.api.client.Client
;
import
com.yono.messeripos.api.client.Client
;
import
com.yono.messeripos.api.service.OrdersService
;
import
com.yono.messeripos.api.service.OrdersService
;
import
com.yono.messeripos.repositories.CartRepositories
;
import
com.yono.messeripos.repositories.CartRepositories
;
...
@@ -23,8 +24,9 @@ import retrofit2.Call;
...
@@ -23,8 +24,9 @@ import retrofit2.Call;
import
retrofit2.Callback
;
import
retrofit2.Callback
;
import
retrofit2.Response
;
import
retrofit2.Response
;
import
static
com
.
yono
.
messeripos
.
CartActivity
.
statusPost
;
public
class
MainViewModelsCart
extends
AndroidViewModel
{
public
class
MainViewModelsCart
extends
AndroidViewModel
{
Boolean
statusPost
=
false
;
private
MutableLiveData
<
ProductCartModels
>
cart
=
new
MutableLiveData
<>();
private
MutableLiveData
<
ProductCartModels
>
cart
=
new
MutableLiveData
<>();
private
LiveData
<
List
<
ProductCartModels
>>
productsLive
;
private
LiveData
<
List
<
ProductCartModels
>>
productsLive
;
...
@@ -53,18 +55,20 @@ public class MainViewModelsCart extends AndroidViewModel {
...
@@ -53,18 +55,20 @@ public class MainViewModelsCart extends AndroidViewModel {
public
void
updateQtyCart
(
long
qty
,
long
id
){
cartRepositories
.
updateQty
(
qty
,
id
);}
public
void
updateQtyCart
(
long
qty
,
long
id
){
cartRepositories
.
updateQty
(
qty
,
id
);}
public
Boolean
insertOrders
(
OrdersResponse
ordersResponse
){
public
void
insertOrders
(
OrdersResponse
ordersResponse
){
Client
client
=
new
Client
();
Client
client
=
new
Client
();
OrdersService
ordersService
=
client
.
Client
(
OrdersService
.
class
);
OrdersService
ordersService
=
client
.
Client
(
OrdersService
.
class
);
ordersService
.
postOrders
(
ordersResponse
).
enqueue
(
new
Callback
<
DataResponse
>()
{
ordersService
.
postOrders
(
ordersResponse
).
enqueue
(
new
Callback
<
DataResponse
>()
{
@Override
@Override
public
void
onResponse
(
Call
<
DataResponse
>
call
,
Response
<
DataResponse
>
response
)
{
public
void
onResponse
(
Call
<
DataResponse
>
call
,
Response
<
DataResponse
>
response
)
{
Log
.
i
(
"Response post orders"
,
"onResponse: "
+
response
.
body
());
Log
.
i
(
"Response post orders"
,
"onResponse: "
+
response
.
body
());
if
(
response
.
body
()
!=
null
){
if
(
response
.
body
()
!=
null
){
statusPost
=
true
;
statusPost
=
true
;
Log
.
i
(
"Log didalam if act"
,
"insertOrders: "
+
statusPost
);
}
else
{
}
else
{
statusPost
=
false
;
statusPost
=
false
;
Log
.
i
(
"Log dialam else act"
,
"insertOrders: "
+
statusPost
);
}
}
}
}
...
@@ -73,9 +77,9 @@ public class MainViewModelsCart extends AndroidViewModel {
...
@@ -73,9 +77,9 @@ public class MainViewModelsCart extends AndroidViewModel {
public
void
onFailure
(
Call
<
DataResponse
>
call
,
Throwable
t
)
{
public
void
onFailure
(
Call
<
DataResponse
>
call
,
Throwable
t
)
{
Log
.
e
(
"Error response post orders"
,
"onFailure: "
,
t
);
Log
.
e
(
"Error response post orders"
,
"onFailure: "
,
t
);
statusPost
=
false
;
statusPost
=
false
;
Log
.
i
(
"Log didalam errror act"
,
"insertOrders: "
+
statusPost
);
}
}
});
});
return
statusPost
;
}
}
public
LiveData
<
List
<
ProductCartModels
>>
getCartById
(
long
id
){
public
LiveData
<
List
<
ProductCartModels
>>
getCartById
(
long
id
){
...
...
app/src/main/res/layout/activity_payment.xml
View file @
33774882
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<layout>
<data>
<variable
name=
"payments"
type=
"com.yono.messeripos.models.ProductCartModels"
/>
</data>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
xmlns:tools=
"http://schemas.android.com/tools"
...
@@ -6,6 +15,7 @@
...
@@ -6,6 +15,7 @@
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".PaymentActivity"
>
tools:context=
".PaymentActivity"
>
<include
<include
android:id=
"@+id/appbar"
android:id=
"@+id/appbar"
layout=
"@layout/app_bar"
layout=
"@layout/app_bar"
...
@@ -42,7 +52,7 @@
...
@@ -42,7 +52,7 @@
android:textSize=
"24sp"
android:textSize=
"24sp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
tools:text=
"@string/hint_billing"
/>
android:text=
"Billing "
/>
<ImageView
<ImageView
android:id=
"@+id/image_splash"
android:id=
"@+id/image_splash"
...
@@ -63,7 +73,7 @@
...
@@ -63,7 +73,7 @@
android:textAlignment=
"center"
android:textAlignment=
"center"
android:textSize=
"14sp"
android:textSize=
"14sp"
app:layout_constraintTop_toBottomOf=
"@+id/image_splash"
app:layout_constraintTop_toBottomOf=
"@+id/image_splash"
tools
:text=
"@string/hint_product_name"
/>
android
:text=
"@string/hint_product_name"
/>
<com.google.android.material.textview.MaterialTextView
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvBillingPrice"
android:id=
"@+id/tvBillingPrice"
...
@@ -74,7 +84,7 @@
...
@@ -74,7 +84,7 @@
android:textAlignment=
"center"
android:textAlignment=
"center"
android:textSize=
"14sp"
android:textSize=
"14sp"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingProduct"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingProduct"
tools
:text=
"@string/hint_price"
/>
android
:text=
"@string/hint_price"
/>
<com.google.android.material.textview.MaterialTextView
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvBillingQuantity"
android:id=
"@+id/tvBillingQuantity"
...
@@ -85,7 +95,7 @@
...
@@ -85,7 +95,7 @@
android:textAlignment=
"center"
android:textAlignment=
"center"
android:textSize=
"14sp"
android:textSize=
"14sp"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingPrice"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingPrice"
tools
:text=
"@string/hint_quantity"
/>
android
:text=
"@string/hint_quantity"
/>
<com.google.android.material.textview.MaterialTextView
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvBillingCategory"
android:id=
"@+id/tvBillingCategory"
...
@@ -96,7 +106,7 @@
...
@@ -96,7 +106,7 @@
android:textAlignment=
"center"
android:textAlignment=
"center"
android:textSize=
"14sp"
android:textSize=
"14sp"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingQuantity"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingQuantity"
tools
:text=
"@string/hint_category"
/>
android
:text=
"@string/hint_category"
/>
<com.google.android.material.textview.MaterialTextView
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvBillingDesc"
android:id=
"@+id/tvBillingDesc"
...
@@ -107,7 +117,7 @@
...
@@ -107,7 +117,7 @@
android:textAlignment=
"center"
android:textAlignment=
"center"
android:textSize=
"14sp"
android:textSize=
"14sp"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingCategory"
app:layout_constraintTop_toBottomOf=
"@+id/tvBillingCategory"
tools
:text=
"@string/hint_description"
/>
android
:text=
"@string/hint_description"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
</com.google.android.material.card.MaterialCardView>
...
@@ -132,4 +142,6 @@
...
@@ -132,4 +142,6 @@
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
/>
app:layout_constraintEnd_toEndOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
</layout>
\ No newline at end of file
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