/
helpers.go
59 lines (55 loc) · 1.44 KB
/
helpers.go
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
package debts
import (
"net/url"
"strconv"
"github.com/Ozoniuss/casheer/internal/model"
public "github.com/Ozoniuss/casheer/pkg/casheerapi"
)
func DebtToPublic(debt model.Debt, debtsURL *url.URL) public.DebtData {
return public.DebtData{
ResourceID: public.ResourceID{
Id: strconv.Itoa(debt.Id),
Type: public.DebtType,
},
Attributes: public.DebtAtrributes{
Value: public.MonetaryValueAttributes{
Amount: debt.Amount,
Exponent: debt.Exponent,
Currency: debt.Currency,
},
Person: debt.Person,
Details: debt.Details,
Timestamps: public.Timestamps{
CreatedAt: debt.CreatedAt,
UpdatedAt: debt.UpdatedAt,
},
},
Links: public.DebtLinks{
Self: debtsURL.JoinPath(strconv.Itoa(debt.Id)).String(),
},
}
}
func DebtToPublicList(debt model.Debt, debtsURL *url.URL) public.DebtListItemData {
return public.DebtListItemData{
ResourceID: public.ResourceID{
Id: strconv.Itoa(debt.Id),
Type: public.DebtType,
},
Attributes: public.DebtAtrributes{
Value: public.MonetaryValueAttributes{
Amount: debt.Amount,
Exponent: debt.Exponent,
Currency: debt.Currency,
},
Person: debt.Person,
Details: debt.Details,
Timestamps: public.Timestamps{
CreatedAt: debt.CreatedAt,
UpdatedAt: debt.UpdatedAt,
},
},
Links: public.DebtListItemLinks{
Self: debtsURL.JoinPath(strconv.Itoa(debt.Id)).String(),
},
}
}