-
Notifications
You must be signed in to change notification settings - Fork 1
/
wallet_types.go
138 lines (128 loc) · 2.92 KB
/
wallet_types.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
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
package customer
import "github.com/webx-top/echo"
var (
// AssetTypes 资产类型
AssetTypes = echo.NewKVData()
// AmountTypes 金额类型
AmountTypes = echo.NewKVData()
// 资金流水记录状态
FlowStatus = echo.NewKVData()
)
// 资产类型
const (
AssetTypeMoney = `money`
AssetTypeIntegral = `integral`
AssetTypeCredit = `credit`
AssetTypePoint = `point`
AssetTypeGold = `gold`
AssetTypeSilver = `silver`
AssetTypeCopper = `copper`
AssetTypeExperience = `experience`
)
// 金额类型
const (
AmountTypeBalance = `balance`
AmountTypeFreeze = `freeze`
)
// 资金流水记录状态
const (
//状态(pending-待确认;confirmed-已确认;canceled-已取消)
FlowStatusPending = `pending`
FlowStatusConfirmed = `confirmed`
FlowStatusCanceled = `canceled`
)
func init() {
// 注册资产类型
AssetTypes.AddItem(&echo.KV{
K: AssetTypeMoney,
V: `人民币`,
H: echo.H{
`icon`: `icon ion-cash`,
`bg`: `warning`,
`symbol`: `¥`,
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypeIntegral,
V: `积分`,
H: echo.H{
`icon`: `icon ion-android-cart`,
`bg`: `indigo-light`,
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypeCredit,
V: `信用分`,
H: echo.H{
`icon`: `icon ion-heart`,
`bg`: `pink-light`,
`comment`: `满分10`,
`ignoreAccumulated`: true, // 不支持累计历史值
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypePoint,
V: `点数`,
H: echo.H{
`icon`: `iconfont icon-dengji-11`,
`bg`: `gray`,
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypeGold,
V: `金币`,
H: echo.H{
`icon`: `iconfont icon-jinbi2 tx-gold`,
`bg`: `superlight`,
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypeSilver,
V: `银币`,
H: echo.H{
`icon`: `iconfont icon-tongbi tx-silver`,
`bg`: `gray`,
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypeCopper,
V: `铜钱`,
H: echo.H{
`icon`: `iconfont icon-tongbi tx-copper`,
`bg`: `superlight`,
},
})
AssetTypes.AddItem(&echo.KV{
K: AssetTypeExperience,
V: `经验`,
H: echo.H{
`icon`: `iconfont icon-youxiu`,
`bg`: `info`,
},
})
// 注册金额类型
AmountTypes.Add(AmountTypeBalance, `余额`)
AmountTypes.Add(AmountTypeFreeze, `冻结`)
// 注册资金流水数据的状态
FlowStatus.Add(FlowStatusPending, `待确认`)
FlowStatus.Add(FlowStatusConfirmed, `已确认`)
FlowStatus.Add(FlowStatusCanceled, `已取消`)
}
func AssetTypeList() []*echo.KV {
copied := []*echo.KV{}
for _, assetType := range AssetTypes.Slice() {
if assetType.H.Bool(`disabled`) {
continue
}
copied = append(copied, assetType)
}
return copied
}
// AssetTypeIsIgnoreAccumulated 判断某种资产类型是否不支持累计历史值
func AssetTypeIsIgnoreAccumulated(assetType string) bool {
item := AssetTypes.GetItem(assetType)
if item == nil {
return false
}
return item.H.Bool(`ignoreAccumulated`)
}