Debiter.java
4.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package net.plil.clubinfo.etunicorn.app;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import net.plil.clubinfo.etunicorn.R;
import net.plil.clubinfo.etunicorn.data.Personne;
import net.plil.clubinfo.etunicorn.utils.VolleyUtils;
import org.json.JSONException;
import org.json.JSONObject;
/**
* A simple {@link Fragment} subclass.
* Activities that contain this fragment must implement the
* {@link Debiter.OnFragmentInteractionListener} interface
* to handle interaction events.
* Use the {@link Debiter#newInstance} factory method to
* create an instance of this fragment.
*/
public class Debiter extends FragmentNFC {
private EditText mMoneyEditText;
private ProgressBar mProgressBar;
private OnFragmentInteractionListener mListener;
public Debiter() {
// Required empty public constructor
}
public static Debiter newInstance() {
return new Debiter();
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_debiter, container, false);
mProgressBar = (ProgressBar) view.findViewById(R.id.debiter_progress);
mMoneyEditText = (EditText) view.findViewById(R.id.debiter_edit_text_money);
return view;
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
if (context instanceof OnFragmentInteractionListener) {
mListener = (OnFragmentInteractionListener) context;
} else {
throw new RuntimeException(context.toString()
+ " must implement OnFragmentInteractionListener");
}
}
@Override
public void onDetach() {
super.onDetach();
mListener = null;
}
@Override
public void processNFC() {
mProgressBar.setVisibility(View.VISIBLE);
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("participant", 1);
jsonObject.put("acteur", 2);
jsonObject.put("prix", Double.parseDouble(mMoneyEditText.getText().toString()));
} catch (JSONException e){
e.printStackTrace();
}
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, VolleyUtils.baseUri + "/transaction/debit" ,jsonObject , new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
mProgressBar.setVisibility(View.GONE);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
mProgressBar.setVisibility(View.GONE);
}
}
);
VolleyUtils.getInstance(getContext()).addToRequestQueue(jsonObjectRequest);
}
/**
* This interface must be implemented by activities that contain this
* fragment to allow an interaction in this fragment to be communicated
* to the activity and potentially other fragments contained in that
* activity.
* <p>
* See the Android Training lesson <a href=
* "http://developer.android.com/training/basics/fragments/communicating.html"
* >Communicating with Other Fragments</a> for more information.
*/
public interface OnFragmentInteractionListener {
// TODO: Update argument type and name
void onFragmentInteraction(Uri uri);
}
}