class Toolhound::Inventory
Class to parse GitHub repository owner and name from URLs and to generate URLs
Public Instance Methods
build_join(join)
click to toggle source
def joins
# LEFT OUTER JOIN tblInventoryID ON tblInventoryID.intInventoryID = tblInventory.intInventoryID [ {type: :inner, table: :inventory_type, on: "intInventoryTypeID"}, {type: :inner, table: :inventory_text, on: ["intInventoryTypeID", varLocaleID: locale]}, {type: :left_outer, table: :unit_of_measure_text, on: "intUofMID"}, {type: :left_outer, table: :category_text, on: ["intUofMID", varLocaleID: locale], as: :category}, ] arr.join(" ")
end
# File lib/toolhound-ruby/inventory.rb, line 58 def build_join(join) join_types = { inner: "INNER JOIN", left: "LEFT OUTER JOIN", left_outer: "LEFT OUTER JOIN", left_inner: "LEFT INNER JOIN", right: "RIGHT OUTER JOIN", right_outer: "RIGHT OUTER JOIN", right_inner: "RIGHT INNER JOIN", } type = join_types[join[:type] || :inner] table = formatted_table_name(join[:table]) table_str = "#{table} " if join[:as] table = formatted_table_name(join[:as]) table_str += "AS #{table} " end on = join[:on] case on.class.to_s when "String" end # on_str = on ? "ON #{on}" : "" "#{type} #{table_str} #{on_str}" end
default_joins()
click to toggle source
# File lib/toolhound-ruby/inventory.rb, line 25 def default_joins arr = [] arr << "INNER JOIN tblInventoryType ON tblInventory.intInventoryTypeID = tblInventoryType.intInventoryTypeID" arr << "INNER JOIN tblInventoryText ON (tblInventoryText.intInventoryID = tblInventory.intInventoryID AND tblInventoryText.varLocaleID = '#{locale}')" arr << "LEFT OUTER JOIN tblUnitOfMeasureText ON (tblUnitOfMeasureText.intUofMID = tblInventory.intUofMID )" arr << "LEFT OUTER JOIN tblCategoryText AS tblCategory ON (tblCategory.intCategoryID = tblInventory.intCategoryID AND tblCategory.varLocaleID = '#{locale}')" arr << "LEFT OUTER JOIN tblCategoryText AS tblSubCategory ON (tblSubCategory.intCategoryID = tblInventory.intSubCategoryID AND tblSubCategory.varLocaleID = '#{locale}')" end
default_selects()
click to toggle source
self.table_name = “tblInventory” self.primary_key = “intInventoryID”
# File lib/toolhound-ruby/inventory.rb, line 15 def default_selects selects = { inventory: ["intInventoryID", "intCategoryID", "intSubCategoryID", "intManufacturerID", "intVendorID", "dteCreatedDate", "dteModifiedDate"], inventory_text: ["varPartNo", "varDescription", "txtNotes", {varUserField1: "varGlRevenue"}, {varUserField2: "varGlCOGSCode"}, {varUserField3: "varPhaseCode"}], unit_of_measure_text: ["varUnitOfMeasure"], category: ["varCategory"], sub_category: [{varCategory: "varSubcategory"}] } end
default_wheres()
click to toggle source
# File lib/toolhound-ruby/inventory.rb, line 34 def default_wheres [{bolIsActive: 1}, {bolDeleted: 0}] end