nafiefn_10

TampilMhs.java (crud)

Jul 9th, 2021
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.14 KB | None | 0 0
  1. package nofieanggraeni.blogspot.com.crud_phpmysql;
  2.  
  3. import android.app.ProgressDialog;
  4. import android.content.DialogInterface;
  5. import android.content.Intent;
  6. import android.os.AsyncTask;
  7. import androidx.appcompat.app.AlertDialog;
  8. import androidx.appcompat.app.AppCompatActivity;
  9. import android.os.Bundle;
  10. import android.view.View;
  11. import android.widget.Button;
  12. import android.widget.EditText;
  13. import android.widget.Spinner;
  14. import android.widget.Toast;
  15. import org.json.JSONArray;
  16. import org.json.JSONException;
  17. import org.json.JSONObject;
  18. import java.util.HashMap;
  19. import android.widget.ArrayAdapter;
  20.  
  21.  
  22. public class TampilMhs extends AppCompatActivity implements View.OnClickListener{
  23.     private EditText editTextId;
  24.     private EditText editTextName;
  25.     private EditText editTextNRP;
  26.     private Spinner spinnerKelas2;
  27.     private EditText editTextBlog;
  28.     private Button buttonUpdate;
  29.     private Button buttonDelete;
  30.     private String id;
  31.     @Override
  32.     protected void onCreate(Bundle savedInstanceState) {
  33.         super.onCreate(savedInstanceState);
  34.         setContentView(R.layout.activity_tampil_mhs);
  35.         Intent intent = getIntent();
  36.         id = intent.getStringExtra(konfigurasi.MHS_ID);
  37.         editTextId = (EditText) findViewById(R.id.editTextId);
  38.         editTextName = (EditText) findViewById(R.id.editTextName);
  39.         editTextNRP = (EditText) findViewById(R.id.editTextNRP);
  40.  
  41.         spinnerKelas2 = (Spinner) findViewById(R.id.spinnerKelas2);
  42.  
  43.         editTextBlog = (EditText) findViewById(R.id.editTextBlog);
  44.         buttonUpdate = (Button) findViewById(R.id.buttonUpdate);
  45.         buttonDelete = (Button) findViewById(R.id.buttonDelete);
  46.         buttonUpdate.setOnClickListener(this);
  47.         buttonDelete.setOnClickListener(this);
  48.         editTextId.setText(id);
  49.         getMhs();
  50.     }
  51.     private void getMhs(){
  52.         class GetMhs extends AsyncTask<Void,Void,String>{ ProgressDialog loading;
  53.             @Override
  54.             protected void onPreExecute() { super.onPreExecute();
  55.                 loading = ProgressDialog.show(TampilMhs.this,"Fetching...","Wait...",false,false);
  56.             }
  57.             @Override
  58.             protected void onPostExecute(String s) {
  59.                 super.onPostExecute(s);
  60.                 loading.dismiss();
  61.                 showMhs(s);
  62.             }
  63.             @Override
  64.             protected String doInBackground(Void... params) { RequestHandler rh = new RequestHandler();
  65.                 String s = rh.sendGetRequestParam(konfigurasi.URL_GET_EMP,id);
  66.                 return s;
  67.             }
  68.         }
  69.         GetMhs ge = new GetMhs();
  70.         ge.execute();
  71.     }
  72.     private void showMhs(String json){
  73.         try {
  74.             JSONObject jsonObject = new JSONObject(json);
  75.             JSONArray result = jsonObject.getJSONArray(konfigurasi.TAG_JSON_ARRAY);
  76.             JSONObject c = result.getJSONObject(0);
  77.             String name = c.getString(konfigurasi.TAG_NAMA);
  78.             String nrp = c.getString(konfigurasi.TAG_NRP);
  79.             String kelas = c.getString(konfigurasi.TAG_KELAS);
  80.             String blog = c.getString(konfigurasi.TAG_BLOG);
  81.             editTextName.setText(name);
  82.             editTextNRP.setText(nrp);
  83.             spinnerKelas2 = (Spinner) findViewById(R.id.spinnerKelas2);
  84.             String[] spinnerItem = new String[]{"TI-1","TI-2","TI-3","TI-Mlm"};
  85.             ArrayAdapter<String> adapter = new  ArrayAdapter<>(this, android.R.layout.simple_spinner_item,spinnerItem);
  86.             spinnerKelas2.setAdapter(adapter);
  87.  
  88.             editTextBlog.setText(blog);
  89.         }
  90.         catch (JSONException e) { e.printStackTrace();
  91.         }
  92.     }
  93.     private void updateMhs(){
  94.         final String name = editTextName.getText().toString().trim();
  95.         final String nrp = editTextNRP.getText().toString().trim();
  96.  
  97.  
  98.         final String kelas =(String) spinnerKelas2.getSelectedItem();
  99.  
  100.         final String blog = editTextBlog.getText().toString().trim();
  101.         class UpdateMhs extends AsyncTask<Void,Void,String>{ ProgressDialog loading;
  102.             @Override
  103.             protected void onPreExecute() {
  104.                 super.onPreExecute();
  105.                 loading = ProgressDialog.show(TampilMhs.this,"Updating...","Wait...",false,
  106.                         false);
  107.             }
  108.             @Override
  109.             protected void onPostExecute(String s) {
  110.                 super.onPostExecute(s);
  111.                 loading.dismiss();
  112.                 Toast.makeText(TampilMhs.this,s,Toast.LENGTH_LONG).show();
  113.             }
  114.             @Override
  115.             protected String doInBackground(Void... params) { HashMap<String,String> hashMap = new HashMap<>();
  116.                 hashMap.put(konfigurasi.KEY_MHS_ID,id);
  117.                 hashMap.put(konfigurasi.KEY_MHS_NAMA,name);
  118.                 hashMap.put(konfigurasi.KEY_MHS_NRP,nrp);
  119.                 hashMap.put(konfigurasi.KEY_MHS_KELAS,kelas);
  120.                 hashMap.put(konfigurasi.KEY_MHS_BLOG,blog);
  121.                 RequestHandler rh = new RequestHandler();
  122.                 String s = rh.sendPostRequest(konfigurasi.URL_UPDATE_EMP,hashMap);
  123.                 return s;
  124.             }
  125.         }
  126.         UpdateMhs ue = new UpdateMhs();
  127.         ue.execute();
  128.     }
  129.     private void deleteMhs(){
  130.         class DeleteMhs extends AsyncTask<Void,Void,String> { ProgressDialog loading;
  131.             @Override
  132.             protected void onPreExecute() {
  133.                 super.onPreExecute();
  134.                 loading = ProgressDialog.show(TampilMhs.this, "Updating...", "Tunggu...", false, false);
  135.             }
  136.             @Override
  137.             protected void onPostExecute(String s) {
  138.                 super.onPostExecute(s);
  139.                 loading.dismiss();
  140.                 Toast.makeText(TampilMhs.this, s, Toast.LENGTH_LONG).show();
  141.             }
  142.             @Override
  143.             protected String doInBackground(Void... params) { RequestHandler rh = new RequestHandler();
  144.                 String s = rh.sendGetRequestParam(konfigurasi.URL_DELETE_EMP, id);
  145.                 return s;
  146.             }
  147.         }
  148.         DeleteMhs de = new DeleteMhs();
  149.         de.execute();
  150.     }
  151.     private void confirmDeleteMhs(){
  152.         AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
  153.         alertDialogBuilder.setMessage("Apakah Kamu Yakin Ingin Menghapus Data ini?");
  154.         alertDialogBuilder.setPositiveButton("Ya", new DialogInterface.OnClickListener() {
  155.                     @Override
  156.                     public void onClick(DialogInterface arg0, int arg1) {
  157.                         deleteMhs();
  158.                         startActivity(new Intent(TampilMhs.this,TampilSemuaMhs.class));
  159.                     }
  160.                 }
  161.         );
  162.         alertDialogBuilder.setNegativeButton("Tidak", new DialogInterface.OnClickListener() {
  163.             @Override
  164.             public void onClick(DialogInterface arg0, int arg1) { } });
  165.         AlertDialog alertDialog = alertDialogBuilder.create();
  166.         alertDialog.show();
  167.     }
  168.     @Override
  169.     public void onClick(View v) { if(v == buttonUpdate){ updateMhs();
  170.     }
  171.         if(v == buttonDelete){ confirmDeleteMhs();
  172.         }
  173.     }
  174. }
Advertisement
Add Comment
Please, Sign In to add comment