Android Open Source - clinicalguide Follow Up Fragment






From Project

Back to project page clinicalguide.

License

The source code is released under:

Apache License

If you think the Android project clinicalguide listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package org.get.oxicam.clinicalguide.ui;
//w ww  . j a v  a  2s  .  c o m
import java.util.ArrayList;
import java.util.HashMap;

import org.get.oxicam.clinicalguide.ClinicalGuideActivity;
import org.get.oxicam.clinicalguide.R;
import org.get.oxicam.clinicalguide.db.Database;
import org.get.oxicam.clinicalguide.db.PatientDetails;
import org.get.oxicam.clinicalguide.xml.data.Answer;
import org.get.oxicam.clinicalguide.xml.data.Assessment;
import org.get.oxicam.clinicalguide.xml.data.Symptom;

import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.ListFragment;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.RadioButton;
import android.widget.RelativeLayout;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;

public class FollowUpFragment extends ListFragment {

    private ClinicalGuideActivity mActivity;
    private PatientDetails mPatient;

    private SimpleAdapter mAdapter;

    // @Override
    // public View onCreateView(LayoutInflater inflater, ViewGroup container,
    // Bundle savedInstanceState) {
    // return inflater.inflate(R.layout.follow_up_footer, container, false);
    // }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
  super.onActivityCreated(savedInstanceState);
  //reset adapter so that header can be added
  setListAdapter(null);
  
  ArrayList<Answer> lastAnswers = new ArrayList<Answer>();
  String LastDate = null;

  mActivity = (ClinicalGuideActivity) getActivity();
  mActivity.setTitle("Start Follow-Up");

  if (getArguments() != null) {
      Object o = getArguments().get(
        PatientsFragment.ARG_KEY_SELECTED_PATIENT);
      if (o != null) {
    mPatient = (PatientDetails) o;
    Database db = new Database(mActivity);
    lastAnswers = db.getLastAnswersForPatient(mPatient);
    LastDate = db.getLastAnswerDateForPatient(mPatient);
      }
  }
  FrameLayout container = new FrameLayout(mActivity);
  View.inflate(getActivity(), R.layout.follow_up_footer, container);
  getListView().addHeaderView(container);

  // adds title
  ViewGroup viewGroupHeader = new RelativeLayout(mActivity);
  TextView textView = new TextView(mActivity);
  textView.setText(getString(R.string.followup_history_title)
    .toUpperCase());
  textView.setTextColor(Color.argb(255, 47, 178, 229));
  textView.setTypeface(Typeface.DEFAULT, Typeface.BOLD_ITALIC);
  textView.setTextSize(17f);
  textView.setShadowLayer(0f, 0f, 1f, Color.DKGRAY);
  viewGroupHeader.addView(textView);
  RelativeLayout.LayoutParams paramsHeader = (RelativeLayout.LayoutParams) textView
    .getLayoutParams();
  paramsHeader.addRule(RelativeLayout.CENTER_HORIZONTAL);
  paramsHeader.setMargins(10, 0, 0, 0);
  textView.setLayoutParams(paramsHeader);
  getListView().addHeaderView(viewGroupHeader);

  mActivity.findViewById(R.id.btNext).setOnClickListener(
    new View.OnClickListener() {
        @Override
        public void onClick(View v) {
      RadioButton yesButton = (RadioButton) mActivity
        .findViewById(R.id.rbYesOption);
      if (yesButton.isChecked()) {
          // do new assessment
          Bundle args = new Bundle();
          args.putSerializable(
            PatientsFragment.ARG_KEY_SELECTED_PATIENT,
            mPatient);
          Fragment frag = Fragment.instantiate(mActivity,
            MainSymptomFragment.class.getName(), args);
          mActivity.setContent(frag);

      } else {
          // do follow-up questions
          Assessment q = new Assessment();
          q.patient = mPatient;

          // FIXME: get main symptom from history - for now
          // use hardcoded one
          Symptom mainSymptom = mActivity.getXmlParser()
            .getMainSymptoms().get(0);
          q.mainSymptom = mainSymptom.symptomId;
          q.primarySymptom = mainSymptom.name;
          // set questionnaires to ask
          q.questionnaires.addAll(mActivity.getXmlParser()
            .getGeneralQuestionnaires());
          q.questionnaires.addAll(mainSymptom.questionnaires);
          q.questionnaires
            .addAll(mainSymptom.followUp.questionnaires);
          q.starttime = System.currentTimeMillis();
          // show QuestionnaireFragment
          Bundle args = new Bundle();
          args.putSerializable(
            QuestionnaireFragment.ARG_KEY_QUESTIONNAIRES,
            q);
          Fragment frag = Fragment
            .instantiate(mActivity,
              QuestionnaireFragment.class
                .getName(), args);
          mActivity.setContent(frag);
          Toast.makeText(mActivity, q.mainSymptom,
            Toast.LENGTH_SHORT).show();
      }
        }
    });

