Example #1
0
 public function updateUser(Request $request)
 {
     $data = $request->all();
     $obj = new CommonController();
     DB::beginTransaction();
     try {
         $check = User::where(['USERNAME' => $data['username']])->get();
         if (count($check) > 0) {
             $user = new User();
             $user->USERNAME = $data['username'];
             $user->LAST_NAME = $data['lastname'];
             $user->MIDDLE_NAME = $data['middlename'];
             $user->FIRST_NAME = $data['firstname'];
             $user->EMAIL = $data['email'];
             $user->EXPIRE_DATE = date('Y/m/d', strtotime($data['expireDate']));
             $user->ACTIVE = $data['active'];
             User::where(['ID' => $data['ID']])->update(json_decode(json_encode($user), true));
             if ($data['pass'] != "") {
                 $pUser = new User();
                 $now = Carbon::now('Europe/London');
                 $pUser->PASSWORD_CHANGED = date('Y-m-d H:i:s', strtotime($now));
                 $pUser->PASSWORD = $obj->myencrypt($data['pass']);
                 \DB::enableQueryLog();
                 User::where(['ID' => $data['ID']])->update(json_decode(json_encode($pUser), true));
                 \Log::info(\DB::getQueryLog());
             }
             UserDataScope::where(['USER_ID' => $data['ID']])->delete();
             UserUserRole::where(['USER_ID' => $data['ID']])->delete();
             $userDataScope = new UserDataScope();
             $userDataScope->USER_ID = $data['ID'];
             $userDataScope->PU_ID = $data['pu_id'] == 0 ? null : $data['pu_id'];
             $userDataScope->AREA_ID = $data['area_id'] == 0 ? null : $data['area_id'];
             $userDataScope->FACILITY_ID = $data['fa_id'] == 0 ? null : $data['fa_id'];
             UserDataScope::insert(json_decode(json_encode($userDataScope), true));
             $roles = explode(',', $data['roles']);
             if (count($roles) > 0) {
                 foreach ($roles as $role) {
                     $userUserRole = new UserUserRole();
                     $userUserRole->USER_ID = $data['ID'];
                     $userUserRole->ROLE_ID = $role;
                     UserUserRole::insert(json_decode(json_encode($userUserRole), true));
                 }
             }
         }
     } catch (\Exception $e) {
         DB::rollback();
     }
     DB::commit();
     return response()->json(array('Message' => 'Update successfully'));
 }