| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 | #include "acurrencyentry.h"#include "src/opl.h"AEntry::AEntry(DataPosition position_)    : position(position_){}AEntry::AEntry(RowData_T table_data)    : tableData(table_data){}AEntry::AEntry(DataPosition position_, RowData_T table_data)    : position(position_), tableData(table_data){}void AEntry::setData(RowData_T table_data){    tableData = table_data;}void AEntry::setPosition(DataPosition position_){    position = position_;}const DataPosition& AEntry::getPosition() const{    return position;}const RowData_T& AEntry::getData() const{    return tableData;}AEntry::operator QString() const{    QString out("\033[32m[Entry Data]:\t\033[m\n");    int item_count = 0;    QHash<ColName_T, ColData_T>::const_iterator i;    for (i = tableData.constBegin(); i!= tableData.constEnd(); ++i) {        QString spacer(":");        int spaces = (14 - i.key().length());        if (spaces > 0)            for (int i = 0; i < spaces ; i++)                spacer += QLatin1Char(' ');        if (i.value().toString().isEmpty()) {            out.append(QLatin1String("\t\033[m") + i.key()                       + spacer                       + QLatin1String("\033[35m----"));            spaces = (14 - i.value().toString().length());            spacer = QString();            if (spaces > 0)                for (int i = 0; i < spaces ; i++)                    spacer += QLatin1Char(' ');            out.append(spacer);        } else {            out.append(QLatin1String("\t\033[m") + i.key()                       + spacer                       + QLatin1String("\033[35m")                       + i.value().toString());            spaces = (14 - i.value().toString().length());            spacer = QString();            if (spaces > 0)                for (int i = 0; i < spaces ; i++)                    spacer += QLatin1Char(' ');            out.append(spacer);        }        item_count ++;        if (item_count % 4 == 0)            out.append(QLatin1String("\n"));    }    out.append(QLatin1String("\n"));    QTextStream(stdout) << out;    return QString();}/*! * \brief ACurrencyEntry::ACurrencyEntry Creates an ACurrenyEntry object. * * The Data Position is initalized by using the strongly typed enum * CurrencyName, which maps to the static row id for the currency. */ACurrencyEntry::ACurrencyEntry(ACurrencyEntry::CurrencyName currency_name)    : AEntry::AEntry(DataPosition(OPL::Db::TABLE_CURRENCIES, static_cast<int>(currency_name))){}ACurrencyEntry::ACurrencyEntry(ACurrencyEntry::CurrencyName currency_name, QDate expiration_date)    : AEntry::AEntry(DataPosition(OPL::Db::TABLE_CURRENCIES, static_cast<int>(currency_name))){    if (expiration_date.isValid()) {        tableData.insert(OPL::Db::CURRENCIES_EXPIRYDATE, expiration_date.toString(Qt::ISODate));    } else {        DEB << "Invalid Date.";    }}/*! * \brief ACurrencyEntry::isValid returns true if the object holds a valid expiration date. * * Unless a user has previously entered an expiration date, this will return false. * \return */bool ACurrencyEntry::isValid() const{    return QDate::fromString(                tableData.value(OPL::Db::CURRENCIES_EXPIRYDATE).toString(), Qt::ISODate                ).isValid();}
 |