/** * This file is part of POS_Light Package, and its copyrights are owned by Acharis IT Consultancy Private Limited. * Any unauthorized copy or editing of these files is not approved. * @contact contact@acharis.com * @author Acharis IT Consultancy Pvt Ltd * @version 1.3 * @copyright 2012-2013 * @package POS_Light Admin Panel */ class Items extends Table { // Define the table name and table id protected $table_name = 'sf_items'; protected $table_id = 'item_id'; /** * Function to get all items, avoid rawmat * @param company_id * @return items array */ public static function getItems($company_id,$location_id,$is_featured=0,$nonveg_status='all',$category_id_string = NULL) { $query = 'select item.item_type, item.item_description, item.color_code, item.item_id, item.item_logo, item.item_group, item.size, item.item_default_tax_percent, location_items.location_item_price as item_default_price, location_items.is_visible, location_items.apply_taxes, item.is_featured, item.item_name, item.item_short_name, item.img_url, item.meat_content_type, item.item_type, item.is_new, item.has_addons, item.new_till_date, item.item_default_tax_percent, category.category_id, category.category_name, category.img_url as cat_img_url, groups.group_id, groups.img_url as grp_img_url, groups.group_name from sf_items as item inner join sf_location_items as location_items on location_items.item_id = item.item_id inner join sf_categories as category on item.category_id = category.category_id inner join sf_groups as groups on groups.group_id = category.group_id where location_items.location_id = "' . $location_id . '" and item.company_id = "' . $company_id . '" and item.is_sold = 1 and category.is_visible = 1 and item.is_visible = 1 and item.is_online = 1 and location_items.is_visible = 1 and location_items.is_available = 1 and groups.is_visible = 1 and item.is_addon = 0 '; if($category_id_string != NULL){ //$query .= ' and item.category_id in ('.$category_id_string.') '; $query .= ' and item.category_id in ('.$category_id_string.') '; } if($is_featured == 1){ $query .= ' and item.is_featured = 1 '; } if($nonveg_status != 'all'){ $query .=' and item.meat_content_type = '.$nonveg_status ; } $query .= ' order by category.display_order,item.item_group '; if($is_featured == 1){ $query .= ' limit 6 '; } $query .= ';'; $db = Database::getInstance(); if ($db -> query($query)) { $result = $db -> getResult(); return $result; } else { echo mysql_errno() . ':' . mysql_error() . '
'; } } /** * Function to get the avialable addon item details for an item * @param company_id,location_id - default - null,addon_item_id_string * @return available addons details for this item */ public function getAvailableAddonItemDetails($company_id,$location_id = NULL,$addon_item_id_string) { $db = Database::getInstance(); $query = 'select items.item_id,items.item_name,items.item_logo,items.img_url,categories.category_name,groups.group_name,location_items.location_item_price as item_price from sf_items as items inner join sf_location_items as location_items on location_items.item_id = items.item_id inner join sf_categories as categories on categories.category_id = items.category_id inner join sf_groups as groups on groups.group_id = categories.group_id inner join sf_locations as locations on locations.location_id = location_items.location_id where items.is_addon = 1 and items.is_online = 1 and location_items.is_visible = 1 and location_items.is_available = 1 and items.is_visible = 1 and items.item_id in ('.$addon_item_id_string.') '; if($location_id != NULL){ $query .=' and locations.location_id = "'.$location_id.'";'; } else{ $query .=' and locations.company_id = "'.$company_id.'";'; } //Run the query if ($db -> query($query)) { //Get the result in the array format $result = $db -> getResult(); } return $result; } /** * Function to get the items not in the item_id_string * @param $item_id_string, category_id * @return item_details */ public function getItemsNotIn($item_id_string='',$category_id){ $db = Database::getInstance(); if($item_id_string != ''){ $items_query ='select item_name,item_id,item_default_price as item_price from sf_items where category_id = '.$category_id.' and item_id not in('.$item_id_string.');'; } else{ $items_query ='select item_name,item_id,item_default_price as item_price from sf_items where category_id = '.$category_id.';'; } //echo $items_query; //Run the query if ($db -> query($items_query)) { //Get the result in the array format $items_query_result = $db -> getResult(); //print_r($items_query_result); } return $items_query_result; } /** * Function to get the addons of a company * @param company_id,location_id,meat_content_type * @return addon item details */ public function getAddons($company_id,$location_id,$meat_content_type = NULL) { $db = Database::getInstance(); $addon_query = 'select items.item_id,items.item_name,location_items.location_item_price as item_price,cat.category_id,cat.category_name from sf_items as items inner join sf_location_items as location_items on location_items.item_id = items.item_id inner join sf_categories as cat on cat.category_id = items.category_id where items.is_addon = 1 and location_id = "'.$location_id.'" and items.company_id = "' . $company_id . '" and location_items.is_visible = 1 and location_items.is_available = 1 '; if($meat_content_type != NULL){ $addon_query .= ' and items.meat_content_type = '.$meat_content_type; } $addon_query .= ' order by cat.category_id desc;'; //echo $addon_query; //Run the query if ($db -> query($addon_query)) { //Get the result in the array format $result = $db -> getResult(); } return $result; } /** * Function to get the combo items in which the provided item is precent * @param item_id * @return combo item details */ public function getComboItemDetailsByItemId($location_id,$item_id){ $db = Database::getInstance(); $query = 'select items.item_id,items.item_name,items.item_type,location_items.location_item_price,item_description from sf_items as items inner join sf_location_items as location_items on location_items.item_id = items.item_id where location_items.is_online = 1 and location_items.location_id = "'.$location_id.'" and location_items.is_visible = 1 and location_items.item_id in (select combo_item_id from sf_item_combos where item_id = '.$item_id.');'; //Run the query if ($db -> query($query)) { //Get the result in the array format $result = $db -> getResult(); } else{ $result = array(); } return $result; } /** * Function to get the location addon detail of a category * @param caompany_id,category_id string(seperated by comas),location_id * @return addon_details */ public function getCategoryAddonsByCategoryIds($company_id,$category_ids,$location_id) { $query = 'select items.meat_content_type,category.category_name,category.category_id,items.item_id,location_items.location_item_price as item_price,items.item_name from sf_items as items inner join sf_location_items as location_items on location_items.item_id = items.item_id inner join sf_categories as category on category.category_id = items.category_id where items.category_id in ('.$category_ids.') and items.is_addon = 1 and location_items.is_available = 1 and location_items.is_visible = 1 and location_items.location_id = "'.$location_id.'";'; //echo $query ."
"; $db = Database::getInstance(); if ($db -> query($query)) { $result = $db -> getResult(); return $result; } else { echo mysql_errno() . ':' . mysql_error() . '
'; } } /** * Function to get the items of a combo by combo_item_id * @param company_id,combos_item_id * @return items of a combo */ public function getItemDetailsByComboItemId($company_id,$combo_item_id){ $query = 'select item_combo.combo_item_id,item_combo.item_id,item_combo.qty,items.item_name from sf_item_combos as item_combo inner join sf_items as items on item_combo.item_id = items.item_id where item_combo.combo_item_id = '.$combo_item_id.' order by items.item_name;'; //echo $query ."
"; $db = Database::getInstance(); if ($db -> query($query)) { $result = $db -> getResult(); return $result; } else { echo mysql_errno() . ':' . mysql_error() . '
'; } } } ?>