/**
 * Delete a department
 *
 * @param  int  department id
 *
 * @return bool
 */
function erp_hr_delete_department($department_id)
{
    $department = new \WeDevs\ERP\HRM\Department($department_id);
    if ($department->num_of_employees()) {
        return new WP_Error('not-empty', __('You can not delete this department because it contains employees.', 'wp-erp'));
    }
    do_action('erp_hr_dept_delete', $department_id);
    return \WeDevs\ERP\HRM\Models\Department::find($department_id)->delete();
}
    /**
     * Render Single row
     *
     * @param init $department_id
     * @param integer $level
     *
     * @return void [html]
     */
    public function single_row($department_id, $level = 0)
    {
        $department = new \WeDevs\ERP\HRM\Department($department_id);
        $colume_info = $this->get_column_info();
        echo '<tr>';
        foreach (reset($colume_info) as $column_name => $column_title) {
            switch ($column_name) {
                case 'cb':
                    ?>
                    <th scope="row" class="check-column">

                        <label class="screen-reader-text" for="cb-select-<?php 
                    the_ID();
                    ?>
"><?php 
                    printf(__('Select %s'), $department->title);
                    ?>
</label>
                        <input id="cb-select-<?php 
                    the_ID();
                    ?>
" type="checkbox" name="department_id[]" value="<?php 
                    echo $department->id;
                    ?>
" />
                        <div class="locked-indicator"></div>

                    </th>
                    <?php 
                    break;
                case 'name':
                    echo '<td>';
                    $pad = str_repeat('&#8212; ', $level);
                    $actions = array();
                    $delete_url = '';
                    $link_to_employee = add_query_arg(array('page' => 'erp-hr-employee', 'filter_department' => $department->id), admin_url('admin.php'));
                    $actions['edit'] = sprintf('<a href="%s" data-id="%d" title="%s">%s</a>', $delete_url, $department->id, __('Edit this item', 'wp-erp'), __('Edit', 'wp-erp'));
                    $actions['delete'] = sprintf('<a href="%s" class="submitdelete" data-id="%d" title="%s">%s</a>', $delete_url, $department->id, __('Delete this item', 'wp-erp'), __('Delete', 'wp-erp'));
                    printf('<a href="%4$s"><strong>%1$s %2$s</strong></a> %3$s', $pad, $department->title, $this->row_actions($actions), $link_to_employee);
                    echo '</td>';
                    break;
                case 'lead':
                    echo '<td>';
                    if ($new_lead = $department->get_lead()) {
                        echo $new_lead->get_link();
                    } else {
                        echo '-';
                    }
                    echo '</td>';
                    break;
                case 'number_employee':
                    echo '<td>';
                    echo $department->num_of_employees();
                    echo '</td>';
                    break;
                default:
                    echo '<td>';
                    echo '';
                    echo '</td>';
                    break;
            }
        }
        echo '</tr>';
    }
/**
 * Delete a department
 *
 * @param  int  department id
 *
 * @return bool
 */
function erp_hr_delete_department($department_id)
{
    $department = new \WeDevs\ERP\HRM\Department(intval($department_id));
    if ($department->num_of_employees()) {
        return false;
    }
    do_action('erp_hr_dept_delete', $department_id);
    $parent_id = \WeDevs\ERP\HRM\Models\Department::where('id', '=', $department_id)->pluck('parent');
    if ($parent_id) {
        \WeDevs\ERP\HRM\Models\Department::where('parent', '=', $department_id)->update(['parent' => $parent_id]);
    } else {
        \WeDevs\ERP\HRM\Models\Department::where('parent', '=', $department_id)->update(['parent' => 0]);
    }
    $resp = \WeDevs\ERP\HRM\Models\Department::find($department_id)->delete();
    return $resp;
}