<?php
class VkontakteBotModel extends Model
{
public function newTask($account_id, $count, $action_type, $status)
{
$vk_bot_tasks = $this->db->table('vk_bot_tasks');
$vk_bot_tasks->insert([
'account_id' => $account_id,
'task_type' => $action_type,
'task_count' => $count,
'task_status' => $status
]);
}
public function allAccounts()
{
$vk_bot_accounts = $this->db->table('vk_bot_accounts');
return $vk_bot_accounts->select('id, account_name, created_at')->get()->getResult();
}
public function allTasks()
{
$vk_bot_accounts = $this->db
->table('vk_bot_tasks')
->select('vk_bot_tasks.*, vk_bot_accounts.account_name')
->join('vk_bot_accounts', 'vk_bot_accounts.id = vk_bot_tasks.account_id');
return $vk_bot_accounts->get()->getResult();
}
public function ActiveTask()
{
return $this->db
->table('vk_bot_tasks')
->where('task_status', 'active')
->get()
->getFirstRow();
}
public function changeTaskStatus($taskID, $status)
{
return $this->db
->table('vk_bot_tasks')
->where('task_id', $taskID)
->set('task_status', $status)
->update();
}
public function accountNameById($account_id) {}
public function accountIdByName($account_name)
{
return $this->db
->table('vk_bot_accounts')
->select('id')
->getWhere(['account_name' => $account_name])
->getRow()
->id;
}
}