Scenariusz testowy - import uzytkowników i rozpraw doktorskich
Import użytkowników
Do zapisania autorów z pliku csv skorzystamy z zadania cyklicznego START_IMPORT_OF_USERS
oraz REFRESH_DICTIONARIES
do upewnienia się, że przy imporcie aplikacja będzie korzystać z aktualnych danych słownikowych.
Aplikacja zapisuje autora z identyfikatorem na podstawie EwOsId. Jeśli się okaże, że już istnieje w systemie Omega, autor z takim samym USOSid, zostanie on zignorowany przy ponownym imporcie.
warunki przed wykonaniem
Aplikacja spodziewa się w pliku csv następującej kolejności kolumn:
UserId | USOSid | EwOsId | FirstName | LastName | PESEL | AffiliationOrganizationKey | Program | ProgramName | StartDate | EndDate | Status | StatusDescription |
z czego kolumny USOSid, EwOsId, firstName, lastName, Status powinny być nie puste.
Aplikacja importuje użytkowników na podstawie pliku, który znajduje się na serwerze (obecnie aplikacja spodziewa się tego pliku w ścieżce /data/authors/UAMdoktoranci02072019UTF8.filtered.csv
)
uruchomienie zadania
Jeśli nie ma jeszcze zdefiniowanych odpowiednich zadań, zobacz rozdział Tworzenie zadania cyklicznego.
Zadania możemy wykonać klikając przycisk “run” dla danego zadania na liście zadań
W naszym przypadku, jeśli chcemy zaimportowaćautorów, najlepiej najpierw uruchomić zadanie REFRESH_DICTIONARIES, aby zautualizować słowniki, a następnie START_IMPORT_OF_USERS
sprawdzenie spodziewanego rezultatu
Po uruchomieniu zadania START_IMPORT_OF_USERS, zacznie się proces importu. W zależności od ilości autorów w pliku, cały proces może trochę potrwać, jendak pierwsi autorzy powinni już być widoczni w systemie po kilku sekundach.
Aby to sprawdzić wyświetlimy dostępnych w systemie autorów. Wybieramy: Panel Redaktora → Funkcje Pomocnicze →Autorzy i pracownicy
Po kliknieciu “Szukaj” wyświetli sie lista z autorami, którzy spełnili kryteria wyszukiwania
Import rozpraw doktorskich
Do wykonaia tego importu potrzebujemy zdefiniowane dwa zadania cykfliczne w Omedze (jeśli jeszcze nie istnieją takie):
REFRESH_DICTIONARIES
- wykonanie go powinno odświeżyć wszystkie potrzebne słowniki np. z afiliacje, języki
START_IMPORT_OF_THESES
- wykonanie powinno zaciągnąć wszystkie prace doktorskie dla istniejących autorów z Omegi.
warunki przed wykonaniem
Aby zapisały sie w Omedze rozprawy doktorskie, potrzebujemy najpierw posiadać w systemie zaimportowanych autorów. Autorów możemy znaleźć Panel Redaktora → Funkcje Pomocnicze → Autorzy i pracownicy
Możemy tutaj ewentualnie zdefiniować kryteria wyszukiwania (jeśli nie podany żadnych powinno nam znaleźć wszystkich)
Po kliknieciu “Szukaj” wyświetli sie lista z autorami, którzy spełnili kryteria wyszukiwania
uruchomienie zadania
Jeśli nie ma jeszcze zdefiniowanych odpowiednich zadań, zobacz rozdział Tworzenie zadania cyklicznego.
Zadania możemy wykonać klikając przycisk “run” dla danego zadania na liście zadań
W naszym przypadku, jeśli chcemy zaimportować prace doktorskie najlepiej najpierw uruchomić zadanie REFRESH_DICTIONARIES, aby zautualizować słowniki, a następnie START_IMPORT_OF_THESES
sprawdzenie spodziewanego rezultatu
Po uruchomieniu zadania START_IMPORT_OF_THESES, zacznie się proces importu rozpraw. W zależności od ilości autorów w systemie dla których te rozprawy importujemy, cały proces może trochę potrwać, jendak pierwsze prace powinny już być widoczne w systemie po kilku sekundach.
Aby to sprawdzić wyświetlimy dostępne rozprawy doktorskie. Wybieramy: Panel Redaktora → Funkcje Główne → Prace dyplomowe → Rozprawy doktorskie
Następnie po wyszukaniu powinna nam się pokazać lista dostępnych rozpraw w systemie
Po kliknięciu na dany rekord, powinien nam się otworzyć wraz ze szczegółami
Tworzenie zadania cyklicznego
Bedąc zalogowanym z prawami administratora, wchodzimy w: Panel Redaktora → Funkcje Administracyjne → Scheduler
tutaj wybierając przycisk “Nowy” możemy dodać własne zadanie cykliczne, jeśli nie znajdziemy już zdefiniowanego
Uzupełniamy tutaj pola
“nazwa”
“zawartosc”- gdzie wpisujemy kod w JavaScript
zaznaczamy checkbox “Aktywny”
opcjonalnie “harmonogram” - wpisujemy wyrażenie cron (można skorzystać do tego z http://www.cronmaker.com)
Po skończeniu edycji klikamy “sprawdź poprawność” a następnie jeśli wszystko się zgadza, klikamy “zapisz”
przykładowe kody (do wpisania w pole zawartość)
dla zadania REFRESH_DICTIONARIES
org.jboss.seam.contexts.Lifecycle.beginCall();
var messagingService = component('messagingService');
messagingService.publishOnTopic( 'REFRESH_DICTIONARIES', '');
org.jboss.seam.contexts.Lifecycle.endCall();
dla zadania START_IMPORT_OF_THESES
org.jboss.seam.contexts.Lifecycle.beginCall();
var messagingService = component('messagingService');
messagingService.publishOnTopic( 'START_IMPORT_OF_THESES', '');
org.jboss.seam.contexts.Lifecycle.endCall();
dla zadania START_IMPORT_OF_USERS
org.jboss.seam.contexts.Lifecycle.beginCall();
var messagingService = component('messagingService');
messagingService.publishOnTopic( 'START_IMPORT_OF_USERS', '');
org.jboss.seam.contexts.Lifecycle.endCall();