check and test code and optimize some queries

pull/14/head
azizi 4 years ago
parent d2b39f34aa
commit b8a9682d21

@ -53,10 +53,9 @@ class ConvertUsers extends Command
*/ */
private function insertRowToUsers($data) private function insertRowToUsers($data)
{ {
Database::table('users')->insertOrIgnore($data); Database::table('users')->insertOrIgnore($data);
$lastUser = Database::select('SELECT * FROM `users` WHERE id=(SELECT max(id) FROM `users`)'); $lastUser = Database::table('users')->orderBy('id', 'DESC')->first();
return $lastUser->id;
return $lastUser[0]->id;
} }
@ -88,32 +87,32 @@ class ConvertUsers extends Command
* Insert address * Insert address
*/ */
private function InsertAddress($addressData,$tmp_id, $userId) private function InsertAddress($addressData,$tmp_id, $userId)
{ {
$userAddress = Database::select( $userAddress = Database::select(
'select * from `addresses` where addressable_id=? and addressable_type =?', 'select * from `addresses` where addressable_id=? and addressable_type =?',
[ [
$tmp_id, $tmp_id,
'App\TempBusiness' 'App\TempBusiness'
] ]
); );
foreach ($userAddress as $address) foreach ($userAddress as $address)
{ {
Database::table('wmuser_common.addresses')->insertOrIgnore([ Database::table('wmuser_common.addresses')->insertOrIgnore([
'title' => $address->title, 'title' => $address->title,
'city_id' => $addressData['city_id'], 'city_id' => $addressData['city_id'],
'district_id' => $addressData['district_id'], 'district_id' => $addressData['district_id'],
'postal_code' => $address->postal_code, 'postal_code' => $address->postal_code,
'addressable_id' => $userId, 'addressable_id' => $userId,
'addressable_type' => 'user', 'addressable_type' => 'user',
'created_at' => Carbon::now(), 'created_at' => Carbon::now(),
'updated_at' => Carbon::now() 'updated_at' => Carbon::now()
]); ]);
} }
} }
@ -145,8 +144,8 @@ class ConvertUsers extends Command
private function updateToUserStatus($userId,$userStatusId) private function updateToUserStatus($userId,$userStatusId)
{ {
Database::table('users') Database::table('users')
->where('id', $userId) ->where('id', $userId)
->update(['user_status_id' => $userStatusId]); ->update(['user_status_id' => $userStatusId]);
} }
@ -156,8 +155,7 @@ class ConvertUsers extends Command
private function categoriesConfig($categoryId, $client_id) private function categoriesConfig($categoryId, $client_id)
{ {
$category = Database::select('select * from `categories` where id=? ' , [$categoryId]); $category = Database::table('categories')->where('id' , $categoryId)->get();
Database::table('wmuser_crm.client_categories')->insertOrIgnore([ Database::table('wmuser_crm.client_categories')->insertOrIgnore([
'name_en' => $category[0]->name_en, 'name_en' => $category[0]->name_en,
@ -174,8 +172,8 @@ class ConvertUsers extends Command
Database::table('wmuser_crm.client_client_category')->insertOrIgnore([ Database::table('wmuser_crm.client_client_category')->insertOrIgnore([
'client_category_id' => $clientCategories->id, 'client_category_id' => $clientCategories->id,
'client_id' => $client_id 'client_id' => $client_id
]); ]);
@ -191,29 +189,29 @@ class ConvertUsers extends Command
{ {
$count = 0; $count = 0;
foreach($this->getBusinessRows() as $userData) foreach($this->getBusinessRows() as $userData)
{ {
$phones = json_decode($userData->phones); $phones = json_decode($userData->phones);
$cellPhone = null; $cellPhone = null;
for( $i=0; $i <= count($phones)-1 ; $i++ ) for( $i=0; $i <= count($phones)-1 ; $i++ )
{ {
if($phones[$i]->label == 'Mobile') if($phones[$i]->label == 'Mobile')
{ {
$cellPhone = $phones[$i]->tel; $cellPhone = $phones[$i]->tel;
} }
} }
$userTableDedails = [ $userTableDedails = [
'address' => [ 'address' => [
'latitude' => $userData->latitude, 'latitude' => $userData->latitude,
'longitude' => $userData->longitude 'longitude' => $userData->longitude
], ],
'details' => json_decode($userData->details), 'details' => json_decode($userData->details),
]; ];
$userTableData = [ $userTableData = [
@ -240,12 +238,13 @@ class ConvertUsers extends Command
$this->categoriesConfig($userData->category_id, $newUserId); $this->categoriesConfig($userData->category_id, $newUserId);
$this->InsertAddress($userAddress, $userData->id,$newUserId); $this->InsertAddress($userAddress, $userData->id,$newUserId);
$this->insertPhone($userData->phones , $newUserId); $this->insertPhone($userData->phones , $newUserId);
$lastUserId = $this->insertToClientStatuses($userData->status); $lastStatusId = $this->insertToClientStatuses($userData->status);
$this->updateToUserStatus($newUserId,$lastUserId); $this->updateToUserStatus($newUserId,$lastStatusId);
$count ++; $count ++;
$this->info('success transfer user : '. $newUserId . ' count of add :'.$count);
} $this->info('success transfer user : '. $newUserId . ' count of add : '.$count);
dd('success');
}

Loading…
Cancel
Save