Screenshots:
string.xml:
<resources>
<string name="app_name">KiranaKart</string>
</resources>
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.krishanandroid.kiranakart.MainActivity">
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Oil"
android:textSize="18dp"
android:id="@+id/cbOil"
android:onClick="checkBoxItemMethod"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Liters: Oil qty"
android:layout_marginLeft="28dp"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etOilQty"/>
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Rice"
android:textSize="18dp"
android:id="@+id/cbRice"
android:onClick="checkBoxItemMethod"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Kilos: Rice qty"
android:layout_marginLeft="28dp"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etRiceQty"/>
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Milk"
android:textSize="18dp"
android:id="@+id/cbMilk"
android:onClick="checkBoxItemMethod"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Packets: Milk qty"
android:layout_marginLeft="28dp"
android:inputType="number"
android:textSize="18dp"
android:id="@+id/etMilkQty"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/button"
android:text="Checkout"
android:onClick="checkOutMethod"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Note"
android:textSize="18dp"
android:padding="4dp"
android:textColor="@color/colorAccent"
android:id="@+id/tvNotes"/>
</LinearLayout>
activity_second.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_second"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.krishanandroid.kiranakart.SecondActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Summary"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvItem1"
android:text="Item1"
android:textSize="18dp"
android:gravity="left"
android:visibility="invisible"
android:padding="4dp"
android:textColor="#000000"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvItem2"
android:text="Item2"
android:textSize="18dp"
android:gravity="left"
android:visibility="invisible"
android:padding="4dp"
android:textColor="#000000"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvItem3"
android:text="Item3"
android:textSize="18dp"
android:visibility="invisible"
android:gravity="left"
android:padding="4dp"
android:textColor="#000000"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvSubTotal"
android:text="Sub Total: "
android:textSize="18dp"
android:gravity="right"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Offers:"
android:padding="4dp"
android:textSize="18dp"
android:textColor="@color/colorAccent"/>
<RadioGroup android:layout_height="wrap_content"
android:layout_width="wrap_content">
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rbPalleCoupon"
android:text="KALLE COUPON 10/-"
android:textSize="18dp"
android:onClick="couponMethod"/>
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rbSkillGunCoupon"
android:text="TECH COUPON 1%"
android:textSize="18dp"
android:onClick="couponMethod"/>
</RadioGroup>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Total Price:"
android:gravity="right"
android:textSize="18dp"
android:padding="4dp"
android:textColor="@color/colorAccent"
android:id="@+id/tvTotalPrice"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/buttonProceed"
android:text="Proceed to Pay"
android:onClick="proceedPayMethod"/>
</LinearLayout>
activity_third.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_second"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.krishanandroid.kiranakart.ThirdActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Payment"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Total Amount: "
android:id="@+id/resultTotalAmount"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="#000000"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter A/c No"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etAccountNo"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter OTP No"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etOtpNo"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/buttonPay"
android:text="Pay"
android:onClick="checkOutMethod"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/buttonCancel"
android:text="Cancel"
android:onClick="checkOutMethod"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Status: "
android:id="@+id/tvStatus"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
</LinearLayout>
AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.krishanandroid.kiranakart">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SecondActivity" />
<activity android:name=".ThirdActivity"></activity>
</application>
</manifest>
ThirdActivity.java:
package com.krishanandroid.kiranakart;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class ThirdActivity extends AppCompatActivity {
TextView tvTotalPrice, tvSetStatus;
EditText vEtGetAccountNo, vEtGetOtpNo;
Button vButtonPay, vButtonCancel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
setViewInit(); // Set view screen
vButtonPay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String vStatusPaid = "Paid";
String GetAccountNo = vEtGetAccountNo.getText().toString();
String GetOtpNo = vEtGetOtpNo.getText().toString();
if (GetAccountNo.length()==0 || GetOtpNo.length()==0)
{
Toast.makeText(ThirdActivity.this,"Please enter A/c and Otp",Toast.LENGTH_SHORT).show();
}else {
tvSetStatus.setText("Status: " +vStatusPaid);
Toast.makeText(ThirdActivity.this, "Order Success!", Toast.LENGTH_SHORT).show();
}
}
});
vButtonCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String vCancel = "Cancelled";
tvSetStatus.setText("Status: " +vCancel);
Toast.makeText(ThirdActivity.this,"You have cancel!",Toast.LENGTH_SHORT).show();
}
});
}
public void setViewInit(){
vEtGetAccountNo = (EditText) findViewById(R.id.etAccountNo);
vEtGetOtpNo = (EditText) findViewById(R.id.etOtpNo);
vButtonPay = (Button) findViewById(R.id.buttonPay);
vButtonCancel = (Button) findViewById(R.id.buttonCancel);
tvSetStatus = (TextView) findViewById(R.id.tvStatus);
tvTotalPrice = (TextView) findViewById(R.id.resultTotalAmount);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
double vGetTotalPrice = bundle.getDouble("totalPrice");
tvTotalPrice.setText("Total price: " +vGetTotalPrice);
}
}
SecondActivity.java:
package com.krishanandroid.kiranakart;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Toast;
public class SecondActivity extends AppCompatActivity {
TextView tvGetOilResult, tvGetRiceResult, tvGetMilkResult;
TextView tvGetTotalPrice, tvSubTotal ;
RadioButton rbPalleCoupon, rbSkillGunCoupon;
double vTotalPrice =0.00 ;
double vSubTotalPrice;
int vGetOilQty, vGetRiceQty, vGetMilkQty;
double vGetOilCost, vGetRiceCost, vGetMilkCost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
setViewInit(); // Set view screen
}
public void setViewInit(){
tvGetOilResult = (TextView) findViewById(R.id.tvItem1);
tvGetRiceResult = (TextView) findViewById(R.id.tvItem2);
tvGetMilkResult = (TextView) findViewById(R.id.tvItem3);
tvSubTotal = (TextView) findViewById(R.id.tvSubTotal);
tvGetTotalPrice = (TextView) findViewById(R.id.tvTotalPrice);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
vGetOilQty = bundle.getInt("oilQty");
vGetOilCost = bundle.getInt("oilCost");
vGetRiceQty = bundle.getInt("riceQty");
vGetRiceCost = bundle.getInt("riceCost");
vGetMilkQty = bundle.getInt("milkQty");
vGetMilkCost = bundle.getInt("milkCost");
if (vGetOilQty == 0)
{
tvGetOilResult.setText("\nTV1:\t" +vGetOilQty+ "\t\t "+vGetOilCost);
tvGetOilResult.setVisibility(View.INVISIBLE);
}else {
tvGetOilResult.setText("\nTV1:\t" +vGetOilQty+ "\t\t "+vGetOilCost);
tvGetOilResult.setVisibility(View.VISIBLE);
}
if (vGetRiceQty == 0)
{
tvGetRiceResult.setText("TV2:\t" +vGetRiceQty+ "\t\t "+vGetRiceCost);
tvGetRiceResult.setVisibility(View.INVISIBLE);
}else {
tvGetRiceResult.setText("TV2:\t" +vGetRiceQty+ "\t\t "+vGetRiceCost);
tvGetRiceResult.setVisibility(View.VISIBLE);
}
if (vGetMilkQty == 0)
{
tvGetMilkResult.setText("TV3:\t" +vGetMilkQty+ "\t\t "+vGetMilkCost);
tvGetMilkResult.setVisibility(View.INVISIBLE);
}else {
tvGetMilkResult.setText("TV3:\t" +vGetMilkQty+ "\t\t "+vGetMilkCost);
tvGetMilkResult.setVisibility(View.VISIBLE);
}
getSubTotal();
tvSubTotal.setText("----------------------------\nSub Total: "+vSubTotalPrice+"\n----------------------------");
tvGetTotalPrice.setText("----------------------------\nTotal Price: "+vTotalPrice+"\n----------------------------");
}
public void getSubTotal(){
vSubTotalPrice = (vGetOilCost + vGetRiceCost + vGetMilkCost);
}
public void couponMethod(View view) {
RadioButton rb = (RadioButton) view;
Boolean isSelected = rb.isChecked();
switch (view.getId()){
case R.id.rbPalleCoupon:
if (isSelected == true)
{
double vPalleCouponValue = 10.00;
vTotalPrice = (vSubTotalPrice - vPalleCouponValue); // Adding +10 here
Toast.makeText(this,"You have selected Palle coupon ",Toast.LENGTH_SHORT).show();
// tvGetTotalPrice.setText("Total Price: " +vTotalPrice);
tvGetTotalPrice.setText("----------------------------\nTotal Price: "+vTotalPrice+"\n----------------------------");
}
break;
case R.id.rbSkillGunCoupon:
if (isSelected == true)
{
vTotalPrice = (vSubTotalPrice - (vSubTotalPrice/100)); // Calculate +1% here
Toast.makeText(this,"You have selected Skillgun coupon",Toast.LENGTH_SHORT).show();
// tvGetTotalPrice.setText("Total Price: " +vTotalPrice);
tvGetTotalPrice.setText("----------------------------\nTotal Price: "+vTotalPrice+"\n----------------------------");
}
break;
}
}
public void proceedPayMethod(View view) {
Intent intent = new Intent(SecondActivity.this, ThirdActivity.class);
intent.putExtra("totalPrice", vTotalPrice);
startActivity(intent);
}
}
MainActivity.java:
package com.krishanandroid.kiranakart;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
CheckBox vCbGetOil, vCbGetRice, vCbGetMilk;
EditText vEtGetOilQty, vEtGetRiceQty, vEtGetMilkQty;
TextView vTvNotes;
// Price declaration here
private
int vOilPrice = 80;
int vRicePrice = 38;
int vMilkPrice = 20;
Boolean vOilChecked = true; // At least one item checked by default
Boolean vRiceChecked = false;
Boolean vMilkChecked = false;
final String vNotes = "1. Oil 1 litre 80/-\n" +
"2. Rice 1 kg 38/-\n" +
"3. Milk 1 packet 20/-\n";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setViewInit(); // Set view screen
}
public void setViewInit(){
vEtGetOilQty = (EditText) findViewById(R.id.etOilQty);
vEtGetRiceQty = (EditText) findViewById(R.id.etRiceQty);
vEtGetMilkQty = (EditText) findViewById(R.id.etMilkQty);
vTvNotes = (TextView) findViewById(R.id.tvNotes);
vTvNotes.setText(vNotes);
}
public void checkBoxItemMethod(View view) {
CheckBox cb = (CheckBox) view; // Convert parameter to check box type
boolean isSelected = cb.isChecked(); // Tells a box is checked - True/False
switch (view.getId()){
case R.id.cbOil:
if (isSelected == true) {
vOilChecked = true;
}
break;
case R.id.cbRice:
if (isSelected == true) {
vRiceChecked = true;
}
break;
case R.id.cbMilk:
if (isSelected == true) {
vMilkChecked = true;
}
break;
}
}
public void checkOutMethod(View view) {
String vGetOil, vGetRice, vGetMilk ;
vGetOil = vEtGetOilQty.getText().toString();
vGetRice = vEtGetRiceQty.getText().toString();
vGetMilk = vEtGetMilkQty.getText().toString();
int vOilQty = Integer.parseInt(vGetOil);
int vRiceQty = Integer.parseInt(vGetRice);
int vMilkQty = Integer.parseInt(vGetMilk);
// Price calculation logic here
int vOilCost = (vOilQty * vOilPrice);
int vRiceCost = (vRiceQty * vRicePrice);
int vMilkCost = (vMilkQty * vMilkPrice);
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
if (vOilChecked == true)
{
intent.putExtra("oilQty",vOilQty);
intent.putExtra("oilCost",vOilCost);
}
if (vRiceChecked == true){
intent.putExtra("riceQty",vRiceQty);
intent.putExtra("riceCost",vRiceCost);
}
if (vMilkChecked == true){
intent.putExtra("milkQty",vMilkQty);
intent.putExtra("milkCost",vMilkCost);
}
startActivity(intent);
}
}
string.xml:
<resources>
<string name="app_name">KiranaKart</string>
</resources>
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.krishanandroid.kiranakart.MainActivity">
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Oil"
android:textSize="18dp"
android:id="@+id/cbOil"
android:onClick="checkBoxItemMethod"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Liters: Oil qty"
android:layout_marginLeft="28dp"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etOilQty"/>
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Rice"
android:textSize="18dp"
android:id="@+id/cbRice"
android:onClick="checkBoxItemMethod"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Kilos: Rice qty"
android:layout_marginLeft="28dp"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etRiceQty"/>
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Milk"
android:textSize="18dp"
android:id="@+id/cbMilk"
android:onClick="checkBoxItemMethod"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Packets: Milk qty"
android:layout_marginLeft="28dp"
android:inputType="number"
android:textSize="18dp"
android:id="@+id/etMilkQty"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/button"
android:text="Checkout"
android:onClick="checkOutMethod"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Note"
android:textSize="18dp"
android:padding="4dp"
android:textColor="@color/colorAccent"
android:id="@+id/tvNotes"/>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_second"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.krishanandroid.kiranakart.SecondActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Summary"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvItem1"
android:text="Item1"
android:textSize="18dp"
android:gravity="left"
android:visibility="invisible"
android:padding="4dp"
android:textColor="#000000"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvItem2"
android:text="Item2"
android:textSize="18dp"
android:gravity="left"
android:visibility="invisible"
android:padding="4dp"
android:textColor="#000000"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvItem3"
android:text="Item3"
android:textSize="18dp"
android:visibility="invisible"
android:gravity="left"
android:padding="4dp"
android:textColor="#000000"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvSubTotal"
android:text="Sub Total: "
android:textSize="18dp"
android:gravity="right"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Offers:"
android:padding="4dp"
android:textSize="18dp"
android:textColor="@color/colorAccent"/>
<RadioGroup android:layout_height="wrap_content"
android:layout_width="wrap_content">
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rbPalleCoupon"
android:text="KALLE COUPON 10/-"
android:textSize="18dp"
android:onClick="couponMethod"/>
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rbSkillGunCoupon"
android:text="TECH COUPON 1%"
android:textSize="18dp"
android:onClick="couponMethod"/>
</RadioGroup>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Total Price:"
android:gravity="right"
android:textSize="18dp"
android:padding="4dp"
android:textColor="@color/colorAccent"
android:id="@+id/tvTotalPrice"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/buttonProceed"
android:text="Proceed to Pay"
android:onClick="proceedPayMethod"/>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_second"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.krishanandroid.kiranakart.ThirdActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Payment"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Total Amount: "
android:id="@+id/resultTotalAmount"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="#000000"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter A/c No"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etAccountNo"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter OTP No"
android:textSize="18dp"
android:inputType="number"
android:id="@+id/etOtpNo"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/buttonPay"
android:text="Pay"
android:onClick="checkOutMethod"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/buttonCancel"
android:text="Cancel"
android:onClick="checkOutMethod"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Status: "
android:id="@+id/tvStatus"
android:textSize="18dp"
android:gravity="left"
android:padding="4dp"
android:textColor="@color/colorAccent"/>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.krishanandroid.kiranakart">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SecondActivity" />
<activity android:name=".ThirdActivity"></activity>
</application>
</manifest>
ThirdActivity.java:
package com.krishanandroid.kiranakart;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class ThirdActivity extends AppCompatActivity {
TextView tvTotalPrice, tvSetStatus;
EditText vEtGetAccountNo, vEtGetOtpNo;
Button vButtonPay, vButtonCancel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
setViewInit(); // Set view screen
vButtonPay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String vStatusPaid = "Paid";
String GetAccountNo = vEtGetAccountNo.getText().toString();
String GetOtpNo = vEtGetOtpNo.getText().toString();
if (GetAccountNo.length()==0 || GetOtpNo.length()==0)
{
Toast.makeText(ThirdActivity.this,"Please enter A/c and Otp",Toast.LENGTH_SHORT).show();
}else {
tvSetStatus.setText("Status: " +vStatusPaid);
Toast.makeText(ThirdActivity.this, "Order Success!", Toast.LENGTH_SHORT).show();
}
}
});
vButtonCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String vCancel = "Cancelled";
tvSetStatus.setText("Status: " +vCancel);
Toast.makeText(ThirdActivity.this,"You have cancel!",Toast.LENGTH_SHORT).show();
}
});
}
public void setViewInit(){
vEtGetAccountNo = (EditText) findViewById(R.id.etAccountNo);
vEtGetOtpNo = (EditText) findViewById(R.id.etOtpNo);
vButtonPay = (Button) findViewById(R.id.buttonPay);
vButtonCancel = (Button) findViewById(R.id.buttonCancel);
tvSetStatus = (TextView) findViewById(R.id.tvStatus);
tvTotalPrice = (TextView) findViewById(R.id.resultTotalAmount);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
double vGetTotalPrice = bundle.getDouble("totalPrice");
tvTotalPrice.setText("Total price: " +vGetTotalPrice);
}
}
SecondActivity.java:
package com.krishanandroid.kiranakart;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Toast;
public class SecondActivity extends AppCompatActivity {
TextView tvGetOilResult, tvGetRiceResult, tvGetMilkResult;
TextView tvGetTotalPrice, tvSubTotal ;
RadioButton rbPalleCoupon, rbSkillGunCoupon;
double vTotalPrice =0.00 ;
double vSubTotalPrice;
int vGetOilQty, vGetRiceQty, vGetMilkQty;
double vGetOilCost, vGetRiceCost, vGetMilkCost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
setViewInit(); // Set view screen
}
public void setViewInit(){
tvGetOilResult = (TextView) findViewById(R.id.tvItem1);
tvGetRiceResult = (TextView) findViewById(R.id.tvItem2);
tvGetMilkResult = (TextView) findViewById(R.id.tvItem3);
tvSubTotal = (TextView) findViewById(R.id.tvSubTotal);
tvGetTotalPrice = (TextView) findViewById(R.id.tvTotalPrice);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
vGetOilQty = bundle.getInt("oilQty");
vGetOilCost = bundle.getInt("oilCost");
vGetRiceQty = bundle.getInt("riceQty");
vGetRiceCost = bundle.getInt("riceCost");
vGetMilkQty = bundle.getInt("milkQty");
vGetMilkCost = bundle.getInt("milkCost");
if (vGetOilQty == 0)
{
tvGetOilResult.setText("\nTV1:\t" +vGetOilQty+ "\t\t "+vGetOilCost);
tvGetOilResult.setVisibility(View.INVISIBLE);
}else {
tvGetOilResult.setText("\nTV1:\t" +vGetOilQty+ "\t\t "+vGetOilCost);
tvGetOilResult.setVisibility(View.VISIBLE);
}
if (vGetRiceQty == 0)
{
tvGetRiceResult.setText("TV2:\t" +vGetRiceQty+ "\t\t "+vGetRiceCost);
tvGetRiceResult.setVisibility(View.INVISIBLE);
}else {
tvGetRiceResult.setText("TV2:\t" +vGetRiceQty+ "\t\t "+vGetRiceCost);
tvGetRiceResult.setVisibility(View.VISIBLE);
}
if (vGetMilkQty == 0)
{
tvGetMilkResult.setText("TV3:\t" +vGetMilkQty+ "\t\t "+vGetMilkCost);
tvGetMilkResult.setVisibility(View.INVISIBLE);
}else {
tvGetMilkResult.setText("TV3:\t" +vGetMilkQty+ "\t\t "+vGetMilkCost);
tvGetMilkResult.setVisibility(View.VISIBLE);
}
getSubTotal();
tvSubTotal.setText("----------------------------\nSub Total: "+vSubTotalPrice+"\n----------------------------");
tvGetTotalPrice.setText("----------------------------\nTotal Price: "+vTotalPrice+"\n----------------------------");
}
public void getSubTotal(){
vSubTotalPrice = (vGetOilCost + vGetRiceCost + vGetMilkCost);
}
public void couponMethod(View view) {
RadioButton rb = (RadioButton) view;
Boolean isSelected = rb.isChecked();
switch (view.getId()){
case R.id.rbPalleCoupon:
if (isSelected == true)
{
double vPalleCouponValue = 10.00;
vTotalPrice = (vSubTotalPrice - vPalleCouponValue); // Adding +10 here
Toast.makeText(this,"You have selected Palle coupon ",Toast.LENGTH_SHORT).show();
// tvGetTotalPrice.setText("Total Price: " +vTotalPrice);
tvGetTotalPrice.setText("----------------------------\nTotal Price: "+vTotalPrice+"\n----------------------------");
}
break;
case R.id.rbSkillGunCoupon:
if (isSelected == true)
{
vTotalPrice = (vSubTotalPrice - (vSubTotalPrice/100)); // Calculate +1% here
Toast.makeText(this,"You have selected Skillgun coupon",Toast.LENGTH_SHORT).show();
// tvGetTotalPrice.setText("Total Price: " +vTotalPrice);
tvGetTotalPrice.setText("----------------------------\nTotal Price: "+vTotalPrice+"\n----------------------------");
}
break;
}
}
public void proceedPayMethod(View view) {
Intent intent = new Intent(SecondActivity.this, ThirdActivity.class);
intent.putExtra("totalPrice", vTotalPrice);
startActivity(intent);
}
}
package com.krishanandroid.kiranakart;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
CheckBox vCbGetOil, vCbGetRice, vCbGetMilk;
EditText vEtGetOilQty, vEtGetRiceQty, vEtGetMilkQty;
TextView vTvNotes;
// Price declaration here
private
int vOilPrice = 80;
int vRicePrice = 38;
int vMilkPrice = 20;
Boolean vOilChecked = true; // At least one item checked by default
Boolean vRiceChecked = false;
Boolean vMilkChecked = false;
final String vNotes = "1. Oil 1 litre 80/-\n" +
"2. Rice 1 kg 38/-\n" +
"3. Milk 1 packet 20/-\n";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setViewInit(); // Set view screen
}
public void setViewInit(){
vEtGetOilQty = (EditText) findViewById(R.id.etOilQty);
vEtGetRiceQty = (EditText) findViewById(R.id.etRiceQty);
vEtGetMilkQty = (EditText) findViewById(R.id.etMilkQty);
vTvNotes = (TextView) findViewById(R.id.tvNotes);
vTvNotes.setText(vNotes);
}
public void checkBoxItemMethod(View view) {
CheckBox cb = (CheckBox) view; // Convert parameter to check box type
boolean isSelected = cb.isChecked(); // Tells a box is checked - True/False
switch (view.getId()){
case R.id.cbOil:
if (isSelected == true) {
vOilChecked = true;
}
break;
case R.id.cbRice:
if (isSelected == true) {
vRiceChecked = true;
}
break;
case R.id.cbMilk:
if (isSelected == true) {
vMilkChecked = true;
}
break;
}
}
public void checkOutMethod(View view) {
String vGetOil, vGetRice, vGetMilk ;
vGetOil = vEtGetOilQty.getText().toString();
vGetRice = vEtGetRiceQty.getText().toString();
vGetMilk = vEtGetMilkQty.getText().toString();
int vOilQty = Integer.parseInt(vGetOil);
int vRiceQty = Integer.parseInt(vGetRice);
int vMilkQty = Integer.parseInt(vGetMilk);
// Price calculation logic here
int vOilCost = (vOilQty * vOilPrice);
int vRiceCost = (vRiceQty * vRicePrice);
int vMilkCost = (vMilkQty * vMilkPrice);
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
if (vOilChecked == true)
{
intent.putExtra("oilQty",vOilQty);
intent.putExtra("oilCost",vOilCost);
}
if (vRiceChecked == true){
intent.putExtra("riceQty",vRiceQty);
intent.putExtra("riceCost",vRiceCost);
}
if (vMilkChecked == true){
intent.putExtra("milkQty",vMilkQty);
intent.putExtra("milkCost",vMilkCost);
}
startActivity(intent);
}
}




No comments:
Post a Comment