diff --git a/app/src/main/java/fr/iutlille/ctp_2025/MainActivity.java b/app/src/main/java/fr/iutlille/ctp_2025/MainActivity.java index d8f4b1006a8dbf34f5c1c6dc5a9826267cd90bbe..90ca6ffd1cfa04a77418a708ef5eae2be092601b 100644 --- a/app/src/main/java/fr/iutlille/ctp_2025/MainActivity.java +++ b/app/src/main/java/fr/iutlille/ctp_2025/MainActivity.java @@ -6,6 +6,7 @@ import androidx.recyclerview.widget.DividerItemDecoration; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import android.annotation.SuppressLint; import android.content.Intent; import android.os.Bundle; import android.util.Log; @@ -18,7 +19,10 @@ import android.view.ViewGroup; import android.widget.TextView; import android.widget.Toast; +import java.util.List; + import fr.iutlille.ctp_2025.databinding.ActivityMainBinding; +import fr.iutlille.tp4.OperationAdapter; public class MainActivity extends AppCompatActivity { @@ -35,6 +39,8 @@ public class MainActivity extends AppCompatActivity { @Override public void onBindViewHolder(@NonNull ParticipantViewHolder holder, int position) { Participant participant = model.getParticipant(position); + holder.text1.setText(participant.getName()); + holder.text2.setText(participant.getName()); } @Override @@ -48,8 +54,9 @@ public class MainActivity extends AppCompatActivity { TextView text2; public ParticipantViewHolder(View itemView) { super(itemView); + text1 = itemView.findViewById(android.R.id.text1); + text2 = itemView.findViewById(android.R.id.text2); } - } private ActivityMainBinding ui; private ModelApplication model; @@ -65,10 +72,19 @@ public class MainActivity extends AppCompatActivity { RecyclerView.LayoutManager lm = new LinearLayoutManager(this, RecyclerView.VERTICAL, false); ui.ParticipantList.setLayoutManager(lm); ui.ParticipantList.addItemDecoration(new DividerItemDecoration(this, DividerItemDecoration.VERTICAL)); + ui.SumAutres.setText(model.getSumOperations("AUTRES") +""); + ui.SumHebergement.setText(model.getSumOperations("HEBERGEMENT")+ ""); + ui.SumRestauration.setText(model.getSumOperations("RESTAURATION") +""); + ui.SumLoisirs.setText(model.getSumOperations("LOISIRS") +""); + ui.SumTransport.setText(model.getSumOperations("TRANSPORT") +""); refresh(); } private void refresh() { model.computeBalance(); ui.ParticipantList.getAdapter().notifyDataSetChanged(); } + + public int getItemCount() { + return model.getNbParticipants(); + } } \ No newline at end of file diff --git a/app/src/main/java/fr/iutlille/ctp_2025/OperationAdapter.java b/app/src/main/java/fr/iutlille/ctp_2025/OperationAdapter.java new file mode 100644 index 0000000000000000000000000000000000000000..e20a39c7f5babd3d921d682c2b2e19790a8c31fe --- /dev/null +++ b/app/src/main/java/fr/iutlille/ctp_2025/OperationAdapter.java @@ -0,0 +1,69 @@ +package fr.iutlille.tp4; + +import android.annotation.SuppressLint; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import java.util.List; + +import fr.iutlille.ctp_2025.ModelApplication; +import fr.iutlille.ctp_2025.Operation; +import fr.iutlille.ctp_2025.R; + +public class OperationAdapter extends RecyclerView.Adapter<OperationAdapter.OperationHolder> { + + private List<Operation> operationsList; + private ModelApplication md = new ModelApplication(); + + public OperationAdapter(List<Operation> operationsList) { + this.operationsList = operationsList; + } + + @NonNull + @Override + public OperationHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View itemView = LayoutInflater.from(parent.getContext()) + .inflate(R.layout.activity_main, parent, false); + return new OperationHolder(itemView); + } + + @SuppressLint("SetTextI18n") + @Override + public void onBindViewHolder(@NonNull OperationHolder holder, int position) { + Operation op = operationsList.get(position); + holder.SumTransport.setText(md.getSumOperations("Transport") +""); + holder.SumHebergement.setText(md.getSumOperations("Hebergement") +""); + holder.SumRestauration.setText(md.getSumOperations("Restauration") +""); + holder.SumLoisirs.setText(md.getSumOperations("Loisirs") +""); + holder.SumAutres.setText(md.getSumOperations("Autres") +""); + } + + @Override + public int getItemCount() { + return operationsList.size(); + } + + // ViewHolder qui contient les vues pour chaque item + public class OperationHolder extends RecyclerView.ViewHolder { + public TextView SumTransport; + public TextView SumHebergement; + public TextView SumRestauration; + public TextView SumLoisirs; + public TextView SumAutres; + + public OperationHolder(View view) { + super(view); + SumTransport = view.findViewById(R.id.SumTransport); + SumHebergement = view.findViewById(R.id.SumHebergement); + SumRestauration = view.findViewById(R.id.SumRestauration); + SumLoisirs = view.findViewById(R.id.SumLoisirs); + SumAutres = view.findViewById(R.id.SumAutres); + } + } +} + diff --git a/local.properties b/local.properties new file mode 100644 index 0000000000000000000000000000000000000000..9868fb22a6a793e134a2ecdc8e2071d23587a7e4 --- /dev/null +++ b/local.properties @@ -0,0 +1,8 @@ +## This file must *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. +# +# Location of the SDK. This is only used by Gradle. +# For customization when using a Version Control System, please read the +# header note. +#Wed Mar 12 16:34:31 CET 2025 +sdk.dir=/usr/local/virtual_machine/infoetu/android/enzo.lamour.etu/Sdk