Refactor vehicle synchronization logic in XLVask helpers, update instantiation, and remove legacy customer creation code.
This commit is contained in:
@@ -390,7 +390,9 @@ class xlvask_tasks
|
||||
return null; // Synchronization is not enabled, do nothing
|
||||
}
|
||||
// Get the vehicles from XL Vask
|
||||
$vehicles = $xlvask->getVehicles();
|
||||
/** @var xlvask_vehicles $vehicles */
|
||||
$vehicles = new $xlvask->helpers->xlvask_vehicles();
|
||||
$vehicles = $vehicles->getVehicles();
|
||||
// Cache the vehicles
|
||||
foreach ( $vehicles as $vehicle ) {
|
||||
/** @var xlvask_vehicle $vehicle */
|
||||
|
||||
@@ -6,7 +6,6 @@ use classes\authentication;
|
||||
use classes\response;
|
||||
use classes\router;
|
||||
use classes\xlvask;
|
||||
use helpers\xlvask_customer;
|
||||
use objects\orders_o;
|
||||
use objects\users_o;
|
||||
use traits\route_t;
|
||||
@@ -197,26 +196,7 @@ class moduleXLVaskRoute
|
||||
$xlvask = new xlvask();
|
||||
$user = new users_o();
|
||||
$user->getUserByCustomerNumber(12345679);
|
||||
//$xlvask->getTasks()->runSyncUsers(false);
|
||||
//echo 'Creating customer in XLVask for user: ' . $user->customer_number->value() . " (" . $user->getCustomerName((int)$user->customer_number->value()) . ")\n";
|
||||
if (!$xlvask->getCache()->isCustomerCached($user->customer_number->value())) {
|
||||
throw new \Exception('Customer is not cached in XLVask');
|
||||
}
|
||||
// Get the customer from the cache
|
||||
$xlvask_customer = $xlvask->getCache()->getCustomerCache($user->customer_number->value());
|
||||
$new_customer = new $xlvask->helpers->xlvask_customer();
|
||||
/** @var xlvask_customer $new_customer */
|
||||
$new_customer->customerId = $xlvask->getGuid()->generate();
|
||||
$new_customer->excludeFromAutoInvoice = true;
|
||||
//$new_customer->discount = 0;
|
||||
$new_customer->active = true;
|
||||
$new_customer->name = $user->getCustomerName((int)$user->customer_number->value());
|
||||
$new_customer->externId = (string)$user->customer_number->value() . '-' . $user->id;
|
||||
if (!$new_customer->isValid()) {
|
||||
throw new \Exception('Customer is not valid in XLVask, missing required properties: ' . implode(', ', $new_customer->getMissingRequiredProperties()));
|
||||
}
|
||||
// Create the customer in XLVask
|
||||
$result = $xlvask->createCustomer($new_customer);
|
||||
$result = $xlvask->getTasks()->runSyncVehicles(false);
|
||||
// Response
|
||||
$response->success(
|
||||
$result,
|
||||
|
||||
Reference in New Issue
Block a user