πΊPosition and OfficersRepo
Last updated
Last updated
OfficersRepo is a public library that defines the positions objects such as directors and managers, as well as the creation, deletion, dismissal, position-taken, resignation, and other changes to the positions. It is worth noting that positions is different from titles, and several different positions may be assigned to the same title (e.g. "Director"). In addition, the system has designed group objects, which makes it easy to aggregate and distinguish users' positions with the title of director, and establish company executive body - the Board of Directors.
The members of the officers repo include position objects, adapting a position mapping with "Position Number -> Position Object" structure, a user position mapping with "User Number -> Position List" structure, as well as two position groups, Director Group and Manager Group.
Position object is similar to a special "Role", identified by the position number as the main key, while the user number and title are the attributes of the position object. In this way, when a manager takes a position, the user number attribute of a specific position is set to a specific user number. If a user takes multiple positions, the userβs number is equal to the user number of several positions.
title
Title:1-Shareholder, 2-Chairman, 3-Vice Chairman, 4-Managing Directorβ¦
seqOfPos
Position Number
acct
User Number of candidate
nominator
User number of nominator
startDate
The start date of position
endDate
The end date of position
seqOfVR
Rule number of voting rule.
titleOfNominator
The title of nominator
Considering that the board of directors often has some decision-making power as the executive body in the company, the position group objects have been set up to distinguish the directors group and the manager group without the director role.
Attribute List of Members objects
posList
List of positions
acctList
User number of the candidates
positions
Positions List
posInHand
List of officerβs positions. Query all position numbers list held by an officer by user number.
directors
Directors Group. Summarizes a list of all directors and the user numbers of the users who hold the position.
managers
Managers Group. Summarizes a list of all managers positions other than director and the number of the user who holds the position.
The query API well describes the function and use of the Officers Repo in the whole system, as shown in the list below.
posExist
Query whether a position with a specific number exists.
isOccupied
Query whether a position with a specific number is already occupied.
getPosition
Gets the position objects for the specified number.
getFullPosInfo
Get an array of related position objects by the number list.
isManager
Query whether a user with a specific number is a manager.
getNumOfManagers
Query the total number of users in the Manager group.
getManagersList
Get a list of all manager user numbers.
getManagersPosList
Get a list of all manager position numbers.
getManagersFullPosInfo
Get a list of all Manager position objects.
isDirector
Query whether a user of a specific number is a director.
getNumOfDirectors
Get the number of directors.
getDirectorsList
Get a list of director user numbers.
getDirectorsPosList
Get a list of all director position numbers.
getDirectorsFullPosInfo
Get a list of all director position objects.
hasPosition
Query whether a specific user takes specific positions.
getPosInHand
Get a list of all positions held by a specific user.
getFullPosInfoInHand
Get a list of all position objects for a specific user.
hasTitle
Query whether a user has specific title.
hasNominationRight
Query whether a specific user holds a specific nomination rights.
getBoardSeatsQuota
Get the number of nomination seats on the board of directors held by a specific user.
getBoardSeatsOccupied
Get the number of board nomination seats already occupied by a specific user.