Skip to content

Commit

Permalink
change atribute patient in database and layout apps
Browse files Browse the repository at this point in the history
  • Loading branch information
WahyuSeptiadi committed Aug 26, 2020
1 parent 05390fe commit d735959
Show file tree
Hide file tree
Showing 20 changed files with 538 additions and 440 deletions.
8 changes: 4 additions & 4 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,15 @@ dependencies {
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.13'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

//Firebase dependencies
implementation 'com.google.firebase:firebase-auth:19.3.2'
implementation 'com.google.firebase:firebase-database:19.3.1'
implementation 'com.google.firebase:firebase-core:17.4.4'
implementation 'com.google.firebase:firebase-core:17.5.0'
implementation 'com.google.firebase:firebase-storage:19.1.1'
implementation 'com.google.firebase:firebase-analytics:17.4.4'
implementation 'com.google.firebase:firebase-analytics:17.5.0'

//Display dependencies
implementation 'com.squareup.picasso:picasso:2.71828'
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
tools:ignore="ManifestResource" />

<activity android:name=".View.Activity.PatientDetailsActivity" />
<activity android:name=".View.Activity.RegisPatientActivity" />
<activity android:name=".View.Activity.PickQueuePatientActivity" />
<activity android:name=".View.Activity.PatientListActivity" />
<activity android:name=".View.Activity.DoctorDetailsActivity" />
<activity
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
import com.wahyu.waitinglistapps.R;
import com.wahyu.waitinglistapps.View.Activity.AddUpdateDoctorActivity;
import com.wahyu.waitinglistapps.View.Activity.DoctorDetailsActivity;
import com.wahyu.waitinglistapps.View.Activity.RegisPatientActivity;
import com.wahyu.waitinglistapps.View.Activity.PickQueuePatientActivity;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
Expand Down Expand Up @@ -86,7 +86,7 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
}

holder.tvNameDr.setText(doctorModel.getName());
holder.tvSpesialis.setText(doctorModel.getSpesialis());
holder.tvSpesialis.setText(doctorModel.getPoliDoctor());

if (isDaftar != null) {
holder.tvOpen.setText(doctorModel.getWorktimestart());
Expand All @@ -98,7 +98,7 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
String doctorId = doctorModel.getId();
String namedr = doctorModel.getName();
String imgProfile = doctorModel.getImageURL();
String spesialis = doctorModel.getSpesialis();
String poliDoctor = doctorModel.getPoliDoctor();
String workday = doctorModel.getWorkday();
String timestart = doctorModel.getWorktimestart();
String timefinish = doctorModel.getWorktimefinish();
Expand All @@ -121,11 +121,11 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
getCurrentLocalTimeStamp(0).substring(3, 5));

