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());
}
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);
}
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());
}
Aggregations