MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); setupInfo(); port = new PortListener(); port->open(); setupUpdate_timer(); }
void PaymentDialog::setModel(QAbstractItemModel *model, int mode, Entity *view) { paymentModel = (PaymentModel *) model; this->mode = mode; this->view = view; payment = new Payment(); int id; if (mode == OTHER) { payModelF->setFilterRole(PayModel::otherRole); payModelF->setMatchValue(true); ui->table->hide(); adjustSize(); return; } else if (mode == ORDER) { id = view->fields["ordr_id"].toInt(); payModelF->setFilterRole(PayModel::orderRole); payModelF->setMatchValue(true); QString info = QString::fromUtf8("Заказ №%1 ").arg(id); setupInfo(info); ui->total->setMoney(Money(view->fields["ordr_debt"])); setupTable(id, Pay::ORDER); } else if (mode == MATERIAL) { id = view->fields["material_id"].toInt(); Material *material = (Material *) view; payModelF->setFilterRole(PayModel::materialRole); payModelF->setMatchValue(true); QString info = QString::fromUtf8("%1 %2 %3") .arg(material->getProductName()) .arg(material->getStockName()) .arg(material->getParametr()); setupInfo(info); ui->total->setMoney(Money(view->fields["material_debt"])); QString invoice = view->fields["material_invoice"].toString(); ui->invoice->setInvoice(invoice); setupTable(id, Pay::MATERIAL); } else if (mode == DEPOSIT) { id = view->fields["payment_field_id"].toInt(); Payment *depositPayment = (Payment *) view; int type = depositPayment->getPayType(); int paymentId = view->fields["payment_id"].toInt(); if (type == Pay::ORDER ) { payModelF->setFilterRole(PayModel::debtOrderRole); setupTable(paymentId, Pay::ORDER); } else if (type == Pay::MATERIAL ) { payModelF->setFilterRole(PayModel::debtMaterialRole); setupTable(paymentId, Pay::MATERIAL); } else if (type == Pay::OTHER ) { payModelF->setFilterRole(PayModel::debtOtherRole); setupTable(paymentId, Pay::OTHER); } payModelF->setMatchValue(true); QString info = QString::fromUtf8("Относится к платежу %1.") .arg(paymentId); setupInfo(info); int cents = abs(view->fields["payment_debt"].toInt()); ui->total->setMoney(Money(cents)); QString invoice = view->fields["payment_invoice"].toString(); ui->invoice->setInvoice(invoice); } payment->fields["payment_field_id"] = id; }