summaryrefslogtreecommitdiff
path: root/sandbox/src/main/kotlin/tech/libeufin/sandbox/JSON.kt
blob: c7f906c8d492b7825cff6426845830cc841b57de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
/*
 * This file is part of LibEuFin.
 * Copyright (C) 2019 Stanisci and Dold.

 * LibEuFin is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation; either version 3, or
 * (at your option) any later version.

 * LibEuFin is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero General
 * Public License for more details.

 * You should have received a copy of the GNU Affero General Public
 * License along with LibEuFin; see the file COPYING.  If not, see
 * <http://www.gnu.org/licenses/>
 */

package tech.libeufin.sandbox

import tech.libeufin.util.PaymentInfo
import tech.libeufin.util.RawPayment

/**
 * Used to show the list of Ebics hosts that exist
 * in the system.
 */
data class EbicsHostsResponse(
    val ebicsHosts: List<String>
)

/**
 * Used to show information about ONE particular
 * Ebics host that is active in the system.
 */
data class EbicsHostResponse(
    val hostID: String,
    val ebicsVersion: String
)

data class EbicsHostCreateRequest(
    val hostID: String,
    val ebicsVersion: String
)

/**
 * List type that show all the payments existing in the system.
 */
data class PaymentsResponse(
    val payments: MutableList<RawPayment> = mutableListOf()
)

/**
 * List type that show all the payments existing in the system.
 */
data class AccountTransactions(
    val payments: MutableList<PaymentInfo> = mutableListOf()
)

/**
 * Used to create AND show one Ebics subscriber in the system.
 */
data class EbicsSubscriberElement(
    val hostID: String,
    val partnerID: String,
    val userID: String,
    val systemID: String? = null
)

data class AdminGetSubscribers(
    var subscribers: MutableList<EbicsSubscriberElement> = mutableListOf()
)

data class BankAccountRequest(
    val subscriber: EbicsSubscriberElement,
    val iban: String,
    val bic: String,
    val name: String,
    val label: String,
    val currency: String
)

data class DateRange(
    val startDate: Long,
    val endDate: Long
)

data class CamtParams(
    val iban: String,
    val type: Int
)

data class BankAccountStatements(
    var bankAccountStatements: MutableList<BankAccountStatement> = mutableListOf()
)

data class BankAccountReports(
    var bankAccountReports: MutableList<BankAccountReport> = mutableListOf()
)

data class BankAccountStatement(
    var statementId: String,
    var creationTime: Long,
    var message: MutableList<String> = mutableListOf()
)

data class BankAccountReport(
    var reportId: String,
    var creationTime: Long,
    val message: String
)