Guatemala Contracts Module Documentation: Difference between revisions

From IHRIS Wiki
Line 8: Line 8:
###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 position is selected by the user
##Set salary information   
##Set salary information   

Revision as of 11:21, 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 position
  2. 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 position is selected by the user
    4. Set salary information
      • Monthly Salary Amount
    5. Set the contract information
      • Start Date
      • End Date
      • Contratista
      • Contract Type
      • etc...
    6. The user 'saves' the associated position information
      1. the total amount of the selected contract is calculated based on the most recent salary

In the following we want to add a place for contract that is like 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 [color=red]
  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>