You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

44 lines
895 B

package utils
import (
"GoClouds/core/comm"
"fmt"
ruisUtil "github.com/mgr9525/go-ruisutil"
"gopkg.in/macaron.v1"
"math/rand"
"strings"
"time"
)
func GenValidateCode(width int) string {
numeric := [10]byte{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
r := len(numeric)
rand.Seed(time.Now().UnixNano())
var sb strings.Builder
for i := 0; i < width; i++ {
fmt.Fprintf(&sb, "%d", numeric[rand.Intn(r)])
}
return sb.String()
}
func HideUserName(name string) string {
if comm.REG_Phone.MatchString(name) {
return name[:3] + "****" + name[7:]
}
return name
}
func ResMsg(c *macaron.Context, code int, msg string, desc ...string) {
rets := ruisUtil.NewMap()
rets.Set("msg", msg)
if len(desc) > 0 {
for i, v := range desc {
rets.Set(fmt.Sprintf("desc%d", i+1), v)
}
}
c.JSON(code, rets)
}
func ResMsgs(c *macaron.Context, code int, msg string) {
c.PlainText(code, []byte(msg))
}