void Model_Checking::getEmptyTransaction(Data &data, int accountID) { data.TRANSID = -1; wxDateTime trx_date = wxDateTime::Today(); if (mmIniOptions::instance().transDateDefault_ != 0) { auto trans = instance().find(ACCOUNTID(accountID), TRANSDATE(trx_date, LESS_OR_EQUAL)); std::stable_sort(trans.begin(), trans.end(), SorterByTRANSDATE()); std::reverse(trans.begin(), trans.end()); if (!trans.empty()) trx_date = to_date(trans.begin()->TRANSDATE); wxDateTime trx_date_b = wxDateTime::Today(); auto trans_b = instance().find(TOACCOUNTID(accountID), TRANSDATE(trx_date_b, LESS_OR_EQUAL)); std::stable_sort(trans_b.begin(), trans_b.end(), SorterByTRANSDATE()); std::reverse(trans_b.begin(), trans_b.end()); if (!trans_b.empty()) { trx_date_b = to_date(trans_b.begin()->TRANSDATE); if (!trans.empty() && (trx_date_b > trx_date)) trx_date = trx_date_b; } } data.TRANSDATE = trx_date.FormatISODate(); data.ACCOUNTID = accountID; data.STATUS = toShortStatus(all_status()[mmIniOptions::instance().transStatusReconciled_]); data.TRANSCODE = all_type()[WITHDRAWAL]; data.CATEGID = -1; data.SUBCATEGID = -1; data.FOLLOWUPID = -1; data.TRANSAMOUNT = 0; data.TOTRANSAMOUNT = 0; data.TRANSACTIONNUMBER = ""; if (mmIniOptions::instance().transPayeeSelectionNone_ != 0) { auto trx = instance().find(TRANSCODE(TRANSFER, NOT_EQUAL) , ACCOUNTID(accountID, EQUAL), TRANSDATE(trx_date, LESS_OR_EQUAL)); if (!trx.empty()) { std::stable_sort(trx.begin(), trx.end(), SorterByTRANSDATE()); Model_Payee::Data* payee = Model_Payee::instance().get(trx.rbegin()->PAYEEID); if (payee) data.PAYEEID = payee->PAYEEID; if (payee && mmIniOptions::instance().transCategorySelectionNone_ != 0) { data.CATEGID = payee->CATEGID; data.SUBCATEGID = payee->SUBCATEGID; } } } }
DB_Table_BILLSDEPOSITS_V1::STATUS Model_Billsdeposits::STATUS(STATUS_ENUM status, OP op) { return DB_Table_BILLSDEPOSITS_V1::STATUS(toShortStatus(all_status()[status]), op); }
DB_Table_CHECKINGACCOUNT_V1::STATUS Model_Checking::STATUS(STATUS_ENUM status, OP op) { return DB_Table_CHECKINGACCOUNT_V1::STATUS(toShortStatus(all_status()[status]), op); }