Skip to content

Commit

Permalink
Merge pull request #93 from ThatNinjaGuy/develop
Browse files Browse the repository at this point in the history
Develop
  • Loading branch information
ThatNinjaGuy committed Sep 24, 2024
2 parents 0459d3e + 0f7b8bf commit 83b4e6c
Show file tree
Hide file tree
Showing 13 changed files with 134 additions and 135 deletions.
59 changes: 32 additions & 27 deletions components/OrderManagement/OrderManagement.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import React, { useState, useEffect } from "react";
import { StyleSheet, useWindowDimensions } from "react-native";
import { Alert, StyleSheet, useWindowDimensions } from "react-native";
import Sidebar from "@/components/OrderManagement/Sidebar/Sidebar";
import MenuItemGrid from "@/components/OrderManagement/MenuItemGrid/MenuItemGrid";
import OrderDetails from "@/components/OrderDetails/OrderDetails";
Expand All @@ -22,8 +22,8 @@ const OrderManagement = ({
const [selectedMenu, setSelectedMenu] = useState();
const [selectedCategory, setSelectedCategory] = useState(0);
const [rawOrders, setRawOrders] = useState([]);
const [pendingOrders, setPendingOrders] = useState([]);
const [orders, setOrders] = useState();
const [updateFlag, setUpdateFlag] = useState(false);

const { width } = useWindowDimensions();
const isLargeScreen = width > 768;
Expand All @@ -44,18 +44,10 @@ const OrderManagement = ({
);
}, [selectedCategory, menuItems]);

// Update orders whenever rawOrders changes
// Update orders whenever rawOrders or pendingOrders change
useEffect(() => {
setOrders(aggregateOrders(rawOrders));
}, [rawOrders]);

// Update Firebase whenever orders change
useEffect(() => {
if (updateFlag) {
updateOrder(rawOrders);
setUpdateFlag(false);
}
}, [rawOrders]);
setOrders(aggregateOrders([...rawOrders, ...pendingOrders]));
}, [rawOrders, pendingOrders]);

