Refactor Code and Fix UI

This commit is contained in:
phanhuuloi27
2022-07-05 09:48:22 +07:00
parent 565fb6f745
commit ce2deb91bc
21 changed files with 93 additions and 92 deletions
@@ -330,15 +330,6 @@ public class Cart extends AppCompatActivity implements GoogleApiClient.Connectio
intent.putExtra("requests", request);
startActivity(intent);
//Summit to Firebase
//We will using System.CurrentMilli to key
// String order_number = String.valueOf(System.currentTimeMillis());
// requests.child(order_number).setValue(request);
//
// sendNotificationOrder(order_number);
}
});
@@ -1,17 +1,15 @@
package com.waterbase.foodify;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.RelativeLayout;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.ItemTouchHelper;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.animation.AnimationUtils;
import android.view.animation.LayoutAnimationController;
import android.widget.RelativeLayout;
import com.google.android.material.snackbar.Snackbar;
import com.waterbase.foodify.Common.Common;
import com.waterbase.foodify.Database.Database;
@@ -140,7 +140,7 @@ public class FoodList extends AppCompatActivity {
//Search
materialSearchBar = (MaterialSearchBar) findViewById(R.id.searchBar);
materialSearchBar.setHint("Enter your food");
materialSearchBar.setHint("Tìm kiếm món ăn");
loadSuggest();
materialSearchBar.setCardViewElevation(10);
materialSearchBar.addTextChangeListener(new TextWatcher() {
@@ -37,7 +37,6 @@ import com.firebase.ui.database.FirebaseRecyclerOptions;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.OnFailureListener;
import com.google.android.gms.tasks.Task;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.navigation.NavigationView;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
@@ -207,8 +207,6 @@ public class OrderDetail extends AppCompatActivity {
Token serverToken = postSnapShot.getValue(Token.class);
//Create raw payload to send
// Notification notification = new Notification("Foodify", "Bạn có 1 đơn hàng mới " + order_number);
// Sender content = new Sender(serverToken.getToken(), notification);
Map<String, String> dataSend = new HashMap<>();
dataSend.put("title", "Foodify");
dataSend.put("message", "Bạn có 1 đơn hàng mới +" + order_number);
@@ -95,11 +95,11 @@ public class OrderStatus extends AppCompatActivity {
adapter = new FirebaseRecyclerAdapter<Request, OrderViewHolder>(orderOptions) {
@Override
protected void onBindViewHolder(@NonNull OrderViewHolder orderViewHolder, int i, @NonNull Request model) {
orderViewHolder.txtOrderId.setText(adapter.getRef(i).getKey());
orderViewHolder.txtOrderStatus.setText(Common.convertCodeToStatus(model.getStatus()));
orderViewHolder.txtOrderAddress.setText(model.getAddress());
orderViewHolder.txtOrderPhone.setText(model.getPhone());
orderViewHolder.txtOrderDate.setText(Common.getDate(Long.parseLong(adapter.getRef(i).getKey())));
orderViewHolder.txtOrderId.setText("Id đơn hàng: #" + adapter.getRef(i).getKey());
orderViewHolder.txtOrderStatus.setText("Tình trạng đơn: " + Common.convertCodeToStatus(model.getStatus()));
orderViewHolder.txtOrderAddress.setText("Địa chỉ: " + model.getAddress());
orderViewHolder.txtOrderDate.setText("Ngày đặt: " + Common.getDate(Long.parseLong(adapter.getRef(i).getKey())));
orderViewHolder.txtOrderPayment.setText("Tình trạng thanh toán: " + model.getPaymentStatus());
orderViewHolder.btn_delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -1,11 +1,6 @@
package com.waterbase.foodify;
import androidx.annotation.NonNull;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
@@ -14,11 +9,15 @@ import android.text.Spanned;
import android.text.TextWatcher;
import android.text.style.StrikethroughSpan;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.firebase.ui.database.FirebaseRecyclerOptions;
import com.google.firebase.database.DataSnapshot;
@@ -40,6 +39,11 @@ import com.waterbase.foodify.ViewHolder.FoodViewHolder;
import java.util.ArrayList;
import java.util.List;
import io.github.inflationx.calligraphy3.CalligraphyConfig;
import io.github.inflationx.calligraphy3.CalligraphyInterceptor;
import io.github.inflationx.viewpump.ViewPump;
import io.github.inflationx.viewpump.ViewPumpContextWrapper;
public class SearchActivity extends AppCompatActivity {
//Search
@@ -57,9 +61,23 @@ public class SearchActivity extends AppCompatActivity {
//Favorites
Database localDB;
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(ViewPumpContextWrapper.wrap(newBase));
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Set font all activity
ViewPump.init(ViewPump.builder()
.addInterceptor(new CalligraphyInterceptor(
new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/font.ttf")
.setFontAttrId(io.github.inflationx.calligraphy3.R.attr.fontPath)
.build()))
.build());
setContentView(R.layout.activity_search);
//Firebase
@@ -76,7 +94,7 @@ public class SearchActivity extends AppCompatActivity {
//Search
materialSearchBar = (MaterialSearchBar) findViewById(R.id.searchBar);
materialSearchBar.setHint("Enter your food");
materialSearchBar.setHint("Tìm kiếm món ăn");
loadSuggest();
materialSearchBar.setCardViewElevation(10);
materialSearchBar.addTextChangeListener(new TextWatcher() {
@@ -195,7 +213,7 @@ public class SearchActivity extends AppCompatActivity {
Favorites favorites = new Favorites();
favorites.setFoodId(adapter.getRef(position).getKey());
favorites.setFoodId(adapter.getRef(viewHolder.getAdapterPosition()).getKey());
favorites.setFoodName(model.getName());
favorites.setFoodDescription(model.getDescription());
favorites.setFoodDiscount(model.getDiscount());
@@ -9,7 +9,6 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
@@ -10,11 +10,9 @@ import androidx.recyclerview.widget.RecyclerView;
import com.waterbase.foodify.Interface.ItemClickListener;
import com.waterbase.foodify.R;
public class OrderViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public class OrderViewHolder extends RecyclerView.ViewHolder {
public TextView txtOrderId, txtOrderStatus, txtOrderPhone, txtOrderAddress, txtOrderDate;
private ItemClickListener itemClickListener;
public TextView txtOrderId, txtOrderStatus, txtOrderAddress, txtOrderDate, txtOrderPayment;
public ImageView btn_delete;
@@ -24,19 +22,8 @@ public class OrderViewHolder extends RecyclerView.ViewHolder implements View.OnC
txtOrderAddress = itemView.findViewById(R.id.order_address);
txtOrderId = itemView.findViewById(R.id.order_id);
txtOrderStatus = itemView.findViewById(R.id.order_status);
txtOrderPhone = itemView.findViewById(R.id.order_phone);
txtOrderDate = itemView.findViewById(R.id.order_date);
txtOrderPayment = itemView.findViewById(R.id.order_payment);
btn_delete = itemView.findViewById(R.id.btn_delete);
itemView.setOnClickListener(this);
}
public void setItemClickListener(ItemClickListener itemClickListener) {
this.itemClickListener = itemClickListener;
}
@Override
public void onClick(View v) {
// itemClickListener.onClick(v, getAdapterPosition(), false);
}
}
@@ -53,16 +53,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/order_phone"
android:layout_marginLeft="10dp"
android:gravity="center_vertical|start"
android:textAllCaps="true"
android:textStyle="italic"
android:text="Phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/order_address"
android:layout_marginLeft="10dp"
@@ -72,6 +62,16 @@
android:text="Address"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/order_payment"
android:layout_marginLeft="10dp"
android:gravity="center_vertical|start"
android:textAllCaps="true"
android:textStyle="italic"
android:text="Order Payment"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<ImageView
@@ -32,14 +32,11 @@ import com.squareup.picasso.Picasso;
import com.waterbase.foodifyServer.Common.Common;
import com.waterbase.foodifyServer.Model.Banner;
import com.waterbase.foodifyServer.Model.Food;
import com.waterbase.foodifyServer.Model.Request;
import com.waterbase.foodifyServer.ViewHolder.BannerViewHolder;
import java.util.ArrayList;
import java.util.List;
import info.hoang8f.widget.FButton;
public class BannerActivity extends AppCompatActivity {
FirebaseDatabase database = FirebaseDatabase.getInstance();
@@ -35,7 +35,6 @@ import com.google.firebase.storage.UploadTask;
import com.rengwuxian.materialedittext.MaterialEditText;
import com.squareup.picasso.Picasso;
import com.waterbase.foodifyServer.Common.Common;
import com.waterbase.foodifyServer.Interface.ItemClickListener;
import com.waterbase.foodifyServer.Model.Food;
import com.waterbase.foodifyServer.ViewHolder.FoodViewHolder;
@@ -8,7 +8,6 @@ import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.Menu;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;
@@ -1,26 +1,29 @@
package com.waterbase.foodifyServer.Model;
import java.io.Serializable;
import java.util.List;
public class Request {
public class Request implements Serializable {
private String phone;
private String name;
private String address;
private String total;
private String status;
private String comment;
private List<com.waterbase.foodifyServer.Model.Order> foods; // list of food order
private String paymentStatus;
private List<Order> foods; // list of food order
public Request() {
}
public Request(String phone, String name, String address, String total, String status, String comment, List<Order> foods) {
public Request(String phone, String name, String address, String total, String status, String comment, String paymentStatus, List<Order> foods) {
this.phone = phone;
this.name = name;
this.address = address;
this.total = total;
this.status = status;
this.comment = comment;
this.paymentStatus = paymentStatus;
this.foods = foods;
}
@@ -72,6 +75,14 @@ public class Request {
this.comment = comment;
}
public String getPaymentStatus() {
return paymentStatus;
}
public void setPaymentStatus(String paymentStatus) {
this.paymentStatus = paymentStatus;
}
public List<Order> getFoods() {
return foods;
}
@@ -8,7 +8,6 @@ import android.os.Bundle;
import android.widget.TextView;
import com.waterbase.foodifyServer.Common.Common;
import com.waterbase.foodifyServer.Model.Order;
import com.waterbase.foodifyServer.ViewHolder.OrderDetailAdapter;
public class OrderDetail extends AppCompatActivity {
@@ -82,13 +82,14 @@ public class OrderStatus extends AppCompatActivity {
adapter = new FirebaseRecyclerAdapter<Request, OrderViewHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull OrderViewHolder viewHolder, int i, @NonNull Request model) {
viewHolder.txtOrderId.setText(adapter.getRef(i).getKey());
viewHolder.txtOrderId.setText("Id đơn hàng: #" + adapter.getRef(i).getKey());
viewHolder.txtOrderDate.setText(Common.getDate(Long.parseLong(adapter.getRef(i).getKey())));
viewHolder.txtOrderDate.setText("Ngày đặt đơn: " + Common.getDate(Long.parseLong(adapter.getRef(i).getKey())));
viewHolder.txtOrderStatus.setText(Common.coverCodeToStatus(model.getStatus()));
viewHolder.txtOrderAddress.setText(model.getAddress());
viewHolder.txtOrderPhone.setText(model.getPhone());
viewHolder.txtOrderStatus.setText("Tình trạng đơn: " + Common.coverCodeToStatus(model.getStatus()));
viewHolder.txtOrderAddress.setText("Địa chỉ giao hàng: " + model.getAddress());
viewHolder.txtOrderPhone.setText("Số điện thoại giao hàng: " + model.getPhone());
viewHolder.txtOrderPayment.setText("Tình trạng thanh toán: " + model.getPaymentStatus());
@@ -1,7 +1,6 @@
package com.waterbase.foodifyServer.Service;
import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
@@ -9,7 +8,6 @@ import android.content.Intent;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Build;
import android.util.Log;
import androidx.annotation.RequiresApi;
import androidx.core.app.NotificationCompat;
@@ -9,7 +9,6 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.waterbase.foodifyServer.Common.Common;
import com.waterbase.foodifyServer.Interface.ItemClickListener;
import com.waterbase.foodifyServer.R;
public class BannerViewHolder extends RecyclerView.ViewHolder implements View.OnCreateContextMenuListener{
@@ -8,7 +8,6 @@ import android.widget.TextView;
import androidx.recyclerview.widget.RecyclerView;
import com.waterbase.foodifyServer.Common.Common;
import com.waterbase.foodifyServer.Interface.ItemClickListener;
import com.waterbase.foodifyServer.R;
public class FoodViewHolder extends RecyclerView.ViewHolder implements View.OnCreateContextMenuListener{
@@ -1,6 +1,5 @@
package com.waterbase.foodifyServer.ViewHolder;
import android.view.ContextMenu;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
@@ -8,28 +7,28 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.waterbase.foodifyServer.Interface.ItemClickListener;
import com.waterbase.foodifyServer.R;
public class OrderViewHolder extends RecyclerView.ViewHolder{
public TextView txtOrderId, txtOrderStatus, txtOrderPhone, txtOrderAddress, txtOrderDate;
public TextView txtOrderId, txtOrderStatus, txtOrderPhone, txtOrderAddress, txtOrderDate, txtOrderPayment;
public Button btnEdit, btnRemove, btnDetail, btnDirection;
public OrderViewHolder(@NonNull View itemView) {
super(itemView);
txtOrderAddress = (TextView) itemView.findViewById(R.id.order_address);
txtOrderId = (TextView) itemView.findViewById(R.id.order_id);
txtOrderStatus = (TextView) itemView.findViewById(R.id.order_status);
txtOrderPhone = (TextView) itemView.findViewById(R.id.order_phone);
txtOrderDate = (TextView) itemView.findViewById(R.id.order_date);
txtOrderAddress = itemView.findViewById(R.id.order_address);
txtOrderId = itemView.findViewById(R.id.order_id);
txtOrderStatus = itemView.findViewById(R.id.order_status);
txtOrderPhone = itemView.findViewById(R.id.order_phone);
txtOrderDate = itemView.findViewById(R.id.order_date);
txtOrderPayment = itemView.findViewById(R.id.order_payment);
btnEdit = (Button) itemView.findViewById(R.id.btnEdit);
btnDetail = (Button)itemView.findViewById(R.id.btnDetail);
btnDirection = (Button)itemView.findViewById(R.id.btnDirection);
btnRemove = (Button)itemView.findViewById(R.id.btnRemove);
btnEdit = itemView.findViewById(R.id.btnEdit);
btnDetail = itemView.findViewById(R.id.btnDetail);
btnDirection = itemView.findViewById(R.id.btnDirection);
btnRemove = itemView.findViewById(R.id.btnRemove);
}
@@ -15,7 +15,7 @@
<LinearLayout
android:layout_marginTop="16dp"
android:layout_marginBottom="16dp"
android:layout_marginBottom="5dp"
android:orientation="horizontal"
android:layout_gravity="center_vertical"
android:layout_width="match_parent"
@@ -76,6 +76,16 @@
android:text="Address"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/order_payment"
android:layout_marginLeft="10dp"
android:gravity="center_vertical|start"
android:textAllCaps="true"
android:textStyle="italic"
android:text="Order Payment"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>