Guatemala Contracts Module Documentation: Difference between revisions

From IHRIS Wiki
Line 9: Line 9:
###If the person already has a position, we should "Change Position"
###If the person already has a position, we should "Change Position"
###If the person does not have a position we should "Set Position"
###If the person does not have a position we should "Set Position"
##The contract is selected by the user
##The position is selected by the user
##The salary for the position is entered by the user
##The user 'saves' the associated position information
###the total amount of the selected contract is calculated based on the salary


===Permanent Employees===
===Permanent Employees===

Revision as of 10:40, 22 October 2013

Use Case/Description

Temporary Employees

For temporary employees we have the contract+total_amount that we want to calculate from the salary. The process for assigning a temporary employee a position is three steps.

  1. Create a contract
  2. Create a position
  3. Assign the contract and position to a person
    1. Search for/create the person who is the temporary employee
    2. Assign the person a position
      1. If the person already has a position, we should "Change Position"
      2. If the person does not have a position we should "Set Position"
    3. The contract is selected by the user
    4. The position is selected by the user
    5. The salary for the position is entered by the user
    6. The user 'saves' the associated position information
      1. the total amount of the selected contract is calculated based on the salary

Permanent Employees

Data Model

<graphviz border='frame' format='png'>

digraph "Contract Module" {

  phase_status_doc [label="phase_status_doc\nfile(FILE)\nnotes(MLINE)" shape=box]
  person [shape=box]
  person_position [shape=box]
  position [shape=box]
  salary [shape=box]
  contract [ shape=box]
  phase_status[shape=box]
  phase_status_decision [shape=box]
  phase_status_stage [shape=box]
  contract_status [shape=box]
  contract_type [shape=box]
  resolution [shape=box label="resolution\ndate(DATE_YMD)\nunidadejectora(MAP)\nfile(FILE)"]
  unidadejectora [shape=box]
  partida_temp [shape=box label="partida_temp\nyear"]
  partida_perm [shape=box label="partida_perm\nincremental counter"]


  person->person_position
  person_position->salary [color=red]
  person_position->position
  contract->partida_temp
  person_position->partida_perm
  person_position->contract
  contract->phase_status [color=red]
  contract->contract_type
  contract->contract_status
  contract->resolution
  resolution->unidadejectora
  partida_temp->unidadejectora
  partida_perm->unidadejectora
  phase_status->phase_status_doc [color=red]
  phase_status->phase_status_stage
  phase_status->person [label=approver]
  phase_status->phase_status_decision

} </graphviz>