Rename Nordigen to PSD2
This commit is contained in:
parent
26cf921a6f
commit
184628dcfc
@ -83,7 +83,7 @@ if __name__ == "__main__":
|
|||||||
assert len(args["bank"]) > 0, "argparser ill defined"
|
assert len(args["bank"]) > 0, "argparser ill defined"
|
||||||
params = args["bank"]
|
params = args["bank"]
|
||||||
|
|
||||||
case Operation.NordigenAdd:
|
case Operation.PSD2Add:
|
||||||
keys = {"bank", "bank_id", "requisition_id", "invert"}
|
keys = {"bank", "bank_id", "requisition_id", "invert"}
|
||||||
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
||||||
|
|
||||||
@ -96,7 +96,7 @@ if __name__ == "__main__":
|
|||||||
)
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
case Operation.NordigenMod:
|
case Operation.PSD2Mod:
|
||||||
keys = {"bank", "bank_id", "requisition_id", "invert", "remove"}
|
keys = {"bank", "bank_id", "requisition_id", "invert", "remove"}
|
||||||
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
||||||
|
|
||||||
@ -110,11 +110,11 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
params = [param]
|
params = [param]
|
||||||
|
|
||||||
case Operation.NordigenDel:
|
case Operation.PSD2Del:
|
||||||
assert len(args["bank"]) > 0, "argparser ill defined"
|
assert len(args["bank"]) > 0, "argparser ill defined"
|
||||||
params = args["bank"]
|
params = args["bank"]
|
||||||
|
|
||||||
case Operation.NordigenCountryBanks:
|
case Operation.PSD2CountryBanks:
|
||||||
keys = {"country"}
|
keys = {"country"}
|
||||||
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
||||||
|
|
||||||
@ -149,7 +149,16 @@ if __name__ == "__main__":
|
|||||||
]
|
]
|
||||||
|
|
||||||
case Operation.RuleAdd:
|
case Operation.RuleAdd:
|
||||||
keys = {"category", "start", "end", "description", "regex", "bank", "min", "max"}
|
keys = {
|
||||||
|
"category",
|
||||||
|
"start",
|
||||||
|
"end",
|
||||||
|
"description",
|
||||||
|
"regex",
|
||||||
|
"bank",
|
||||||
|
"min",
|
||||||
|
"max",
|
||||||
|
}
|
||||||
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
assert args.keys() >= keys, f"missing {args.keys() - keys}"
|
||||||
|
|
||||||
params = [
|
params = [
|
||||||
|
|||||||
@ -126,16 +126,16 @@ def argparser() -> argparse.ArgumentParser:
|
|||||||
# Banks
|
# Banks
|
||||||
bank(subparsers.add_parser("bank"))
|
bank(subparsers.add_parser("bank"))
|
||||||
|
|
||||||
# Nordigen access token
|
# PSD2 access token
|
||||||
subparsers.add_parser("token").set_defaults(op=Operation.Token)
|
subparsers.add_parser("token").set_defaults(op=Operation.Token)
|
||||||
|
|
||||||
# Nordigen requisition id
|
# PSD2 requisition id
|
||||||
requisition = subparsers.add_parser("eua")
|
requisition = subparsers.add_parser("eua")
|
||||||
requisition.set_defaults(op=Operation.RequisitionId)
|
requisition.set_defaults(op=Operation.RequisitionId)
|
||||||
requisition.add_argument("id", nargs=1, type=str)
|
requisition.add_argument("id", nargs=1, type=str)
|
||||||
requisition.add_argument("country", nargs=1, type=str)
|
requisition.add_argument("country", nargs=1, type=str)
|
||||||
|
|
||||||
# Download through the Nordigen API
|
# Download through the PSD2 API
|
||||||
download = subparsers.add_parser("download", parents=[period])
|
download = subparsers.add_parser("download", parents=[period])
|
||||||
download.set_defaults(op=Operation.Download)
|
download.set_defaults(op=Operation.Download)
|
||||||
download_banks = download.add_mutually_exclusive_group()
|
download_banks = download.add_mutually_exclusive_group()
|
||||||
@ -145,7 +145,7 @@ def argparser() -> argparse.ArgumentParser:
|
|||||||
|
|
||||||
# List available banks in country C
|
# List available banks in country C
|
||||||
banks = subparsers.add_parser("banks")
|
banks = subparsers.add_parser("banks")
|
||||||
banks.set_defaults(op=Operation.NordigenCountryBanks)
|
banks.set_defaults(op=Operation.PSD2CountryBanks)
|
||||||
banks.add_argument("country", nargs=1, type=str)
|
banks.add_argument("country", nargs=1, type=str)
|
||||||
|
|
||||||
# Categories
|
# Categories
|
||||||
@ -214,7 +214,7 @@ def bank(parser: argparse.ArgumentParser):
|
|||||||
mod.add_argument("--type", nargs=1, type=str, choices=[e.name for e in AccountType])
|
mod.add_argument("--type", nargs=1, type=str, choices=[e.name for e in AccountType])
|
||||||
mod.add_argument("--remove", nargs="*", default=[], type=str)
|
mod.add_argument("--remove", nargs="*", default=[], type=str)
|
||||||
|
|
||||||
nordigen(commands.add_parser("nordigen"))
|
psd2(commands.add_parser("psd2"))
|
||||||
|
|
||||||
export = commands.add_parser("export")
|
export = commands.add_parser("export")
|
||||||
export.set_defaults(op=Operation.ExportBanks)
|
export.set_defaults(op=Operation.ExportBanks)
|
||||||
@ -225,22 +225,22 @@ def bank(parser: argparse.ArgumentParser):
|
|||||||
file_options(pimport)
|
file_options(pimport)
|
||||||
|
|
||||||
|
|
||||||
def nordigen(parser: argparse.ArgumentParser):
|
def psd2(parser: argparse.ArgumentParser):
|
||||||
commands = parser.add_subparsers(required=True)
|
commands = parser.add_subparsers(required=True)
|
||||||
|
|
||||||
add = commands.add_parser("add")
|
add = commands.add_parser("add")
|
||||||
add.set_defaults(op=Operation.NordigenAdd)
|
add.set_defaults(op=Operation.PSD2Add)
|
||||||
add.add_argument("bank", nargs=1, type=str)
|
add.add_argument("bank", nargs=1, type=str)
|
||||||
add.add_argument("--bank_id", nargs=1, type=str)
|
add.add_argument("--bank_id", nargs=1, type=str)
|
||||||
add.add_argument("--requisition_id", nargs=1, type=str)
|
add.add_argument("--requisition_id", nargs=1, type=str)
|
||||||
add.add_argument("--invert", action="store_true")
|
add.add_argument("--invert", action="store_true")
|
||||||
|
|
||||||
rem = commands.add_parser("del")
|
rem = commands.add_parser("del")
|
||||||
rem.set_defaults(op=Operation.NordigenDel)
|
rem.set_defaults(op=Operation.PSD2Del)
|
||||||
rem.add_argument("bank", nargs="+", type=str)
|
rem.add_argument("bank", nargs="+", type=str)
|
||||||
|
|
||||||
mod = commands.add_parser("mod")
|
mod = commands.add_parser("mod")
|
||||||
mod.set_defaults(op=Operation.NordigenMod)
|
mod.set_defaults(op=Operation.PSD2Mod)
|
||||||
mod.add_argument("bank", nargs=1, type=str)
|
mod.add_argument("bank", nargs=1, type=str)
|
||||||
mod.add_argument("--bank_id", nargs=1, type=str)
|
mod.add_argument("--bank_id", nargs=1, type=str)
|
||||||
mod.add_argument("--requisition_id", nargs=1, type=str)
|
mod.add_argument("--requisition_id", nargs=1, type=str)
|
||||||
|
|||||||
@ -33,10 +33,10 @@ class Operation(Enum):
|
|||||||
BankAdd = auto()
|
BankAdd = auto()
|
||||||
BankMod = auto()
|
BankMod = auto()
|
||||||
BankDel = auto()
|
BankDel = auto()
|
||||||
NordigenAdd = auto()
|
PSD2Add = auto()
|
||||||
NordigenMod = auto()
|
PSD2Mod = auto()
|
||||||
NordigenDel = auto()
|
PSD2Del = auto()
|
||||||
NordigenCountryBanks = auto()
|
PSD2CountryBanks = auto()
|
||||||
Export = auto()
|
Export = auto()
|
||||||
Import = auto()
|
Import = auto()
|
||||||
ExportBanks = auto()
|
ExportBanks = auto()
|
||||||
|
|||||||
@ -25,7 +25,7 @@ from pfbudget.db.model import (
|
|||||||
Transaction,
|
Transaction,
|
||||||
TransactionCategory,
|
TransactionCategory,
|
||||||
)
|
)
|
||||||
from pfbudget.extract.nordigen import NordigenInput
|
from pfbudget.extract.psd2 import PSD2Client
|
||||||
from pfbudget.extract.parsers import parse_data
|
from pfbudget.extract.parsers import parse_data
|
||||||
|
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ class Manager:
|
|||||||
session.add(sorted(transactions))
|
session.add(sorted(transactions))
|
||||||
|
|
||||||
case Operation.Download:
|
case Operation.Download:
|
||||||
client = NordigenInput()
|
client = PSD2Client()
|
||||||
with self.db.session() as session:
|
with self.db.session() as session:
|
||||||
if len(params[3]) == 0:
|
if len(params[3]) == 0:
|
||||||
client.banks = session.get(Bank, Bank.nordigen)
|
client.banks = session.get(Bank, Bank.nordigen)
|
||||||
@ -103,7 +103,7 @@ class Manager:
|
|||||||
with self.db.session() as session:
|
with self.db.session() as session:
|
||||||
session.update(Bank, params)
|
session.update(Bank, params)
|
||||||
|
|
||||||
case Operation.NordigenMod:
|
case Operation.PSD2Mod:
|
||||||
with self.db.session() as session:
|
with self.db.session() as session:
|
||||||
session.update(Nordigen, params)
|
session.update(Nordigen, params)
|
||||||
|
|
||||||
@ -111,26 +111,26 @@ class Manager:
|
|||||||
with self.db.session() as session:
|
with self.db.session() as session:
|
||||||
session.remove_by_name(Bank, params)
|
session.remove_by_name(Bank, params)
|
||||||
|
|
||||||
case Operation.NordigenDel:
|
case Operation.PSD2Del:
|
||||||
with self.db.session() as session:
|
with self.db.session() as session:
|
||||||
session.remove_by_name(Nordigen, params)
|
session.remove_by_name(Nordigen, params)
|
||||||
|
|
||||||
case Operation.Token:
|
case Operation.Token:
|
||||||
NordigenInput().token()
|
PSD2Client().token()
|
||||||
|
|
||||||
case Operation.RequisitionId:
|
case Operation.RequisitionId:
|
||||||
link, _ = NordigenInput().requisition(params[0], params[1])
|
link, _ = PSD2Client().requisition(params[0], params[1])
|
||||||
print(f"Opening {link} to request access to {params[0]}")
|
print(f"Opening {link} to request access to {params[0]}")
|
||||||
webbrowser.open(link)
|
webbrowser.open(link)
|
||||||
|
|
||||||
case Operation.NordigenCountryBanks:
|
case Operation.PSD2CountryBanks:
|
||||||
banks = NordigenInput().country_banks(params[0])
|
banks = PSD2Client().country_banks(params[0])
|
||||||
print(banks)
|
print(banks)
|
||||||
|
|
||||||
case (
|
case (
|
||||||
Operation.BankAdd
|
Operation.BankAdd
|
||||||
| Operation.CategoryAdd
|
| Operation.CategoryAdd
|
||||||
| Operation.NordigenAdd
|
| Operation.PSD2Add
|
||||||
| Operation.RuleAdd
|
| Operation.RuleAdd
|
||||||
| Operation.TagAdd
|
| Operation.TagAdd
|
||||||
| Operation.TagRuleAdd
|
| Operation.TagRuleAdd
|
||||||
|
|||||||
@ -15,7 +15,7 @@ from .extract import Extract
|
|||||||
dotenv.load_dotenv()
|
dotenv.load_dotenv()
|
||||||
|
|
||||||
|
|
||||||
class NordigenInput(Extract):
|
class PSD2Client(Extract):
|
||||||
redirect_url = "https://murta.dev"
|
redirect_url = "https://murta.dev"
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Loading…
x
Reference in New Issue
Block a user