value; protected static ?string $navigationGroup = 'Financial'; protected static ?int $navigationSort = 2; public static function form(Form $form): Form { return $form ->schema([ Section::make([ Select::make('customer_id') ->relationship('customer', 'company_name') ->prefix('$') ->required() ->searchable() ->hidden(fn ($livewire) => $livewire::class === ListInvoices::class) ->preload(), TextInput::make('amount') ->required() ->minValue(0) ->maxValue(99999999) ->numeric(), TextInput::make('check_number'), DatePicker::make('date') ->default(today()), Textarea::make('notes'), ]), ]); } public static function table(Table $table): Table { return $table ->columns([ TextColumn::make('created_at') ->label('Date') ->date('Y-m-d') ->searchable(), TextColumn::make('customer.company_name') ->hidden(fn ($livewire) => $livewire::class === PaymentsRelationManager::class) ->searchable(), TextColumn::make('check_number'), TextColumn::make('amount') ->searchable() ->numeric() ->money(), TextColumn::make('unapplied_amount') ->label('Balance') ->money(), ]) ->actions([ \Filament\Tables\Actions\EditAction::make(), ]); } public static function canAccess(): bool { return auth()->user()->is_admin; } public static function getRelations(): array { return [ InvoicesRelationManager::class, ]; } public static function getPages(): array { return [ 'index' => Pages\ListPayments::route('/'), // 'view' => Pages\ViewPayment::route('/{record}'), // 'create' => Pages\CreatePayment::route('/create'), 'edit' => Pages\EditPayment::route('/{record}/edit'), ]; } }