From 75b587131f19f28bbcd9846b9ad993ec8ae6d077 Mon Sep 17 00:00:00 2001 From: Thekindbull Date: Thu, 13 Nov 2025 14:25:52 +0800 Subject: [PATCH] =?UTF-8?q?=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D1=8C=20CityManag?= =?UTF-8?q?er:=20relation=20=D0=B4=D0=BB=D1=8F=20user=5Frole=20=D1=81?= =?UTF-8?q?=D0=BE=D0=B7=D0=B4=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D0=B0=D0=B2?= =?UTF-8?q?=D1=82=D0=BE=D0=BC=D0=B0=D1=82=D0=B8=D1=87=D0=B5=D1=81=D0=BA?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CityManager/Models/CityManager.php | 12 ++++++++ ..._11_12_000001_create_docs_cities_table.php | 30 +++++++++++++++++++ app/Modules/Main/Models/Deal/Client.php | 11 +------ 3 files changed, 43 insertions(+), 10 deletions(-) create mode 100644 app/Modules/Docs/Database/Migrations/2025_11_12_000001_create_docs_cities_table.php diff --git a/app/Modules/CityManager/Models/CityManager.php b/app/Modules/CityManager/Models/CityManager.php index cbae419..6d0d7f1 100644 --- a/app/Modules/CityManager/Models/CityManager.php +++ b/app/Modules/CityManager/Models/CityManager.php @@ -5,6 +5,8 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Modules\User\Models\User; +use Modules\User\Models\UserRole; +use Modules\User\Models\Role; use Modules\Main\Models\City; class CityManager extends Model { @@ -21,4 +23,14 @@ public function city() { return $this->belongsTo(City::class, 'city_id'); } + protected static function booted() + { + static::created(function (CityManager $cityManager) + { + UserRole::create([ + 'user_id' => $cityManager->user_id, + 'role_id' => Role::CITY_MANAGER + ]); + }); + } } diff --git a/app/Modules/Docs/Database/Migrations/2025_11_12_000001_create_docs_cities_table.php b/app/Modules/Docs/Database/Migrations/2025_11_12_000001_create_docs_cities_table.php new file mode 100644 index 0000000..93840bf --- /dev/null +++ b/app/Modules/Docs/Database/Migrations/2025_11_12_000001_create_docs_cities_table.php @@ -0,0 +1,30 @@ +id(); + $table->foreignId('docs_id')->references('id')->on('docs')->onDelete('cascade'); + $table->foreignId('city_id')->references('id')->on('cities')->onDelete('cascade'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('news'); + } +}; diff --git a/app/Modules/Main/Models/Deal/Client.php b/app/Modules/Main/Models/Deal/Client.php index 37f0ecb..50bd3ec 100644 --- a/app/Modules/Main/Models/Deal/Client.php +++ b/app/Modules/Main/Models/Deal/Client.php @@ -2,13 +2,8 @@ namespace Modules\Main\Models\Deal; -use Illuminate\Contracts\Auth\MustVerifyEmail; -use Illuminate\Database\Eloquent\Factories\HasFactory; -use Illuminate\Foundation\Auth\User as Authenticatable; -use Illuminate\Notifications\Notifiable; -use Laravel\Sanctum\HasApiTokens; - use Modules\User\Models\User; + use Modules\Main\Models\Agent\Agent; use Modules\Bitrix\Traits\Bitrixable; class Client extends User @@ -39,8 +34,4 @@ public function ofAgent(Agent $agent) { return $this->deals->where('agent_id', $agent->id); } - public function create() - { - - } }