Android Open Source - SymptomManagement Doctor Utils






From Project

Back to project page SymptomManagement.

License

The source code is released under:

Apache License

If you think the Android project SymptomManagement 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 com.coursera.capstone.data;
//w ww  .  j  a  v a  2  s. co  m
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

import javax.jdo.PersistenceManager;

public class DoctorUtils {

  
  private static final String API_KEY = xxxxxxxxxxxxxxxxxxx;//Get your Own API Key...
  
  
    private PersistenceManager pm ;
    private CheckinUtils utils;
  
  
  public DoctorUtils() {
    pm =  PMF.get().getPersistenceManager();
    utils = new CheckinUtils();
  }
  
  
  
  
  
  
  public Doctor registerDoctor(Doctor d){
    pm.makePersistent(d);
    return d;
  }
  
  
  
  
  public Doctor getDoctorInfoByEmail(String dEmailId){
    Long doctorId = utils.getDoctorIdByEmail(dEmailId);
    Doctor doctor = pm.getObjectById(Doctor.class, doctorId);
    return doctor;
  }






  public VPatient addPatient(Long doctorId, String pEmailId) {
      
      Doctor doctor = pm.getObjectById(Doctor.class, doctorId);
            
      if(utils.containsPatient(pEmailId)){
        Long patientId = utils.getPatientIdByEmail(pEmailId);
        Patient patient = pm.getObjectById(Patient.class, patientId);
              
          if( ! (doctor.getPatientIds().contains(patientId) &&  patient.getDoctorIds().contains(doctorId))){
            patient.addDoctorId(doctorId);
            doctor.addPatientId(patientId);
              
            VPatient vPatient = new VPatient(patient.getPatientId(), patient.getPatientEmailId(),
                                         patient.getFirstName(),patient.getLastName(), patient.getPictureUrl(),
                                         patient.getAbout(), patient.getBirthDate());
            
            
            Message message = new Message.Builder().addData("patient", doctorId.toString()).build();
           
            Result result = null;
            try {
              Sender sender = new Sender(API_KEY);
              result = sender.send(message, patient.getGCMregId(), 5);
              } catch (IOException e) {
               e.printStackTrace();
              }
            
            
            if(result == null){
              return null;
            }
            
           
            if (result.getMessageId() != null) {
                String canonicalRegId = result.getCanonicalRegistrationId();
                if (canonicalRegId != null) {
                  Patient patient1 = pm.getObjectById(Patient.class, patientId);
                  patient1.setGCMregId(canonicalRegId);
                }
           
            }else{
               String error = result.getErrorCodeName();  //Should Unregister the device..
                
            }
            

            
           return vPatient;
            
          }else{
            return null; 
          }
           
     }else{
        return null;
     }
            
     }

  







  public Collection<VPatient> getPatients(long doctorId) {
    
    List<VPatient> vPatients = new ArrayList<VPatient>();
    
    Doctor doctor = pm.getObjectById(Doctor.class, doctorId);
    
    for (Long patientId : doctor.getPatientIds()) {
      Patient patient = pm.getObjectById(Patient.class, patientId);
      VPatient vPatient = new VPatient(patient.getPatientId(), patient.getPatientEmailId(),
                                   patient.getFirstName(), patient.getLastName(),patient.getPictureUrl(),
                                   patient.getAbout(), patient.getBirthDate());
      
      vPatients.add(vPatient);
    }
    
    return vPatients;
  }







  public Medications addMedications(Medications m) {
      
    Medications result;
    
      Long doctorId = m.getDoctorId();
      Long patientId = m.getPatientId();
      
        Doctor d = pm.getObjectById(Doctor.class ,doctorId);
        Patient p = pm.getObjectById(Patient.class ,patientId);
         
      if(d.getPatientIds().contains(m.getPatientId()) &&  p.getDoctorIds().contains(m.getDoctorId())){
        Long medicationId = utils.getMedicationIdByClientIds(doctorId, patientId);
        
           if(medicationId != null){
             Medications med = pm.getObjectById(Medications.class ,medicationId);
             med.setMedications(m.getMedications());
             result = med;
         
          }else{
            pm.makePersistent(m);
            result = m; 
           }
           
 
       Message message = new Message.Builder().addData("medications", doctorId.toString()).build();
      
       
       
          Result res = null;
        try {
          Sender sender = new Sender(API_KEY);
          res = sender.send(message, p.getGCMregId(), 5);
          } catch (IOException e) {
           e.printStackTrace();
          }
        
        
        if(res == null){
          return null;
        }
        
       
        if (res.getMessageId() != null) {
            String canonicalRegId = res.getCanonicalRegistrationId();
            if (canonicalRegId != null) {
              Patient patient1 = pm.getObjectById(Patient.class, patientId);
              patient1.setGCMregId(canonicalRegId);
            }
       
        }else{
           String error = res.getErrorCodeName();  //Should Unregister the device..
            
        }
        
      
     
            
       }else{
         result = null;
        }
    
      
          
      
      return result;
       
   }


    
    

  
  
  
  
  
  
  

  
  
}




Java Source Code List