if (convertCurrentTime >= convertTimeStart && convertCurrentTime <= convertTimeFinish) {
Intent toRegis = new Intent(mActivity, RegisPatientActivity.class);
Intent toRegis = new Intent(mActivity, PickQueuePatientActivity.class);
toRegis.putExtra("id_doctor", doctorId);
toRegis.putExtra("name_doctor", namedr);
toRegis.putExtra("image_doctor", imgProfile);
toRegis.putExtra("spesialis", spesialis);
toRegis.putExtra("poliDoctor", poliDoctor);
toRegis.putExtra("last_time", "kosong"); // update ke kosong
mActivity.startActivity(toRegis);
mActivity.finish();
Expand All @@ -143,11 +143,11 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
if (convertCurrentTime >= convertTimeStart && convertCurrentTime <= convertTimeFinish) {
String lastTimePatient = doctorModel.getLastPatient();

Intent toRegis = new Intent(mActivity, RegisPatientActivity.class);
Intent toRegis = new Intent(mActivity, PickQueuePatientActivity.class);
toRegis.putExtra("id_doctor", doctorId);
toRegis.putExtra("name_doctor", namedr);
toRegis.putExtra("image_doctor", imgProfile);
toRegis.putExtra("spesialis", spesialis);
toRegis.putExtra("poliDoctor", poliDoctor);
toRegis.putExtra("last_time", lastTimePatient);
mActivity.startActivity(toRegis);
mActivity.finish();
Expand All @@ -160,7 +160,7 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
toDetails.putExtra("id", doctorId);
toDetails.putExtra("name", namedr);
toDetails.putExtra("imgprofile", imgProfile);
toDetails.putExtra("spesialis", spesialis);
toDetails.putExtra("poliDoctor", poliDoctor);
toDetails.putExtra("workday", workday);
toDetails.putExtra("timestart", timestart);
toDetails.putExtra("timefinish", timefinish);
Expand All @@ -185,7 +185,7 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
String doctorId = doctorModel.getId();
String namedr = doctorModel.getName();
String imgProfile = doctorModel.getImageURL();
String spesialis = doctorModel.getSpesialis();
String poliDoctor = doctorModel.getPoliDoctor();
String workday = doctorModel.getWorkday();
String timestart = doctorModel.getWorktimestart();
String timefinish = doctorModel.getWorktimefinish();
Expand All @@ -196,7 +196,7 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
toUpdate.putExtra("id", doctorId);
toUpdate.putExtra("name", namedr);
toUpdate.putExtra("imgprofile", imgProfile);
toUpdate.putExtra("spesialis", spesialis);
toUpdate.putExtra("poliDoctor", poliDoctor);
toUpdate.putExtra("workday", workday);
toUpdate.putExtra("timestart", timestart);
toUpdate.putExtra("timefinish", timefinish);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
}

holder.tvNameDoctor.setText(patientModel.getNamaDokter());
holder.tvSpesialisDoctor.setText(patientModel.getSpesialis());
holder.tvSpesialisDoctor.setText(patientModel.getPoliDoctor());
holder.tvDateRegist.setText(patientModel.getTanggalDaftar());
holder.tvTimeFinish.setText(patientModel.getWaktuSelesai());

Expand Down Expand Up @@ -127,33 +127,36 @@ public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
holder.tvBtnDetails.setOnClickListener(view -> {
String image = patientModel.getImageURL();
String name = patientModel.getNamaPasien();
String keluhan = patientModel.getKeluhanPasien();
String nomerhp = patientModel.getNomerHpPasien();
String alamat = patientModel.getAlamatPasien();
String umur = patientModel.getUmurPasien();
String jenis = patientModel.getJenisPasien();
String noRekamMedis = patientModel.getNoRekamMedis();
String caraPembayaran = patientModel.getCaraPembayaran();
String asalRujukan = patientModel.getAsalRujukan();
String daftar = patientModel.getWaktuDaftar();
String selesai = patientModel.getWaktuSelesai();
// String umur = patientModel.getUmurPasien();
// String jenis = patientModel.getJenisPasien();

//FOR MY QUEUE DETAILS
String imageDoctor = patientModel.getImageDoctor();
String nameDoctor = patientModel.getNamaDokter();
String spesialisDoctor = patientModel.getSpesialis();
String poliDoctor = patientModel.getPoliDoctor();
String dateRegist = patientModel.getTanggalDaftar();

Intent toPatientDetails = new Intent(mActivity, PatientDetailsActivity.class);
toPatientDetails.putExtra("image", image);
toPatientDetails.putExtra("name", name);
toPatientDetails.putExtra("keluhan", keluhan);
toPatientDetails.putExtra("nomerhp", nomerhp);
toPatientDetails.putExtra("alamat", alamat);
toPatientDetails.putExtra("umur", umur);
toPatientDetails.putExtra("jenis", jenis);
toPatientDetails.putExtra("asalRujukan", asalRujukan);
toPatientDetails.putExtra("noRekamMedis", noRekamMedis);
toPatientDetails.putExtra("caraPembayaran", caraPembayaran);
toPatientDetails.putExtra("daftar", daftar);
toPatientDetails.putExtra("selesai", selesai);

// toPatientDetails.putExtra("umur", umur);
// toPatientDetails.putExtra("jenis", jenis);

//my queue details
toPatientDetails.putExtra("imagedoctor", imageDoctor);
toPatientDetails.putExtra("namedoctor", nameDoctor);
toPatientDetails.putExtra("spesialisdoctor", spesialisDoctor);
toPatientDetails.putExtra("poliDoctor", poliDoctor);
toPatientDetails.putExtra("dateregist", dateRegist);
mActivity.startActivity(toPatientDetails);
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,70 +88,79 @@ public void onBindViewHolder(@NonNull PatientListAdapter.ViewHolder holder, int
holder.tvEstimationFinish.setTextColor(mActivity.getResources().getColor(R.color.colorAccent));
}

if (patientModel.getWaktuSelesai().equals("DIPROSES")) {
holder.tvEstimate.setVisibility(View.GONE);
holder.tvEstimationFinish.setTextColor(mActivity.getResources().getColor(R.color.colorPrimary));
}

int queueSort = position + 1;
holder.tvQueueSort.setText(String.valueOf(queueSort));

holder.itemView.setOnClickListener(view -> {
String image = patientModel.getImageURL();
String name = patientModel.getNamaPasien();
String keluhan = patientModel.getKeluhanPasien();
String nomerhp = patientModel.getNomerHpPasien();
String alamat = patientModel.getAlamatPasien();
String umur = patientModel.getUmurPasien();
String jenis = patientModel.getJenisPasien();
String noRekamMedis = patientModel.getNoRekamMedis();
String caraPembayaran = patientModel.getCaraPembayaran();
String asalRujukan = patientModel.getAsalRujukan();
String daftar = patientModel.getWaktuDaftar();
String selesai = patientModel.getWaktuSelesai();

// String umur = patientModel.getUmurPasien();
// String jenis = patientModel.getJenisPasien();

Intent toPatientDetails = new Intent(mActivity, PatientDetailsActivity.class);
toPatientDetails.putExtra("image", image);
toPatientDetails.putExtra("name", name);
toPatientDetails.putExtra("keluhan", keluhan);
toPatientDetails.putExtra("nomerhp", nomerhp);
toPatientDetails.putExtra("alamat", alamat);
toPatientDetails.putExtra("umur", umur);
toPatientDetails.putExtra("jenis", jenis);
toPatientDetails.putExtra("noRekamMedis", noRekamMedis);
toPatientDetails.putExtra("caraPembayaran", caraPembayaran);
toPatientDetails.putExtra("asalRujukan", asalRujukan);
toPatientDetails.putExtra("daftar", daftar);
toPatientDetails.putExtra("selesai", selesai);

// toPatientDetails.putExtra("umur", umur);
// toPatientDetails.putExtra("jenis", jenis);
mActivity.startActivity(toPatientDetails);
});

holder.itemView.setOnLongClickListener(view -> {
FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();

assert firebaseUser != null;
// || firebaseUser.getUid().equals(patientModel.getIdPasien()) //akses user untuk delete lewat patient list dihapus sementara
if (userType.equals("admin")) {
final Dialog dialog = new Dialog(mActivity);
Objects.requireNonNull(dialog.getWindow()).setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
dialog.setContentView(R.layout.dialog_edit_delete);
dialog.show();

TextView choice = dialog.findViewById(R.id.tv_choice_action);
Button editButton = dialog.findViewById(R.id.btnEdit);
Button deleteButton = dialog.findViewById(R.id.btnDelete);

//sementara btn Edit jadi Hapus
editButton.setText(R.string.str_delete);
choice.setVisibility(View.GONE);
deleteButton.setVisibility(View.GONE);

//apabila tombol edit diklik
editButton.setOnClickListener(view1 -> {
dialog.dismiss();
//termasuk menghapus antrian pada user
showDialogAlertDelete(patientModel.getIdDokter(), patientModel.getIdAntrian(), patientModel.getIdPasien());
}
);

// //apabila tombol delete diklik
// deleteButton.setOnClickListener(view2 -> {
// DITUTUP DULU - WASPADA JIKA ADMIN DELETE LEWAT PATIENT LIST > BISA CRASH APPS :(

// holder.itemView.setOnLongClickListener(view -> {
// FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
//
// assert firebaseUser != null;
//// || firebaseUser.getUid().equals(patientModel.getIdPasien()) //akses user untuk delete lewat patient list dihapus sementara
// if (userType.equals("admin")) {
// final Dialog dialog = new Dialog(mActivity);
// Objects.requireNonNull(dialog.getWindow()).setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
// dialog.setContentView(R.layout.dialog_edit_delete);
// dialog.show();
//
// TextView choice = dialog.findViewById(R.id.tv_choice_action);
// Button editButton = dialog.findViewById(R.id.btnEdit);
// Button deleteButton = dialog.findViewById(R.id.btnDelete);
//
// //sementara btn Edit jadi Hapus
// editButton.setText(R.string.str_delete);
// choice.setVisibility(View.GONE);
// deleteButton.setVisibility(View.GONE);
//
// //apabila tombol edit diklik
// editButton.setOnClickListener(view1 -> {
// dialog.dismiss();
// showDialogAlertDelete(patientModel.getIdDokter(), patientModel.getIdPasien());
// //termasuk menghapus antrian pada user
// showDialogAlertDelete(patientModel.getIdDokter(), patientModel.getIdAntrian(), patientModel.getIdPasien());
// }
// );
}
return true;
});
//
//// //apabila tombol delete diklik
//// deleteButton.setOnClickListener(view2 -> {
//// dialog.dismiss();
//// showDialogAlertDelete(patientModel.getIdDokter(), patientModel.getIdPasien());
//// }
//// );
// }
// return true;
// });
}

@Override
Expand Down Expand Up @@ -197,34 +206,34 @@ public void onCancelled(@NonNull DatabaseError error) {
});
}

