πŸ’ΊPosition and OfficersRepo

Function and Usage

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.

Members and Attributes

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

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.

The Attribute List of Shareholder Objects

AttributeCommercial and Legal meaning

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

Group

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

AttributeCommercial and Legal Meaning

posList

List of positions

acctList

User number of the candidates

Officers Repo

Attributes List of Officers Repo

AttributeCommercial and Legal meaning

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.

Query API

The query API well describes the function and use of the Officers Repo in the whole system, as shown in the list below.

APIFunction and Usage

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.

Source Code

Last updated