1 | <?php |
||
12 | class UserAdmin extends Admin |
||
13 | { |
||
14 | protected $baseRouteName = 'AppBundle\Entity\User'; |
||
15 | protected $baseRoutePattern = 'User'; |
||
16 | protected $datagridValues = [ |
||
17 | '_sort_order' => 'DESC', |
||
18 | '_sort_by' => 'id', |
||
19 | ]; |
||
20 | |||
21 | /** |
||
22 | * @param \Sonata\AdminBundle\Form\FormMapper $formMapper |
||
23 | */ |
||
24 | protected function configureFormFields(FormMapper $formMapper) |
||
25 | { |
||
26 | $formMapper |
||
27 | ->with('User', ['class' => 'col-lg-12']) |
||
28 | ->add('firstName') |
||
29 | ->add('lastName') |
||
30 | ->add('email') |
||
31 | ->add('orders') |
||
32 | ->end() |
||
33 | ; |
||
34 | } |
||
35 | |||
36 | /** |
||
37 | * {@inheritdoc} annotation. |
||
38 | * |
||
39 | * @param string $context = 'list' |
||
40 | * |
||
41 | * @return \Sonata\AdminBundle\Datagrid\ProxyQueryInterface|ProxyQuery |
||
42 | */ |
||
43 | public function createQuery($context = 'list') |
||
44 | { |
||
45 | $em = $this->modelManager->getEntityManager('AppBundle:User'); |
||
46 | $queryBuilder = $em |
||
47 | ->createQueryBuilder('u') |
||
48 | ->select('u') |
||
49 | ->from('AppBundle:User', 'u') |
||
50 | ->where('u.email IS NOT NULL ') |
||
51 | ->andWhere('u.role = :param') |
||
52 | ->setParameter('param', 'ROLE_API'); |
||
53 | $query = new ProxyQuery($queryBuilder); |
||
54 | |||
55 | return $query; |
||
56 | } |
||
57 | |||
58 | /** |
||
59 | * @param \Sonata\AdminBundle\Datagrid\ListMapper $listMapper |
||
60 | */ |
||
61 | protected function configureListFields(ListMapper $listMapper) |
||
62 | { |
||
63 | $listMapper |
||
64 | ->add('email') |
||
65 | ->add('firstName') |
||
66 | ->add('lastName') |
||
67 | ->add('orders') |
||
68 | ->add('_action', 'actions', [ |
||
69 | 'actions' => [ |
||
70 | 'edit' => [], |
||
71 | 'delete' => [], |
||
72 | ], |
||
73 | ]) |
||
74 | ; |
||
75 | } |
||
76 | |||
77 | /** |
||
78 | * @param \Sonata\AdminBundle\Datagrid\DatagridMapper $datagridMapper |
||
79 | */ |
||
80 | protected function configureDatagridFilters(DatagridMapper $datagridMapper) |
||
86 | |||
87 | public function toString($object) |
||
93 | } |
||
94 |