mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2024-09-20 08:21:34 +02:00
Working on migration for expenses and tasks
This commit is contained in:
parent
3f202b8c58
commit
a283f1dcf7
@ -44,12 +44,15 @@ use App\Models\CompanyGateway;
|
||||
use App\Models\Credit;
|
||||
use App\Models\Document;
|
||||
use App\Models\Expense;
|
||||
use App\Models\ExpenseCategory;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Payment;
|
||||
use App\Models\PaymentTerm;
|
||||
use App\Models\Product;
|
||||
use App\Models\Quote;
|
||||
use App\Models\RecurringInvoice;
|
||||
use App\Models\Task;
|
||||
use App\Models\TaskStatus;
|
||||
use App\Models\TaxRate;
|
||||
use App\Models\User;
|
||||
use App\Repositories\ClientContactRepository;
|
||||
@ -111,6 +114,10 @@ class Import implements ShouldQueue
|
||||
'payments',
|
||||
'company_gateways',
|
||||
'client_gateway_tokens',
|
||||
'expense_categories',
|
||||
'task_statuses',
|
||||
'expenses',
|
||||
'tasks',
|
||||
// //'documents',
|
||||
];
|
||||
|
||||
@ -906,6 +913,97 @@ class Import implements ShouldQueue
|
||||
$data = null;
|
||||
}
|
||||
|
||||
private function processTaskStatuses(array $data) :void
|
||||
{
|
||||
TaskStatus::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']);
|
||||
|
||||
$task_status = TaskStatus::Create($modified);
|
||||
|
||||
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
|
||||
|
||||
$this->ids['task_statuses'] = [
|
||||
"task_statuses_{$old_user_key}" => [
|
||||
'old' => $resource['id'],
|
||||
'new' => $task_status->id,
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
TaskStatus::reguard();
|
||||
|
||||
$data = null;
|
||||
}
|
||||
|
||||
private function processExpenseCategories(array $data) :void
|
||||
{
|
||||
ExpenseCategory::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']);
|
||||
|
||||
$expense_category = ExpenseCategory::Create($modified);
|
||||
|
||||
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
|
||||
|
||||
$this->ids['expense_categories'] = [
|
||||
"expense_categories_{$old_user_key}" => [
|
||||
'old' => $resource['id'],
|
||||
'new' => $expense_category->id,
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
ExpenseCategory::reguard();
|
||||
|
||||
$data = null;
|
||||
}
|
||||
|
||||
private function processTasks(array $data) :void
|
||||
{
|
||||
Task::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']);
|
||||
$modified['invoice_id'] = $this->transformId('invoices', $resource['invoice_id']);
|
||||
$modified['project_id'] = $this->transformId('projects', $resource['project_id']);
|
||||
$modified['status_id'] = $this->transformId('task_statuses', $resource['status_id']);
|
||||
|
||||
$task = Task::Create($modified);
|
||||
|
||||
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
|
||||
|
||||
$this->ids['tasks'] = [
|
||||
"tasks_{$old_user_key}" => [
|
||||
'old' => $resource['id'],
|
||||
'new' => $task->id,
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
Task::reguard();
|
||||
|
||||
$data = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* |--------------------------------------------------------------------------
|
||||
* | Additional migration methods.
|
||||
|
@ -26,7 +26,7 @@ class Expense extends BaseModel
|
||||
'assigned_user_id',
|
||||
'vendor_id',
|
||||
'invoice_id',
|
||||
'expense_currency_id',
|
||||
'currency_id',
|
||||
'date',
|
||||
'invoice_currency_id',
|
||||
'amount',
|
||||
|
@ -58,7 +58,8 @@ class ExpenseTransformer extends EntityTransformer
|
||||
'client_id' => $this->encodePrimaryKey($expense->client_id),
|
||||
'bank_id' => (string) $expense->bank_id ?: '',
|
||||
'invoice_currency_id' => (string) $expense->invoice_currency_id ?: '',
|
||||
'expense_currency_id' => (string) $expense->expense_currency_id ?: '',
|
||||
'expense_currency_id' => '', //todo remove redundant in 5.0.25
|
||||
'currency_id' => (string) $expense->expense_currency_id ?: '',
|
||||
'category_id' => $this->encodePrimaryKey($expense->category_id),
|
||||
'payment_type_id' => (string) $expense->payment_type_id ?: '',
|
||||
'recurring_expense_id' => (string) $expense->recurring_expense_id ?: '',
|
||||
|
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class ChangeExpenseCurrencyIdColumn extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('expenses', function(Blueprint $table){
|
||||
$table->renameColumn('expense_currency_id', 'currency_id');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user