File indexing completed on 2024-05-26 05:09:14
0001 /* 0002 SPDX-FileCopyrightText: 2013-2015 Christian Dávid <christian-david@web.de> 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 0006 /** 0007 * @file Helper functions for using aqbanking with KMyMoney 0008 * 0009 * These functions are similar to the ones in aqbanking. They are meant as glue between aqbanking and KMyMoney. 0010 * 0011 */ 0012 #ifndef AQBANKINGKMMOPERATORS_H 0013 #define AQBANKINGKMMOPERATORS_H 0014 0015 #include <QSharedPointer> 0016 0017 #include "onlinetasks/interfaces/tasks/ionlinetasksettings.h" 0018 #include "onlinetasks/sepa/sepaonlinetransfer.h" 0019 0020 struct AB_ACCOUNT_SPEC; 0021 struct AB_TRANSACTION_LIMITS; 0022 struct AB_TRANSACTION; 0023 struct AB_VALUE; 0024 0025 namespace payeeIdentifiers 0026 { 0027 class ibanBic; 0028 class nationalAccount; 0029 } 0030 0031 /** 0032 * @brief AB_TransactionLimits_toSepaOnlineTaskSettings 0033 * @param aqlimits IN 0034 */ 0035 QSharedPointer<sepaOnlineTransfer::settings> AB_TransactionLimits_toSepaOnlineTaskSettings(const AB_TRANSACTION_LIMITS* aqlimits); 0036 0037 /** 0038 * @brief AB_Transaction_SetRemoteAccount 0039 * @param transaction 0040 * @param ident 0041 */ 0042 void AB_Transaction_SetRemoteAccount(AB_TRANSACTION* transaction, const payeeIdentifiers::ibanBic& ident); 0043 0044 void AB_Transaction_SetRemoteAccount(AB_TRANSACTION* transaction, const payeeIdentifiers::nationalAccount& ident); 0045 0046 /** 0047 * @brief Set local account of transaction by aqBanking account ptr 0048 */ 0049 void AB_Transaction_SetLocalAccount(AB_TRANSACTION* transaction, const AB_ACCOUNT_SPEC* account); 0050 0051 /** 0052 * @brief AB_Transaction_SetLocalAccount 0053 * @param transaction 0054 * @param ident 0055 */ 0056 void AB_Transaction_SetLocalAccount(AB_TRANSACTION* transaction, const payeeIdentifiers::nationalAccount& ident); 0057 0058 /** 0059 * @brief Set local account of transaction from list 0060 * 0061 * Will check if an element of accountNumbers is valid and if it is payeeIdentifiers::ibanBic or payeeIdentifiers::natinalAccount. 0062 * If such a payeeIdentifier is found, it is set as local account for @c transaction 0063 * 0064 * @return true if a valid payeeIdentifiers::natinalAccount was set 0065 */ 0066 bool AB_Transaction_SetLocalAccount(AB_TRANSACTION* transaction, const QList<payeeIdentifier>& accountNumbers); 0067 0068 /** 0069 * @brief Create AB_VALUE from MyMoneyMoney 0070 * 0071 * @return caller gains ownership 0072 */ 0073 AB_VALUE* AB_Value_fromMyMoneyMoney(const MyMoneyMoney& input); 0074 0075 /** 0076 * @brief Convert AB_VALUE to MyMoneyMoney 0077 */ 0078 MyMoneyMoney AB_Value_toMyMoneyMoney(const AB_VALUE *const value); 0079 0080 #endif // AQBANKINGKMMOPERATORS_H