  // populate a HashMap with all list items
  ArrayList<HashMap<String, Object>> itemData = new ArrayList<HashMap<String, Object>>();
  for (Answer answer : lastAnswers) {
      HashMap<String, Object> map = new HashMap<String, Object>();
      map.put("question", answer.question.label);
      map.put("answer", answer.value);
      String value = null;
      if (answer.question.answerType.equals("bool")
        | answer.question.answerType.equals("boolswitch")) {
    if (answer.value.equals("true")) {
        value = "Yes";
    } else {
        value = "No";
    }
      } else {
    value = answer.value;
      }
      map.put("answer", value);
      itemData.add(map);
  }

  // Specify source tag to corresponding target ID mapping
  String[] sourceTags = { "question", "answer" };
  int[] targetIds = { R.id.question, R.id.answer, };

  mAdapter = new SimpleAdapter(mActivity, itemData,
    R.layout.question_answer_list_item, sourceTags, targetIds);
  setListAdapter(mAdapter);
    }
}




Java Source Code List

.PatientDetailsDataSource.java
org.get.oxicam.clinicalguide.ClinicalGuideActivity.java
org.get.oxicam.clinicalguide.FileUtils.java
org.get.oxicam.clinicalguide.LoginActivity.java
org.get.oxicam.clinicalguide.db.DatabaseHelper.java
org.get.oxicam.clinicalguide.db.Database.java
org.get.oxicam.clinicalguide.db.FollowupDataSource.java
org.get.oxicam.clinicalguide.db.FollowupDetails.java
org.get.oxicam.clinicalguide.db.FollowupSQLHelper.java
org.get.oxicam.clinicalguide.db.HistoryDetailsDataSource.java
org.get.oxicam.clinicalguide.db.HistoryDetailsSQLHelper.java
org.get.oxicam.clinicalguide.db.HistoryDetails.java
org.get.oxicam.clinicalguide.db.PatientDetailsSQLHelper.java
org.get.oxicam.clinicalguide.db.PatientDetails.java
org.get.oxicam.clinicalguide.db.RegistrationValidator.java
org.get.oxicam.clinicalguide.db.Validator.java
org.get.oxicam.clinicalguide.encryption.Encryption.java
org.get.oxicam.clinicalguide.ui.AnswersReviewFragment.java
org.get.oxicam.clinicalguide.ui.AssessmentDetailFragment.java
org.get.oxicam.clinicalguide.ui.ClassificationFragment.java
org.get.oxicam.clinicalguide.ui.ClassificationListItem.java
org.get.oxicam.clinicalguide.ui.DatePickerFragment.java
org.get.oxicam.clinicalguide.ui.ExportFragment.java
org.get.oxicam.clinicalguide.ui.ExportscreenListItem.java
org.get.oxicam.clinicalguide.ui.FollowUpFragment.java
org.get.oxicam.clinicalguide.ui.FormScreenFragment.java
org.get.oxicam.clinicalguide.ui.HomescreenFragment.java
org.get.oxicam.clinicalguide.ui.HomescreenListItem.java
org.get.oxicam.clinicalguide.ui.ListItemOnClickListener.java
org.get.oxicam.clinicalguide.ui.MainSymptomFragment.java
org.get.oxicam.clinicalguide.ui.MainSymptomListItem.java
org.get.oxicam.clinicalguide.ui.NumberTickerValueChangeListener.java
org.get.oxicam.clinicalguide.ui.NumberTicker.java
org.get.oxicam.clinicalguide.ui.PatientDetailsFragment.java
org.get.oxicam.clinicalguide.ui.PatientHistoryFragment.java
org.get.oxicam.clinicalguide.ui.PatientsFragment.java
org.get.oxicam.clinicalguide.ui.QuestionListItem.java
org.get.oxicam.clinicalguide.ui.QuestionnaireFragment.java
org.get.oxicam.clinicalguide.ui.StatScreenFragment.java
org.get.oxicam.clinicalguide.ui.SummaryScreenFragment.java
org.get.oxicam.clinicalguide.ui.TextViewCustomFont.java
org.get.oxicam.clinicalguide.ui.TreatmentConfirmationDialog.java
org.get.oxicam.clinicalguide.ui.TreatmentFragment.java
org.get.oxicam.clinicalguide.ui.TreatmentListItem.java
org.get.oxicam.clinicalguide.ui.ViewDetailScreenFragment.java
org.get.oxicam.clinicalguide.xml.CGFormParser.java
org.get.oxicam.clinicalguide.xml.CGParser.java
org.get.oxicam.clinicalguide.xml.CGStatsParser.java
org.get.oxicam.clinicalguide.xml.DateHelper.java
org.get.oxicam.clinicalguide.xml.FormGenerator.java
org.get.oxicam.clinicalguide.xml.ParserHelper.java
org.get.oxicam.clinicalguide.xml.StatsGenerator.java
org.get.oxicam.clinicalguide.xml.XMLHandler.java
org.get.oxicam.clinicalguide.xml.data.AbstractAnswer.java
org.get.oxicam.clinicalguide.xml.data.Annotation.java
org.get.oxicam.clinicalguide.xml.data.AnswerValidator.java
org.get.oxicam.clinicalguide.xml.data.Answer.java
org.get.oxicam.clinicalguide.xml.data.Assessment.java
org.get.oxicam.clinicalguide.xml.data.CombinedAnswer.java
org.get.oxicam.clinicalguide.xml.data.FollowUp.java
org.get.oxicam.clinicalguide.xml.data.FormQuery.java
org.get.oxicam.clinicalguide.xml.data.Info.java
org.get.oxicam.clinicalguide.xml.data.Option.java
org.get.oxicam.clinicalguide.xml.data.PatientAttribute.java
org.get.oxicam.clinicalguide.xml.data.Question.java
org.get.oxicam.clinicalguide.xml.data.Questionnaire.java
org.get.oxicam.clinicalguide.xml.data.SimpleAnswer.java
org.get.oxicam.clinicalguide.xml.data.Symptom.java
org.get.oxicam.clinicalguide.xml.data.TreatmentAction.java
org.get.oxicam.clinicalguide.xml.data.Treatment.java
org.get.oxicam.clinicalguide.xml.data.User.java
org.get.oxicam.clinicalguide.xml.forms.FormCell.java
org.get.oxicam.clinicalguide.xml.forms.FormColumn.java
org.get.oxicam.clinicalguide.xml.forms.FormDuration.java
org.get.oxicam.clinicalguide.xml.forms.Form.java
org.get.oxicam.clinicalguide.xml.query.QueryHelper.java
org.get.oxicam.clinicalguide.xml.query.QueryResultCell.java
org.get.oxicam.clinicalguide.xml.query.QueryResultRow.java
org.get.oxicam.clinicalguide.xml.query.QueryResultTable.java
org.get.oxicam.clinicalguide.xml.stats.AbstractStatsQuestion.java
org.get.oxicam.clinicalguide.xml.stats.StatsAnswerHolder.java
org.get.oxicam.clinicalguide.xml.stats.StatsColumnCompare.java
org.get.oxicam.clinicalguide.xml.stats.StatsComparatorOperator.java
org.get.oxicam.clinicalguide.xml.stats.StatsCompareConstraint.java
org.get.oxicam.clinicalguide.xml.stats.StatsConstraint.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionAverage.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionCount.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionExtrema.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionFactory.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionList.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionPercentage.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionRatio.java
org.get.oxicam.clinicalguide.xml.stats.StatsSubject.java
org.get.oxicam.clinicalguide.xml.stats.StatsTimespan.java
org.get.oxicam.clinicalguide.xml.stats.Stats.java