Skip to content

Commit

Permalink
bugs fixed
Browse files Browse the repository at this point in the history
  • Loading branch information
TheTharz committed Jun 17, 2024
1 parent aa51f20 commit f870728
Show file tree
Hide file tree
Showing 10 changed files with 94 additions and 85 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,13 @@ type Props = {};

const FirstAidTable = (props: Props) => {
const { orderedMedicine, setOrderedMedicine } = usePaymentContext();
const [medicine, setMedicine] = useState<IMedicine[]>([]);
const { items, getAllItems } = useItemService();
const {
items,
getAllItems,
medicine,
filteredMedicine,
setFilteredMedicine,
} = useItemService();

//function to add medicine to ordered medicine
const handleAddClick = (medicine: MedicineType) => {
Expand All @@ -28,19 +33,19 @@ const FirstAidTable = (props: Props) => {
};
console.log(items);

const fetchMedicine = async () => {
const allItems = await getAllItems();
//filter only personal care
const medicine = allItems.filter(
(item: IMedicine) => item.category === 'FirstAid'
);
setMedicine(medicine);
};
// const fetchMedicine = async () => {
// const allItems = await getAllItems();
// //filter only personal care
// const medicine = allItems.filter(
// (item: IMedicine) => item.category === 'FirstAid'
// );
// setMedicine(medicine);
// };

//
useEffect(() => {
//fetchMedicine from server
fetchMedicine();
// getAllItems();
}, []);
//

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ import useItemService from '../../services/ItemService';

const MedicalDeviceTable = () => {
const { orderedMedicine, setOrderedMedicine } = usePaymentContext();
const [medicine, setMedicine] = useState<IMedicine[]>([]);
const { getAllItems } = useItemService();
const { getAllItems, medicine, filteredMedicine } = useItemService();

//function to add medicine to ordered medicine
const handleAddClick = (medicine: MedicineType) => {
Expand All @@ -25,18 +24,18 @@ const MedicalDeviceTable = () => {
]);
};

const fetchMedicine = async () => {
const allItems = await getAllItems();
//filter only personal care
const medicine = allItems.filter(
(item: IMedicine) => item.category === 'Medical Devices'
);
setMedicine(medicine);
};
// const fetchMedicine = async () => {
// const allItems = await getAllItems();
// //filter only personal care
// const medicine = allItems.filter(
// (item: IMedicine) => item.category === 'Medical Devices'
// );
// setMedicine(medicine);
// };
//
useEffect(() => {
//fetchMedicine from server
fetchMedicine();
// fetchMedicine();
}, []);
//

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,16 @@ import useItemService from '../../services/ItemService';

const Medicine = () => {
const { orderedMedicine, setOrderedMedicine } = usePaymentContext();
const [loading, setLoading] = useState(true);
const { getAllItems } = useItemService();
const {
getAllItems,
medicine,
filteredMedicine,
setFilteredMedicine,
loading,
} = useItemService();

const { setMedicine, medicine, setFilteredMedicine, filteredMedicine } =
usePaymentContext();
// const { setMedicine, medicine, setFilteredMedicine, filteredMedicine } =
// usePaymentContext();

//function to add medicine to ordered medicine
const handleAddClick = (medicine: MedicineType) => {
Expand All @@ -27,21 +32,9 @@ const Medicine = () => {
]);
};

const fetchMedicine = async () => {
try {
const medicineData = await getAllItems();
setMedicine(medicineData);
setFilteredMedicine(medicineData);
setLoading(false);
} catch (error) {
console.error('Error fetching medicine data:', error);
}
};

//
useEffect(() => {
//fetchMedicine from server
fetchMedicine();
getAllItems();
}, []);
//

Expand Down Expand Up @@ -85,7 +78,9 @@ const Medicine = () => {
</td>
<td className='px-6 py-4'>{cashier.name}</td>
<td className='px-6 py-4'>{cashier.price}</td>
<td className='px-6 py-4'>{cashier.quantity}</td>
<td className='px-6 py-4'>
{cashier.quantity < 0 ? 0 : cashier.quantity}
</td>
<td className='px-6 py-4'>{cashier.status}</td>
<td className='px-6 py-4'>
<CountRoundButton
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,8 @@ import useItemService from '../../services/ItemService';

const NutritionTable = () => {
const { orderedMedicine, setOrderedMedicine } = usePaymentContext();
const [medicine, setMedicine] = useState<IMedicine[]>([]);

const { getAllItems } = useItemService();
const { getAllItems, medicine, filteredMedicine } = useItemService();

//function to add medicine to ordered medicine
const handleAddClick = (medicine: MedicineType) => {
Expand All @@ -26,19 +25,19 @@ const NutritionTable = () => {
]);
};

const fetchMedicine = async () => {
const allItems = await getAllItems();
//filter only personal care
const medicine = allItems.filter(
(item: IMedicine) => item.category === 'Nutrition'
);
setMedicine(medicine);
};
// const fetchMedicine = async () => {
// const allItems = await getAllItems();
// //filter only personal care
// const medicine = allItems.filter(
// (item: IMedicine) => item.category === 'Nutrition'
// );
// setMedicine(medicine);
// };

//
useEffect(() => {
//fetchMedicine from server
fetchMedicine();
// fetchMedicine();
}, []);
//

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ import useItemService from '../../services/ItemService';

const PersonalCareTable = () => {
const { orderedMedicine, setOrderedMedicine } = usePaymentContext();
const [medicine, setMedicine] = useState<IMedicine[]>([]);
const { getAllItems } = useItemService();
const { getAllItems, medicine, filteredMedicine } = useItemService();

//function to add medicine to ordered medicine
const handleAddClick = (medicine: MedicineType) => {
Expand All @@ -25,20 +24,20 @@ const PersonalCareTable = () => {
]);
};

const fetchMedicine = async () => {
const allItems = await getAllItems();
//filter only personal care
const medicine = allItems.filter(
(item: IMedicine) => item.category === 'Personal Care'
);
setMedicine(medicine);
};
// const fetchMedicine = async () => {
// const allItems = await getAllItems();
// //filter only personal care
// const medicine = allItems.filter(
// (item: IMedicine) => item.category === 'Personal Care'
// );
// setMedicine(medicine);
// };

//
useEffect(() => {
//fetchMedicine from server
console.log('fetching medicine');
fetchMedicine();
// console.log('fetching medicine');
// fetchMedicine();
}, []);
//

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ import useItemService from '../../services/ItemService';

const SportsTable = () => {
const { orderedMedicine, setOrderedMedicine } = usePaymentContext();
const [medicine, setMedicine] = useState<IMedicine[]>([]);
const { getAllItems } = useItemService();
const { getAllItems, medicine, filteredMedicine } = useItemService();

//function to add medicine to ordered medicine
const handleAddClick = (medicine: MedicineType) => {
Expand All @@ -25,19 +24,19 @@ const SportsTable = () => {
]);
};

const fetchMedicine = async () => {
const allItems = await getAllItems();
//filter only personal care
const medicine = allItems.filter(
(item: IMedicine) => item.category === 'Sports'
);
setMedicine(medicine);
};
// const fetchMedicine = async () => {
// const allItems = await getAllItems();
// //filter only personal care
// const medicine = allItems.filter(
// (item: IMedicine) => item.category === 'Sports'
// );
// setMedicine(medicine);
// };

//
useEffect(() => {
//fetchMedicine from server
fetchMedicine();
// fetchMedicine();
}, []);
//

Expand Down
27 changes: 20 additions & 7 deletions src/features/cashier-dashboard/services/ItemService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import useAxiosInstance from '../../login/services/useAxiosInstance';
import { mapIItemsToIMedicine } from '../utils/mapIItemsToIMedicine';
import { useUserContext } from '../../../context/UserContext';
import { toast } from 'react-toastify';
import { IMedicine } from '../../../interfaces/IMedicine';

const useItemService = () => {
const http = useAxiosInstance();
Expand All @@ -22,27 +23,35 @@ const useItemService = () => {
// return [];
// }
// };

const user = useUserContext();
const [medicine, setMedicine] = useState<IMedicine[]>([]);
const [filteredMedicine, setFilteredMedicine] = useState<IMedicine[]>([]);
const [loading, setLoading] = useState<boolean>(false);

const getAllItems = async () => {
try {
if (!user) {
toast.error('Not logged in');
return;
}
setLoading(true);
const res = await http.get(
`/item/branched/get-item/${user.user?.branchId}`
// `/item/branched/get-item/${user.user?.branchId}`
`/item/branched/get-item/1`
);
const data = res.data.data;
if (data.length === 0) return [];
const mappedItems = data.map((item: any) => mapIItemsToIMedicine(item));
setItems(mappedItems);
console.log(res);
setMedicine(mappedItems);
setFilteredMedicine(mappedItems);
return mappedItems;
} catch (error) {
console.log(error);
return [];
} finally {
setLoading(false);
}
};

Expand All @@ -58,11 +67,15 @@ const useItemService = () => {
}
};

useEffect(() => {
getAllItems();
}); // Fetch items when component mounts

return { items, getAllItems, getItemById };
return {
items,
getAllItems,
getItemById,
medicine,
filteredMedicine,
setFilteredMedicine,
loading,
};
};

export default useItemService;
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ export const mapIItemsToIMedicine = (item: IItemInterface): IMedicine => {
quantity: item.itemQuantity,
status: item.itemQuantity > 0 ? 'In Stock' : 'Out of Stock',
image: item.itemImage,
category: item.itemCategory,
category: item.itemCategoryName,
};
};
2 changes: 1 addition & 1 deletion src/interfaces/IItemInterface.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ export interface IItemInterface {
supplierPrice: number;
itemManufacture: string;
itemQuantity: number;
itemCategory: string;
itemCategoryName: string;
measuringUnitType: string;
manufactureDate: Date | null; // You can use Date type if you prefer
expireDate: Date; // You can use Date type if you prefer
Expand Down
4 changes: 2 additions & 2 deletions src/shared/searchbar/MedicineSearchBar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ const MedicineSearchBar = () => {
return (
<div>
<div className='relative flex items-center w-full h-12 rounded-lg focus-within:shadow-lg bg-white overflow-hidden'>
<div className='grid place-items-center h-full w-12 text-gray-300'>
{/* <div className='grid place-items-center h-full w-12 text-gray-300'>
<IoIosSearch />
</div>
Expand All @@ -13,7 +13,7 @@ const MedicineSearchBar = () => {
type='text'
id='search'
placeholder='Search medicine..'
/>
/> */}
</div>
</div>
);
Expand Down

0 comments on commit f870728

Please sign in to comment.