Project

General

Profile

Actions

Task #386

closed

Managers algorithms

Added by Marcel Poul about 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Radek Tomiška
Category:
Modularity
Target version:
Start date:
04/26/2017
Due date:
% Done:

100%

Estimated time:
Owner:

Description

Every user contract can have managers. Those managers are either static values - set by admin or synchronization - or dynamically computed everytime the manager is needed.
The goal of this ticket is to implement new algorithm for computing managers, which shloud work as follows:

The org structure (tree structure) is defined as ORG A <- ORG B <- ORG C, ORG B <- ORB D.
Every user always sits only at leafs - e.g. USER A sits on ORG C, USER B sits on ORG D. Nobody sits on ORG A or ORB B.

When we compute the manager of the user, we cannot simply go through the tree, because users A and B sits on the same level in the tree.
So we need other reference attribute that point to the organization that manages it: eg. ORG C - - - > ORG D. Let's call it "MY MANAGER POSITION" reference attribute.

All together: USER B is the manager of USER A

See the picture
note: "Sits" means "has valid contract that is positioned on this node"...

To discuss - "MY MANAGER POSITION" attribute will be extended attribute of treeNode or should it be basic attribute?


Files

managers_from_org_structure.png (86.6 KB) managers_from_org_structure.png Marcel Poul, 04/26/2017 08:57 AM
Actions #2

Updated by Radek Tomiška about 7 years ago

  • Category set to Modularity
  • Assignee changed from Radek Tomiška to Ondřej Kopr
  • % Done changed from 0 to 90

New alghoritm is implemented by description and nice artistic structural diagram :).
Added feature is dynamic filter registration and configuration, see doc https://proj.bcvsolutions.eu/ngidm/doku.php?id=en:navrh:konfigurace_aplikace#entity_filters:
- custom module could register new filter (e.g. on identities, roles and other dto agendas - BE only for now )
- filter could be overriden too - curretly used implementation could be chosen by configuration service (see doc).

Filter implementation is in rtomiska/identity-dto branch. Will be merged after notification dtos refactoring.

Could you please make a test and review please?

Actions #3

Updated by Ondřej Kopr about 7 years ago

  • Status changed from New to Needs feedback
Actions #4

Updated by Ondřej Kopr almost 7 years ago

  • % Done changed from 90 to 100
I did review:
  • czech language in code - commentary (EavCodeSubordinatesFilter 70)

Tested EavCodeSubordinatesFilter and DefaultSubordinatesFilter (difficult for setup :)). You can build awesome jpa criteria! Thank you. You can close this ticket.

Actions #5

Updated by Ondřej Kopr almost 7 years ago

  • Assignee changed from Ondřej Kopr to Radek Tomiška
Actions #6

Updated by Radek Tomiška almost 7 years ago

  • Status changed from Needs feedback to Closed

I've removed forgotten comment, thx :)

Actions

Also available in: Atom PDF