Add bokshorn-it/filament-activity-timeline package for enhanced audit logging functionality. Update README to reflect new key package and improve localization for audit-related terms. Remove deprecated ActivityLogResource and related pages, integrating activity timeline features into existing resources. Update models to implement ProvidesActivityTitle for better activity tracking.
This commit is contained in:
@@ -6,12 +6,13 @@ namespace App\Models;
|
||||
|
||||
use App\Enums\BonusType;
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Bonus extends Model
|
||||
class Bonus extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -4,6 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Models\Concerns;
|
||||
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Spatie\Activitylog\LogOptions;
|
||||
use Spatie\Activitylog\Traits\LogsActivity;
|
||||
|
||||
@@ -18,4 +19,29 @@ trait LogsHrActivity
|
||||
->logOnlyDirty()
|
||||
->dontSubmitEmptyLogs();
|
||||
}
|
||||
|
||||
public function activityTitle(): ?string
|
||||
{
|
||||
foreach (['full_name', 'name', 'title', 'gift_name', 'employee_number'] as $attribute) {
|
||||
$value = $this->getAttribute($attribute);
|
||||
|
||||
if (filled($value)) {
|
||||
return (string) $value;
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->getAttribute('employee_id')) {
|
||||
$employeeName = $this->relationLoaded('employee')
|
||||
? $this->employee?->full_name
|
||||
: $this->employee()->value('full_name');
|
||||
|
||||
if (filled($employeeName)) {
|
||||
return (string) $employeeName;
|
||||
}
|
||||
}
|
||||
|
||||
$key = $this->getKey();
|
||||
|
||||
return $key !== null ? '#'.$key : null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,13 +5,14 @@ declare(strict_types=1);
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
class Department extends Model
|
||||
class Department extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -6,12 +6,13 @@ namespace App\Models;
|
||||
|
||||
use App\Enums\DisciplinarySeverity;
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class DisciplinaryReport extends Model
|
||||
class DisciplinaryReport extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -7,13 +7,14 @@ namespace App\Models;
|
||||
use App\Enums\EmploymentStatus;
|
||||
use App\Enums\Gender;
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Employee extends Model
|
||||
class Employee extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -6,12 +6,13 @@ namespace App\Models;
|
||||
|
||||
use App\Enums\DocumentType;
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class EmployeeDocument extends Model
|
||||
class EmployeeDocument extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -5,12 +5,13 @@ declare(strict_types=1);
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Explanation extends Model
|
||||
class Explanation extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -5,12 +5,13 @@ declare(strict_types=1);
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Gift extends Model
|
||||
class Gift extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -5,12 +5,13 @@ declare(strict_types=1);
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Position extends Model
|
||||
class Position extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -5,13 +5,14 @@ declare(strict_types=1);
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
class Shift extends Model
|
||||
class Shift extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -5,12 +5,13 @@ declare(strict_types=1);
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class SickLeave extends Model
|
||||
class SickLeave extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -6,12 +6,13 @@ namespace App\Models;
|
||||
|
||||
use App\Enums\ApprovalStatus;
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class UnpaidLeave extends Model
|
||||
class UnpaidLeave extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
@@ -7,12 +7,13 @@ namespace App\Models;
|
||||
use App\Enums\ApprovalStatus;
|
||||
use App\Enums\VacationType;
|
||||
use App\Models\Concerns\LogsHrActivity;
|
||||
use BokshornIt\FilamentActivityTimeline\Contracts\ProvidesActivityTitle;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Vacation extends Model
|
||||
class Vacation extends Model implements ProvidesActivityTitle
|
||||
{
|
||||
use HasFactory;
|
||||
use LogsHrActivity;
|
||||
|
||||
Reference in New Issue
Block a user