Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
package org.everit.jira.reporting.service.costrate;

import java.time.LocalDate;
import java.util.List;

/**
 * Semi-Public User Cost Service.
 */
public interface UserCostService {

  /**
   * Add cost rate. Requires Wage Manager permission.
   *
   * @param userKey
   *          the user key
   * @param validFromIncl
   *          the from date (inclusive).
   * @param costRate
   *          the cost rate.
   */
  void addCostRate(String userKey, LocalDate validFromIncl, double costRate);

  /**
   * Delete cost rate. Requires Wage Manager permission.
   *
   * @param costRateId
   *          the id of cost rate.
   */
  void deleteCostRate(long costRateId);

  /**
   * List all cost rates for the specific users. Requires Wage Manager permission, else returns an empty list.
   *
   * @param userKey
   *          the user key.
   * @return list of cost rates.
   */
  List<CostRateInfo> listCostRates(String userKey);

  /**
   * Update cost rate. Requires Wage Manager permission.
   *
   * @param costRateId
   *          the id of cost rate.
   * @param userKey
   *          the user key
   * @param validFromIncl
   *          the from date (inclusive).
   * @param costRate
   *          the cost rate.
   */
  void updateCostRate(long costRateId, String userKey, LocalDate validFromIncl, double costRate);
}

...