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