diff --git a/app/Console/Commands/ConvertUser.php b/app/Console/Commands/ConvertUser.php deleted file mode 100644 index d630473..0000000 --- a/app/Console/Commands/ConvertUser.php +++ /dev/null @@ -1,327 +0,0 @@ -get(); - - return $data; - } - - /** - * Insert a row in table users - */ - private function insertRowToUsers($data) - { - Database::table('users')->insertOrIgnore($data); - $lastUser = Database::table('users') - ->orderBy('id', 'DESC') - ->first(); - - return $lastUser->id; - } - - - /** - * Insert to wmuser_common phone - */ - private function insertPhone($phones,$userId) - { - - foreach($phones as $phone) - { - - $number_type ; - $regex = '/^09[0,1,2,3,9]{1}[0-9]{8}$/'; - - if (preg_match($regex,$phone->tel) == 1) - { - $number_type = 'cellphone'; - }else{ - $number_type = 'telephone'; - } - - - Database::table('wmuser_common.phones')->insertOrIgnore([ - 'phonable_id' => $userId, - 'number' => $phone->tel, - 'label' => $phone->label, - 'number_type' => $number_type, - 'phonable_type' => 'user', - 'created_at' => Carbon::now(), - 'updated_at' => Carbon::now(), - ]); - - } - - } - - - /** - * Insert address - */ - - private function InsertAddress($addressData,$tmp_id, $userId) - { - $userAddress = Database::select( - 'select * from `addresses` where addressable_id=? and addressable_type =?', - [ - $tmp_id, - 'App\TempBusiness' - ] - ); - - foreach ($userAddress as $address) - { - Database::table('wmuser_common.addresses')->insertOrIgnore([ - 'title' => $address->title, - 'city_id' => $addressData['city_id'], - 'district_id' => $addressData['district_id'], - 'postal_code' => $address->postal_code, - 'addressable_id' => $userId, - 'addressable_type' => 'user', - 'created_at' => Carbon::now(), - 'updated_at' => Carbon::now() - ]); - } - - - } - - - - /** - * insert Status to client status - * - */ - private function insertToClientStatuses($clientStatus) - { - - $check_client_status = Database::table('wmuser_crm.client_statuses') - ->where('name' , $clientStatus) - ->first(); - - - $client_status_id; - - if ($check_client_status === null) { - - Database::table('wmuser_crm.client_statuses')->insertOrIgnore([ - 'name' => $clientStatus, - 'user_id' => 52, - 'business_id' => 3, - 'created_at' => Carbon::now(), - 'updated_at' => Carbon::now() - ]); - - $client_status_id = Database::table('wmuser_crm.client_statuses') - ->orderBy('id', 'DESC') - ->first(); - - } else { - - $client_status_id = $check_client_status; - - } - - - return $client_status_id->id; - - } - - /** - * update user status - **/ - - private function updateToUserStatus($userId,$userStatusId) - { - Database::table('users') - ->where('id', $userId) - ->update(['user_status_id' => $userStatusId]); - - } - - /** - * Insert categories with Id - */ - private function categoriesConfig($categoryId, $client_id) - { - - $category = Database::table('categories') - ->where('id' , $categoryId) - ->first(); - - - - $check_category_exist = Database::table('wmuser_crm.client_categories') - ->where('name_en' , $category->name_en) - ->first(); - - $client_category_id ; - - if ($check_category_exist === null) - { - Database::table('wmuser_crm.client_categories')->insertOrIgnore([ - 'name_en' => $category->name_en, - 'name' => $category->name_fa, - 'parent_id' => null, - 'business_id' => 3, - 'user_id' => $client_id, - 'level' => 1, - 'created_at' => Carbon::now(), - 'updated_at' => Carbon::now() - ]); - - $client_category_id = Database::table('wmuser_crm.client_categories') - ->orderBy('id', 'DESC') - ->first(); - - - $client_category_id = $client_category_id->id; - - } else { - - $client_category_id = $check_category_exist->id; - } - - - - - - Database::table('wmuser_crm.client_client_category')->insertOrIgnore([ - 'client_category_id' => $client_category_id, - 'client_id' => $client_id - - ]); - - - } - - /** - * Execute the console command. - * - * @return mixed - */ - public function handle() - { - - $count = 0; - foreach($this->getBusinessRows() as $userData) - { - - $phones = json_decode($userData->phones); - - $cellPhone = null; - - foreach ($phones as $phone) - { - - $phone->tel = str_replace(' ','',$phone->tel); - - } - - for( $i=0; $i <= count($phones)-1 ; $i++ ) - { - - $regex = '/^09[0,1,2,3,9]{1}[0-9]{8}$/'; - - $match = preg_match($regex,$phones[$i]->tel); - - if ($match == 1) - { - $cellPhone = $phones[$i]->tel; - break; - - } - - } - - - $userTableDedails = [ - 'address' => [ - 'latitude' => $userData->latitude, - 'longitude' => $userData->longitude - ], - 'details' => json_decode($userData->details), - ]; - - - $userTableData = [ - 'name' => $userData->brand_fa, - 'name_en' => $userData->brand_en, - 'business_id' => 3, - 'cell_number' => $cellPhone, - 'detail' => json_encode($userTableDedails), - 'instagram' => json_decode($userData->details)->InstagramID, - 'telegram' => json_decode($userData->details)->TelegramID, - 'email' => json_decode($userData->details)->Email, - 'created_at' => Carbon::now(), - 'updated_at' => Carbon::now(), - 'user_status_id' => null, - ]; - - $userAddress = [ - 'district_id' => $userData->district_id, - 'city_id' => $userData->city_id - ]; - - - $newUserId = $this->insertRowToUsers($userTableData); - $this->categoriesConfig($userData->category_id, $newUserId); - $this->InsertAddress($userAddress, $userData->id,$newUserId); - $this->insertPhone($phones , $newUserId); - $lastStatusId = $this->insertToClientStatuses($userData->status); - $this->updateToUserStatus($newUserId,$lastStatusId); - $count ++; - - $this->info('success transfer user : '. $newUserId . ' count of add : '.$count); - - } - - - - - } - -}