void ComputerRepository::add(Computer &comp) { auto query = SQLConnection::getInstance()->getQuery(); query->prepare("INSERT INTO computers (name, type, build_year, built) VALUES (?,?,?,?)"); query->addBindValue(QString::fromStdString(comp.getName())); query->addBindValue(QString::fromStdString(comp.getType())); query->addBindValue(comp.getBuildYear()); query->addBindValue(comp.getBuilt()); if(!query->exec()) throw std::runtime_error(query->lastError().text().toStdString()); }
void ComputerRepository::update(Computer &comp, Computer &replace) { auto query = SQLConnection::getInstance()->getQuery(); query->prepare("UPDATE computers SET name = ?, type = ?, build_year = ?, built = ? WHERE id = ?"); query->addBindValue(QString::fromStdString(replace.getName())); query->addBindValue(QString::fromStdString(replace.getType())); query->addBindValue(replace.getBuildYear()); query->addBindValue(replace.getBuilt()); query->addBindValue(comp.getID()); if(!query->exec()) throw std::runtime_error(query->lastError().text().toStdString()); }
bool ComputerRepository::add(Computer c) { db.open(); QSqlQuery query; query.prepare("INSERT INTO Computers(Name, BuildYear, Type, Built)" "VALUES (:name, :buildyear, :type, :built)"); query.bindValue(":name", QString::fromStdString(c.getName())); query.bindValue(":buildyear", QString::fromStdString(c.getBuildYear())); query.bindValue(":type", QString::fromStdString(c.getType())); query.bindValue(":built", QString::number(c.getBuilt())); query.exec(); db.close(); return true; }
bool Computerrepository::addToDatabase(Computer newComp) { QSqlQuery query; QString name = QString::fromStdString((newComp.getName())); int builtY = newComp.getBuildYear(); QString type = QString::fromStdString((newComp.getType())); bool builtOrNot = newComp.getBuild(); query.prepare("INSERT INTO Computers (Name, YearBuilt, Type, BuiltOrNot) " "VALUES (:Name, :YearBuilt, :Type, :BuiltOrNot)"); query.bindValue(":Name", name); query.bindValue(":YearBuilt", builtY); query.bindValue(":Type", type); query.bindValue(":BuiltOrNot", builtOrNot); return query.exec(); }
bool Computerrepository::updateComputer(Computer computerUpdate) { QSqlQuery query; int id = computerUpdate.getId(); QString name = QString::fromStdString((computerUpdate.getName())); int builtY = computerUpdate.getBuildYear(); QString type = QString::fromStdString((computerUpdate.getType())); bool builtOrNot = computerUpdate.getBuild(); query.prepare("UPDATE Computers SET Name=:Name, YearBuilt=:YearBuilt," " Type=:Type, BuiltOrNot=:BuiltOrNot WHERE id=:id"); query.bindValue(":id", id); query.bindValue(":Name", name); query.bindValue(":YearBuilt", builtY); query.bindValue(":Type", type); query.bindValue(":BuiltOrNot", builtOrNot); return query.exec(); }
void addComToSci::displayComputers() { ui->table_computers->clearContents(); ui->table_computers->setRowCount(computers.size()); for(unsigned int i = 0; i < computers.size(); i++){ Computer current = computers[i]; QString name = QString::fromStdString(current.getName()); QString buildYear = QString::number(current.getBuildYear()); QString type = QString::fromStdString(current.getType()); QString made = QString::fromStdString(current.getMade()); QString Id = QString::number(current.getID()); ui->table_computers->setItem(i, 0, new QTableWidgetItem(name)); ui->table_computers->setItem(i, 1, new QTableWidgetItem(buildYear)); ui->table_computers->setItem(i, 2, new QTableWidgetItem(type)); ui->table_computers->setItem(i, 3, new QTableWidgetItem(made)); ui->table_computers->setItem(i, 4, new QTableWidgetItem(Id)); ui->table_computers->setColumnHidden(4, true); } }