Compare commits
10 Commits
update/led
...
fix/error-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fc672e4f4a | ||
|
|
a77e95d2a5 | ||
|
|
ee65bdfb31 | ||
|
|
7fa8b75b29 | ||
|
|
a8ad07676a | ||
|
|
6f04a60e43 | ||
|
|
76a52d7e82 | ||
| 5715ab10f2 | |||
| 138740648c | |||
| 13a0f69ce3 |
@@ -45,16 +45,36 @@ class TransmittalResource extends Resource
|
|||||||
->columns([
|
->columns([
|
||||||
Tables\Columns\Layout\Split::make([
|
Tables\Columns\Layout\Split::make([
|
||||||
Tables\Columns\TextColumn::make('series')
|
Tables\Columns\TextColumn::make('series')
|
||||||
->searchable()
|
->searchable(query: function (Builder $query, string $search): Builder {
|
||||||
|
$wildcardSearch = '%' . str_replace(' ', '%', $search) . '%';
|
||||||
|
|
||||||
|
return $query->where(function (Builder $query) use ($wildcardSearch) {
|
||||||
|
$query->where('series', 'like', $wildcardSearch)
|
||||||
|
->orWhereHas('notes', function (Builder $query) use ($wildcardSearch) {
|
||||||
|
$query->where('comment', 'like', $wildcardSearch);
|
||||||
|
})
|
||||||
|
->orWhereHas('files', function (Builder $query) use ($wildcardSearch) {
|
||||||
|
$query->where('description', 'like', $wildcardSearch);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
})
|
||||||
->label('Series')
|
->label('Series')
|
||||||
->weight(FontWeight::Bold)
|
->weight(FontWeight::Bold)
|
||||||
->columnSpan(2),
|
->columnSpan(2),
|
||||||
Tables\Columns\Layout\Stack::make([
|
Tables\Columns\Layout\Stack::make([
|
||||||
Tables\Columns\TextColumn::make('client.company')
|
Tables\Columns\TextColumn::make('client.company')
|
||||||
->searchable()
|
->searchable(query: function (Builder $query, string $search): Builder {
|
||||||
|
return $query->whereHas('client', function (Builder $query) use ($search) {
|
||||||
|
$query->where('company', 'like', '%' . str_replace(' ', '%', $search) . '%');
|
||||||
|
});
|
||||||
|
})
|
||||||
->weight(FontWeight::SemiBold)->label('Client'),
|
->weight(FontWeight::SemiBold)->label('Client'),
|
||||||
Tables\Columns\TextColumn::make('branch.code')
|
Tables\Columns\TextColumn::make('branch.code')
|
||||||
->searchable()
|
->searchable(query: function (Builder $query, string $search): Builder {
|
||||||
|
return $query->whereHas('branch', function (Builder $query) use ($search) {
|
||||||
|
$query->where('code', 'like', '%' . str_replace(' ', '%', $search) . '%');
|
||||||
|
});
|
||||||
|
})
|
||||||
->label('Branch'),
|
->label('Branch'),
|
||||||
]),
|
]),
|
||||||
]),
|
]),
|
||||||
|
|||||||
@@ -3,16 +3,23 @@
|
|||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
// use Illuminate\Contracts\Auth\MustVerifyEmail;
|
// use Illuminate\Contracts\Auth\MustVerifyEmail;
|
||||||
|
use Filament\Models\Contracts\FilamentUser;
|
||||||
|
use Filament\Panel;
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
use Illuminate\Foundation\Auth\User as Authenticatable;
|
use Illuminate\Foundation\Auth\User as Authenticatable;
|
||||||
use Illuminate\Notifications\Notifiable;
|
use Illuminate\Notifications\Notifiable;
|
||||||
use Spatie\Permission\Traits\HasPermissions;
|
use Spatie\Permission\Traits\HasPermissions;
|
||||||
use Spatie\Permission\Traits\HasRoles;
|
use Spatie\Permission\Traits\HasRoles;
|
||||||
|
|
||||||
class User extends Authenticatable
|
class User extends Authenticatable implements FilamentUser
|
||||||
{
|
{
|
||||||
use HasFactory, HasPermissions, HasRoles, Notifiable;
|
use HasFactory, HasPermissions, HasRoles, Notifiable;
|
||||||
|
|
||||||
|
public function canAccessPanel(Panel $panel): bool
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The attributes that are mass assignable.
|
* The attributes that are mass assignable.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ namespace App\Providers;
|
|||||||
|
|
||||||
use App\Policies\RolePolicy;
|
use App\Policies\RolePolicy;
|
||||||
use Illuminate\Support\Facades\Gate;
|
use Illuminate\Support\Facades\Gate;
|
||||||
|
use Illuminate\Support\Facades\URL;
|
||||||
use Illuminate\Support\ServiceProvider;
|
use Illuminate\Support\ServiceProvider;
|
||||||
use Spatie\Permission\Models\Role;
|
use Spatie\Permission\Models\Role;
|
||||||
|
|
||||||
@@ -22,6 +23,8 @@ class AppServiceProvider extends ServiceProvider
|
|||||||
*/
|
*/
|
||||||
public function boot(): void
|
public function boot(): void
|
||||||
{
|
{
|
||||||
|
URL::forceScheme('https');
|
||||||
|
|
||||||
Gate::before(function ($user, $ability) {
|
Gate::before(function ($user, $ability) {
|
||||||
return $user->hasRole('super_admin') ? true : null;
|
return $user->hasRole('super_admin') ? true : null;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::table('accounts', function (Blueprint $table) {
|
||||||
|
$table->dropForeign(['client_id']);
|
||||||
|
$table->foreign('client_id')
|
||||||
|
->references('id')
|
||||||
|
->on('clients')
|
||||||
|
->cascadeOnDelete();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::table('accounts', function (Blueprint $table) {
|
||||||
|
$table->dropForeign(['client_id']);
|
||||||
|
$table->foreign('client_id')
|
||||||
|
->references('id')
|
||||||
|
->on('clients')
|
||||||
|
->nullOnDelete(); // Since it is nullable
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::table('transmittals', function (Blueprint $table) {
|
||||||
|
$table->dropForeign(['client_id']);
|
||||||
|
$table->dropForeign(['branch_id']);
|
||||||
|
|
||||||
|
$table->foreign('client_id')
|
||||||
|
->references('id')
|
||||||
|
->on('clients')
|
||||||
|
->cascadeOnDelete();
|
||||||
|
|
||||||
|
$table->foreign('branch_id')
|
||||||
|
->references('id')
|
||||||
|
->on('branches')
|
||||||
|
->cascadeOnDelete();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::table('transmittals', function (Blueprint $table) {
|
||||||
|
$table->dropForeign(['client_id']);
|
||||||
|
$table->dropForeign(['branch_id']);
|
||||||
|
|
||||||
|
$table->foreign('client_id')
|
||||||
|
->references('id')
|
||||||
|
->on('clients');
|
||||||
|
|
||||||
|
$table->foreign('branch_id')
|
||||||
|
->references('id')
|
||||||
|
->on('branches');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user