Create & Init Project...
This commit is contained in:
216
app/service/main/coin/server/http/coin.go
Normal file
216
app/service/main/coin/server/http/coin.go
Normal file
@ -0,0 +1,216 @@
|
||||
package http
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
pb "go-common/app/service/main/coin/api"
|
||||
"go-common/library/ecode"
|
||||
bm "go-common/library/net/http/blademaster"
|
||||
"go-common/library/net/metadata"
|
||||
)
|
||||
|
||||
// addCoin
|
||||
func addCoin(c *bm.Context) {
|
||||
var (
|
||||
tp int64
|
||||
upid int64
|
||||
)
|
||||
params := c.Request.Form
|
||||
aidStr := params.Get("aid")
|
||||
tpStr := params.Get("avtype")
|
||||
multiplyStr := params.Get("multiply")
|
||||
tpidStr := params.Get("typeid")
|
||||
maxStr := params.Get("max")
|
||||
upidStr := params.Get("upid")
|
||||
mid, _ := strconv.ParseInt(params.Get("mid"), 10, 64)
|
||||
if mid <= 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
aid, err := strconv.ParseInt(aidStr, 10, 64)
|
||||
if err != nil || aid <= 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
multiply, err := strconv.ParseInt(multiplyStr, 10, 64)
|
||||
if err != nil || multiply <= 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
if business, ok := c.Get("business"); ok {
|
||||
tp = business.(int64)
|
||||
} else {
|
||||
if tpStr != "" {
|
||||
if tp, err = strconv.ParseInt(tpStr, 10, 64); err != nil || tp < 1 || tp > 3 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
tp = 1
|
||||
}
|
||||
}
|
||||
if upidStr != "" {
|
||||
if upid, err = strconv.ParseInt(upidStr, 10, 64); err != nil || upid <= 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
}
|
||||
typeid, _ := strconv.ParseInt(tpidStr, 10, 64)
|
||||
max, _ := strconv.ParseInt(maxStr, 10, 8)
|
||||
c.JSON(nil, coinSvc.WebAddCoin(c, mid, upid, max, aid, tp, multiply, int16(typeid)))
|
||||
}
|
||||
|
||||
func list(c *bm.Context) {
|
||||
params := c.Request.Form
|
||||
midStr := params.Get("mid")
|
||||
tpStr := params.Get("tp")
|
||||
mid, err := strconv.ParseInt(midStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
var tp int64
|
||||
if business, ok := c.Get("business"); ok {
|
||||
tp = business.(int64)
|
||||
} else {
|
||||
if tp, err = strconv.ParseInt(tpStr, 10, 64); err != nil {
|
||||
tp = 1
|
||||
}
|
||||
}
|
||||
b, err := coinSvc.GetBusinessName(tp)
|
||||
if err != nil {
|
||||
c.JSON(nil, err)
|
||||
}
|
||||
arg := &pb.ListReq{Mid: mid, Business: b, Ts: time.Now().Unix()}
|
||||
c.JSON(coinSvc.List(c, arg))
|
||||
}
|
||||
|
||||
func todayexp(c *bm.Context) {
|
||||
v := new(pb.TodayExpReq)
|
||||
if err := c.Bind(v); err != nil {
|
||||
return
|
||||
}
|
||||
res, err := coinSvc.TodayExp(c, v)
|
||||
c.JSONMap(map[string]interface{}{
|
||||
"number": res.Exp,
|
||||
}, err)
|
||||
}
|
||||
|
||||
func updateSettle(c *bm.Context) {
|
||||
form := c.Request.Form
|
||||
aidStr := form.Get("aid")
|
||||
tpStr := form.Get("avtype")
|
||||
aid, err := strconv.ParseInt(aidStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
expSubStr := form.Get("exp_sub")
|
||||
expSub, err := strconv.ParseInt(expSubStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
var tp int64
|
||||
if business, ok := c.Get("business"); ok {
|
||||
tp = business.(int64)
|
||||
} else {
|
||||
var err error
|
||||
tp, err = strconv.ParseInt(tpStr, 10, 64)
|
||||
if err != nil || tp <= 0 {
|
||||
tp = 1
|
||||
}
|
||||
}
|
||||
c.JSON(nil, coinSvc.UpdateSettle(c, aid, tp, expSub, form.Get("describe")))
|
||||
}
|
||||
|
||||
func coins(c *bm.Context) {
|
||||
form := c.Request.Form
|
||||
midStr := form.Get("mid")
|
||||
upMidStr := form.Get("up_mid")
|
||||
mid, err := strconv.ParseInt(midStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
upMid, err := strconv.ParseInt(upMidStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
c.JSON(coinSvc.AddedCoins(c, int64(mid), int64(upMid)))
|
||||
}
|
||||
|
||||
func amend(c *bm.Context) {
|
||||
form := c.Request.Form
|
||||
aidStr := form.Get("aid")
|
||||
tpStr := form.Get("avtype")
|
||||
coinsStr := form.Get("coins")
|
||||
aid, err := strconv.ParseInt(aidStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
var tp int64
|
||||
if business, ok := c.Get("business"); ok {
|
||||
tp = business.(int64)
|
||||
} else {
|
||||
var err1 error
|
||||
tp, err1 = strconv.ParseInt(tpStr, 10, 64)
|
||||
if err1 != nil || tp <= 0 {
|
||||
tp = 1
|
||||
}
|
||||
}
|
||||
coins, err := strconv.ParseInt(coinsStr, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
c.JSON(nil, coinSvc.UpdateItemCoins(c, aid, tp, int64(coins)))
|
||||
}
|
||||
|
||||
func ccounts(c *bm.Context) {
|
||||
params := new(struct {
|
||||
Aid int64 `json:"aid" form:"aid" validate:"required,min=1"`
|
||||
Avtype int64 `json:"avtype" form:"avtype"`
|
||||
IP string `json:"ip" `
|
||||
})
|
||||
if err := c.Bind(params); err != nil {
|
||||
return
|
||||
}
|
||||
if business, ok := c.Get("business"); ok {
|
||||
params.Avtype = business.(int64)
|
||||
}
|
||||
if params.Avtype == 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
count, err := coinSvc.ItemCoin(c, params.Aid, params.Avtype)
|
||||
c.JSON(map[string]interface{}{
|
||||
"count": count,
|
||||
}, err)
|
||||
}
|
||||
|
||||
// @params AddCoinReq
|
||||
// @router get /x/internal/v1/coin/add
|
||||
// @response AddCoinReply
|
||||
func internalAddCoin(c *bm.Context) {
|
||||
v := new(pb.AddCoinReq)
|
||||
if err := c.Bind(v); err != nil {
|
||||
return
|
||||
}
|
||||
v.IP = metadata.String(c, metadata.RemoteIP)
|
||||
c.JSON(coinSvc.AddCoin(c, v))
|
||||
}
|
||||
|
||||
// @params ItemUserCoinsReq
|
||||
// @router get /x/internal/v1/coin/item/coins
|
||||
// @response ItemUserCoinsReply
|
||||
func itemCoins(c *bm.Context) {
|
||||
v := new(pb.ItemUserCoinsReq)
|
||||
if err := c.Bind(v); err != nil {
|
||||
return
|
||||
}
|
||||
c.JSON(coinSvc.ItemUserCoins(c, v))
|
||||
}
|
Reference in New Issue
Block a user