浏览代码

Remove some extraneous code involving unit conversion.

Lee Morgan 5 年之前
父节点
当前提交
d1a85c3f48

+ 1 - 25
views/dashboardPage/js/classes/Merchant.js

@@ -38,31 +38,7 @@ class MerchantIngredient{
     }
 
     updateQuantity(quantity){
-        this._quantity += this.convertToBase(quantity);
-    }
-
-    convertToBase(quantity){
-        switch(this._ingredient.unit){
-            case "g": return quantity;
-            case "kg": return quantity * 1000;
-            case "oz":  return quantity * 28.3495; 
-            case "lb":  return quantity * 453.5924;
-            case "ml": return quantity / 1000; 
-            case "l": return quantity;
-            case "tsp": return quantity / 202.8842; 
-            case "tbsp": return quantity / 67.6278; 
-            case "ozfl": return quantity / 33.8141; 
-            case "cup": return quantity / 4.1667; 
-            case "pt": return quantity / 2.1134; 
-            case "qt": return quantity / 1.0567; 
-            case "gal": return quantity * 3.7854;
-            case "mm": return quantity / 1000; 
-            case "cm": return quantity / 100; 
-            case "m": return quantity;
-            case "in": return quantity / 39.3701; 
-            case "ft": return quantity / 3.2808;
-            default: return quantity;
-        }
+        this._quantity += controller.baseUnit(quantity, this._ingredient.unit);
     }
 
     getQuantityDisplay(){

+ 1 - 25
views/dashboardPage/js/classes/Order.js

@@ -31,31 +31,7 @@ class OrderIngredient{
     }
 
     updateQuantity(quantity){
-        this._quantity += this.convertToBase(quantity);
-    }
-
-    convertToBase(quantity){
-        switch(this._ingredient.unit){
-            case "g": return quantity;
-            case "kg": return quantity * 1000;
-            case "oz":  return quantity * 28.3495; 
-            case "lb":  return quantity * 453.5924;
-            case "ml": return quantity / 1000; 
-            case "l": return quantity;
-            case "tsp": return quantity / 202.8842; 
-            case "tbsp": return quantity / 67.6278; 
-            case "ozfl": return quantity / 33.8141; 
-            case "cup": return quantity / 4.1667; 
-            case "pt": return quantity / 2.1134; 
-            case "qt": return quantity / 1.0567; 
-            case "gal": return quantity * 3.7854;
-            case "mm": return quantity / 1000; 
-            case "cm": return quantity / 100; 
-            case "m": return quantity;
-            case "in": return quantity / 39.3701; 
-            case "ft": return quantity / 3.2808;
-            default: return quantity;
-        }
+        this._quantity += controller.baseUnit(quantity, this._ingredient.unit);
     }
 
     get pricePerUnit(){

+ 1 - 25
views/dashboardPage/js/classes/Recipe.js

@@ -36,36 +36,12 @@ class RecipeIngredient{
     }
 
     set quantity(quantity){
-        this_quantity = this.convertToBase(quantity);
+        this_quantity = controller.baseUnit(quantity, this._ingredient.unit);
     }
 
     getQuantityDisplay(){
         return `${this.quantity.toFixed(2)} ${this._ingredient.unit.toUpperCase()}`;
     }
-
-    convertToBase(quantity){
-        switch(this._ingredient.unit){
-            case "g": return quantity;
-            case "kg": return quantity * 1000; 
-            case "oz":  return quantity * 28.3495; 
-            case "lb":  return quantity * 453.5924;
-            case "ml": return quantity / 1000; 
-            case "l": return quantity;
-            case "tsp": return quantity / 202.8842; 
-            case "tbsp": return quantity / 67.6278; 
-            case "ozfl": return quantity / 33.8141; 
-            case "cup": return quantity / 4.1667; 
-            case "pt": return quantity / 2.1134; 
-            case "qt": return quantity / 1.0567; 
-            case "gal": return quantity * 3.7854;
-            case "mm": return quantity / 1000; 
-            case "cm": return quantity / 100; 
-            case "m": return quantity;
-            case "in": return quantity / 39.3701; 
-            case "ft": return quantity / 3.2808;
-            default: return quantity;
-        }
-    }
 }
 
 /*

+ 24 - 0
views/dashboardPage/js/dashboard.js

@@ -371,6 +371,30 @@ controller = {
         document.getElementById("menu").style.display = "none";
         document.querySelector(".contentBlock").style.display = "flex";
         document.getElementById("mobileMenuSelector").onclick = ()=>{this.openMenu()};
+    },
+
+    baseUnit(quantity, unit){
+        switch(unit){
+            case "g": return quantity;
+            case "kg": return quantity * 1000;
+            case "oz":  return quantity * 28.3495; 
+            case "lb":  return quantity * 453.5924;
+            case "ml": return quantity / 1000; 
+            case "l": return quantity;
+            case "tsp": return quantity / 202.8842; 
+            case "tbsp": return quantity / 67.6278; 
+            case "ozfl": return quantity / 33.8141; 
+            case "cup": return quantity / 4.1667; 
+            case "pt": return quantity / 2.1134; 
+            case "qt": return quantity / 1.0567; 
+            case "gal": return quantity * 3.7854;
+            case "mm": return quantity / 1000; 
+            case "cm": return quantity / 100; 
+            case "m": return quantity;
+            case "in": return quantity / 39.3701; 
+            case "ft": return quantity / 3.2808;
+            default: return quantity;
+        }
     }
 }
 

+ 1 - 1
views/dashboardPage/js/sidebars/editIngredient.js

@@ -76,7 +76,7 @@ let editIngredient = {
             ingredients: []
         }
 
-        data.quantity = ingredient.convertToBase(quantity);
+        data.quantity = controller.baseUnit(quantity, ingredient.ingredient.unit);
 
         //Get the measurement unit
         let units = document.getElementById("unitButtons");

+ 2 - 2
views/dashboardPage/js/sidebars/editRecipe.js

@@ -84,14 +84,14 @@ let editRecipe = {
 
                 newIngredient = {
                     ingredient: ingredient.ingredient.id,
-                    quantity: ingredient.convertToBase(quantity)
+                    quantity: controller.baseUnit(quantity, ingredient.ingredient.unit)
                 };
             }else{
                 ingredient = ingredients[i].ingredient;
 
                 newIngredient = {
                     ingredient: ingredient.ingredient.id,
-                    quantity: ingredients[i].ingredient.convertToBase(quantity)
+                    quantity: controller.baseUnit(quantity, ingredient.ingredient.unit)
                 };
             }
 

+ 1 - 1
views/dashboardPage/js/sidebars/newOrder.js

@@ -70,7 +70,7 @@ let newOrder = {
 
             data.ingredients.push({
                 ingredient: ingredients[i].ingredient.ingredient.id,
-                quantity: ingredients[i].ingredient.convertToBase(quantity),
+                quantity: controller.baseUnit(quantity, ingredients[i].ingredient.ingredient.unit),
                 pricePerUnit: this.convertPrice(ingredients[i].ingredient.ingredient, price * 100)
             });
         }

+ 6 - 2
views/dashboardPage/js/sidebars/newRecipe.js

@@ -4,6 +4,8 @@ let newRecipe = {
     display: function(){
         document.getElementById("sidebarDiv").classList.add("sidebarWide");
 
+        document.getElementById("submitNewRecipe").onclick = ()=>{this.submit()};
+
         for(let i = 0; i < merchant.ingredients.length; i++){
             this.unchosen.push(merchant.ingredients[i].ingredient);
         }
@@ -55,10 +57,12 @@ let newRecipe = {
         let ingredients = document.getElementById("newRecipeChosenList").children;
         for(let i = 0; i < ingredients.length; i++){
             data.ingredients.push({
-                ingredient: ingredients[i].ingredient,
-                quantity: ingredients[i].children[0].children[0].value
+                ingredient: ingredients[i].ingredient.id,
+                quantity: ingredients[i].children[1].children[0].value
             })
         }
+
+        console.log(data);
     }
 };
 

+ 2 - 2
views/dashboardPage/js/sidebars/newTransaction.js

@@ -48,9 +48,9 @@ let newTransaction = {
                 for(let j = 0; j < recipe.ingredients.length; j++){
                     let ingredient = recipe.ingredients[j];
                     if(data.ingredientUpdates[ingredient.ingredient.id]){
-                        data.ingredientUpdates[ingredient.ingredient.id] += ingredient.convertToBase(ingredient.quantity) * quantity;
+                        data.ingredientUpdates[ingredient.ingredient.id] += controller.baseUnit(ingredient.quantity, ingredient.ingredient.unit) * quantity;
                     }else{
-                        data.ingredientUpdates[ingredient.ingredient.id] = ingredient.convertToBase(ingredient.quantity) * quantity;
+                        data.ingredientUpdates[ingredient.ingredient.id] = controller.baseUnit(ingredient.quantity, ingredient.ingredient.unit) * quantity;
                     }
                 }
             }else if(quantity < 0){