private boolean creaPaciente( String nombre, String apellidos, String sip, String cp, String sexo) { final int SIP_CHECKED = checkSIP(sip); final int CP_CHECKED = checkCP(cp); final Gson gson = new Gson(); if (SIP_CHECKED != -1 && CP_CHECKED != -1) { Paciente p = new Paciente( nombre, apellidos, SIP_CHECKED, paciente.getFechaNacimiento(), sexo, CP_CHECKED); if (gestor.searchPaciente(SIP_CHECKED) == null) { gestor.addPaciente(p); dataED.setValue(gson.toJson(gestor)); dataPaciente.child(Integer.toString(p.getDni())).setValue(gson.toJson(p)); } else aviso(p); // gestionMedicos.addMedico(new Medico( // mAuth.getCurrentUser().getDisplayName(), // mAuth.getCurrentUser().getUid(), // mAuth.getCurrentUser().getPhotoUrl().toString()), // p); // dataMedico.setValue(gson.toJson(gestionMedicos)); // dataED.setValue(gson.toJson(gestor)); // dataPaciente.child(sip).setValue(gson.toJson(p)); return true; } return false; }
private void aviso(final Paciente unPaciente) { AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this); alertBuilder.setPositiveButton( "Sustituir", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Gson g = new Gson(); gestor.addPaciente(unPaciente); Log.d("DNI", Integer.toString(unPaciente.getDni())); dataED.setValue(g.toJson(gestor)); dataPaciente .child(Integer.toString(unPaciente.getDni())) .setValue(g.toJson(unPaciente)); } }); alertBuilder.setNegativeButton( "Cancelar", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); alertBuilder.setMessage("Ya hay un paciente con el mismo DNI " + unPaciente.getDni()); alertBuilder.setTitle("Aviso"); alertBuilder.setCancelable(false); alertBuilder.create().show(); }