const onSidebarItemClicked = (item, idx) => {
setSelectedCategory(idx);
Expand All @@ -74,34 +66,32 @@ const OrderManagement = ({
image: item.image,
quantity: 1,
status: ORDER_STATUS.ACTIVE,
itemValue: parseFloat(item.price) || 0, // Convert price to a number,
itemValue: parseFloat(item.price) || 0,
orderTimestamp: Date.now(),
};
addItem(orderItem);
};

const addItem = (item) => {
const newOrders = rawOrders ? [...rawOrders, item] : [item];
setRawOrders(newOrders);
setUpdateFlag(true);
setPendingOrders((prevPendingOrders) => [...prevPendingOrders, item]);
};

const removeItem = (item) => {
// Find the first item with the same name, category, and status ACTIVE
const index = rawOrders.findIndex(
const index = pendingOrders.findIndex(
(orderItem) =>
orderItem.name === item.name &&
orderItem.category === item.category &&
orderItem.status === ORDER_STATUS.ACTIVE
);

if (index !== -1) {
const newOrders = [...rawOrders]; // Create a copy of the orders array
newOrders.splice(index, 1); // Remove the item at the specified index
setRawOrders(newOrders); // Update the state with the new array
setUpdateFlag(true);
setPendingOrders((prevPendingOrders) => {
const newPendingOrders = [...prevPendingOrders];
newPendingOrders.splice(index, 1);
return newPendingOrders;
});
} else {
console.log("No active item found to decrease quantity.");
Alert.alert("Item not found in pending orders");
}
};

Expand All @@ -110,9 +100,24 @@ const OrderManagement = ({
// return menuItems.filter((item) => item.orderCountPercentile > 70);
};

const handleSave = () => {
const updatedOrders = [...rawOrders, ...pendingOrders];
updateOrder(updatedOrders);
setRawOrders(updatedOrders);
setPendingOrders([]);
onClose();
};

const completeOrder = () => {
const updatedOrders = [...rawOrders, ...pendingOrders];
updateOrder(updatedOrders);
setRawOrders(updatedOrders);
setPendingOrders([]);
handleCompleteOrder();
};

return (
<ThemedView style={styles.mainContainer}>
{/* <HeaderSection /> */}
<FloatingCloseButton onClose={onClose} />
<ThemedView
style={[
Expand Down Expand Up @@ -149,9 +154,9 @@ const OrderManagement = ({
<PaymentOptions
preferredLanguage={preferredLanguage}
style={styles.paymentOptions}
onSave={onClose}
onSave={handleSave}
onCancel={onClose}
completeOrder={handleCompleteOrder}
completeOrder={completeOrder}
/>
</ThemedView>
</ThemedView>
Expand Down
4 changes: 2 additions & 2 deletions components/RestaurantOverview/Overview.js
Original file line number Diff line number Diff line change
Expand Up @@ -158,8 +158,8 @@ const Overview = ({ preferredLanguage }) => {

return (
<ThemedView style={styles.overviewContainer}>
{overviewItems.map((item) => (
<ThemedView key={item.title} style={styles.overviewItem}>
{overviewItems.map((item, idx) => (
<ThemedView key={idx} style={styles.overviewItem}>
<ThemedText style={styles.itemTitle}>{item.title}</ThemedText>
<ThemedText style={styles.itemMessage}>{item.message}</ThemedText>
</ThemedView>
Expand Down
2 changes: 1 addition & 1 deletion components/Settings/Settings.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ const SettingsScreen = ({ userDetails, onCancel }) => {
name: name,
age: age,
mobile: phoneNumber,
preferredLanguage: language,
preferredLanguage: LANGUAGE_MAPPER[language].key,
notificationSettings: notificationSettings,
},
undefined,
Expand Down
83 changes: 41 additions & 42 deletions constants/appText/homeScreen.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,36 +85,36 @@ export const OVERVIEW_LANGUAGE_SET = {
export const OVERVIEW_ITEMS_LANGUAGE_SET = {
ACTIVE_TABLES: {
ENGLISH: "Active Tables",
HINDI: "सक्रिय तालिकाएँ",
MARATHI: "सक्रिय टेबल",
BENGALI: "সক্রিয় টেবিল",
GUJARATI: "સક્રિય ટેબલ",
TAMIL: "செயலில் உள்ள டேபிள்கள்",
TELUGU: "సక్రియ టేబుల్",
MALYALI: "സജീവ പട്ടികകൾ",
KANNADA: "ಸಕ್ರಿಯ ಟೇಬಲ್",
HINDI: "चालू टेबल",
MARATHI: "चालू टेबल",
BENGALI: "চলমান টেবিল",
GUJARATI: "ચાલુ ટેબલ",
TAMIL: "நடப்பில் உள்ள டேபிள்கள்",
TELUGU: "నడుస్తున్న టేబుల్స్",
MALYALI: "നിലവിലുള്ള ടേബിള്‍",
KANNADA: "ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಟೇಬಲ್",
},
ACTIVE_ORDERS: {
ENGLISH: "Active Orders",
HINDI: "सक्रिय ऑर्डर",
MARATHI: "सक्रिय ऑर्डर",
BENGALI: "সক্রিয় অর্ডার",
GUJARATI: "સક્રિય ઑર્ડર",
TAMIL: "செயலில் உள்ள ஆர்டர்கள்",
TELUGU: "సక్రియ ఆర్డర్లు",
MALYALI: "സജീവ ഓര്‍ഡറുകൾ",
KANNADA: "ಸಕ್ರಿಯ ಆರ್ಡರ್",
HINDI: "चालू ऑर्डर",
MARATHI: "चालू ऑर्डर",
BENGALI: "চলমান অর্ডার",
GUJARATI: "ચાલુ ઑર્ડર",
TAMIL: "நடப்பில் உள்ள ஆர்டர்கள்",
TELUGU: "నడుస్తున్న ఆర్డర్లు",
MALYALI: "നിലവിലുള്ള ഓര്‍ഡറുകൾ",
KANNADA: "ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಆರ್ಡರ್",
},
CLOSED_ORDERS: {
ENGLISH: "Closed Orders",
HINDI: "बंद ऑर्डर",
MARATHI: "बंद ऑर्डर",
BENGALI: "বন্ধ অর্ডার",
GUJARATI: "બંધ ઓર્ડર્સ",
TAMIL: "மூடிய ஆர்டர்கள்",
TELUGU: "మూసిన ఆర్డర్లు",
MALYALI: "അടച്ച ഓര്‍ഡറുകൾ",
KANNADA: "ಮುಚ್ಚಿದ ಆರ್ಡರ್",
ENGLISH: "Complete Orders",
HINDI: "पूर्ण ऑर्डर",
MARATHI: "पूर्ण ऑर्डर",
BENGALI: "সম্পূর্ণ অর্ডার",
GUJARATI: "પૂર્ણ ઓર્ડર્સ",
TAMIL: "முழுமையான ஆர்டர்கள்",
TELUGU: "పూర్తి ఆర్డర్లు",
MALYALI: "പൂർത്തിയായ ഓർഡറുകൾ",
KANNADA: "ಪೂರ್ಣ ಆರ್ಡರ್",
},
TODAYS_REVENUE: {
ENGLISH: "Today's Revenue",
Expand All @@ -129,25 +129,24 @@ export const OVERVIEW_ITEMS_LANGUAGE_SET = {
},
LAST_7_DAYS_REV: {
ENGLISH: "Last 7 days rev",
HINDI: "पिछले 7 दिन का राजस्व",
MARATHI: "गेल्या 7 दिवसांचे उत्पन्न",
BENGALI: "গত ৭ দিনের রাজস্ব",
GUJARATI: "ગત 7 દિવસની આવક",
TAMIL: "கடந்த 7 நாட்களின் வருமானம்",
TELUGU: "గత 7 రోజుల ఆదాయం",
MALAYALAM: "കഴിഞ്ഞ 7 ദിവസത്തെ വരുമാനം",
KANNADA: "ಕಳೆದ 7 ದಿನಗಳ ಆದಾಯ",
HINDI: "7 दिन का आय",
MARATHI: "7 दिवस आय",
BENGALI: "7 দিন আয়",
GUJARATI: "7 દિવસ આવક",
TAMIL: "7 நாள் வருவாய்",
TELUGU: "7 రోజుల ఆదాయం",
MALYALI: "7 ദിവസ വരുമാനം",
KANNADA: "7 ದಿನ ಆದಾಯ",
},

LAST_DAY_REV: {
ENGLISH: "Last day rev",
HINDI: "पिछले दिन का राजस्व",
MARATHI: "गेल्या दिवसाचे उत्पन्न",
BENGALI: "গত দিনের রাজস্ব",
GUJARATI: "ગત દિવસની આવક",
TAMIL: "கடந்த நாளின் வருமானம்",
TELUGU: "గత రోజు ఆదాయం",
MALAYALAM: "കഴിഞ്ഞ ദിവസത്തെ വരുമാനം",
KANNADA: "ಕಳೆದ ದಿನದ ಆದಾಯ",
HINDI: "कल का आय",
MARATHI: "कालचे उत्पन्न",
BENGALI: "গতকালের আয়",
GUJARATI: "ગઈકાલની આવક",
TAMIL: "நேற்று வருமானம்",
TELUGU: "నిన్న ఆదాయం",
MALYALI: "ഇന്നലെ വരുമാനം",
KANNADA: "ನಿನ್ನೆಯ ಆದಾಯ",
},
};
12 changes: 6 additions & 6 deletions constants/appText/menuScreen.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export const UPDATE_MENU_CATEGORY_LANGUAGE_SET = {
GUJARATI: "મેનુ શ્રેણી અપડેટ કરો",
TAMIL: "மெனு வகையை புதுப்பிக்கவும்",
TELUGU: "మెను వర్గాన్ని నవీకరించండి",
MALAYALAM: "മെനു വിഭാഗം അപ്‌ഡേറ്റ് ചെയ്യുക",
MALYALI: "മെനു വിഭാഗം അപ്‌ഡേറ്റ് ചെയ്യുക",
KANNADA: "ಮೆನು ವರ್ಗವನ್ನು ನವೀಕರಿಸಿ",
};

Expand All @@ -18,7 +18,7 @@ export const ADD_MENU_ITEM_LANGUAGE_SET = {
GUJARATI: "મેનુ આઇટમ ઉમેરો",
TAMIL: "மெனு உருப்படியைச் சேர்க்கவும்",
TELUGU: "మెను అంశాన్ని జోడించండి",
MALAYALAM: "മെനു ഇനം ചേർക്കുക",
MALYALI: "മെനു ഇനം ചേർക്കുക",
KANNADA: "ಮೆನು ಐಟಂ ಸೇರಿಸಿ",
};

Expand All @@ -30,7 +30,7 @@ export const CUISINE_LANGUAGE_SET = {
GUJARATI: "ખોરાક શૈલી",
TAMIL: "சமையல் வகை",
TELUGU: "వంటకాలు",
MALAYALAM: "ഭക്ഷണശൈലി",
MALYALI: "ഭക്ഷണശൈലി",
KANNADA: "ಆಹಾರ ಶೈಲಿ",
};

Expand All @@ -42,7 +42,7 @@ export const CATEGORY_LANGUAGE_SET = {
GUJARATI: "શ્રેણી",
TAMIL: "வகை",
TELUGU: "వర్గం",
MALAYALAM: "വിഭാഗം",
MALYALI: "വിഭാഗം",
KANNADA: "ವರ್ಗ",
};

Expand All @@ -54,7 +54,7 @@ export const PRICE_LANGUAGE_SET = {
GUJARATI: "કિંમત",
TAMIL: "விலை",
TELUGU: "ధర",
MALAYALAM: "വില",
MALYALI: "വില",
KANNADA: "ಬೆಲೆ",
};

Expand All @@ -66,6 +66,6 @@ export const PREFERENCE_LANGUAGE_SET = {
GUJARATI: "પ્રાથમિકતા",
TAMIL: "விருப்பம் ",
TELUGU: "ప్రాధాన్యత ",
MALAYALAM: "ആവശ്യകത",
MALYALI: "ആവശ്യകത",
KANNADA: "ಆದ್ಯತೆ",
};
4 changes: 2 additions & 2 deletions constants/appText/notifications.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export const NOTIFICATION_TITLE_LANGUAGE_SET = {
GUJARATI: "ઓર્ડર અપડેટ થયું છે",
TAMIL: "ஆர்டர் புதுப்பிக்கப்பட்டது",
TELUGU: "ఆర్డర్ అప్డేట్ చేయబడింది",
MALAYALAM: "ഓർഡർ അപ്‌ഡേറ്റ് ചെയ്‌തു",
MALYALI: "ഓർഡർ അപ്‌ഡേറ്റ് ചെയ്‌തു",
KANNADA: "ಆರ್ಡರ್ ನವೀಕರಿಸಲಾಗಿದೆ",
};

Expand All @@ -20,6 +20,6 @@ export const NOTIFICATION_CONTENT_LANGUAGE_SET = {
GUJARATI: "ટેબલ {tableNumber} માટે {name} ની સ્થિતિ બદલાઈને {status} થઈ છે.",
TAMIL: "மேசை {tableNumber} க்கான {name} நிலைமை மாற்றப்பட்டது {status}.",
TELUGU: "టేబుల్ {tableNumber} కోసం {name} స్థితి మార్చబడింది {status}.",
MALAYALAM: "മേശ {tableNumber} ന് വേണ്ടി {name} നില മാറ്റി {status}.",
MALYALI: "മേശ {tableNumber} ന് വേണ്ടി {name} നില മാറ്റി {status}.",
KANNADA: "ಕೋಷ್ಟಕದ{tableNumber}ಗಾಗಿ{name}ಸ್ಥಿತಿಯನ್ನು{status}ಗೆ ಬದಲಿಸಲಾಗಿದೆ.",
};
6 changes: 3 additions & 3 deletions constants/appText/orderManagement.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export const CANCEL_LANGUAGE_SET = {
GUJARATI: "રદ કરવું",
TAMIL: "ரத்து செய்யவும்",
TELUGU: "రద్దు చేయండి",
MALAYALAM: "റദ്ദാക്കുക",
MALYALI: "റദ്ദാക്കുക",
KANNADA: "ರದ್ದುಮಾಡಿ",
};

Expand All @@ -18,7 +18,7 @@ export const GENERATE_BILL_LANGUAGE_SET = {
GUJARATI: "બિલ",
TAMIL: "பில்",
TELUGU: "బిల్",
MALAYALAM: "ബിൽ",
MALYALI: "ബിൽ",
KANNADA: "ಬಿಲ್",
};

Expand All @@ -30,6 +30,6 @@ export const KOT_LANGUAGE_SET = {
GUJARATI: "કેઓટી",
TAMIL: "கேஓடி",
TELUGU: "కేఓటి",
MALAYALAM: "കെഒടി",
MALYALI: "കെഒടി",
KANNADA: "ಕೆಒಟಿ",
};
Loading

0 comments on commit 83b4e6c

Please sign in to comment.