diff --git a/app/src/main/java/ru/myitschool/work/ui/History.java b/app/src/main/java/ru/myitschool/work/ui/History.java new file mode 100644 index 0000000..cd03692 --- /dev/null +++ b/app/src/main/java/ru/myitschool/work/ui/History.java @@ -0,0 +1,41 @@ +package ru.myitschool.work.ui; + +public class History { + private Long time; + private String nameReader; + private int type; //1 - qr 2 - карта + + + public History(Long time, String nameReader, int passageType) { + this.time = time; + this.nameReader = nameReader; + this.type = passageType; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getNameReader() { + return nameReader; + } + + public void setNameReader(String nameReader) { + this.nameReader = nameReader; + } + + public int getPassageType() { + return type; + } + + public void setPassageType(int passageType) { + this.type = passageType; + } + + + +} diff --git a/app/src/main/java/ru/myitschool/work/ui/HistoryAdapter.java b/app/src/main/java/ru/myitschool/work/ui/HistoryAdapter.java new file mode 100644 index 0000000..b19b001 --- /dev/null +++ b/app/src/main/java/ru/myitschool/work/ui/HistoryAdapter.java @@ -0,0 +1,66 @@ +package ru.myitschool.work.ui; + +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import java.util.ArrayList; +import java.util.List; + +import ru.myitschool.work.databinding.ItemHistoryBinding; + +public class HistoryAdapter extends RecyclerView.Adapter { + + private final List data = new ArrayList<>(); + + @NonNull + @Override + public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + return new ViewHolder( + ItemHistoryBinding.inflate( + LayoutInflater.from(parent.getContext()), + parent, + false + ).getRoot() + ); + + } + + @Override + public void onBindViewHolder(@NonNull ViewHolder holder, int position) { + holder.bind(data.get(position)); + } + + @Override + public int getItemCount() { + return data.size(); + } + + public void updateData(List newData) { + data.clear(); + data.addAll(newData); + notifyDataSetChanged(); + } + + public class ViewHolder extends RecyclerView.ViewHolder { + private final ItemHistoryBinding binding; + + public ViewHolder(@NonNull View itemView) { + super(itemView); + binding = ItemHistoryBinding.bind(itemView); + } + public void bind(History item) { + binding.time.setText(item.getTime().toString()); + binding.nameReader.setText(item.getNameReader()); + if (item.getPassageType() == 1){ + binding.type.setText("QR-code"); + } + else{ + binding.type.setText("Карта"); + } + } + } +} \ No newline at end of file diff --git a/app/src/main/java/ru/myitschool/work/ui/InformationFragment.java b/app/src/main/java/ru/myitschool/work/ui/InformationFragment.java index a050199..8c60af6 100644 --- a/app/src/main/java/ru/myitschool/work/ui/InformationFragment.java +++ b/app/src/main/java/ru/myitschool/work/ui/InformationFragment.java @@ -15,6 +15,8 @@ import androidx.fragment.app.FragmentResultListener; import com.squareup.picasso.Picasso; +import java.util.ArrayList; + import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -28,6 +30,7 @@ import ru.myitschool.work.ui.qr.scan.QrScanFragment; public class InformationFragment extends Fragment { FragmentInformationBinding binding; SharedPreferences sharedPreferences; + ArrayList history = new ArrayList<>(); @Nullable @Override @@ -48,13 +51,17 @@ public class InformationFragment extends Fragment { onClickRefresh(); }); - binding.scan.setOnClickListener(view1 -> { + binding.scan.setOnClickListener(view2 -> { onClickScan(); }); - binding.logout.setOnClickListener(view2 -> { + binding.logout.setOnClickListener(view3 -> { onClickLogout(); }); + //TODO: SERVER ZAGUZKA LISTAAAAAAAAAAAAAAA + HistoryAdapter adapter = new HistoryAdapter(); + binding.historylist.setAdapter(adapter); + adapter.updateData(history); //getParentFragmentManager() requireActivity().getSupportFragmentManager().setFragmentResultListener(QrScanDestination.REQUEST_KEY, getViewLifecycleOwner(), (requestKey, result) -> { diff --git a/app/src/main/java/ru/myitschool/work/ui/User.java b/app/src/main/java/ru/myitschool/work/ui/User.java index aec09dc..8b02507 100644 --- a/app/src/main/java/ru/myitschool/work/ui/User.java +++ b/app/src/main/java/ru/myitschool/work/ui/User.java @@ -1,6 +1,7 @@ package ru.myitschool.work.ui; -public class User { +public class +User { private int id; private String login; diff --git a/app/src/main/res/layout/fragment_information.xml b/app/src/main/res/layout/fragment_information.xml index 2ddcf22..7a129a8 100644 --- a/app/src/main/res/layout/fragment_information.xml +++ b/app/src/main/res/layout/fragment_information.xml @@ -48,5 +48,11 @@ android:text="@string/error" android:layout_width="wrap_content" android:layout_height="wrap_content"/> + \ No newline at end of file diff --git a/app/src/main/res/layout/item_history.xml b/app/src/main/res/layout/item_history.xml new file mode 100644 index 0000000..be3b98d --- /dev/null +++ b/app/src/main/res/layout/item_history.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + \ No newline at end of file