private void showDialogAlertDelete(String doctorId, String antrianId, String pasienId) {
DatabaseReference rootWaitingList = FirebaseDatabase.getInstance().getReference("WaitingList").child(doctorId);
// DatabaseReference rootMyQueue = FirebaseDatabase.getInstance().getReference("MyQueue");

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(mActivity);
alertDialogBuilder.setTitle("HAPUS DATA");
alertDialogBuilder
.setMessage("Apakah Anda yakin ingin menghapus data pendaftaran ini ?")
.setCancelable(false)
.setPositiveButton("Ya, tentu", (dialog, id) -> {

rootWaitingList.child(antrianId).removeValue();

// ketika user delete antrian yang sudah selesai lewat list pasien, myqueue pada home si user juga hilang ..
// rootMyQueue.child(pasienId).child(doctorId).removeValue(); // JANGAN DIHIDUPIN BAHAYA

//batalkan alarm
alarmReceiver.cancelAlarm(mActivity);

mActivity.overridePendingTransition(0, 0);
mActivity.startActivity(mActivity.getIntent());
mActivity.finish();
mActivity.overridePendingTransition(0, 0);

Toast.makeText(mActivity, "Data berhasil dihapus", Toast.LENGTH_SHORT).show();
})
.setNegativeButton("Gak jadi", (dialog, id) -> dialog.cancel());
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}
// private void showDialogAlertDelete(String doctorId, String antrianId, String pasienId) {
// DatabaseReference rootWaitingList = FirebaseDatabase.getInstance().getReference("WaitingList").child(doctorId);
//// DatabaseReference rootMyQueue = FirebaseDatabase.getInstance().getReference("MyQueue");
//
// AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(mActivity);
// alertDialogBuilder.setTitle("HAPUS DATA");
// alertDialogBuilder
// .setMessage("Apakah Anda yakin ingin menghapus data pendaftaran ini ?")
// .setCancelable(false)
// .setPositiveButton("Ya, tentu", (dialog, id) -> {
//
// rootWaitingList.child(antrianId).removeValue();
//
// // ketika user delete antrian yang sudah selesai lewat list pasien, myqueue pada home si user juga hilang ..
//// rootMyQueue.child(pasienId).child(doctorId).removeValue(); // JANGAN DIHIDUPIN BAHAYA
//
// //batalkan alarm
// alarmReceiver.cancelAlarm(mActivity);
//
// mActivity.overridePendingTransition(0, 0);
// mActivity.startActivity(mActivity.getIntent());
// mActivity.finish();
// mActivity.overridePendingTransition(0, 0);
//
// Toast.makeText(mActivity, "Data berhasil dihapus", Toast.LENGTH_SHORT).show();
// })
// .setNegativeButton("Gak jadi", (dialog, id) -> dialog.cancel());
// AlertDialog alertDialog = alertDialogBuilder.create();
// alertDialog.show();
// }
}
Loading

0 comments on commit d735959

Please sign in to comment.