Commit 25857bb395aaf191b39c6b59f4e43c25ae151be8
1 parent
d17732ca
Fragment Personne
Showing
6 changed files
with
199 additions
and
13 deletions
Show diff stats
app/src/main/java/net/plil/clubinfo/etunicorn/app/MainActivity.java
@@ -2,6 +2,7 @@ package net.plil.clubinfo.etunicorn.app; | @@ -2,6 +2,7 @@ package net.plil.clubinfo.etunicorn.app; | ||
2 | 2 | ||
3 | import android.app.PendingIntent; | 3 | import android.app.PendingIntent; |
4 | import android.content.Intent; | 4 | import android.content.Intent; |
5 | +import android.net.Uri; | ||
5 | import android.nfc.NfcAdapter; | 6 | import android.nfc.NfcAdapter; |
6 | import android.nfc.Tag; | 7 | import android.nfc.Tag; |
7 | import android.os.Bundle; | 8 | import android.os.Bundle; |
@@ -10,6 +11,7 @@ import android.support.design.widget.TabLayout; | @@ -10,6 +11,7 @@ import android.support.design.widget.TabLayout; | ||
10 | import android.support.v4.app.Fragment; | 11 | import android.support.v4.app.Fragment; |
11 | import android.support.v4.app.FragmentManager; | 12 | import android.support.v4.app.FragmentManager; |
12 | import android.support.v4.app.FragmentPagerAdapter; | 13 | import android.support.v4.app.FragmentPagerAdapter; |
14 | +import android.support.v4.app.FragmentTransaction; | ||
13 | import android.support.v4.view.ViewPager; | 15 | import android.support.v4.view.ViewPager; |
14 | import android.support.v7.app.AppCompatActivity; | 16 | import android.support.v7.app.AppCompatActivity; |
15 | import android.support.v7.widget.Toolbar; | 17 | import android.support.v7.widget.Toolbar; |
@@ -24,6 +26,7 @@ import net.plil.clubinfo.etunicorn.app.event.EventFragment; | @@ -24,6 +26,7 @@ import net.plil.clubinfo.etunicorn.app.event.EventFragment; | ||
24 | import net.plil.clubinfo.etunicorn.app.event.PaiementEvent; | 26 | import net.plil.clubinfo.etunicorn.app.event.PaiementEvent; |
25 | import net.plil.clubinfo.etunicorn.app.consommation.FragmentConsommation; | 27 | import net.plil.clubinfo.etunicorn.app.consommation.FragmentConsommation; |
26 | import net.plil.clubinfo.etunicorn.app.consommation.PaiementConsommation; | 28 | import net.plil.clubinfo.etunicorn.app.consommation.PaiementConsommation; |
29 | +import net.plil.clubinfo.etunicorn.app.personne.PersonOverviewFragment; | ||
27 | import net.plil.clubinfo.etunicorn.app.personne.PersonneFragment; | 30 | import net.plil.clubinfo.etunicorn.app.personne.PersonneFragment; |
28 | import net.plil.clubinfo.etunicorn.data.Consommation; | 31 | import net.plil.clubinfo.etunicorn.data.Consommation; |
29 | import net.plil.clubinfo.etunicorn.data.Event; | 32 | import net.plil.clubinfo.etunicorn.data.Event; |
@@ -37,7 +40,9 @@ import java.util.List; | @@ -37,7 +40,9 @@ import java.util.List; | ||
37 | public class MainActivity extends AppCompatActivity | 40 | public class MainActivity extends AppCompatActivity |
38 | implements FragmentConsommation.OnListFragmentInteractionListener, | 41 | implements FragmentConsommation.OnListFragmentInteractionListener, |
39 | EventFragment.OnListFragmentInteractionListener, | 42 | EventFragment.OnListFragmentInteractionListener, |
40 | - PersonneFragment.OnListFragmentInteractionListener{ | 43 | + PersonneFragment.OnListFragmentInteractionListener, |
44 | + PersonOverviewFragment.OnFragmentInteractionListener | ||
45 | +{ | ||
41 | 46 | ||
42 | /** | 47 | /** |
43 | * The {@link android.support.v4.view.PagerAdapter} that will provide | 48 | * The {@link android.support.v4.view.PagerAdapter} that will provide |
@@ -70,17 +75,18 @@ public class MainActivity extends AppCompatActivity | @@ -70,17 +75,18 @@ public class MainActivity extends AppCompatActivity | ||
70 | // config tabbed pan | 75 | // config tabbed pan |
71 | Intent intent = this.getIntent(); | 76 | Intent intent = this.getIntent(); |
72 | Personne p = (Personne) intent.getSerializableExtra("user"); | 77 | Personne p = (Personne) intent.getSerializableExtra("user"); |
73 | - Toast.makeText(getApplicationContext(), p.getRole().getPermissions().get(0).getNom(), Toast.LENGTH_LONG).show(); | 78 | + //TODO remove this line |
79 | + Toast.makeText(getApplicationContext(), p.getRole().getPermissions().get(0).getNom(), Toast.LENGTH_SHORT).show(); | ||
74 | if (p.getRole().getPermissions().get(0).getNom().equals("ROLE_ADMIN")){ | 80 | if (p.getRole().getPermissions().get(0).getNom().equals("ROLE_ADMIN")){ |
75 | nbPages = 5; | 81 | nbPages = 5; |
76 | Action.CONSOMATION.setValue(2); | 82 | Action.CONSOMATION.setValue(2); |
77 | Action.EVENT.setValue(3); | 83 | Action.EVENT.setValue(3); |
78 | Action.PERSONNE.setValue(4); | 84 | Action.PERSONNE.setValue(4); |
79 | } else if (p.getRole().getPermissions().get(0).getNom().equals("ROLE_BDE")){ | 85 | } else if (p.getRole().getPermissions().get(0).getNom().equals("ROLE_BDE")){ |
80 | - nbPages = 4; | ||
81 | - Action.CONSOMATION.setValue(-1); | ||
82 | - Action.EVENT.setValue(2); | ||
83 | - Action.PERSONNE.setValue(3); | 86 | + nbPages = 4; |
87 | + Action.CONSOMATION.setValue(-1); | ||
88 | + Action.EVENT.setValue(2); | ||
89 | + Action.PERSONNE.setValue(3); | ||
84 | } else if (p.getRole().getPermissions().get(0).getNom().equals("ROLE_BAR")){ | 90 | } else if (p.getRole().getPermissions().get(0).getNom().equals("ROLE_BAR")){ |
85 | nbPages = 3; | 91 | nbPages = 3; |
86 | Action.CONSOMATION.setValue(2); | 92 | Action.CONSOMATION.setValue(2); |
@@ -190,6 +196,8 @@ public class MainActivity extends AppCompatActivity | @@ -190,6 +196,8 @@ public class MainActivity extends AppCompatActivity | ||
190 | 196 | ||
191 | @Override | 197 | @Override |
192 | public void onListFragmentInteraction(Personne personne) { | 198 | public void onListFragmentInteraction(Personne personne) { |
199 | + PersonOverviewFragment personOverviewFragment = PersonOverviewFragment.newInstance(personne); | ||
200 | + personOverviewFragment.show(getSupportFragmentManager(), "overviewPersonne"); | ||
193 | 201 | ||
194 | } | 202 | } |
195 | 203 | ||
@@ -198,6 +206,11 @@ public class MainActivity extends AppCompatActivity | @@ -198,6 +206,11 @@ public class MainActivity extends AppCompatActivity | ||
198 | 206 | ||
199 | } | 207 | } |
200 | 208 | ||
209 | + @Override | ||
210 | + public void onFragmentInteraction(Uri uri) { | ||
211 | + | ||
212 | + } | ||
213 | + | ||
201 | /** | 214 | /** |
202 | * A {@link FragmentPagerAdapter} that returns a fragment corresponding to | 215 | * A {@link FragmentPagerAdapter} that returns a fragment corresponding to |
203 | * one of the sections/tabs/pages. | 216 | * one of the sections/tabs/pages. |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/ModifyPersonne.java
@@ -40,7 +40,7 @@ public class ModifyPersonne extends DialogFragment { | @@ -40,7 +40,7 @@ public class ModifyPersonne extends DialogFragment { | ||
40 | 40 | ||
41 | // Supply num input as an argument. | 41 | // Supply num input as an argument. |
42 | Bundle args = new Bundle(); | 42 | Bundle args = new Bundle(); |
43 | - args.putSerializable("event", personne); | 43 | + args.putSerializable("personne", personne); |
44 | f.setArguments(args); | 44 | f.setArguments(args); |
45 | 45 | ||
46 | return f; | 46 | return f; |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/PersonOverviewFragment.java
0 → 100644
@@ -0,0 +1,104 @@ | @@ -0,0 +1,104 @@ | ||
1 | +package net.plil.clubinfo.etunicorn.app.personne; | ||
2 | + | ||
3 | +import android.app.Dialog; | ||
4 | +import android.content.Context; | ||
5 | +import android.net.Uri; | ||
6 | +import android.os.Bundle; | ||
7 | +import android.support.v4.app.DialogFragment; | ||
8 | +import android.support.v4.app.Fragment; | ||
9 | +import android.support.v7.app.AlertDialog; | ||
10 | +import android.view.LayoutInflater; | ||
11 | +import android.view.View; | ||
12 | +import android.view.ViewGroup; | ||
13 | +import android.widget.TextView; | ||
14 | + | ||
15 | +import net.plil.clubinfo.etunicorn.R; | ||
16 | +import net.plil.clubinfo.etunicorn.data.Personne; | ||
17 | + | ||
18 | +import java.util.Locale; | ||
19 | + | ||
20 | +/** | ||
21 | + * A simple {@link Fragment} subclass. | ||
22 | + * Activities that contain this fragment must implement the | ||
23 | + * {@link PersonOverviewFragment.OnFragmentInteractionListener} interface | ||
24 | + * to handle interaction events. | ||
25 | + */ | ||
26 | +public class PersonOverviewFragment extends DialogFragment{ | ||
27 | + | ||
28 | + private OnFragmentInteractionListener mListener; | ||
29 | + | ||
30 | + TextView mCarte; | ||
31 | + TextView mNaissance; | ||
32 | + TextView mSolde; | ||
33 | + TextView mLogin; | ||
34 | + TextView mRole; | ||
35 | + | ||
36 | + public PersonOverviewFragment() { | ||
37 | + // Required empty public constructor | ||
38 | + } | ||
39 | + | ||
40 | + public static PersonOverviewFragment newInstance(Personne item) { | ||
41 | + PersonOverviewFragment f = new PersonOverviewFragment(); | ||
42 | + Bundle args = new Bundle(); | ||
43 | + args.putSerializable("personne", item); | ||
44 | + f.setArguments(args); | ||
45 | + return f; | ||
46 | + } | ||
47 | + | ||
48 | + @Override | ||
49 | + public Dialog onCreateDialog(Bundle savedInstanceState){ | ||
50 | + LayoutInflater inflater = getActivity().getLayoutInflater(); | ||
51 | + View view = inflater.inflate(R.layout.fragment_person_overview, null); | ||
52 | + | ||
53 | + final Personne personne = (Personne) getArguments().getSerializable("personne"); | ||
54 | + | ||
55 | + mCarte = (TextView) view.findViewById(R.id.personne_overview_carte); | ||
56 | + mLogin = (TextView) view.findViewById(R.id.personne_overview_login); | ||
57 | + mNaissance = (TextView) view.findViewById(R.id.personne_overview_naissance); | ||
58 | + mSolde = (TextView) view.findViewById(R.id.personne_overview_solde); | ||
59 | + mRole = (TextView) view.findViewById(R.id.personne_overview_role); | ||
60 | + | ||
61 | + assert personne != null; | ||
62 | + mCarte.setText(personne.getIdCarte()); | ||
63 | + mRole.setText(personne.getRole().getName()); | ||
64 | + mSolde.setText(String.format(Locale.FRANCE, "%.2f",personne.getSolde())); | ||
65 | + mNaissance.setText(personne.getNaissance().toString()); | ||
66 | + mLogin.setText(personne.getLoginPoly()); | ||
67 | + | ||
68 | + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); | ||
69 | + builder | ||
70 | + .setTitle(R.string.personne) | ||
71 | + .setView(view); | ||
72 | + return builder.create(); | ||
73 | + } | ||
74 | + | ||
75 | + @Override | ||
76 | + public View onCreateView(LayoutInflater inflater, ViewGroup container, | ||
77 | + Bundle savedInstanceState) { | ||
78 | + return inflater.inflate(R.layout.fragment_person_overview, container, false); | ||
79 | + } | ||
80 | + | ||
81 | + | ||
82 | + @Override | ||
83 | + public void onAttach(Context context) { | ||
84 | + super.onAttach(context); | ||
85 | + if (context instanceof OnFragmentInteractionListener) { | ||
86 | + mListener = (OnFragmentInteractionListener) context; | ||
87 | + } else { | ||
88 | + throw new RuntimeException(context.toString() | ||
89 | + + " must implement OnFragmentInteractionListener"); | ||
90 | + } | ||
91 | + } | ||
92 | + | ||
93 | + @Override | ||
94 | + public void onDetach() { | ||
95 | + super.onDetach(); | ||
96 | + mListener = null; | ||
97 | + } | ||
98 | + | ||
99 | + | ||
100 | + public interface OnFragmentInteractionListener { | ||
101 | + // TODO: Update argument type and name | ||
102 | + void onFragmentInteraction(Uri uri); | ||
103 | + } | ||
104 | +} |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/PersonneFragment.java
@@ -12,7 +12,9 @@ import android.view.ViewGroup; | @@ -12,7 +12,9 @@ import android.view.ViewGroup; | ||
12 | 12 | ||
13 | import net.plil.clubinfo.etunicorn.R; | 13 | import net.plil.clubinfo.etunicorn.R; |
14 | import net.plil.clubinfo.etunicorn.app.FragmentNFC; | 14 | import net.plil.clubinfo.etunicorn.app.FragmentNFC; |
15 | +import net.plil.clubinfo.etunicorn.data.Permission; | ||
15 | import net.plil.clubinfo.etunicorn.data.Personne; | 16 | import net.plil.clubinfo.etunicorn.data.Personne; |
17 | +import net.plil.clubinfo.etunicorn.data.Role; | ||
16 | 18 | ||
17 | import java.sql.Date; | 19 | import java.sql.Date; |
18 | import java.util.ArrayList; | 20 | import java.util.ArrayList; |
@@ -56,13 +58,22 @@ public class PersonneFragment extends FragmentNFC { | @@ -56,13 +58,22 @@ public class PersonneFragment extends FragmentNFC { | ||
56 | recyclerView.setLayoutManager(new LinearLayoutManager(context)); | 58 | recyclerView.setLayoutManager(new LinearLayoutManager(context)); |
57 | 59 | ||
58 | List<Personne> personneList = new ArrayList<>(); | 60 | List<Personne> personneList = new ArrayList<>(); |
61 | + Role r = new Role(); | ||
62 | + r.setName("ADMIN_TEST"); | ||
63 | + Permission p = new Permission(); | ||
64 | + p.setNom("Lire"); | ||
65 | + r.getPermissions().add(p); | ||
66 | + p = new Permission(); | ||
67 | + p.setNom("Ecrire"); | ||
68 | + r.getPermissions().add(p); | ||
59 | for (int i = 0;i<150;++i){ | 69 | for (int i = 0;i<150;++i){ |
60 | - Personne p = new Personne(); | ||
61 | - p.setIdCarte("15245698547856"); | ||
62 | - p.setLoginPoly("bverhaeg"); | ||
63 | - p.setNaissance(new Date(System.currentTimeMillis())); | ||
64 | - p.setSolde(45); | ||
65 | - personneList.add(p); | 70 | + Personne personne = new Personne(); |
71 | + personne.setIdCarte("15245698547856"); | ||
72 | + personne.setLoginPoly("bverhaeg"); | ||
73 | + personne.setNaissance(new Date(System.currentTimeMillis())); | ||
74 | + personne.setSolde(45); | ||
75 | + personne.setRole(r); | ||
76 | + personneList.add(personne); | ||
66 | } | 77 | } |
67 | recyclerView.setAdapter(new MyPersonneRecyclerViewAdapter(personneList, mListener, getActivity())); | 78 | recyclerView.setAdapter(new MyPersonneRecyclerViewAdapter(personneList, mListener, getActivity())); |
68 | 79 |
app/src/main/res/layout/fragment_person_overview.xml
0 → 100644
@@ -0,0 +1,55 @@ | @@ -0,0 +1,55 @@ | ||
1 | +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||
2 | + xmlns:tools="http://schemas.android.com/tools" | ||
3 | + android:layout_width="match_parent" | ||
4 | + android:layout_height="match_parent" | ||
5 | + tools:context="net.plil.clubinfo.etunicorn.app.personne.PersonOverviewFragment" | ||
6 | + android:orientation="vertical"> | ||
7 | + | ||
8 | + <TextView | ||
9 | + android:layout_width="wrap_content" | ||
10 | + android:layout_height="wrap_content" | ||
11 | + android:id="@+id/personne_overview_carte" | ||
12 | + android:textAppearance="@android:style/TextAppearance.Material.Body1" | ||
13 | + android:layout_marginStart="24dp" | ||
14 | + android:layout_marginTop="4dp" | ||
15 | + android:layout_marginBottom="4dp" | ||
16 | + /> | ||
17 | + | ||
18 | + <TextView | ||
19 | + android:layout_width="wrap_content" | ||
20 | + android:layout_height="wrap_content" | ||
21 | + android:id="@+id/personne_overview_login" | ||
22 | + android:textAppearance="@android:style/TextAppearance.Material.Body1" | ||
23 | + android:layout_marginStart="24dp" | ||
24 | + android:layout_marginTop="4dp" | ||
25 | + android:layout_marginBottom="4dp"/> | ||
26 | + | ||
27 | + <TextView | ||
28 | + android:layout_width="wrap_content" | ||
29 | + android:layout_height="wrap_content" | ||
30 | + android:id="@+id/personne_overview_naissance" | ||
31 | + android:textAppearance="@android:style/TextAppearance.Material.Body1" | ||
32 | + android:layout_marginStart="24dp" | ||
33 | + android:layout_marginTop="4dp" | ||
34 | + android:layout_marginBottom="4dp"/> | ||
35 | + | ||
36 | + <TextView | ||
37 | + android:layout_width="wrap_content" | ||
38 | + android:layout_height="wrap_content" | ||
39 | + android:id="@+id/personne_overview_solde" | ||
40 | + android:textAppearance="@android:style/TextAppearance.Material.Body1" | ||
41 | + android:layout_marginStart="24dp" | ||
42 | + android:layout_marginTop="4dp" | ||
43 | + android:layout_marginBottom="4dp"/> | ||
44 | + | ||
45 | + <TextView | ||
46 | + android:layout_width="wrap_content" | ||
47 | + android:layout_height="wrap_content" | ||
48 | + android:id="@+id/personne_overview_role" | ||
49 | + android:textAppearance="@android:style/TextAppearance.Material.Body1" | ||
50 | + android:layout_marginStart="24dp" | ||
51 | + android:layout_marginTop="4dp" | ||
52 | + android:layout_marginBottom="4dp"/> | ||
53 | + | ||
54 | + | ||
55 | +</LinearLayout> |
app/src/main/res/values/strings.xml
@@ -41,4 +41,7 @@ | @@ -41,4 +41,7 @@ | ||
41 | <string name="create_personne_carte">Carte ID</string> | 41 | <string name="create_personne_carte">Carte ID</string> |
42 | <string name="create_personne_naissance">Birthday</string> | 42 | <string name="create_personne_naissance">Birthday</string> |
43 | <string name="create_personne_role">Role</string> | 43 | <string name="create_personne_role">Role</string> |
44 | + | ||
45 | + <!-- TODO: Remove or change this placeholder text --> | ||
46 | + <string name="hello_blank_fragment">Hello blank fragment</string> | ||
44 | </resources> | 47 | </resources> |