e85d39a1ce97164f5379d37574e2b3220b04b684
[fa-stable.git] / inventory / includes / db / items_locations_db.inc
1 <?php
2 /**********************************************************************
3     Copyright (C) FrontAccounting, LLC.
4         Released under the terms of the GNU General Public License, GPL, 
5         as published by the Free Software Foundation, either version 3 
6         of the License, or (at your option) any later version.
7     This program is distributed in the hope that it will be useful,
8     but WITHOUT ANY WARRANTY; without even the implied warranty of
9     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
10     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
11 ***********************************************************************/
12 function add_item_location($loc_code, $location_name, $delivery_address, $phone, $phone2, $fax, $email, $contact, $fixed_asset = 0)
13 {
14         $sql = "INSERT INTO ".TB_PREF."locations (loc_code, location_name, delivery_address, phone, phone2, fax, email, contact, fixed_asset)
15                 VALUES (".db_escape($loc_code).", ".db_escape($location_name).", ".db_escape($delivery_address).", "
16                         .db_escape($phone).", ".db_escape($phone2).", ".db_escape($fax).", ".db_escape($email).", "
17                         .db_escape($contact).", ".db_escape($fixed_asset).")";
18
19         db_query($sql,"a location could not be added");
20
21         /* Also need to add loc_stock records for all existing items */
22         $sql = "INSERT INTO ".TB_PREF."loc_stock (loc_code, stock_id, reorder_level)
23                 SELECT ".db_escape($loc_code).", ".TB_PREF."stock_master.stock_id, 0 FROM ".TB_PREF."stock_master";
24
25         db_query($sql,"a location could not be added");
26 }
27
28 //------------------------------------------------------------------------------------
29
30 function update_item_location($loc_code, $location_name, $delivery_address, $phone, $phone2, $fax, $email, $contact, $fixed_asset = 0)
31
32 {
33     $sql = "UPDATE ".TB_PREF."locations SET location_name=".db_escape($location_name).",
34         delivery_address=".db_escape($delivery_address).",
35         phone=".db_escape($phone).", phone2=".db_escape($phone2).", fax=".db_escape($fax).",
36         email=".db_escape($email).", contact=".db_escape($contact).",
37       fixed_asset=".db_escape($fixed_asset)."
38         WHERE loc_code = ".db_escape($loc_code);
39
40         db_query($sql,"a location could not be updated");
41 }
42
43 //------------------------------------------------------------------------------------
44
45 function delete_item_location($item_location)
46 {
47         $sql="DELETE FROM ".TB_PREF."locations WHERE loc_code=".db_escape($item_location);
48         db_query($sql,"a location could not be deleted");
49
50         $sql = "DELETE FROM ".TB_PREF."loc_stock WHERE loc_code =".db_escape($item_location);
51         db_query($sql,"a location could not be deleted");
52 }
53
54 //------------------------------------------------------------------------------------
55
56 function get_item_location($item_location)
57 {
58         $sql="SELECT * FROM ".TB_PREF."locations WHERE loc_code=".db_escape($item_location);
59
60         $result = db_query($sql,"a location could not be retrieved");
61
62         return db_fetch($result);
63 }
64
65 //------------------------------------------------------------------------------------
66
67 function get_item_locations($show_inactive, $fixed_asset = 0)
68 {
69         $sql = "SELECT * FROM ".TB_PREF."locations WHERE fixed_asset = ".db_escape($fixed_asset);
70         if (!$show_inactive) $sql .= " AND !inactive";
71         return db_query($sql, "could not query locations");
72 }
73
74 //------------------------------------------------------------------------------------
75
76 function set_reorder_level($stock_id, $loc_code, $reorder_level)
77 {
78         $sql = "UPDATE ".TB_PREF."loc_stock SET reorder_level = $reorder_level
79                 WHERE stock_id = ".db_escape($stock_id)." AND loc_code = ".db_escape($loc_code);
80
81         db_query($sql,"an item reorder could not be set");
82 }
83
84 //------------------------------------------------------------------------------------
85
86 function get_loc_details($stock_id, $fixed_asset = 0)
87 {
88         $sql = "SELECT stock.loc_code, stock.location_name, "
89         .db_escape($stock_id)." as stock_id, reorders.reorder_level
90                 FROM ".TB_PREF."locations stock LEFT JOIN ".TB_PREF."loc_stock reorders ON
91                 reorders.loc_code=stock.loc_code
92                 AND reorders.stock_id = ".db_escape($stock_id)
93             ." WHERE stock.fixed_asset = ".db_escape($fixed_asset)
94                 ." ORDER BY reorders.loc_code";
95         return db_query($sql,"an item reorder could not be retreived");
96 }
97