Added insert date to voucher items and save date to vouchers. Additional voucher descriptions (name, contact...) are now copied from saved vouchers when load items.
closes #286
This commit is contained in:
@@ -281,6 +281,16 @@ void Voucher::setEetFik(const QString &eetFik)
|
||||
m_eetFik = eetFik;
|
||||
}
|
||||
|
||||
QDateTime Voucher::saveDateTime() const
|
||||
{
|
||||
return m_saveDateTime;
|
||||
}
|
||||
|
||||
void Voucher::setSaveDateTime(const QDateTime &saveDateTime)
|
||||
{
|
||||
m_saveDateTime = saveDateTime;
|
||||
}
|
||||
|
||||
int Voucher::id() const
|
||||
{
|
||||
return m_id;
|
||||
|
||||
@@ -18,6 +18,7 @@ class Voucher : public QObject
|
||||
|
||||
Q_PROPERTY(QString numSer READ numSer WRITE setNumSer)
|
||||
Q_PROPERTY(QDateTime payDateTime READ payDateTime WRITE setPayDateTime)
|
||||
Q_PROPERTY(QDateTime saveDateTime READ saveDateTime WRITE setSaveDateTime)
|
||||
Q_PROPERTY(QString name READ name WRITE setName)
|
||||
Q_PROPERTY(QString description READ description WRITE setDescription)
|
||||
Q_PROPERTY(QSharedPointer<QObject> contact READ contact WRITE setContact)
|
||||
@@ -139,12 +140,16 @@ public:
|
||||
QString eetFik() const;
|
||||
void setEetFik(const QString &eetFik);
|
||||
|
||||
QDateTime saveDateTime() const;
|
||||
void setSaveDateTime(const QDateTime &saveDateTime);
|
||||
|
||||
private:
|
||||
friend class odb::access;
|
||||
#pragma db id auto
|
||||
int m_id;
|
||||
QString m_numSer;
|
||||
QDateTime m_payDateTime;
|
||||
QDateTime m_saveDateTime;
|
||||
QString m_name;
|
||||
QString m_description;
|
||||
QSharedPointer<AddressbookData> m_contact;
|
||||
|
||||
@@ -127,4 +127,14 @@ void VoucherItem::setVoucher(const QWeakPointer<Voucher> &voucher)
|
||||
m_voucher = voucher;
|
||||
}
|
||||
|
||||
QDateTime VoucherItem::insertDate() const
|
||||
{
|
||||
return m_insertDate;
|
||||
}
|
||||
|
||||
void VoucherItem::setInsertDate(const QDateTime &insertDate)
|
||||
{
|
||||
m_insertDate = insertDate;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <QDecDouble.hh>
|
||||
#include <odb/core.hxx>
|
||||
#include <QSharedPointer>
|
||||
#include <QDateTime>
|
||||
|
||||
#include <enums.h>
|
||||
|
||||
@@ -16,6 +17,7 @@ class VoucherItem : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
Q_PROPERTY(QDateTime insertDate READ insertDate WRITE setInsertDate)
|
||||
Q_PROPERTY(QString name READ name WRITE setName)
|
||||
Q_PROPERTY(int count READ count WRITE setCount NOTIFY countChanged)
|
||||
Q_PROPERTY(QDecDouble unitPrice READ unitPrice WRITE setUnitPrice)
|
||||
@@ -62,6 +64,9 @@ public:
|
||||
QWeakPointer<Voucher> voucher() const;
|
||||
void setVoucher(const QWeakPointer<Voucher> &voucher);
|
||||
|
||||
QDateTime insertDate() const;
|
||||
void setInsertDate(const QDateTime &insertDate);
|
||||
|
||||
signals:
|
||||
void countChanged(int oldCount);
|
||||
|
||||
@@ -76,6 +81,7 @@ private:
|
||||
int m_priceWitouthVat;
|
||||
int m_price;
|
||||
int m_refId;
|
||||
QDateTime m_insertDate;
|
||||
QString m_itemPlugin;
|
||||
Enums::VatType m_vatType;
|
||||
#pragma db not_null
|
||||
|
||||
@@ -21,23 +21,25 @@ PaydVouchersDialog::PaydVouchersDialog(QWidget *parent) :
|
||||
ui->tableVouchers->setModel(m_voucherModel);
|
||||
ui->tableItems->setModel(m_itemModel);
|
||||
|
||||
ui->tableVouchers->setColumnHidden(5, true);
|
||||
ui->tableVouchers->setColumnHidden(2, true);
|
||||
ui->tableVouchers->setColumnHidden(6, true);
|
||||
ui->tableVouchers->setColumnHidden(7, true);
|
||||
ui->tableVouchers->setColumnHidden(8, true);
|
||||
ui->tableVouchers->setColumnHidden(9, true);
|
||||
ui->tableVouchers->setColumnHidden(10, true);
|
||||
ui->tableVouchers->setColumnHidden(12, true);
|
||||
ui->tableVouchers->setColumnHidden(11, true);
|
||||
ui->tableVouchers->setColumnHidden(13, true);
|
||||
ui->tableVouchers->setColumnHidden(14, true);
|
||||
ui->tableVouchers->setColumnHidden(15, true);
|
||||
ui->tableVouchers->setColumnHidden(16, true);
|
||||
ui->tableVouchers->setColumnHidden(17, true);
|
||||
ui->tableVouchers->horizontalHeader()->setSectionResizeMode(2, QHeaderView::Stretch);
|
||||
ui->tableVouchers->setColumnHidden(18, true);
|
||||
ui->tableVouchers->horizontalHeader()->setSectionResizeMode(3, QHeaderView::Stretch);
|
||||
ui->tableVouchers->horizontalHeader()->setSectionResizeMode(4, QHeaderView::Stretch);
|
||||
ui->tableVouchers->horizontalHeader()->setSectionResizeMode(5, QHeaderView::Stretch);
|
||||
|
||||
ui->tableItems->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
|
||||
ui->tableItems->horizontalHeader()->setSectionResizeMode(1, QHeaderView::Stretch);
|
||||
ui->tableItems->setColumnHidden(0, true);
|
||||
|
||||
ShopService srv;
|
||||
m_voucherModel->setData(srv.paiedVouchers());
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>900</width>
|
||||
<height>650</height>
|
||||
<width>1000</width>
|
||||
<height>700</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@@ -249,8 +249,8 @@
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="shoprc.qrc"/>
|
||||
<include location="../core/rc.qrc"/>
|
||||
<include location="shoprc.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
||||
+19
-13
@@ -16,23 +16,29 @@ ReceiptLoadForm::ReceiptLoadForm(QWidget *parent) :
|
||||
m_voucherModel->setData(srv.all(QString("status = %1").arg(QString::number(Voucher::NOT_PAID))));
|
||||
m_voucherModel->setTranslations(Context::instance().plugin("SHOP")->translations());
|
||||
ui->tabVouchers->setModel(m_voucherModel);
|
||||
ui->tabVouchers->hideColumn(0);
|
||||
ui->tabVouchers->hideColumn(1);
|
||||
ui->tabVouchers->hideColumn(5);
|
||||
ui->tabVouchers->hideColumn(6);
|
||||
ui->tabVouchers->hideColumn(7);
|
||||
ui->tabVouchers->hideColumn(8);
|
||||
ui->tabVouchers->hideColumn(9);
|
||||
ui->tabVouchers->hideColumn(10);
|
||||
ui->tabVouchers->hideColumn(12);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(2, QHeaderView::Stretch);
|
||||
ui->tabVouchers->setColumnWidth(3, 200);
|
||||
ui->tabVouchers->setColumnWidth(4, 200);
|
||||
ui->tabVouchers->setColumnHidden(0, true);
|
||||
ui->tabVouchers->setColumnHidden(1, true);
|
||||
ui->tabVouchers->setColumnHidden(6, true);
|
||||
ui->tabVouchers->setColumnHidden(7, true);
|
||||
ui->tabVouchers->setColumnHidden(8, true);
|
||||
ui->tabVouchers->setColumnHidden(9, true);
|
||||
ui->tabVouchers->setColumnHidden(10, true);
|
||||
ui->tabVouchers->setColumnHidden(11, true);
|
||||
ui->tabVouchers->setColumnHidden(13, true);
|
||||
ui->tabVouchers->setColumnHidden(14, true);
|
||||
ui->tabVouchers->setColumnHidden(15, true);
|
||||
ui->tabVouchers->setColumnHidden(16, true);
|
||||
ui->tabVouchers->setColumnHidden(17, true);
|
||||
ui->tabVouchers->setColumnHidden(18, true);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(3, QHeaderView::Stretch);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(4, QHeaderView::Stretch);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(5, QHeaderView::Stretch);
|
||||
|
||||
m_itemModel = new AutoTableModel<VoucherItem>(this);
|
||||
m_itemModel->setTranslations(Context::instance().plugin("SHOP")->translations());
|
||||
m_itemModel->setCheckboxSelect(true);
|
||||
ui->tabItems->setModel(m_itemModel);
|
||||
ui->tabItems->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
|
||||
ui->tabItems->horizontalHeader()->setSectionResizeMode(1, QHeaderView::Stretch);
|
||||
|
||||
connect(ui->tabVouchers->selectionModel(), &QItemSelectionModel::currentRowChanged, [this](const QModelIndex ¤t, QModelIndex){
|
||||
ShopService srv;
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>804</width>
|
||||
<height>500</height>
|
||||
<width>1000</width>
|
||||
<height>700</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
|
||||
+17
-10
@@ -26,16 +26,23 @@ ReceiptSaveForm::ReceiptSaveForm(QSharedPointer<Voucher> voucher, QWidget *paren
|
||||
m_voucherModel->setData(srv.all(QString("status = %1").arg(QString::number(Voucher::NOT_PAID))));
|
||||
m_voucherModel->setTranslations(Context::instance().plugin("SHOP")->translations());
|
||||
ui->tabVouchers->setModel(m_voucherModel);
|
||||
ui->tabVouchers->hideColumn(3);
|
||||
ui->tabVouchers->hideColumn(4);
|
||||
ui->tabVouchers->hideColumn(5);
|
||||
ui->tabVouchers->hideColumn(6);
|
||||
ui->tabVouchers->hideColumn(7);
|
||||
ui->tabVouchers->hideColumn(8);
|
||||
ui->tabVouchers->hideColumn(10);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(1, QHeaderView::Stretch);
|
||||
ui->tabVouchers->setColumnWidth(0, 190);
|
||||
ui->tabVouchers->setColumnWidth(2, 200);
|
||||
ui->tabVouchers->setColumnHidden(0, true);
|
||||
ui->tabVouchers->setColumnHidden(1, true);
|
||||
ui->tabVouchers->setColumnHidden(6, true);
|
||||
ui->tabVouchers->setColumnHidden(7, true);
|
||||
ui->tabVouchers->setColumnHidden(8, true);
|
||||
ui->tabVouchers->setColumnHidden(9, true);
|
||||
ui->tabVouchers->setColumnHidden(10, true);
|
||||
ui->tabVouchers->setColumnHidden(11, true);
|
||||
ui->tabVouchers->setColumnHidden(13, true);
|
||||
ui->tabVouchers->setColumnHidden(14, true);
|
||||
ui->tabVouchers->setColumnHidden(15, true);
|
||||
ui->tabVouchers->setColumnHidden(16, true);
|
||||
ui->tabVouchers->setColumnHidden(17, true);
|
||||
ui->tabVouchers->setColumnHidden(18, true);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(3, QHeaderView::Stretch);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(4, QHeaderView::Stretch);
|
||||
ui->tabVouchers->horizontalHeader()->setSectionResizeMode(5, QHeaderView::Stretch);
|
||||
|
||||
connect(ui->tabVouchers->selectionModel(), &QItemSelectionModel::currentRowChanged, [this](QModelIndex, QModelIndex){
|
||||
ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>804</width>
|
||||
<height>578</height>
|
||||
<width>1000</width>
|
||||
<height>700</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
|
||||
+8
-2
@@ -8,7 +8,7 @@
|
||||
"default" : "",
|
||||
"CZ" : ""
|
||||
},
|
||||
"schemaVersion" : 1,
|
||||
"schemaVersion" : 3,
|
||||
"sql" : [
|
||||
"CREATE TABLE \"VoucherItem\" (
|
||||
\"id\" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||
@@ -56,6 +56,10 @@ CREATE TABLE \"Voucher\" (
|
||||
FOREIGN KEY (\"contact\")
|
||||
REFERENCES \"AddressbookData\" (\"id\")
|
||||
DEFERRABLE INITIALLY DEFERRED);
|
||||
",
|
||||
"ALTER TABLE \"VoucherItem\" ADD \"insertDate\" TEXT NULL;
|
||||
",
|
||||
"ALTER TABLE \"Voucher\" ADD \"saveDateTime\" TEXT NULL;
|
||||
"
|
||||
],
|
||||
"dependencies" : [ "ADDRESSBOOK" ],
|
||||
@@ -86,7 +90,9 @@ CREATE TABLE \"Voucher\" (
|
||||
"totalPrice" : "Celková cena",
|
||||
"status" : "Stav",
|
||||
"numSer" : "Číslo",
|
||||
"payDateTime" : "Datum"
|
||||
"payDateTime" : "Datum zaplacení",
|
||||
"saveDateTime" : "Datum uložení",
|
||||
"insertDate" : "Datum vložení"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+12
-2
@@ -39,10 +39,11 @@ void ShopForm::loadLast()
|
||||
if (m_itemsModel == NULL)
|
||||
{
|
||||
m_itemsModel = new AutoTableModel<VoucherItem>(this);
|
||||
m_itemsModel->setEditableCols(QList<int>() << 1);
|
||||
m_itemsModel->setEditableCols(QList<int>() << 2);
|
||||
m_itemsModel->setTranslations(Context::instance().plugin("SHOP")->translations());
|
||||
ui->actualReceipt->setModel(m_itemsModel);
|
||||
ui->actualReceipt->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
|
||||
ui->actualReceipt->setColumnHidden(0, true);
|
||||
ui->actualReceipt->horizontalHeader()->setSectionResizeMode(1, QHeaderView::Stretch);
|
||||
}
|
||||
|
||||
ShopService srv;
|
||||
@@ -140,6 +141,7 @@ void ShopForm::on_saveButton_clicked()
|
||||
if (form->saveAsNew())
|
||||
{
|
||||
m_voucher->setStatus(Voucher::NOT_PAID);
|
||||
m_voucher->setSaveDateTime(QDateTime::currentDateTime());
|
||||
srv.updateVoucher(m_voucher);
|
||||
createEmptyVoucher();
|
||||
}
|
||||
@@ -164,6 +166,11 @@ void ShopForm::on_loadButton_clicked()
|
||||
form->setAttribute(Qt::WA_DeleteOnClose);
|
||||
|
||||
connect(form, &QDialog::accepted, [this, form](){
|
||||
if (form->selectedItems().isEmpty())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
ShopService srv;
|
||||
|
||||
if (m_voucher.isNull())
|
||||
@@ -172,6 +179,9 @@ void ShopForm::on_loadButton_clicked()
|
||||
}
|
||||
|
||||
srv.moveItems(form->selectedItems(), form->selectedVoucher(), this->m_voucher);
|
||||
m_voucher->setDescription(form->selectedVoucher()->description());
|
||||
m_voucher->setName(form->selectedVoucher()->name());
|
||||
m_voucher->setContact(form->selectedVoucher()->contact());
|
||||
|
||||
m_itemsModel->setData(m_voucher->items());
|
||||
|
||||
|
||||
@@ -28,6 +28,7 @@ void ShopService::addShopItem(VoucherPtr voucher, QSharedPointer<IShopItem> item
|
||||
vItem->setRefId(item->id());
|
||||
vItem->setItemPlugin(item->pluginId());
|
||||
vItem->setVatType(item->vatType());
|
||||
vItem->setInsertDate(QDateTime::currentDateTime());
|
||||
|
||||
voucher->addItem(vItem);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user