osb/database/migrations/0281-create_payment_item.php

45 lines
1002 B
PHP

<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('payment_items', function(Blueprint $table)
{
$table->id();
$table->timestamps();
$table->integer('site_id')->unsigned();
$table->boolean('active')->default(false);
$table->float('amount',10,0);
$table->integer('invoice_id')->unsigned()->nullable();
$table->foreign(['invoice_id','site_id'])->references(['id','site_id'])->on('invoices');
$table->integer('payment_id')->unsigned();
$table->foreign(['payment_id','site_id'])->references(['id','site_id'])->on('payments');
$table->unique(['id','site_id']);
$table->unique(['site_id','invoice_id','payment_id']);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('payment_items');
}
};