Files
go-common/app/service/main/vip/dao/business.go
2019-04-22 18:49:16 +08:00

91 lines
2.6 KiB
Go

package dao
import (
"context"
"fmt"
"net/url"
"strconv"
"time"
"go-common/library/ecode"
"go-common/library/log"
"github.com/pkg/errors"
)
const (
_SendUserNotify = "/api/notify/send.user.notify.do"
_PayAPIAdd = "/api/coupon/regular/add"
_CleanCache = "/notify/cleanCacheAndNotify"
_loginout = "/intranet/acc/security/mid"
)
//Loginout login out
func (d *Dao) Loginout(c context.Context, mid int64) (err error) {
val := url.Values{}
val.Add("mids", strconv.FormatInt(mid, 10))
val.Add("operator", strconv.FormatInt(mid, 10))
val.Add("desc", "大会员解冻")
resp := new(struct {
Code int `json:"code"`
Msg string `json:"msg"`
})
defer func() {
log.Info("vip Loginout url:%+v params:%+v return:%+v", d.loginOutURL, val, resp)
}()
if err = d.client.Post(c, d.loginOutURL, "", val, resp); err != nil {
err = errors.Errorf("vip Loginout url:%+v params:%+v return:%+v,err:%+v", d.loginOutURL, val, resp, err)
return
}
if resp.Code != ecode.OK.Code() {
err = ecode.Int(resp.Code)
}
return
}
//SendCleanCache clean cache
func (d *Dao) SendCleanCache(c context.Context, mid int64, months int16, days int64, t int, ip string) (err error) {
params := url.Values{}
params.Set("mid", strconv.FormatInt(int64(mid), 10))
params.Set("months", strconv.FormatInt(int64(months), 10))
params.Set("days", strconv.FormatInt(int64(days), 10))
params.Set("type", strconv.FormatInt(int64(t), 10))
if err = d.client.Get(c, d.vipURI, ip, params, nil); err != nil {
log.Error("SendCleanCache error(%v) url(%v)", err, d.vipURI)
return
}
return
}
//SendMultipMsg send multip msg
func (d *Dao) SendMultipMsg(c context.Context, mids, content, title, mc, ip string, dataType int) (err error) {
params := url.Values{}
params.Set("mc", mc)
params.Set("title", title)
params.Set("context", content)
params.Set("data_type", strconv.FormatInt(int64(dataType), 10))
params.Set("mid_list", mids)
if err = d.client.Post(c, d.msgURI, ip, params, nil); err != nil {
log.Error("SendMultipMsg error(%v)", err)
return
}
return
}
//SendBcoinCoupon send bcoin coupon
func (d *Dao) SendBcoinCoupon(c context.Context, mids, activityID string, money int64, dueTime time.Time) (err error) {
params := url.Values{}
params.Set("activity_id", activityID)
params.Set("mids", mids)
params.Set("money", strconv.FormatInt(int64(money), 10))
params.Set("due_time", dueTime.Format("2006-01-02"))
if err = d.client.Post(c, d.payURI, "127.0.0.1", params, nil); err != nil {
log.Error("SendBcoinCoupon error(%v)", err)
fmt.Printf("SendBcoinCoupon error(%v)", err)
return
}
return
}