示例#1
0
 /**
  * Add log when designation updated
  *
  * @since 0.1
  *
  * @param  integer $desig_id
  * @param  array $fields
  *
  * @return void
  */
 public function update_designation($desig_id, $fields)
 {
     if (!$desig_id) {
         return;
     }
     $old_desig = \WeDevs\ERP\HRM\Models\Designation::find($desig_id)->toArray();
     unset($old_desig['created_at'], $old_desig['updated_at']);
     $changes = $this->get_array_diff($fields, $old_desig);
     if (empty($changes['old_val']) && empty($changes['new_val'])) {
         $message = false;
     } else {
         $message = sprintf('<strong>%s</strong> designation has been edited', $old_desig['title']);
     }
     if ($message) {
         erp_log()->add(['sub_component' => 'designation', 'message' => $message, 'created_by' => get_current_user_id(), 'changetype' => 'edit', 'old_value' => $changes['old_val'], 'new_value' => $changes['new_val']]);
     }
 }
示例#2
0
/**
 * Delete a department
 *
 * @param  int  department id
 *
 * @return bool
 */
function erp_hr_delete_designation($designation_id)
{
    if (is_array($designation_id)) {
        $exist_employee = [];
        $not_exist_employee = [];
        foreach ($designation_id as $key => $designation) {
            $desig = new \WeDevs\ERP\HRM\Designation(intval($designation));
            if ($desig->num_of_employees()) {
                $exist_employee[] = $designation;
            } else {
                do_action('erp_hr_desig_delete', $desig);
                $not_exist_employee[] = $designation;
            }
        }
        if ($not_exist_employee) {
            \WeDevs\ERP\HRM\Models\Designation::destroy($not_exist_employee);
        }
        return $exist_employee;
    } else {
        $designation = new \WeDevs\ERP\HRM\Designation($designation_id);
        if ($designation->num_of_employees()) {
            return new WP_Error('not-empty', __('You can not delete this designation because it contains employees.', 'wp-erp'));
        }
        do_action('erp_hr_desig_delete', $designation);
        return \WeDevs\ERP\HRM\Models\Designation::find($designation_id)->delete();
    }
}