예제 #1
0
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    setupInfo();

    port = new PortListener();
    port->open();

    setupUpdate_timer();

}
예제 #2
0
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;

}