82 lines
2.3 KiB
Go
82 lines
2.3 KiB
Go
package tysk
|
||
|
||
import (
|
||
"gitea.cdlsxd.cn/self-tools/tysk/tysk_constant"
|
||
"gitea.cdlsxd.cn/self-tools/tysk/tysk_entity"
|
||
)
|
||
|
||
type Tysk struct {
|
||
UserName string // 用户名
|
||
Env string // 环境,测试:dev,不传默认正式
|
||
}
|
||
|
||
func NewTysk(userName string, opts ...Option) TyskFacade {
|
||
tysk := &Tysk{UserName: userName}
|
||
for _, opt := range opts {
|
||
opt(tysk) // 应用选项
|
||
}
|
||
return tysk
|
||
}
|
||
|
||
type Option func(*Tysk)
|
||
|
||
func WithEnvTest() Option {
|
||
return func(tysk *Tysk) {
|
||
tysk.Env = "dev"
|
||
}
|
||
}
|
||
|
||
func (g *Tysk) GetAccountBalance(accountList tysk_entity.GetAccountBalanceReq) (res map[tysk_constant.AccountNo]tysk_entity.GetAccountBalanceList, err error) {
|
||
var result tysk_entity.AccountBalance
|
||
|
||
err = g.handleRequest(tysk_constant.GetAccountBalance, g.handleReqStructToMap(accountList), &result)
|
||
if err != nil {
|
||
return
|
||
}
|
||
res = make(map[tysk_constant.AccountNo]tysk_entity.GetAccountBalanceList, len(result.List.Row))
|
||
for _, row := range result.List.Row {
|
||
res[row.AccountNo] = row
|
||
}
|
||
return
|
||
}
|
||
|
||
func (g *Tysk) GetTodayTransHis(todayTransHisReq tysk_entity.TodayTransHisReq) (res tysk_entity.TodayTransHisResp, err error) {
|
||
err = g.handleRequest(tysk_constant.GetTodayTransHis, g.handleReqStructToMap(todayTransHisReq), &res)
|
||
if err != nil {
|
||
return
|
||
}
|
||
return
|
||
}
|
||
|
||
func (g *Tysk) GetAccountInfo(accountInfoReq tysk_entity.AccountInfoReq) (res tysk_entity.AccountInfoResp, err error) {
|
||
err = g.handleRequest(tysk_constant.GetAccountInfo, g.handleReqStructToMap(accountInfoReq), &res)
|
||
if err != nil {
|
||
return
|
||
}
|
||
return
|
||
}
|
||
|
||
func (g *Tysk) ReceiptApply(receiptApplyReq tysk_entity.ReceiptApplyReq) (success bool, err error) {
|
||
err = g.handleRequest(tysk_constant.ReceiptApply, g.handleReqStructToMap(receiptApplyReq), nil)
|
||
if err != nil {
|
||
return
|
||
}
|
||
return true, nil
|
||
}
|
||
|
||
func (g *Tysk) ReceiptQuery(receiptQueryReq tysk_entity.ReceiptQueryReq) (res tysk_entity.ReceiptQueryResp, err error) {
|
||
err = g.handleRequest(tysk_constant.ReceiptQuery, g.handleReqStructToMap(receiptQueryReq), &res)
|
||
if err != nil {
|
||
return
|
||
}
|
||
return
|
||
}
|
||
|
||
func (g *Tysk) ReceiptDownload(receiptDownloadReq tysk_entity.ReceiptDownloadReq) (res tysk_entity.ReceiptDownloadResp, err error) {
|
||
err = g.handleRequest(tysk_constant.ReceiptDownload, g.handleReqStructToMap(receiptDownloadReq), &res)
|
||
if err != nil {
|
||
return
|
||
}
|
||
return
|
||
}
|