OwlCyberSecurity - MANAGER
Edit File: CalculatorResource.php
<?php namespace App\Filament\Resources; use App\Filament\Resources\CalculatorResource\Pages; use App\Models\CalculatorConfig; use Filament\Forms\Components\Grid; use Filament\Forms\Components\TextInput; use Filament\Forms\Form; use Filament\Resources\Resource; use Filament\Tables\Table; use Filament\Tables; class CalculatorResource extends Resource { protected static ?string $model = CalculatorConfig::class; protected static ?string $navigationIcon = 'heroicon-o-calculator'; protected static ?string $modelLabel = 'تنظیمات ماشین حساب'; protected static ?string $pluralModelLabel = 'تنظیمات ماشین حساب'; protected static ?string $slug = 'calculator-config'; protected static ?string $navigationGroup = 'تنظیمات'; protected static ?int $navigationSort = 1; public static function form(Form $form): Form { return $form->schema([ Grid::make(1)->relationship('regions')->schema([ TextInput::make('name')->label('نام')->disabled()->dehydrated(false), TextInput::make('AddExchangeDisplayName')->label('ارز شاخص')->disabled()->dehydrated(false), ]), Grid::make(1)->schema([ TextInput::make('BuyBroker')->numeric()->minValue(0)->label('کارمزد')->required(), TextInput::make('MinValueForWeight')->numeric()->minValue(0)->label('حداقل کارمزد حمل')->required(), TextInput::make('EachKgValue')->numeric()->minValue(0)->label('هزینه هر کیلو')->required(), TextInput::make('DividerFromExchange')->numeric()->minValue(0)->label('ضریب ارز')->required(), TextInput::make('AdditionalPerRow')->numeric()->minValue(0)->label('مقدار اضافی برای هر خط آیتم')->required(), ]), ]); } public static function table(Table $table): Table { return $table ->columns([ Tables\Columns\TextColumn::make('regions.name')->label('نام'), Tables\Columns\TextColumn::make('regions.AddExchangeDisplayName')->label('ارز شاخص'), Tables\Columns\TextColumn::make('BuyBroker')->label('کارمزد'), Tables\Columns\TextColumn::make('MinValueForWeight')->label('حداقل کارمزد حمل'), Tables\Columns\TextColumn::make('EachKgValue')->label('هزینه هر کیلو'), Tables\Columns\TextColumn::make('DividerFromExchange')->label('ضریب ارز'), Tables\Columns\TextColumn::make('AdditionalPerRow')->label('مقدار اضافی برای هر خط آیتم'), ]) ->filters([]) ->actions([ Tables\Actions\EditAction::make(), ]) ->bulkActions([]); } public static function getPages(): array { return [ 'index' => Pages\ListCalculators::route('/'), ]; } public static function canViewAny(): bool { return auth()->user()->can('calculator-config::view'); } }