92 lines
2.2 KiB
C++
92 lines
2.2 KiB
C++
//
|
|
// Created by selim on 03.10.22.
|
|
//
|
|
|
|
#include <fmt/core.h>
|
|
#include "Vehicle.h"
|
|
|
|
std::string Vehicle::createTableQuery() {
|
|
return R"(
|
|
CREATE TABLE IF NOT EXISTS vehicles(
|
|
number TEXT NOT NULL PRIMARY KEY,
|
|
currentNumber TEXT,
|
|
color TEXT,
|
|
category TEXT,
|
|
year INT,
|
|
addedDate REAL,
|
|
updatedDate REAL,
|
|
vin1 TEXT,
|
|
vin2 TEXT,
|
|
sts TEXT,
|
|
pts TEXT,
|
|
addedBy TEXT,
|
|
engineNumber TEXT,
|
|
engineVolume INT,
|
|
enginePowerHp REAL,
|
|
enginePowerKw REAL,
|
|
engineFuelType TEXT
|
|
);
|
|
)";
|
|
}
|
|
|
|
std::string Vehicle::insertQuery() {
|
|
return fmt::format(R"(
|
|
INSERT INTO vehicles(number,
|
|
currentNumber,
|
|
color,
|
|
category,
|
|
year,
|
|
addedDate,
|
|
updatedDate,
|
|
vin1, vin2,
|
|
sts, pts,
|
|
addedBy,
|
|
engineNumber,
|
|
engineVolume,
|
|
enginePowerHp,
|
|
enginePowerKw,
|
|
engineFuelType)
|
|
VALUES('{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}')
|
|
)",
|
|
number,
|
|
currentNumber,
|
|
color.value_or("NULL"),
|
|
category,
|
|
year,
|
|
addedDate,
|
|
updatedDate,
|
|
vin1,
|
|
vin2.value_or("NULL"),
|
|
sts, pts,
|
|
addedBy,
|
|
engine.number,
|
|
engine.volume,
|
|
engine.powerHp,
|
|
engine.powerKw,
|
|
engine.fuelType);
|
|
}
|
|
|
|
std::string Vehicle::selectQuery() {
|
|
return "SELECT * FROM vehicles";
|
|
}
|
|
|
|
Vehicle::Vehicle(sqlite3_stmt *stmt) {
|
|
number = readString(stmt, 0);
|
|
currentNumber = readString(stmt, 1);
|
|
color = readStringOptional(stmt, 2);
|
|
category = readString(stmt, 3);
|
|
year = readInt(stmt, 4);
|
|
addedDate = readDouble(stmt, 5);
|
|
updatedDate = readDouble(stmt, 6);
|
|
vin1 = readString(stmt, 7);
|
|
vin2 = readStringOptional(stmt, 8);
|
|
sts = readString(stmt, 9);
|
|
pts = readString(stmt, 10);
|
|
addedBy = readString(stmt, 11);
|
|
engine.number = readString(stmt, 12);
|
|
engine.volume = readInt(stmt, 13);
|
|
engine.powerHp = readDouble(stmt, 14);
|
|
engine.powerKw = readDouble(stmt, 15);
|
|
engine.fuelType = readString(stmt, 16);
|
|
}
|