2020_09_20_142656_change_order_issue.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. use App\RejectedBill;
  3. use Illuminate\Database\Migrations\Migration;
  4. use Illuminate\Database\Schema\Blueprint;
  5. use Illuminate\Support\Facades\Schema;
  6. class ChangeOrderIssue extends Migration
  7. {
  8. /**
  9. * Run the migrations.
  10. *
  11. * @return void
  12. */
  13. public function up()
  14. {
  15. Schema::table('order_issues',function (Blueprint $table) {
  16. $table->string('logistic_number_return')->nullable()->index()->after('order_id');
  17. });
  18. $orderIssues = \App\OrderIssue::query()->withTrashed()->get();
  19. if($orderIssues->count()>0){
  20. foreach ($orderIssues as $orderIssue) {
  21. $rejectedBill = $orderIssue->hasOne(RejectedBill::class, 'id', 'rejected_bill_id')->first();
  22. if($rejectedBill ?? false){
  23. $orderIssue->update(['logistic_number_return'=>$rejectedBill->logistic_number_return ?? null]);
  24. }
  25. }
  26. }
  27. }
  28. /**
  29. * Reverse the migrations.
  30. *
  31. * @return void
  32. */
  33. public function down()
  34. {
  35. $orderIssues = \App\OrderIssue::query()->withTrashed()->get();
  36. if($orderIssues->count()>0){
  37. foreach ($orderIssues as $orderIssue) {
  38. $rejectedBill = $orderIssue->hasOne(RejectedBill::class, 'logistic_number_return', 'logistic_number_return')->first();
  39. if($rejectedBill ?? false){
  40. $orderIssue->update(['rejected_bill_id'=>$rejectedBill->id ?? null]);
  41. }
  42. }
  43. }
  44. }
  45. }