Create & Init Project...
This commit is contained in:
173
app/interface/main/account/http/app_info.go
Normal file
173
app/interface/main/account/http/app_info.go
Normal file
@ -0,0 +1,173 @@
|
||||
package http
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
usrmdl "go-common/app/service/main/usersuit/model"
|
||||
"go-common/library/ecode"
|
||||
"go-common/library/log"
|
||||
bm "go-common/library/net/http/blademaster"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
func updateFace(c *bm.Context) {
|
||||
var (
|
||||
//ip = c.RemoteIP()
|
||||
mid, ok = c.Get("mid")
|
||||
)
|
||||
defer c.Request.Form.Del("face") // 防止日志不出现
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
c.Request.ParseMultipartForm(32 << 20)
|
||||
face, err := func() ([]byte, error) {
|
||||
fs := c.Request.FormValue("face")
|
||||
if fs != "" {
|
||||
log.Info("Succeeded to parse face file from form value: mid: %d, length: %d", mid, len(fs))
|
||||
return []byte(fs), nil
|
||||
}
|
||||
log.Warn("Failed to parse face file from form value, fallback to form file: mid: %d", mid)
|
||||
f, _, err := c.Request.FormFile("face")
|
||||
if err != nil {
|
||||
return nil, errors.Wrapf(err, "parse face form file: mid: %d", mid)
|
||||
}
|
||||
defer f.Close()
|
||||
data, err := ioutil.ReadAll(f)
|
||||
if err != nil {
|
||||
return nil, errors.Wrapf(err, "read face form file: mid: %d", mid)
|
||||
}
|
||||
if len(data) <= 0 {
|
||||
return nil, errors.Wrapf(err, "form file data: mid: %d, length: %d", mid, len(data))
|
||||
}
|
||||
log.Info("Succeeded to parse file from form file: mid: %d, length: %d", mid, len(data))
|
||||
return data, nil
|
||||
}()
|
||||
if err != nil {
|
||||
log.Error("Failed to parse face file: mid: %d: %+v", mid, err)
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
log.Info("Succeeded to parse face data: mid: %d, face-length: %d", mid, len(face))
|
||||
if len(face) > 2*1024*1024 {
|
||||
c.JSON(nil, ecode.UpdateFaceSize)
|
||||
return
|
||||
}
|
||||
ftype := http.DetectContentType(face)
|
||||
if ftype != "image/jpeg" && ftype != "image/png" && ftype != "image/jp2" {
|
||||
c.JSON(nil, ecode.UpdateFaceFormat)
|
||||
return
|
||||
}
|
||||
c.JSON(memberSvc.UpdateFace(c, mid.(int64), face, ftype))
|
||||
}
|
||||
|
||||
func updateSex(c *bm.Context) {
|
||||
var (
|
||||
err error
|
||||
sex int64
|
||||
//ip = c.RemoteIP()
|
||||
params = c.Request.Form
|
||||
mid, ok = c.Get("mid")
|
||||
)
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
if sex, err = strconv.ParseInt(params.Get("sex"), 10, 64); err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
c.JSON(nil, memberSvc.UpdateSex(c, mid.(int64), sex))
|
||||
}
|
||||
|
||||
func updateSign(c *bm.Context) {
|
||||
var (
|
||||
//ip = c.RemoteIP()
|
||||
params = c.Request.Form
|
||||
mid, ok = c.Get("mid")
|
||||
)
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
sign := params.Get("user_sign")
|
||||
c.JSON(nil, memberSvc.UpdateSign(c, mid.(int64), sign))
|
||||
}
|
||||
|
||||
func updateBirthday(c *bm.Context) {
|
||||
var (
|
||||
birthday string
|
||||
//ip = c.RemoteIP()
|
||||
params = c.Request.Form
|
||||
mid, ok = c.Get("mid")
|
||||
)
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
if birthday = params.Get("birthday"); len(birthday) == 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
c.JSON(nil, memberSvc.UpdateBirthday(c, mid.(int64), birthday))
|
||||
}
|
||||
|
||||
func updateUname(c *bm.Context) {
|
||||
var (
|
||||
uname string
|
||||
//ip = c.RemoteIP()
|
||||
params = c.Request.Form
|
||||
mid, ok = c.Get("mid")
|
||||
)
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
if uname = params.Get("uname"); len(uname) == 0 {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
c.JSON(nil, memberSvc.UpdateName(c, mid.(int64), uname, params.Get("appkey")))
|
||||
}
|
||||
|
||||
func nickFree(c *bm.Context) {
|
||||
var (
|
||||
mid, ok = c.Get("mid")
|
||||
//ip = c.RemoteIP()
|
||||
)
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
c.JSON(memberSvc.NickFree(c, mid.(int64)))
|
||||
}
|
||||
|
||||
func pendantEquip(c *bm.Context) {
|
||||
var (
|
||||
mid, ok = c.Get("mid")
|
||||
params = c.Request.Form
|
||||
err error
|
||||
pid int64
|
||||
status int64
|
||||
source int64
|
||||
)
|
||||
if !ok {
|
||||
c.JSON(nil, ecode.NoLogin)
|
||||
return
|
||||
}
|
||||
if pid, err = strconv.ParseInt(params.Get("pid"), 10, 64); err != nil {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
if status, err = strconv.ParseInt(params.Get("status"), 10, 64); err != nil || (status != usrmdl.PendantPutOn && status != usrmdl.PendantPickOff) {
|
||||
c.JSON(nil, ecode.RequestErr)
|
||||
return
|
||||
}
|
||||
// source 挂件来源 可选, 默认0, 0未知 1 背包挂件 2大会员挂件
|
||||
source = usrmdl.ParseSource(params.Get("source"))
|
||||
|
||||
c.JSON(nil, usSvc.Equip(c, mid.(int64), pid, int8(status), source))
|
||||
}
|
Reference in New Issue
Block a user