mirror of
https://github.com/kuhyx/WUT_Computer_Science.git
synced 2026-07-04 14:03:08 +02:00
42 lines
1.3 KiB
C++
42 lines
1.3 KiB
C++
#ifndef WAREHOUSE_HPP
|
|
#define WAREHOUSE_HPP
|
|
|
|
#include <vector>
|
|
#include "employee.hpp"
|
|
#include "equipment.hpp"
|
|
#include "good.hpp"
|
|
|
|
class Warehouse
|
|
{
|
|
private:
|
|
|
|
std::vector <Employee*> allEmployees;
|
|
std::vector <Equipment*> allEquipment;
|
|
std::vector <Good*> allGoods;
|
|
std::vector <int> size_;
|
|
public:
|
|
Warehouse();
|
|
|
|
std::vector <Employee> getAllEmployees() const;
|
|
std::vector<Equipment> getAllEquipment() const;
|
|
std::vector<Good> getAllGoods() const;
|
|
|
|
std::vector <int> findSuitableEmployees(Good &goodToShip);
|
|
std::vector <int> findSuitableEquipments(Good &goodToShip);
|
|
std::vector <int> equipmentAndEmployees(std::vector<int> goodEmployeesID, std::vector<int> goodEquipmentID);
|
|
bool canShipGoods(std::vector <Good> &goodToShip);
|
|
bool shipGoods(std::vector <Good> &goodsToShip);
|
|
int calculateVolume() const;
|
|
std::vector <int> capacityLeft() const;
|
|
std::vector <int> capacityTotal() const;
|
|
|
|
void addEmployee(Employee &newEmployee);
|
|
void addEquipment(Equipment &equipmentToAdd);
|
|
std::vector<int> canAddGood(Good &goodToAdd);
|
|
bool addGood(Good &goodToShip);
|
|
void addGoodOverride(Good &goodToShip);
|
|
|
|
};
|
|
|
|
#endif // WAREHOUSE
|