Browse Source

領収証発行依頼の連番を削除

develop
sosuke.iwabuchi 2 years ago
parent
commit
47514c610f
2 changed files with 58 additions and 24 deletions
  1. +1
    -24
      app/Logic/ReceiptIssuingOrder/ReceiptIssuingOrderManager.php
  2. +57
    -0
      database/migrations/2023_08_07_131800_remove_receipt_issuing_order_seq_numbers_table.php

+ 1
- 24
app/Logic/ReceiptIssuingOrder/ReceiptIssuingOrderManager.php View File

@@ -2,16 +2,11 @@

namespace App\Logic\ReceiptIssuingOrder;

use App\Events\ReceiptIssuingOrder\ChangeHandlerEvent;
use App\Events\ReceiptIssuingOrder\ConfirmedEvent;
use App\Events\ReceiptIssuingOrder\MailOrderEvent;
use App\Exceptions\AppCommonException;
use App\Exceptions\ExclusiveException;
use App\Features\InstanceAble;
use App\Features\LoginUser;
use App\Models\ReceiptIssuingOrder;
use App\Models\ReceiptIssuingOrderSeqNumber;
use App\Models\User;
use App\Util\DateUtil;
use Illuminate\Support\Carbon;
use Illuminate\Support\Str;
@@ -201,28 +196,10 @@ abstract class ReceiptIssuingOrderManager
return $this;
}

protected function fillSeqNumber(): static
{
if ($this->order->seq_number !== null) {
return $this;
}

$seq = ReceiptIssuingOrderSeqNumber::lockForUpdate()->first();
if (!($seq instanceof ReceiptIssuingOrderSeqNumber)) {
throw new AppCommonException("通番取得失敗");
}
$seq->seq_number++;
$this->order->seq_number = $seq->seq_number;
$seq->save();

return $this;
}

protected function save(): static
{
$this->setStatus()
->updateCheck()
->fillSeqNumber();
->updateCheck();

$this->order->save();
return $this;


+ 57
- 0
database/migrations/2023_08_07_131800_remove_receipt_issuing_order_seq_numbers_table.php View File

@@ -0,0 +1,57 @@
<?php

use App\Models\ReceiptIssuingOrderSeqNumber;
use App\Util\MigrationHelper;
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::dropIfExists('receipt_issuing_order_seq_numbers');

Schema::table('receipt_issuing_orders', function (Blueprint $table) {
$table->dropColumn("seq_number");
});
Schema::table('receipt_issuing_order_histories', function (Blueprint $table) {
$table->dropColumn("seq_number");
});
}

/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
MigrationHelper::createTable('receipt_issuing_order_seq_numbers', $this->schema());

ReceiptIssuingOrderSeqNumber::create([
ReceiptIssuingOrderSeqNumber::COL_NAME_SEQ_NUMBER => 0,
]);

Schema::table('receipt_issuing_orders', function (Blueprint $table) {
$table->bigInteger("seq_number", false, true)->nullable()->comment("通番");
});
Schema::table('receipt_issuing_order_histories', function (Blueprint $table) {
$table->bigInteger("seq_number", false, true)->nullable()->comment("通番");
});
}

private function schema()
{

return function (Blueprint $table, MigrationHelper $helper) {
$helper->baseColumn();
$table->string('seq_number')->comment("通番");
};
}
};

Loading…
Cancel
Save