Fix order organization info

This commit is contained in:
Almira Krdzic
2018-11-05 20:33:11 +01:00
parent fcbddcb22a
commit c9b04dac1e
4 changed files with 57 additions and 23 deletions

View File

@@ -468,14 +468,25 @@ class Wiaas_Cart {
$order->set_currency($currency);
// set order commercial lead
// get order commercial lead
$shop_owner_id = get_user_meta(get_current_user_id(), '_wiaas_cart_shop_owner_id', true);
$shop_owner_id = absint($shop_owner_id);
// save commercial lead info in case it gets deleted
$order->add_meta_data('_wiaas_commercial_lead_id', $shop_owner_id);
$commercial_lead_organization_info = wiaas_get_organization_info($shop_owner_id);
$order->add_meta_data('_wiaas_commercial_lead_info', $commercial_lead_organization_info);
// save customer organization info in case it gets deleted
$customer_user_id = $order->get_customer_id();
$customer_organization_id = wiaas_get_user_organization_id($customer_user_id);
$order->add_meta_data('_wiaas_customer_id', $customer_organization_id);
$customer_organization_info = wiaas_get_organization_info($customer_organization_id);
$order->add_meta_data('_wiaas_customer_info', $customer_organization_info);
// add supplier organizations information to order
// add supplier organizations information to order in case supplier organizations are deleted
// save installation suppliers separately
$suppliers_info = array();
$installation_suppliers_info = array();

View File

@@ -463,19 +463,35 @@ class Wiaas_Order {
/**
* Appends additional wiaas customer lead info to order json response
* @param $data
* @param $order
* @param WC_Order $order
* @param $request
*
* @return mixed
*/
private static function _append_commercial_lead_info($data, $order, $request) {
$data['commercial_lead'] = array(
'id' => 1,
'name' => 'Coor Service Management',
'phone' => '123456789',
'email' => 'rikard@co-ideation.com'
);
$commercial_lead_org_id = $order->get_meta('_wiaas_commercial_lead_id', true);
$commercial_lead_organization_info = $order->get_meta('_wiaas_commercial_lead_info', true);
if (! empty($commercial_lead_org_id) && empty($commercial_lead_organization_info)) {
$commercial_lead_organization_info = wiaas_get_organization_info($commercial_lead_org_id);
$data['commercial_lead'] = array(
'id' => $commercial_lead_org_id,
'name' => $commercial_lead_organization_info['name'],
'phone' => $commercial_lead_organization_info['phone'],
'email' => $commercial_lead_organization_info['email']
);
}
if (!empty($commercial_lead_organization_info)) {
$commercial_lead_organization_info['id'] = $commercial_lead_organization_info;
$data['commercial_lead'] = $commercial_lead_organization_info;
}
return $data;
}
@@ -483,25 +499,34 @@ class Wiaas_Order {
/**
* Appends additional wiaas customer info to order json response
* @param $data
* @param $order
* @param WC_Order $order
* @param $request
*
* @return mixed
*/
private static function _append_customer_info($data, $order, $request) {
$current_user = wp_get_current_user();
$customer_organization_id = $order->get_meta('_wiaas_customer_id', true);
$customer_id = $data['customer_id'];
$customer_user_id = $order->get_customer_id();
$customer_user = get_user_by('id', $customer_id);
$data['customer'] = array(
'email' => $customer_user->user_email,
'name' => $customer_user->display_name,
'phone' => '+46 (10) 5595148'
);
if (empty($customer_organization_id)) {
$data['is_my_order'] = $customer_id === $current_user->ID;
$customer_organization_id = wiaas_get_user_organization_id($customer_user_id);
}
$customer_organization_info = $order->get_meta('_wiaas_customer_info', true);
if ( !empty($customer_organization_id) && empty($customer_organization_info) ) {
$customer_organization_info = wiaas_get_organization_info($customer_organization_id);
$customer_organization_info['id'] = $customer_organization_id;
}
$data['customer'] = $customer_organization_info;
$data['is_my_order'] = $customer_user_id === get_current_user_id();
return $data;
}

View File

@@ -96,8 +96,6 @@ class Wiaas_Order_Fields {
continue;
}
error_log($new_value);
$bundle_item->update_meta_data('wiaas_installation_date', $new_value);
$bundle_item->save_meta_data();

View File

@@ -89,7 +89,7 @@ export const fromWCOrder = (WCOrder) => {
isOwner: comment['is_owner']
})) : [],
deliveryAddress: formatAddress(WCOrder.shipping),
customer: WCOrder.customer,
commercialLead: WCOrder['commercial_lead'],
customer: WCOrder.customer || {},
commercialLead: WCOrder['commercial_lead'] || {},
}
};