Search in sources :

Example 21 with Task

use of de.symeda.sormas.app.backend.task.Task in project SORMAS-Project by hzi-braunschweig.

the class CaseBackendTest method testTaskReassignmentAfterChangedCaseFacility.

@Test
public void testTaskReassignmentAfterChangedCaseFacility() throws DaoException {
    CaseDao caseDao = DatabaseHelper.getCaseDao();
    Case caze = TestEntityCreator.createCase();
    User user = ConfigProvider.getUser();
    user.setHealthFacility(caze.getHealthFacility());
    UserRole userRole = UserRole.HOSPITAL_INFORMANT;
    Set<UserRole> userRoles = new HashSet<>();
    userRoles.add(userRole);
    user.setUserRoles(userRoles);
    DatabaseHelper.getUserDao().saveAndSnapshot(user);
    TaskDao taskDao = DatabaseHelper.getTaskDao();
    Task task = TestEntityCreator.createCaseTask(caze, TaskStatus.PENDING, user);
    caze = caseDao.queryUuidBasic(caze.getUuid());
    assertEquals(TestHelper.USER_UUID, caze.getSurveillanceOfficer().getUuid());
    assertEquals(caze.getResponsibleRegion().getUuid(), TestHelper.REGION_UUID);
    assertEquals(caze.getResponsibleDistrict().getUuid(), TestHelper.DISTRICT_UUID);
    assertEquals(caze.getResponsibleCommunity().getUuid(), TestHelper.COMMUNITY_UUID);
    assertEquals(caze.getHealthFacility().getUuid(), TestHelper.FACILITY_UUID);
    task = taskDao.queryUuid(task.getUuid());
    assertEquals(TestHelper.USER_UUID, task.getAssigneeUser().getUuid());
    // Case not in user's jurisdiction anymore
    caze.setResponsibleDistrict(DatabaseHelper.getDistrictDao().queryUuid(TestHelper.SECOND_DISTRICT_UUID));
    caze.setCommunity(null);
    caseDao.saveAndSnapshot(caze);
    caze = caseDao.queryUuidBasic(caze.getUuid());
    assertEquals(TestHelper.SECOND_USER_UUID, caze.getSurveillanceOfficer().getUuid());
    task = taskDao.queryUuid(task.getUuid());
    assertEquals(TestHelper.USER_UUID, task.getAssigneeUser().getUuid());
    caze.setHealthFacility(null);
    caseDao.saveAndSnapshot(caze);
    task = taskDao.queryUuid(task.getUuid());
    assertEquals(TestHelper.SECOND_USER_UUID, task.getAssigneeUser().getUuid());
}
Also used : Task(de.symeda.sormas.app.backend.task.Task) User(de.symeda.sormas.app.backend.user.User) UserRole(de.symeda.sormas.api.user.UserRole) CaseDao(de.symeda.sormas.app.backend.caze.CaseDao) TaskDao(de.symeda.sormas.app.backend.task.TaskDao) Case(de.symeda.sormas.app.backend.caze.Case) HashSet(java.util.HashSet) Test(org.junit.Test)

Example 22 with Task

use of de.symeda.sormas.app.backend.task.Task in project SORMAS-Project by hzi-braunschweig.

the class ContactDao method deleteContactAndAllDependingEntities.

public void deleteContactAndAllDependingEntities(Contact contact) throws SQLException {
    // Cancel if not in local database
    if (contact == null) {
        return;
    }
    // Delete all visits associated ONLY with this contact
    List<Visit> visits = DatabaseHelper.getVisitDao().getByContact(contact);
    for (Visit visit : visits) {
        if (DatabaseHelper.getContactDao().getCountByPersonAndDisease(visit.getPerson(), visit.getDisease()) <= 1) {
            DatabaseHelper.getVisitDao().deleteCascade(visit);
        }
    }
    // Delete all tasks associated with this contact
    List<Task> tasks = DatabaseHelper.getTaskDao().queryByContact(contact);
    for (Task task : tasks) {
        DatabaseHelper.getTaskDao().deleteCascade(task);
    }
    deleteCascade(contact);
}
Also used : Task(de.symeda.sormas.app.backend.task.Task) Visit(de.symeda.sormas.app.backend.visit.Visit)

Example 23 with Task

use of de.symeda.sormas.app.backend.task.Task in project SORMAS-Project by hzi-braunschweig.

the class CaseReadTaskListFragment method onListItemClick.

@Override
public void onListItemClick(View view, int position, Object item) {
    Task task = (Task) item;
    TaskEditActivity.startActivity(getContext(), task.getUuid());
}
Also used : Task(de.symeda.sormas.app.backend.task.Task)

Aggregations

Task (de.symeda.sormas.app.backend.task.Task)23 Case (de.symeda.sormas.app.backend.caze.Case)7 CaseDao (de.symeda.sormas.app.backend.caze.CaseDao)6 TaskDao (de.symeda.sormas.app.backend.task.TaskDao)6 User (de.symeda.sormas.app.backend.user.User)6 Contact (de.symeda.sormas.app.backend.contact.Contact)5 Event (de.symeda.sormas.app.backend.event.Event)4 Community (de.symeda.sormas.app.backend.region.Community)4 District (de.symeda.sormas.app.backend.region.District)4 AsyncTask (android.os.AsyncTask)3 UserRole (de.symeda.sormas.api.user.UserRole)3 SavingAsyncTask (de.symeda.sormas.app.core.async.SavingAsyncTask)3 Date (java.util.Date)3 HashSet (java.util.HashSet)3 Test (org.junit.Test)3 TaskDto (de.symeda.sormas.api.task.TaskDto)2 ValidationException (de.symeda.sormas.api.utils.ValidationException)2 ActivityAsCase (de.symeda.sormas.app.backend.activityascase.ActivityAsCase)2 ClinicalVisit (de.symeda.sormas.app.backend.clinicalcourse.ClinicalVisit)2 DaoException (de.symeda.sormas.app.backend.common.DaoException)2