Interface StructureService


@Provides(StructureService.class) public interface StructureService
Odpowiada za zarządzanie strukturą organizacyją systemu. Pozwala zarządzać jednostkami organizacyjnymi, stanowiskami, oraz powiązaniami między stanowiskami a użytkownikami.
Author:
Paweł Rosolak 27 lis 2013
  • Method Details

    • getOrganizationalUnit

      OrganizationalUnit getOrganizationalUnit(Long id, String... joins)
      Pobiera jednostkę organizacyjną o podanym id. Umożliwia również dołączenie powiązanych obiektów z bazy danych.
      Parameters:
      id - Id jednostki organizacyjnej
      joins - Określa, które elementy mamy dołączyć do obiektu jednostki organizacyjnej.
      Returns:
      Zwraca obiekt jednostki organizacyjnej.
      Throws:
      OrganizationalUnitNotFoundException - Jeżeli nie znaleziono jednostki o podanym symbolu
    • getOrganizationalUnit

      OrganizationalUnit getOrganizationalUnit(String symbol, String... joins)
      Pobiera jednostkę organizacyjną o podanym symbolu. Umożliwia również dołączenie powiązanych obiektów z bazy danych.
      Parameters:
      symbol - Symbol jednostki organizacyjnej
      joins - Określa, które elementy mamy dołączyć do obiektu jednostki organizacyjnej.
      Returns:
      Zwraca obiekt jednostki organizacyjnej.
      Throws:
      OrganizationalUnitNotFoundException - Jeżeli nie znaleziono jednostki o podanym symbolu
    • createOrganizationalUnit

      Long createOrganizationalUnit(OrganizationalUnit ou)
      Tworzy nową jednostkę organizacyjną
      Parameters:
      ou - Definicja jednostki organizacyjnej
      Returns:
      Zwraca id zapisanego w bazie obiektu.
    • updateOrganizationalUnit

      void updateOrganizationalUnit(OrganizationalUnit ou)
      Modyfikuje jednostkę organizacyjną
      Parameters:
      ou - - Definicja jednostki organizacyjnej.
    • changeOrganizationalUnit

      void changeOrganizationalUnit(OrganizationalUnit ou) throws OrganizationalUnitAlreadyExistException
      Modyfikuje jednostkę organizacyjną
      Parameters:
      ou - Definicja jednostki organizacyjnej
      Throws:
      OrganizationalUnitAlreadyExistException
    • deleteOrganizationalUnit

      void deleteOrganizationalUnit(String symbol)
      Usuwa jednostkę o podanym symbolu
      Parameters:
      symbol - Symbol jednostki organizacyjnej
    • deleteOrganizationalUnit

      void deleteOrganizationalUnit(Long id)
      Usuwa jednostkę o podanym id
      Parameters:
      id - Id jednostki organizacyjnej
    • validateOrganizationalUnit

      Sprawdza następujące warunki:
      • Czy nazwa OU nie jest pusta
      • Czy symbol OU nie jest pusty
      • Czy symbol OU nie jest już przypisany do innego OU
      Parameters:
      ou - Obiekt jednostki
      Throws:
      OrganizationalUnitAlreadyExistException - Wyjątek występuję jeżeli ou nie posiada zdefiniowanego id i istnieje już inna jednostka o podanym symbolu. Jeżeli ou ma zdefiniowane id to wyjątek nie zostanie rzucony, aby umożliwić walidację przed modyfikacją już istniejącej jednostki.
      EmptyPropertyException
    • getPosition

      Position getPosition(Long id, String... joins)
      Pobiera stanowisko o podanym id.
      Parameters:
      id - Id stanowiska
      joins - Określa, które elementy mamy dołączyć do obiektu stanowiska.
      Returns:
      Zwraca obiekt stanowiska
    • getPositions

      CountedResult<Position> getPositions(String name, String symbol, String higherPositionName, String higherPositionSymbol, String organizationalUnitName, String organizationalUnitSymbol, Long roleId, String userId)
      Parameters:
      name - Nazwa stanowiska
      symbol - Symbol stanowiska
      higherPositionName - Nazwa stanowiska nadrzędnego
      higherPositionSymbol - Symbol stanowiska nadrzędnego
      organizationalUnitName - Nazwa jednostki organizacyjnej
      organizationalUnitSymbol - Symbol jednostki organizacyjnej
      roleId - Id roli
      userId - Id użytkownika
      Returns:
      Lista stanowisk
    • getPositions

      CountedResult<Position> getPositions(String name, String symbol, String higherPositionName, String higherPositionSymbol, String organizationalUnitName, String organizationalUnitSymbol, Long roleId, String userId, Pagination pagination)
      Parameters:
      name - Nazwa stanowiska
      symbol - Symbol stanowiska
      higherPositionName - Nazwa stanowiska nadrzędnego
      higherPositionSymbol - Symbol stanowiska nadrzędnego
      organizationalUnitName - Nazwa jednostki organizacyjnej
      organizationalUnitSymbol - Symbol jednostki organizacyjnej
      roleId - Id roli
      userId - Id użytkownika
      pagination - Konfiguracja paginacji
      Returns:
      Lista stanowisk
    • getOrganizationalUnits

      CountedResult<OrganizationalUnit> getOrganizationalUnits(String organizationalUnitName, String organizationalUnitSymbol, String higherOrganizationalUnitName, String higherOrganizationalUnitSymbol, String directorPositionName, String directorPositionSymbol)
      Wyszukiwanie jednostek organizacyjnych
      Parameters:
      organizationalUnitName - Nazwa jednostki
      organizationalUnitSymbol - Symbol jednostki
      higherOrganizationalUnitName - Nazwa jednostki nadrzędnej
      higherOrganizationalUnitSymbol - Symbol jednostki nadrzędnej
      directorPositionName - Nazwa stanowiska kierowniczego
      directorPositionSymbol - Symbol stanowiska kierowniczego
      Returns:
      Lista jednostek organizacyjnych
    • getOrganizationalUnits

      CountedResult<OrganizationalUnit> getOrganizationalUnits(String organizationalUnitName, String organizationalUnitSymbol, String higherOrganizationalUnitName, String higherOrganizationalUnitSymbol, String directorPositionName, String directorPositionSymbol, Pagination pagination)
      Wyszukiwanie jednostek organizacyjnych
      Parameters:
      organizationalUnitName - Nazwa jednostki
      organizationalUnitSymbol - Symbol jednostki
      higherOrganizationalUnitName - Nazwa jednostki nadrzędnej
      higherOrganizationalUnitSymbol - Symbol jednostki nadrzędnej
      directorPositionName - Nazwa stanowiska kierowniczego
      directorPositionSymbol - Symbol stanowiska kierowniczego
      pagination - Konfiguracja paginacji
      Returns:
      Lista jednostek organizacyjnych
    • getPosition

      Position getPosition(String symbol, String... joins)
      Pobiera stanowisko o podanym symbolu.
      Parameters:
      symbol - Symbol stanowiska
      joins - Określa, które elementy mamy dołączyć do obiektu stanowiska.
      Returns:
      Zwraca obiekt stanowiska
    • createPosition

      Long createPosition(Position position)
      Tworzy nowe stanowisko
      Parameters:
      position - Definicja stanowiska
      Returns:
      Zwraca id zapisanego w bazie obiektu
    • createPosition

      Long createPosition(Position position, List<Long> roleIds)
      Tworzy nowe stanowisko
      Parameters:
      position - Definicja stanowiska
      roleIds - Lista id ról do przypisania stanowisku
      Returns:
      Zwraca id zapisanego w bazie obiektu
    • updatePosition

      void updatePosition(Position position)
      Modyfikuje stanowisko
      Parameters:
      position - Definicja stanowiska
    • changePosition

      void changePosition(Position position) throws PositionAlreadyExistException
      Modyfikuje stanowisko
      Parameters:
      position - Definicja stanowiska
      Throws:
      PositionAlreadyExistException
    • deletePosition

      void deletePosition(String symbol)
      Usuwa stanowisko o podanym symbolu
      Parameters:
      symbol - Symbol stanowiska
    • deletePosition

      void deletePosition(Long id)
      Usuwa stanowisko o podanym identyfikatorze
      Parameters:
      id - Identyfikator stanowiska
    • addPositionToUser

      void addPositionToUser(String userName, Long positionId)
      Przypisuje stanowisko do użytkownika
      Parameters:
      userName - Login użytkownika
      positionId - Id stanowiska
    • addPositionsToUser

      void addPositionsToUser(String userName, List<Long> positionIds)
      Przypisuje stanowiska do użytkwonika
      Parameters:
      userName - Login użytkownika
      positionIds - Lista id stanowisk
    • detachPositionFromUser

      void detachPositionFromUser(Long positionId)
      Odłącza stanowisko od użytkownika
      Parameters:
      positionId - Id stanowiska
    • detachAllPositions

      void detachAllPositions(String userName)
      Odłącza wszystkie stanowiska od użytkownika
      Parameters:
      userName - Login użytkownika
    • validatePosition

      Sprawdza następujące warunki:
      • Czy nazwa stanowiska nie jest pusta
      • Czy symbol stanowiska nie jest pusty
      • Czy symbol stanowiska nie jest już przypisany do innego stanowiska
      Parameters:
      position -
      Throws:
      EmptyPropertyException
      PositionAlreadyExistException - Wyjątek występuje jeżeli stanowisko nie posiada zdefiniowanego id i istnieje już inne stanowisko o podanym symbolu. Jeżeli stanowisko ma zdefiniowane id to wyjątek nie zostanie rzucony, aby umożliwić walidację przed modyfikacją już istniejącego stanowiska.
      PositionNotFoundException - Wyjątek występuje jeżeli obiekt stanowiska ma zdefiniowane stanowisko nadrzędne, którego nie ma w systemie.
    • deletePositionTranslationsForLocale

      void deletePositionTranslationsForLocale(Locale locale)
      Usuwa wszystkie nadpisane tłumaczenia stanowisk w podanym języku
      Parameters:
      locale - Język
    • deleteOrganizationalUnitTranslationsForLocale

      void deleteOrganizationalUnitTranslationsForLocale(Locale locale)
      Usuwa wszystkie nadpisane tłumaczenia jednostek organizacyjnych w podanym języku
      Parameters:
      locale - Język
    • addPositionTranslation

      Long addPositionTranslation(Long positionId, PositionTranslation positionTranslation)
      Zapisuje tłumaczenie stanowiska w bazie danych
      Parameters:
      positionId - Id tłumaczonego stanowiska
      positionTranslation - Tłumaczenie do dodania
      Returns:
      Id utworzonego obiektu
    • addOrganizationalUnitTranslation

      Long addOrganizationalUnitTranslation(Long organizationalUnitId, OrganizationalUnitTranslation ouTranslation)
      Zapisuje tłumaczenie jednostki organizacyjnej w bazie danych
      Parameters:
      organizationalUnitId - Id tłumaczonej jednostki organizacyjnej
      ouTranslation - Tłumaczenie do dodania
      Returns:
      Id utworzonego obiektu
    • updatePositionTranslation

      void updatePositionTranslation(Long id, String newValue)
      Aktualizuje tekst tłumaczenia stanowiska
      Parameters:
      id - Id tłumaczenia stanowiska
      newValue - Nowy tekst tłumaczenia
    • updateOrganizationalUnitTranslation

      void updateOrganizationalUnitTranslation(Long id, String newValue)
      Aktualizuje tekst tłumaczenia jednostki organizacyjnej
      Parameters:
      id - Id tłumaczenia jednostki organizacyjnej
      newValue - Nowy tekst tłumaczenia
    • deletePositionTranslation

      void deletePositionTranslation(Long id)
      Usuwa tłumaczenie stanowiska o podanym id
      Parameters:
      id - Id tłumaczenia
    • deleteOrganizationalUnitTranslation

      void deleteOrganizationalUnitTranslation(Long id)
      Usuwa tłumaczenie jednostki organizacyjnej o podanym id
      Parameters:
      id - Id tłumaczenia
    • getPositionTranslation

      String getPositionTranslation(Long entityId, TranslatedFieldType fieldType)
      Zwraca tłumaczenie dla konkretnego pola stanowiska o podanym id
      Parameters:
      entityId - Id elementu
      fieldType - Typ pola
      Returns:
      Tłumaczenie
    • getPositionTranslation

      String getPositionTranslation(Long entityId, TranslatedFieldType fieldType, Locale locale)
      Zwraca tłumaczenie dla konkretnego pola stanowiska o podanym id
      Parameters:
      entityId - Id elementu
      fieldType - Typ pola
      locale - Język
      Returns:
      Tłumaczenie
    • getOrganizationalUnitTranslation

      String getOrganizationalUnitTranslation(Long entityId, TranslatedFieldType fieldType)
      Zwraca tłumaczenie dla konkretnego pola jendostki organizacyjnej o podanym id
      Parameters:
      entityId - Id elementu
      fieldType - Typ pola
      Returns:
      Tłumaczenie
    • getOrganizationalUnitTranslation

      String getOrganizationalUnitTranslation(Long entityId, TranslatedFieldType fieldType, Locale locale)
      Zwraca tłumaczenie dla konkretnego pola jendostki organizacyjnej o podanym id
      Parameters:
      entityId - Id elementu
      fieldType - Typ pola
      locale - Język
      Returns:
      Tłumaczenie