Example #1
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_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 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_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]);
 }
Example #6
0
 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]);
 }
Example #7
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]);
 }
Example #8
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 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 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
 }
Example #12
0
 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
     }
 }