优化易缴费服务

master
李光春 2 years ago
parent a6de6bb379
commit 47d9cefb40

@ -6,7 +6,7 @@ import (
"net/http"
)
type CheckCostResult struct {
type CheckCostResponse struct {
XMLName xml.Name `xml:"response"`
UserID string `xml:"userid"` // 用户账号
OrderID string `xml:"orderid"` // 用户提交订单号
@ -15,8 +15,18 @@ type CheckCostResult struct {
Error int `xml:"error"` // 错误提示
}
type CheckCostResult struct {
Result CheckCostResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewCheckCostResult(result CheckCostResponse, body []byte, err error) *CheckCostResult {
return &CheckCostResult{Result: result, Body: body, Err: err}
}
// CheckCost 会员订单成本价查询接口
func (app *App) CheckCost(orderID string) (body []byte, err error) {
func (app *App) CheckCost(orderID string) *CheckCostResult {
// 参数
param := NewParams()
param.Set("orderid", orderID)
@ -24,6 +34,9 @@ func (app *App) CheckCost(orderID string) (body []byte, err error) {
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%vorderid%v", app.UserID, app.Pwd, orderID)
// 请求
body, err = app.request("http://api.ejiaofei.net:11140/checkCost.do", params, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/checkCost.do", params, http.MethodGet)
// 定义
var response CheckCostResponse
err = xml.Unmarshal(body, &response)
return NewCheckCostResult(response, body, err)
}

@ -6,7 +6,7 @@ import (
"net/http"
)
type ChOngZhiJkOrdersResult struct {
type ChOngZhiJkOrdersResponse struct {
XMLName xml.Name `xml:"response"`
UserID string `xml:"userid"` // 会员账号
PorderID string `xml:"Porderid"` // 鼎信平台订单号
@ -20,11 +20,21 @@ type ChOngZhiJkOrdersResult struct {
Error string `xml:"error"` // 错误提示
}
type ChOngZhiJkOrdersResult struct {
Result ChOngZhiJkOrdersResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewChOngZhiJkOrdersResult(result ChOngZhiJkOrdersResponse, body []byte, err error) *ChOngZhiJkOrdersResult {
return &ChOngZhiJkOrdersResult{Result: result, Body: body, Err: err}
}
// ChOngZhiJkOrders 话费充值接口
// orderid 用户提交的订单号 用户提交的订单号最长32位用户保证其唯一性
// face 充值面值 以元为单位包含10、20、30、50、100、200、300、500 移动联通电信
// account 手机号码 需要充值的手机号码
func (app *App) ChOngZhiJkOrders(orderID string, face int, account string) (body []byte, err error) {
func (app *App) ChOngZhiJkOrders(orderID string, face int, account string) *ChOngZhiJkOrdersResult {
// 参数
param := NewParams()
param.Set("orderid", orderID)
@ -35,6 +45,9 @@ func (app *App) ChOngZhiJkOrders(orderID string, face int, account string) (body
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%vorderid%vface%vaccount%vamount1", app.UserID, app.Pwd, orderID, face, account)
// 请求
body, err = app.request("http://api.ejiaofei.net:11140/chongzhi_jkorders.do", params, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/chongzhi_jkorders.do", params, http.MethodGet)
// 定义
var response ChOngZhiJkOrdersResponse
err = xml.Unmarshal(body, &response)
return NewChOngZhiJkOrdersResult(response, body, err)
}

@ -17,7 +17,7 @@ type GprsChOngZhiAdvanceParams struct {
Times string `json:"times"` // 时间戳 格式yyyyMMddhhmmss
}
type GprsChOngZhiAdvanceResult struct {
type GprsChOngZhiAdvanceResponse struct {
XMLName xml.Name `xml:"response"`
UserID string `xml:"userid"` // 会员账号
OrderID string `xml:"orderid"` // 会员提交订单号
@ -34,14 +34,27 @@ type GprsChOngZhiAdvanceResult struct {
Validity string `xml:"validity"` // 流量有效期显示月数0为当月
}
type GprsChOngZhiAdvanceResult struct {
Result GprsChOngZhiAdvanceResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewGprsChOngZhiAdvanceResult(result GprsChOngZhiAdvanceResponse, body []byte, err error) *GprsChOngZhiAdvanceResult {
return &GprsChOngZhiAdvanceResult{Result: result, Body: body, Err: err}
}
// GprsChOngZhiAdvance 流量充值接口
func (app *App) GprsChOngZhiAdvance(param GprsChOngZhiAdvanceParams) (body []byte, err error) {
func (app *App) GprsChOngZhiAdvance(param GprsChOngZhiAdvanceParams) *GprsChOngZhiAdvanceResult {
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%vorderid%vaccount%vgprs%varea%veffecttime%vvalidity%vtimes%v", app.UserID, app.Pwd, param.OrderID, param.Account, param.Gprs, param.Area, param.EffectTime, param.Validity, param.Times)
// 请求
b, _ := json.Marshal(&param)
var params map[string]interface{}
_ = json.Unmarshal(b, &params)
body, err = app.request("http://api.ejiaofei.net:11140/gprsChongzhiAdvance.do", params, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/gprsChongzhiAdvance.do", params, http.MethodGet)
// 定义
var response GprsChOngZhiAdvanceResponse
err = xml.Unmarshal(body, &response)
return NewGprsChOngZhiAdvanceResult(response, body, err)
}

@ -6,18 +6,31 @@ import (
"net/http"
)
type MoneyJkUserResult struct {
type MoneyJkUserResponse struct {
XMLName xml.Name `xml:"response"`
LastMoney float64 `xml:"lastMoney"` // 用户余额
Tag int `xml:"tag"` // 用户状态0正常 1暂停
Error int `xml:"error"` // 错误提示
}
type MoneyJkUserResult struct {
Result MoneyJkUserResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewMoneyJkUserResult(result MoneyJkUserResponse, body []byte, err error) *MoneyJkUserResult {
return &MoneyJkUserResult{Result: result, Body: body, Err: err}
}
// MoneyJkUser 用户余额查询
func (app *App) MoneyJkUser() (body []byte, err error) {
func (app *App) MoneyJkUser() *MoneyJkUserResult {
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%v", app.UserID, app.Pwd)
// 请求
body, err = app.request("http://api.ejiaofei.net:11140/money_jkuser.do", map[string]interface{}{}, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/money_jkuser.do", map[string]interface{}{}, http.MethodGet)
// 定义
var response MoneyJkUserResponse
err = xml.Unmarshal(body, &response)
return NewMoneyJkUserResult(response, body, err)
}

@ -6,7 +6,7 @@ import (
"net/http"
)
type QueryJkOrdersResult struct {
type QueryJkOrdersResponse struct {
XMLName xml.Name `xml:"response"`
UserID string `xml:"userid"` // 会员账号
POrderID string `xml:"Porderid"` // 鼎信平台订单号
@ -20,9 +20,19 @@ type QueryJkOrdersResult struct {
Error string `xml:"error"` // 错误提示
}
type QueryJkOrdersResult struct {
Result QueryJkOrdersResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewQueryJkOrdersResult(result QueryJkOrdersResponse, body []byte, err error) *QueryJkOrdersResult {
return &QueryJkOrdersResult{Result: result, Body: body, Err: err}
}
// QueryJkOrders 通用查询接口
// orderid 用户提交的订单号 用户提交的订单号最长32位用户保证其唯一性
func (app *App) QueryJkOrders(orderID string) (body []byte, err error) {
func (app *App) QueryJkOrders(orderID string) *QueryJkOrdersResult {
// 参数
param := NewParams()
param.Set("orderid", orderID)
@ -30,6 +40,9 @@ func (app *App) QueryJkOrders(orderID string) (body []byte, err error) {
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%vorderid%v", app.UserID, app.Pwd, orderID)
// 请求
body, err = app.request("http://api.ejiaofei.net:11140/query_jkorders.do", params, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/query_jkorders.do", params, http.MethodGet)
// 定义
var response QueryJkOrdersResponse
err = xml.Unmarshal(body, &response)
return NewQueryJkOrdersResult(response, body, err)
}

@ -6,16 +6,29 @@ import (
"net/http"
)
type QueryTxProductResult struct {
type QueryTxProductResponse struct {
XMLName xml.Name `xml:"response"`
Error string `xml:"error"` // 错误提示
}
type QueryTxProductResult struct {
Result QueryTxProductResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewQueryTxProductResult(result QueryTxProductResponse, body []byte, err error) *QueryTxProductResult {
return &QueryTxProductResult{Result: result, Body: body, Err: err}
}
// QueryTxProduct 可充值腾讯产品查询
func (app *App) QueryTxProduct() (body []byte, err error) {
func (app *App) QueryTxProduct() *QueryTxProductResult {
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%v", app.UserID, app.Pwd)
// 请求
body, err = app.request("http://api.ejiaofei.net:11140/queryTXproduct.do", map[string]interface{}{}, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/queryTXproduct.do", map[string]interface{}{}, http.MethodGet)
// 定义
var response QueryTxProductResponse
err = xml.Unmarshal(body, &response)
return NewQueryTxProductResult(response, body, err)
}

@ -16,7 +16,7 @@ type TxChOngZhiParams struct {
Times string `json:"times"` // 时间戳 格式yyyyMMddhhmmss
}
type TxChOngZhiResult struct {
type TxChOngZhiResponse struct {
XMLName xml.Name `xml:"response"`
UserID string `xml:"userid"` // 用户编号
PorderID string `xml:"Porderid"` // 鼎信平台订单号
@ -30,14 +30,27 @@ type TxChOngZhiResult struct {
Error string `xml:"error"` // 错误提示
}
type TxChOngZhiResult struct {
Result TxChOngZhiResponse // 结果
Body []byte // 内容
Err error // 错误
}
func NewTxChOngZhiResult(result TxChOngZhiResponse, body []byte, err error) *TxChOngZhiResult {
return &TxChOngZhiResult{Result: result, Body: body, Err: err}
}
// TxChOngZhi 流量充值接口
func (app *App) TxChOngZhi(param TxChOngZhiParams) (body []byte, err error) {
func (app *App) TxChOngZhi(param TxChOngZhiParams) *TxChOngZhiResult {
// 签名
app.signStr = fmt.Sprintf("userid%vpwd%vorderid%vaccount%vproductid%vamount%vip%vtimes%v", app.UserID, app.Pwd, param.OrderID, param.Account, param.ProductID, param.Amount, param.Ip, param.Times)
// 请求
b, _ := json.Marshal(&param)
var params map[string]interface{}
_ = json.Unmarshal(b, &params)
body, err = app.request("http://api.ejiaofei.net:11140/txchongzhi.do", params, http.MethodGet)
return body, err
body, err := app.request("http://api.ejiaofei.net:11140/txchongzhi.do", params, http.MethodGet)
// 定义
var response TxChOngZhiResponse
err = xml.Unmarshal(body, &response)
return NewTxChOngZhiResult(response, body, err)
}

Loading…
Cancel
Save