Search in sources :

Example 31 with Survey

use of org.eyeseetea.malariacare.data.database.model.Survey in project pictureapp by EyeSeeTea.

the class BaseActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    Log.d(TAG, "onCreate");
    requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
    requestWindowFeature(Window.FEATURE_ACTIVITY_TRANSITIONS);
    super.onCreate(savedInstanceState);
    PreferencesState.getInstance().onCreateActivityPreferences(getResources(), getTheme());
    if (EyeSeeTeaApplication.permissions == null) {
        EyeSeeTeaApplication.permissions = Permissions.getInstance(this);
    }
    if (!EyeSeeTeaApplication.permissions.areAllPermissionsGranted()) {
        EyeSeeTeaApplication.permissions.requestNextPermission();
    }
    initView(savedInstanceState);
    if (PreferencesState.getInstance().isPushInProgress()) {
        List<Survey> surveys = Survey.getAllSendingSurveys();
        Log.d(TAG, "The app was closed in the middle of a push. Surveys sending: " + surveys.size());
        for (Survey survey : surveys) {
            survey.setStatus(Constants.SURVEY_QUARANTINE);
            survey.save();
        }
        PreferencesState.getInstance().setPushInProgress(false);
    }
    alarmPush = new AlarmPushReceiver();
    alarmPush.setPushAlarm(this);
    mBaseActivityStrategy.onCreate();
}
Also used : Survey(org.eyeseetea.malariacare.data.database.model.Survey) AlarmPushReceiver(org.eyeseetea.malariacare.receivers.AlarmPushReceiver)

Example 32 with Survey

use of org.eyeseetea.malariacare.data.database.model.Survey in project pictureapp by EyeSeeTea.

the class DynamicTabAdapter method isCounterValueEqualToMax.

private boolean isCounterValueEqualToMax(Question question, Option selectedOption) {
    Survey survey = (question.isStockQuestion()) ? Session.getStockSurvey() : getMalariaSurvey();
    Float counterValue = survey.getCounterValue(question, selectedOption);
    Float maxCounter = selectedOption.getFactor();
    return counterValue.equals(maxCounter);
}
Also used : Session.getMalariaSurvey(org.eyeseetea.malariacare.data.database.utils.Session.getMalariaSurvey) Survey(org.eyeseetea.malariacare.data.database.model.Survey)

Example 33 with Survey

use of org.eyeseetea.malariacare.data.database.model.Survey in project pictureapp by EyeSeeTea.

the class AvailableRowBuilder method incrementCount.

@Override
protected int incrementCount(SurveyStock surveyStock, int newValue) {
    Survey survey = surveyStock.getSurvey();
    Date maxBalanceDate = Survey.getLastDateForSurveyType(Constants.SURVEY_RESET);
    if (maxBalanceDate == null || Utils.dateGreaterOrEqualsThanDate(maxBalanceDate, survey.getEventDate())) {
        if (survey.getType().equals(Constants.SURVEY_RESET) || survey.getType().equals(Constants.SURVEY_RECEIPT)) {
            return newValue;
        } else if (survey.getType().equals(Constants.SURVEY_ISSUE)) {
            return (-newValue);
        }
    }
    return 0;
}
Also used : Survey(org.eyeseetea.malariacare.data.database.model.Survey) Date(java.util.Date)

Example 34 with Survey

use of org.eyeseetea.malariacare.data.database.model.Survey in project pictureapp by EyeSeeTea.

the class StockService method prepareStockData.

private void prepareStockData() {
    Log.i(TAG, "Preparing stock data...");
    Date lastEvenSurveyDate = Survey.getLastDateForSurveyType(Constants.SURVEY_RESET);
    Date queryDate = lastEvenSurveyDate;
    if (lastEvenSurveyDate == null || Utils.dateGreaterOrEqualsThanDate(Utils.getTodayDate(), lastEvenSurveyDate)) {
        queryDate = Utils.getTodayDate();
    }
    List<Survey> sentSurveysForStock = Survey.findSurveysWithProgramAndGreaterDate(Program.getStockProgram(), queryDate);
    Log.i(TAG, String.format("Found %d surveys to build monitor info, aggregating data...", sentSurveysForStock.size()));
    StockBuilder stockBuilder = new StockBuilder(getApplicationContext());
    stockBuilder.addSurveys(sentSurveysForStock);
    //Since intents does NOT admit NON serializable as values we use Session instead
    Log.i(TAG, String.format("Stock data calculated ok", sentSurveysForStock.size()));
    Session.putServiceValue(PREPARE_STOCK_DATA, stockBuilder);
    LocalBroadcastManager.getInstance(this).sendBroadcast(new Intent(PREPARE_STOCK_DATA));
}
Also used : Survey(org.eyeseetea.malariacare.data.database.model.Survey) StockBuilder(org.eyeseetea.malariacare.presentation.factory.stock.StockBuilder) Intent(android.content.Intent) Date(java.util.Date)

Example 35 with Survey

use of org.eyeseetea.malariacare.data.database.model.Survey in project pictureapp by EyeSeeTea.

the class MockedPushSurveysUseCase method execute.

public void execute(Callback callback) {
    List<Survey> surveys = Survey.getAllMalariaSurveysToBeSent();
    //Check surveys not in progress
    for (Survey survey : surveys) {
        survey.setStatus(SURVEY_SENT);
        survey.save();
        Survey stockSurvey = Survey.getStockSurveyWithEventDate(survey.getEventDate());
        if (stockSurvey != null) {
            stockSurvey.setStatus(SURVEY_SENT);
            stockSurvey.save();
        }
    }
    callback.onPushFinished();
}
Also used : Survey(org.eyeseetea.malariacare.data.database.model.Survey)

Aggregations

Survey (org.eyeseetea.malariacare.data.database.model.Survey)39 Date (java.util.Date)8 Intent (android.content.Intent)7 Value (org.eyeseetea.malariacare.data.database.model.Value)6 ArrayList (java.util.ArrayList)4 Program (org.eyeseetea.malariacare.data.database.model.Program)3 Question (org.eyeseetea.malariacare.data.database.model.Question)3 Session.getMalariaSurvey (org.eyeseetea.malariacare.data.database.utils.Session.getMalariaSurvey)3 Option (org.eyeseetea.malariacare.data.database.model.Option)2 OrgUnit (org.eyeseetea.malariacare.data.database.model.OrgUnit)2 EventExtended (org.eyeseetea.malariacare.data.sync.importer.models.EventExtended)2 ImportSummaryErrorException (org.eyeseetea.malariacare.domain.exception.ImportSummaryErrorException)2 DialogInterface (android.content.DialogInterface)1 NonNull (android.support.annotation.NonNull)1 View (android.view.View)1 ListView (android.widget.ListView)1 TableRow (android.widget.TableRow)1 Calendar (java.util.Calendar)1 HashSet (java.util.HashSet)1 CompositeScore (org.eyeseetea.malariacare.data.database.model.CompositeScore)1