44 lines
800 B
Go
44 lines
800 B
Go
package fk
|
|
|
|
import (
|
|
p "bitbucket.org/skeris/treasurer/payway/payways"
|
|
)
|
|
|
|
type FreeKassa struct {
|
|
Key string `json:"key"`
|
|
ShopId int64 `json:"shopId"`
|
|
|
|
byteKey []byte
|
|
create, wallet, getOrders preparer
|
|
}
|
|
|
|
type preparer func(any) ([]byte, error)
|
|
|
|
func New(sk string, shid int64) *FreeKassa {
|
|
fk := &FreeKassa{
|
|
Key: sk,
|
|
ShopId: shid,
|
|
byteKey: []byte(sk),
|
|
}
|
|
|
|
fk.create = fk.prepareData(&ReqCreateInvoice{})
|
|
fk.wallet = fk.prepareData(&ReqGetWallet{})
|
|
fk.getOrders = fk.prepareData(&ReqOrdersHistory{})
|
|
|
|
return fk
|
|
}
|
|
|
|
func (pw *FreeKassa) Type() string {
|
|
return "fk"
|
|
}
|
|
|
|
func (pw *FreeKassa) Copy() *p.Payway {
|
|
return &p.Payway{
|
|
Credentials: &FreeKassa{},
|
|
}
|
|
}
|
|
|
|
//func (pw *FreeKassa) MarshalJSON() ([]byte, error) {
|
|
// return json.Marshal(&FreeKassa{})
|
|
//}
|