93 lines
2.4 KiB
Go
93 lines
2.4 KiB
Go
package secretNumber
|
||
|
||
import (
|
||
"fmt"
|
||
"git.rosy.net.cn/baseapi/utils"
|
||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||
"git.rosy.net.cn/jx-callback/business/model"
|
||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||
"git.rosy.net.cn/jx-callback/globals/api"
|
||
"github.com/alibabacloud-go/dyplsapi-20170525/client"
|
||
"github.com/alibabacloud-go/tea/tea"
|
||
)
|
||
|
||
//查询线上可购号码余量
|
||
func QuerySecretNoRemain(city string) (b bool, err error) {
|
||
result, err := api.SecretNumClient.QuerySecretNoRemain(&client.QuerySecretNoRemainRequest{
|
||
SpecId: tea.Int64(1), //1:虚商号码,即170或171。
|
||
City: tea.String(city), //城市名
|
||
})
|
||
if err != nil {
|
||
return false, err
|
||
}
|
||
if *result.Body.Code != "OK" {
|
||
err = fmt.Errorf(*result.Body.Message)
|
||
return false, err
|
||
}
|
||
if *result.Body.SecretRemainDTO.Amount > 0 {
|
||
return true, nil
|
||
}
|
||
return false, err
|
||
}
|
||
|
||
//购买号码
|
||
func BuySecretNo(ctx *jxcontext.Context, poolKey, city string) (err error) {
|
||
result, err := api.SecretNumClient.BuySecretNo(&client.BuySecretNoRequest{
|
||
PoolKey: tea.String(poolKey),
|
||
SpecId: tea.Int64(1),
|
||
City: tea.String(city),
|
||
})
|
||
if err != nil {
|
||
return err
|
||
}
|
||
if *result.Body.Code != "OK" {
|
||
err = fmt.Errorf(*result.Body.Message)
|
||
return err
|
||
}
|
||
if secretNo := *result.Body.SecretBuyInfoDTO.SecretNo; secretNo != "" {
|
||
secretNumber := &model.SecretNumber{
|
||
City: city,
|
||
Number: secretNo,
|
||
PoolKey: poolKey,
|
||
}
|
||
dao.WrapAddIDCULDEntity(secretNumber, ctx.GetUserName())
|
||
err = dao.CreateEntity(dao.GetDB(), secretNumber)
|
||
}
|
||
return err
|
||
}
|
||
|
||
//绑定号码
|
||
func BindAxb(ctx *jxcontext.Context, secretNumber, numberA, numberB, expiration string) (err error) {
|
||
result, err := api.SecretNumClient.BindAxb(&client.BindAxbRequest{
|
||
PhoneNoA: tea.String(numberA),
|
||
PhoneNoB: tea.String(numberB),
|
||
PhoneNoX: tea.String(secretNumber),
|
||
Expiration: tea.String(expiration),
|
||
})
|
||
if err != nil {
|
||
return err
|
||
}
|
||
if *result.Body.Code != "OK" {
|
||
err = fmt.Errorf(*result.Body.Message)
|
||
return err
|
||
}
|
||
return err
|
||
}
|
||
|
||
//查询绑定唯一标识SubsId
|
||
func QuerySubsId(poolKey, secretNumber string) (err error) {
|
||
result, err := api.SecretNumClient.QuerySubsId(&client.QuerySubsIdRequest{
|
||
PoolKey: tea.String(poolKey),
|
||
PhoneNoX: tea.String(secretNumber),
|
||
})
|
||
if err != nil {
|
||
return err
|
||
}
|
||
if *result.Body.Code != "OK" {
|
||
err = fmt.Errorf(*result.Body.Message)
|
||
return err
|
||
}
|
||
fmt.Println(utils.Format4Output(result.Body, true))
|
||
return err
|
||
}
|