Migration of expenses and tasks

This commit is contained in:
David Bomba 2020-10-30 23:01:30 +11:00
parent e455ec47e6
commit c289a8252a

View File

@ -49,6 +49,7 @@ use App\Models\Invoice;
use App\Models\Payment; use App\Models\Payment;
use App\Models\PaymentTerm; use App\Models\PaymentTerm;
use App\Models\Product; use App\Models\Product;
use App\Models\Project;
use App\Models\Quote; use App\Models\Quote;
use App\Models\RecurringInvoice; use App\Models\RecurringInvoice;
use App\Models\Task; use App\Models\Task;
@ -106,6 +107,7 @@ class Import implements ShouldQueue
'payment_terms', 'payment_terms',
'tax_rates', 'tax_rates',
'clients', 'clients',
'projects',
'products', 'products',
'invoices', 'invoices',
'recurring_invoices', 'recurring_invoices',
@ -1004,6 +1006,36 @@ class Import implements ShouldQueue
$data = null; $data = null;
} }
private function processProjects(array $data) :void
{
Project::unguard();
foreach ($data as $resource) {
$modified = $resource;
unset($modified['id']);
$modified['company_id'] = $this->company->id;
$modified['user_id'] = $this->transformId('users', $resource['user_id']);
$modified['client_id'] = $this->transformId('clients', $resource['client_id']);
$project = Project::Create($modified);
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
$this->ids['projects'] = [
"projects_{$old_user_key}" => [
'old' => $resource['id'],
'new' => $project->id,
],
];
}
Project::reguard();
$data = null;
}
/** /**
* |-------------------------------------------------------------------------- * |--------------------------------------------------------------------------
* | Additional migration methods. * | Additional migration methods.