Update app/src/main/java/com/example/cuida/ui/sns24/Sns24Fragment.java
This commit is contained in:
@@ -74,39 +74,42 @@ public class Sns24Fragment extends Fragment {
|
|||||||
"Se os sintomas indicarem perigo de vida ou necessidade de observação urgente, OBRIGATORIAMENTE começa a tua primeira linha com a palavra [GRAVE]. " +
|
"Se os sintomas indicarem perigo de vida ou necessidade de observação urgente, OBRIGATORIAMENTE começa a tua primeira linha com a palavra [GRAVE]. " +
|
||||||
"Sintomas do paciente: " + symptoms;
|
"Sintomas do paciente: " + symptoms;
|
||||||
|
|
||||||
ollama.fazerPergunta(prompt, new Ollama().OllamaCallback() {
|
ollama.fazerPergunta(prompt, new OllamaService.OllamaCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(String result) {
|
public void onSuccess(String result) {
|
||||||
if (getActivity() != null && binding != null) {
|
// Já estamos na Main Thread graças ao Handler no serviço!
|
||||||
getActivity().runOnUiThread(() -> {
|
if (getActivity() != null && binding != null) {
|
||||||
String displayResult = result.replace("[GRAVE]", "").trim();
|
|
||||||
binding.textAiResult.setText(displayResult);
|
// Limpa o marcador [GRAVE] para não aparecer ao utilizador
|
||||||
binding.buttonAiTriage.setEnabled(true);
|
String displayResult = result.replace("[GRAVE]", "").trim();
|
||||||
|
|
||||||
if (result.contains("[GRAVE]")) {
|
binding.textAiResult.setText(displayResult);
|
||||||
binding.buttonFindHospital.setVisibility(View.VISIBLE);
|
binding.buttonAiTriage.setEnabled(true);
|
||||||
binding.buttonFindHospital.setOnClickListener(v -> {
|
|
||||||
Uri gmmIntentUri = Uri.parse("geo:0,0?q=hospital+mais+proximo");
|
// Verifica se a string ORIGINAL continha o marcador
|
||||||
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
|
if (result.contains("[GRAVE]")) {
|
||||||
mapIntent.setPackage("com.google.android.apps.maps");
|
binding.buttonFindHospital.setVisibility(View.VISIBLE);
|
||||||
startActivity(mapIntent);
|
binding.buttonFindHospital.setOnClickListener(v -> {
|
||||||
});
|
Uri gmmIntentUri = Uri.parse("geo:0,0?q=hospital+mais+proximo");
|
||||||
}
|
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
|
||||||
saveTriageToHistory(symptoms, displayResult);
|
mapIntent.setPackage("com.google.android.apps.maps");
|
||||||
});
|
startActivity(mapIntent);
|
||||||
}
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
saveTriageToHistory(symptoms, displayResult);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onError(Throwable t) {
|
public void onError(Throwable t) {
|
||||||
if (getActivity() != null && binding != null) {
|
// Já estamos na Main Thread
|
||||||
getActivity().runOnUiThread(() -> {
|
if (getActivity() != null && binding != null) {
|
||||||
binding.textAiResult.setText("Erro na ligação: " + t.getMessage());
|
binding.textAiResult.setText("Erro na ligação: " + t.getMessage());
|
||||||
binding.buttonAiTriage.setEnabled(true);
|
binding.buttonAiTriage.setEnabled(true);
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void saveTriageToHistory(String symptoms, String result) {
|
private void saveTriageToHistory(String symptoms, String result) {
|
||||||
|
|||||||
Reference in New Issue
Block a user