android.UnusedStub.java
com.android.capstone.BaseActivity.java
com.android.capstone.DatePickerFragment.java
com.android.capstone.MainActivity.java
com.android.capstone.RegisterFragment.java
com.android.capstone.data.CheckinSvcApi.java
com.android.capstone.data.Checkin.java
com.android.capstone.data.Doctor.java
com.android.capstone.data.GPlusProfile.java
com.android.capstone.data.MedicationCheckinQA.java
com.android.capstone.data.Medications.java
com.android.capstone.data.Patient.java
com.android.capstone.data.VDoctor.java
com.android.capstone.data.VPatient.java
com.android.capstone.db.SymptomManagementContract.java
com.android.capstone.db.SymptomManagementDbHelper.java
com.android.capstone.db.SymptomManagementProvider.java
com.android.capstone.doctor.CheckinLogsListAdapter.java
com.android.capstone.doctor.CheckinLogs_Doctor_Fragment.java
com.android.capstone.doctor.DisplayCheckinActivity.java
com.android.capstone.doctor.DoctorMain_Fragment.java
com.android.capstone.doctor.Doctor_Main_CursorAdapter.java
com.android.capstone.doctor.Doctor_VPatient_Activity.java
com.android.capstone.doctor.Doctor_VPatient_Fragment.java
com.android.capstone.doctor.MedicationsListAdapter.java
com.android.capstone.doctor.MedicationsListFragment.java
com.android.capstone.doctor.alarm.CheckPainIntentService.java
com.android.capstone.doctor.alarm.CheckPain.java
com.android.capstone.doctor.alarm.CheckinAlarmService.java
com.android.capstone.doctor.alarm.OnBootReceiver.java
com.android.capstone.gcm.GcmBroadcastReceiver.java
com.android.capstone.gcm.GcmIntentService.java
com.android.capstone.patient.CheckinNowActivity.java
com.android.capstone.patient.PatientMain_Fragment.java
com.android.capstone.patient.Patient_Main_CursorAdapter.java
com.android.capstone.patient.ReminderCursorAdapter.java
com.android.capstone.patient.RemindersActivity.java
com.android.capstone.patient.TimePickerFragment.java
com.android.capstone.patient.checkin_now.model.AbstractWizardModel.java
com.android.capstone.patient.checkin_now.model.BranchPage.java
com.android.capstone.patient.checkin_now.model.CheckinNow_Model.java
com.android.capstone.patient.checkin_now.model.ModelCallbacks.java
com.android.capstone.patient.checkin_now.model.MultipleFixedChoicePage.java
com.android.capstone.patient.checkin_now.model.PageList.java
com.android.capstone.patient.checkin_now.model.PageTreeNode.java
com.android.capstone.patient.checkin_now.model.Page.java
com.android.capstone.patient.checkin_now.model.ReviewItem.java
com.android.capstone.patient.checkin_now.model.SingleFixedChoicePage.java
com.android.capstone.patient.checkin_now.ui.MultipleChoiceFragment.java
com.android.capstone.patient.checkin_now.ui.PageFragmentCallbacks.java
com.android.capstone.patient.checkin_now.ui.ReviewFragment.java
com.android.capstone.patient.checkin_now.ui.SingleChoiceFragment.java
com.android.capstone.patient.checkin_now.ui.StepPagerStrip.java
com.android.capstone.task.AddCheckinTask.java
com.android.capstone.task.AddMedicationsTask.java
com.android.capstone.task.AddPatientTask.java
com.android.capstone.task.GetClientCategoryTask.java
com.android.capstone.task.GetClientInfoTask.java
com.android.capstone.task.GetUserImageTask.java
com.android.capstone.task.RegisterDoctorTask.java
com.android.capstone.task.RegisterPatientTask.java
com.android.capstone.utils.CommonUtils.java
com.android.capstone.utils.RetrofitUtils.java
com.android.capstone.utils.SharedPrefUtils.java
com.android.capstone.views.CheckinLogsView.java
com.android.capstone.views.FloatingActionButton.java
com.coursera.capstone.checkin.Application.java
com.coursera.capstone.checkin.client.CheckinSvcApi.java
com.coursera.capstone.checkin.client.TokenSvcApi.java
com.coursera.capstone.checkin.controller.CheckinSvc.java
com.coursera.capstone.data.CheckinUtils.java
com.coursera.capstone.data.Checkin.java
com.coursera.capstone.data.ClientUtils.java
com.coursera.capstone.data.Constants.java
com.coursera.capstone.data.DoctorUtils.java
com.coursera.capstone.data.Doctor.java
com.coursera.capstone.data.InvalidRequestException.java
com.coursera.capstone.data.Medications.java
com.coursera.capstone.data.Message.java
com.coursera.capstone.data.MulticastResult.java
com.coursera.capstone.data.PMF.java
com.coursera.capstone.data.PatientUtils.java
com.coursera.capstone.data.Patient.java
com.coursera.capstone.data.Result.java
com.coursera.capstone.data.Sender.java
com.coursera.capstone.data.Token.java
com.coursera.capstone.data.VDoctor.java
com.coursera.capstone.data.VPatient.java
com.coursera.capstone.interceptor.AuthorizationInterceptor.java
com.coursera.capstone.interceptor.Checker.java