<?php
declare(strict_types=1);
namespace App\Admin;
use Sonata\AdminBundle\Datagrid\DatagridMapper;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Form\FormMapper;
use Sonata\AdminBundle\Show\ShowMapper;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Gedmo\Mapping\Annotation as Gedmo;
use Symfony\Component\Form\Extension\Core\Type\MoneyType;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
final class ServicoAdmin extends BaseAdmin
{
protected function configureDatagridFilters(DatagridMapper $datagridMapper): void
{
$datagridMapper
->add('id')
->add('tipo')
->add('titulo')
->add('valor')
->add('createdAt')
->add('updatedAt')
;
}
protected function configureListFields(ListMapper $listMapper): void
{
$listMapper
->add('id')
->add('tipo')
->add('titulo')
->add('valor')
->add('createdAt', null, ['label'=>'Dta. cadastro'])
->add('_action', null, [
'actions' => [
'show' => [],
'edit' => [],
'delete' => [],
],
]);
}
protected function configureFormFields(FormMapper $formMapper): void
{
$formMapper
->add('tipo', ChoiceType::class, [
'choices' => [
'Selecione' => '',
'Amostra' => 'amostra',
'Corpo de Prova' => 'cp',
'Diária' => 'diaria',
'Mensal' => 'mensal',
'Verba' => 'verba',
'Metro' => 'metro',
'Visita' => 'visita',
'Hora' => 'hora',
'Relatório' => 'relatorio',
'Pessoa' => 'pessoa',
'M³' => 'metro_3',
]
])
->add('titulo')
->add('valor', MoneyType::class, [
'label' => 'Valor',
'currency' => 'BRL',
'grouping' => true,
'attr' => ['class' => 'maskMoney'],
])
;
}
protected function configureShowFields(ShowMapper $showMapper): void
{
$showMapper
->add('id')
->add('tipo')
->add('titulo')
->add('valor')
->add('createdAt', null, ['label'=>'Dta. cadastro'])
->add('updatedAt', null, ['label'=>'Dta. alteração'])
;
}
}