public function new_delivery(array $delivery_data) { $delivery_id_from_main = $delivery_data['id']; $branch_id = $delivery_data['branch_id']; $main_id = $delivery_data['main_id']; $settings_repo = new Settings_Repository($this->db); if ($settings_repo->get_settings()->app_id != $branch_id) { return -1; // invalid branch } else { if ($settings_repo->get_settings()->main_id != $main_id) { return -2; // invalid main } else { $query = $this->db->query('SELECT id FROM deliveries WHERE delivery_id_from_main=' . $delivery_id_from_main); if ($query->num_rows() < 1) { $this->db->insert('deliveries', array('delivery_id_from_main' => $delivery_id_from_main, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'))); return $this->db->insert_id(); } else { return 0; // delivery exists } } } }
public function import_users(array $users_data) { $branch_id = $users_data['branch_id']; $main_id = $users_data['main_id']; $settings_repo = new Settings_Repository($this->db); if ($settings_repo->get_settings()->app_id != $branch_id) { return 0; // invalid branch } else { if ($settings_repo->get_settings()->main_id != $main_id) { return -1; // invalid main } else { $users = $users_data['users']; foreach ($users as $user) { $query = $this->db->query('SELECT id FROM users WHERE username="******"'); if ($query->num_rows() >= 1) { $this->db->where('username', $user['username']); $this->db->update('users', array('user_level_id' => $user['user_level_id'], 'last_name' => $user['last_name'], 'first_name' => $user['first_name'], 'middle_name' => $user['middle_name'], 'updated_at' => date('Y-m-d H:i:s'))); } else { $this->db->insert('users', array('username' => $user['username'], 'password' => $user['password'], 'user_level_id' => $user['user_level_id'], 'last_name' => $user['last_name'], 'first_name' => $user['first_name'], 'middle_name' => $user['middle_name'], 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'))); } } return 1; } } }
public function to_return_json($return_id) { $settings_repo = new Settings_Repository($this->db); $main_id = $settings_repo->get_settings()->main_id; $branch_id = $settings_repo->get_settings()->app_id; $query = $this->db->query('SELECT item_id, quantity FROM returned_items WHERE return_id=' . $return_id); $items = $query->result(); $data = array(); array_push($data, array('transaction' => Transaction_Type::Return_Items, 'id' => $return_id, 'main_id' => $main_id, 'branch_id' => $branch_id, 'items' => $items)); return json_encode($data[0]); }
public function new_return(array $return_data) { $return_id_from_branch = $return_data['id']; $branch_id = $return_data['branch_id']; $main_id = $return_data['main_id']; $settings_repo = new Settings_Repository($this->db); $branches_repo = new Branches_Repository($this->db); if ($settings_repo->get_settings()->app_id != $main_id) { return -2; // invalid main } else { if (!$branches_repo->branch_exists($branch_id)) { return -1; // invalid branch } else { if (!$this->return_exists_via_return_id_from_branch($return_id_from_branch, $branch_id)) { $this->db->insert('returns', array('branch_id' => $branch_id, 'return_id_from_branch' => $return_id_from_branch, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'))); $return_id = $this->db->insert_id(); $items = $return_data['items']; foreach ($items as $item) { $this->db->insert('returned_items', array('return_id' => $return_id, 'item_id' => $item['item_id'], 'quantity' => $item['quantity'])); } return $return_id; } else { return 0; // return exists } } } }
public function new_sales_report(array $sales_report_data) { $sales_report_id_from_branch = $sales_report_data['id']; $branch_id = $sales_report_data['branch_id']; $main_id = $sales_report_data['main_id']; $settings_repo = new Settings_Repository($this->db); $branches_repo = new Branches_Repository($this->db); if ($settings_repo->get_settings()->app_id != $main_id) { return -2; // invalid main } else { if (!$branches_repo->branch_exists($branch_id)) { return -1; // invalid branch } else { if (!$this->sales_report_exists_via_sales_report_id_from_branch($sales_report_id_from_branch, $branch_id)) { $this->db->insert('sales_reports', array('branch_id' => $branch_id, 'sales_report_id_from_branch' => $sales_report_id_from_branch, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'))); $sales_report_id = $this->db->insert_id(); $users_repo = new Users_Repository($this->db); foreach ($sales_report_data['sales'] as $sale) { $this->db->insert('receipts', array('receipt_id_from_branch' => $sale['receipt_id'], 'sales_report_id_from_branch' => $sales_report_id_from_branch, 'created_at_from_branch' => $sale['created_at'], 'updated_at_from_branch' => $sale['updated_at'], 'sales_report_id' => $sales_report_id, 'user_id' => $users_repo->get_user_via_username($sale['username'])->id, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'))); $receipt_id = $this->db->insert_id(); foreach ($sale['items'] as $item) { $this->db->insert('receipt_items', array('item_id' => $item['item_id'], 'receipt_id' => $receipt_id, 'price' => $item['price'], 'quantity' => $item['quantity'])); } } return $sales_report_id; } else { return 0; // sales report exists } } } }
public function to_export_sales_report_json($sales_report_id) { $receipts_repo = new Receipts_Repository($this->db); $settings_repo = new Settings_Repository($this->db); $users_repo = new Users_Repository($this->db); $receipts = $receipts_repo->get_all_receipts_via_sales_report_id($sales_report_id); $sales = array(); foreach ($receipts as $receipt) { $items = array(); $receipt_items = $receipts_repo->get_all_items_from_receipt($receipt->id); foreach ($receipt_items as $receipt_item) { array_push($items, array('item_id' => $receipt_item->item_id, 'price' => $receipt_item->price, 'quantity' => $receipt_item->quantity)); } array_push($sales, array('receipt_id' => $receipt->id, 'username' => $users_repo->get_user_via_id($receipt->user_id)->username, 'created_at' => $receipt->created_at, 'updated_at' => $receipt->updated_at, 'items' => $items)); } $data = array('transaction' => Transaction_Type::Export_Sales_Report, 'id' => $sales_report_id, 'main_id' => $settings_repo->get_settings()->main_id, 'branch_id' => $settings_repo->get_settings()->app_id, 'sales' => $sales); return json_encode($data); }
public function to_delivery_json($delivery_id) { $query = $this->db->query('SELECT * FROM deliveries WHERE id=' . $delivery_id); $row = $query->row(); $branch_id = $row->branch_id; $settings_repo = new Settings_Repository($this->db); $main_id = $settings_repo->get_settings()->app_id; $query = $this->db->query('SELECT delivered_items.item_id, delivered_items.quantity, items.description, items.price FROM delivered_items INNER JOIN items ON delivered_items.item_id=items.id WHERE delivered_items.delivery_id=' . $delivery_id); $items = $query->result(); $data = array(); array_push($data, array('transaction' => Transaction_Type::Deliver_Items, 'id' => $delivery_id, 'main_id' => $main_id, 'branch_id' => $branch_id, 'items' => $items)); return json_encode($data[0]); }
public function to_json($user_ids, $branch_id) { $data = array(); $users = array(); foreach ($user_ids as $user_id) { $query = $this->db->query('SELECT * FROM users WHERE id=' . $user_id); $row = $query->row(); array_push($users, array('username' => $row->username, 'password' => $row->password, 'user_level_id' => $row->user_level_id, 'last_name' => $row->last_name, 'first_name' => $row->first_name, 'middle_name' => $row->middle_name)); } $settings_repo = new Settings_Repository($this->db); array_push($data, array('transaction' => Transaction_Type::Export_Users, 'main_id' => $settings_repo->get_settings()->app_id, 'branch_id' => $branch_id, 'users' => $users)); return json_encode($data[0]); }
public function login_post() { $username = $this->input->post('username'); $password = $this->input->post('password'); $user_repo = new Users_Repository($this->base_model->get_db_instance()); if ($user_repo->user_exists_via_username_and_password($username, $password)) { $user = $user_repo->get_user_via_username($username); $data = array(); array_push($data, array('id' => $user->id, 'username' => $user->username, 'password' => $user->password, 'user_level_id' => $user->user_level_id, 'user_level' => $user->user_level, 'last_name' => $user->last_name, 'first_name' => $user->first_name, 'middle_name' => $user->middle_name, 'created_at' => $user->created_at, 'updated_at' => $user->updated_at)); $settings_repo = new Settings_Repository($this->base_model->get_db_instance()); $this->session->set_userdata('auth', array('user_id' => $user->id, 'name' => $user->first_name . ' ' . $user->last_name, 'app_id' => $settings_repo->get_settings()->app_id)); echo json_encode($data); } else { echo 0; } }
public function get_main_id_post() { $settings_repo = new Settings_Repository($this->base_model->get_db_instance()); echo $settings_repo->get_settings()->main_id; }
public function is_transaction_valid_post() { $main_id = $this->input->post('mainId'); $branch_id = $this->input->post('branchId'); $return_id_from_branch = $this->input->post('returnIdFromBranch'); $transaction = $this->input->post('transaction'); $settings_repo = new Settings_Repository($this->base_model->get_db_instance()); $branches_repo = new Branches_Repository($this->base_model->get_db_instance()); $returns_repo = new Returns_Repository($this->base_model->get_db_instance()); if ($transaction != Transaction_Type::Return_Items) { echo 1; } else { if ($settings_repo->get_settings()->app_id != $main_id) { echo -2; } else { if (!$branches_repo->branch_exists($branch_id)) { echo -1; } else { if ($returns_repo->return_exists_via_return_id_from_branch($return_id_from_branch, $branch_id)) { echo 0; } else { echo 2; } } } } // valid return }
public function get_default_save_path_post() { $settings_repo = new Settings_Repository($this->base_model->get_db_instance()); echo $settings_repo->get_settings()->default_save_path; }
public function is_transaction_valid_post() { $main_id = $this->input->post('mainId'); $branch_id = $this->input->post('branchId'); $delivery_id_from_main = $this->input->post('deliveryIdFromMain'); $transaction = $this->input->post('transaction'); $settings_repo = new Settings_Repository($this->base_model->get_db_instance()); $deliveries_repo = new Deliveries_Repository($this->base_model->get_db_instance()); if ($transaction == Transaction_Type::Deliver_Items) { if ($settings_repo->get_settings()->main_id != $main_id) { echo -2; } else { if ($settings_repo->get_settings()->app_id != $branch_id) { echo -1; } else { if ($deliveries_repo->delivery_exists_via_delivery_id_from_main($delivery_id_from_main)) { echo 0; } else { echo 2; } } } // valid delivery } else { echo 1; // invalid transaction } }