Fixes for language seeder

This commit is contained in:
David Bomba 2022-07-07 16:13:37 +10:00
parent 37b2fac69d
commit 375ce81df9
6 changed files with 17 additions and 11 deletions

View File

@ -105,7 +105,7 @@ class Expense extends BaseModel
public function purchase_order() public function purchase_order()
{ {
return $this->belongsTo(PurchaseOrder::class); return $this->hasOne(PurchaseOrder::class);
} }
public function translate_entity() public function translate_entity()

View File

@ -169,7 +169,7 @@ class PurchaseOrder extends BaseModel
public function expense() public function expense()
{ {
return $this->hasOne(Expense::class); return $this->belongsTo(Expense::class);
} }
public function user() public function user()

View File

@ -94,7 +94,6 @@ class ExpenseTransformer extends EntityTransformer
'uses_inclusive_taxes' => (bool) $expense->uses_inclusive_taxes, 'uses_inclusive_taxes' => (bool) $expense->uses_inclusive_taxes,
'calculate_tax_by_amount' => (bool) $expense->calculate_tax_by_amount, 'calculate_tax_by_amount' => (bool) $expense->calculate_tax_by_amount,
'entity_type' => 'expense', 'entity_type' => 'expense',
'purchase_order_id' => (string) $this->encodePrimaryKey($expense->purchase_order_id),
]; ];
} }
} }

View File

@ -26,6 +26,10 @@ class PurchaseOrderTransformer extends EntityTransformer
'documents' 'documents'
]; ];
protected $availableIncludes = [
'expense'
];
public function includeInvitations(PurchaseOrder $purchase_order) public function includeInvitations(PurchaseOrder $purchase_order)
{ {
$transformer = new PurchaseOrderInvitationTransformer($this->serializer); $transformer = new PurchaseOrderInvitationTransformer($this->serializer);
@ -41,6 +45,13 @@ class PurchaseOrderTransformer extends EntityTransformer
return $this->includeCollection($purchase_order->documents, $transformer, Document::class); return $this->includeCollection($purchase_order->documents, $transformer, Document::class);
} }
public function includeExpense(PurchaseOrder $purchase_order)
{
$transformer = new ExpenseTransformer($this->serializer);
return $this->includeItem($purchase_order->expense, $transformer, Document::class);
}
public function transform(PurchaseOrder $purchase_order) public function transform(PurchaseOrder $purchase_order)
{ {
return [ return [
@ -103,6 +114,7 @@ class PurchaseOrderTransformer extends EntityTransformer
'exchange_rate' => (float)$purchase_order->exchange_rate, 'exchange_rate' => (float)$purchase_order->exchange_rate,
'paid_to_date' => (float)$purchase_order->paid_to_date, 'paid_to_date' => (float)$purchase_order->paid_to_date,
'subscription_id' => $this->encodePrimaryKey($purchase_order->subscription_id), 'subscription_id' => $this->encodePrimaryKey($purchase_order->subscription_id),
'expense_id' => $this->encodePrimaryKey($purchase_order->expense_id),
]; ];
} }

View File

@ -25,26 +25,22 @@ class AddPurchaseOrderToExpense extends Migration
*/ */
public function up() public function up()
{ {
Schema::table('expenses', function (Blueprint $table) { Schema::table('purchase_orders', function (Blueprint $table) {
$table->unsignedInteger('purchase_order_id')->nullable()->index(); $table->unsignedInteger('expense_id')->nullable()->index();
}); });
PurchaseOrder::withTrashed()->where('status_id', 4)->update(['status_id' => 5]); PurchaseOrder::withTrashed()->where('status_id', 4)->update(['status_id' => 5]);
$language = Language::find(33); $language = Language::where('locale', 'bg')->first();
if(!$language) if(!$language)
{ {
Language::unguard();
$l = new Language(); $l = new Language();
$l->id = 33;
$l->name = "Bulgarian"; $l->name = "Bulgarian";
$l->locale = "bg"; $l->locale = "bg";
$l->save(); $l->save();
Language::reguard();
$this->buildCache(true); $this->buildCache(true);
} }

View File

@ -56,7 +56,6 @@ class LanguageSeeder extends Seeder
['id' => 30, 'name' => 'Arabic', 'locale' => 'ar'], ['id' => 30, 'name' => 'Arabic', 'locale' => 'ar'],
['id' => 31, 'name' => 'Persian', 'locale' => 'fa'], ['id' => 31, 'name' => 'Persian', 'locale' => 'fa'],
['id' => 32, 'name' => 'Latvian', 'locale' => 'lv_LV'], ['id' => 32, 'name' => 'Latvian', 'locale' => 'lv_LV'],
['id' => 33, 'name' => 'Bulgarian', 'locale' => 'bg'],
]; ];
foreach ($languages as $language) { foreach ($languages as $language) {