Parkmanne/main.cpp

63 lines
1.9 KiB
C++

#include "headers/Query.h"
#include <chrono>
#include <thread>
using namespace std::chrono;
/*
Code strucure like this:
class declarations zijn in /headers/class_naam.h, en definitions van de member
functs in /class_naam.cpp elke klas in zn eigen file omdat ik incomplete class
declarations wilt tegengaan, omdat ik ze niet goed begrijp. En header/source
split om multiple definition errors tegen te gaan.
Park_spot representeert een parkeermeter bij elke parkeer spot.
Een customer is een customer.
Park time is een object die reffereert naar parkspot en customer, basically een
record die zegt dat een customer voor x tijd geparkeert heeft bij spot x, enz.
De client clockt in en uit bij een spot.
*/
void Wait(int sec)
/*
a wait function where 1 sec represents 1 hour irl.
*/
{
std::this_thread::sleep_for(seconds{sec});
}
static vector<Park_spot> parking_spots = populate_spots(); // to save the parking spots in memory
static vector<Customer> park_customers; // save the customers that are parked in here
int main() {
Customer sagar = query_customer_with_name("stefan udit")[0];
Customer sagar1 = query_customer_with_id(2);
cout << sagar.id << "," << sagar.name << "," << sagar.password<< "\n";
cout << sagar1.id << "," << sagar1.name << "," << sagar1.password;
cout << parking_spots.size();
for (auto i : parking_spots){
cout << "\n" << i.id << "," << i.parked_customer;
}
}
vector<Park_spot> populate_spots(){
vector<Park_spot> spots;
SQLite::Statement query(data::db, "SELECT * FROM Park_spot WHERE id > 0;");
// query.bind(1, 2);
while (query.executeStep()) {
int id = query.getColumn(0);
int taken = query.getColumn(1);
int cid = query.getColumn(2);
// park_customers.push_back(query_customer_with_id(cid));
spots.push_back({id, taken, cid});
}
return spots;
}