Пример #1
0
/**
 * Delete Customer data
 *
 * @since 1.0
 *
 * @param  mixed  $customer_ids [array|integer]
 * @param  boolean $hard
 *
 * @return void
 */
function erp_crm_customer_delete($customer_ids, $hard = false)
{
    if (empty($customer_ids)) {
        return;
    }
    do_action('erp_crm_delete_customer', $customer_ids);
    if (is_array($customer_ids)) {
        foreach ($customer_ids as $key => $user_id) {
            if ($hard) {
                WeDevs\ERP\Framework\Models\People::withTrashed()->find($user_id)->forceDelete();
                WeDevs\ERP\Framework\Models\Peoplemeta::where('erp_people_id', $user_id)->delete();
            } else {
                WeDevs\ERP\Framework\Models\People::find($user_id)->delete();
            }
        }
    }
    if (is_int($customer_ids)) {
        if ($hard) {
            WeDevs\ERP\Framework\Models\People::withTrashed()->find($customer_ids)->forceDelete();
            WeDevs\ERP\Framework\Models\Peoplemeta::where('erp_people_id', $customer_ids)->delete();
        } else {
            WeDevs\ERP\Framework\Models\People::find($customer_ids)->delete();
        }
    }
}
Пример #2
0
/**
 * Insert a new people
 *
 * @param array $args
 *
 * @return mixed integer on success, false otherwise
 */
function erp_insert_people($args = array())
{
    $defaults = array('id' => null, 'first_name' => '', 'last_name' => '', 'email' => '', 'company' => '', 'phone' => '', 'mobile' => '', 'other' => '', 'website' => '', 'fax' => '', 'notes' => '', 'street_1' => '', 'street_2' => '', 'city' => '', 'state' => '', 'postal_code' => '', 'country' => '', 'currency' => '', 'type' => '');
    $args = wp_parse_args($args, $defaults);
    // Check if contact first name and last name provide or not
    if ($args['type'] == 'contact') {
        // some basic validation
        if (empty($args['first_name'])) {
            return new WP_Error('no-first_name', __('No First Name provided.', 'wp-erp'));
        }
        if (empty($args['last_name'])) {
            return new WP_Error('no-last_name', __('No Last Name provided.', 'wp-erp'));
        }
    }
    // Check if company name provide or not
    if ($args['type'] == 'company') {
        if (empty($args['company'])) {
            return new WP_Error('no-company', __('No Company Name provided.', 'wp-erp'));
        }
    }
    // remove row id to determine if new or update
    $row_id = (int) $args['id'];
    unset($args['id']);
    if (!$row_id) {
        $args['created'] = current_time('mysql');
        // insert a new
        $people = WeDevs\ERP\Framework\Models\People::create($args);
        do_action('erp_create_new_people', $people->id, $args);
        if ($people->id) {
            return $people->id;
        }
    } else {
        // do update method here
        WeDevs\ERP\Framework\Models\People::find($row_id)->update($args);
        do_action('erp_update_people', $row_id, $args);
        return $row_id;
    }
    return false;
}