public function create($data) { $entityManager = $this->getEntityManager(); $pdata = array('isActive' => $data['isActive'], 'profileUpdated' => '0', 'city' => $data['city'], 'createdTime' => new \DateTime('now'), 'lastLogin' => new \DateTime('now'), 'email' => $data['email'], 'firstName' => $data['firstName'], 'lastName' => $data['lastName'], 'name' => $data['name'], 'password' => $data['password'], 'phone' => $data['phone'], 'cellphone' => $data['cellphone'], 'gender' => $data['gender'], 'country' => $entityManager->getRepository('User\\Entity\\Country')->findOneBy(array('id' => $data['country']))); $userExist = $entityManager->getRepository('User\\Entity\\User')->findOneBy(array('email' => $data['email'])); if ($userExist) { } else { $user = new User(); $user->createStaff($this, $pdata); $staff = $user->getStaff(); $staff->setType($entityManager->getRepository('User\\Entity\\Roles')->findOneBy(array('id' => $data['type']))); $staff->setClient($this->getCurrentUser()); $staff->setName($data['name']); $staff->save($entityManager); //$staffData = $staff->getData(); return new JsonModel($user->getData()); } return new JsonModel(['error' => 'User Exist', 'email' => $data['email']]); }