Ejemplo n.º 1
0
 /**
  * Create a new user instance after a valid registration.
  *
  * @param  array  $data
  * @return User
  */
 protected function create(array $data)
 {
     $newUser = User::create(['username' => $data['username'], 'password' => bcrypt($data['password']), 'created_at' => gmdate('Y-m-d H:i:s'), 'updated_at' => gmdate('Y-m-d H:i:s'), 'userTypeId' => $data['userTypeId']]);
     $userTypeId = $newUser->userTypeId;
     if ($userTypeId == 1 || $userTypeId == 2) {
         $newEmployee = Employee::create(['userId' => $newUser->id, 'firstName' => $data['firstName'], 'lastName' => $data['lastName'], 'email' => $data['email'], 'phone' => $data['phone'], 'streetAddress' => $data['streetAddress'], 'city' => $data['city'], 'state' => $data['state'], 'zipcode' => $data['zipcode'], 'ssn' => $data['ssn'], 'hourlyRate' => $data['hourlyRate'], 'primaryStoreId' => $data['primaryStoreId']]);
     }
     if ($userTypeId == 3) {
         if (array_key_exists('accountId', $data)) {
             $newContact = Contact::create(['userId' => $newUser->id, 'accountId' => $data['accountId'], 'firstName' => $data['firstName'], 'lastName' => $data['lastName'], 'email' => $data['email'], 'phone' => $data['phone'], 'contactTypeId' => $data['contactTypeId']]);
         } else {
             $newAccount = Account::create(['companyName' => $data['companyName'], 'streetAddress' => $data['streetAddress'], 'city' => $data['city'], 'state' => $data['state'], 'zipcode' => $data['zipcode'], 'accountStatus' => $data['accountStatus']]);
             $accntId = $newAccount->id;
             $newContant = Contact::create(['userId' => $newUser->id, 'accountId' => $accntId, 'firstName' => $data['firstName'], 'lastName' => $data['lastName'], 'email' => $data['email'], 'phone' => $data['phone'], 'contactTypeId' => $data['contactTypeId']]);
             $newBalance = Balance::create(['accountId' => $accntId, 'balance' => 0.0]);
         }
     }
     return $newUser;
 }