Files
jx-print/services/app.go
2021-07-07 18:59:57 +08:00

58 lines
1.4 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package services
import (
"fmt"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-print/dao"
"git.rosy.net.cn/jx-print/globals"
"git.rosy.net.cn/jx-print/model"
putils "git.rosy.net.cn/jx-print/utils"
"github.com/gin-gonic/gin"
"time"
)
func GetApps(c *gin.Context, user *model.User) (apps []*model.Apps, err error) {
if user == nil {
return nil, fmt.Errorf("未获取到账号信息!")
}
if user.UserID == "" {
return nil, fmt.Errorf("账号信息有误,请重新登录!")
}
return dao.GetApps(globals.GetDB(), user.UserID, "")
}
func AddApp(c *gin.Context, code, name, mobile, userID string) (err error) {
var (
db = globals.GetDB()
now = time.Now()
)
if rcode, ok := putils.GetKet(mobile).(string); !ok {
putils.DelKey(mobile)
return err
} else if code != rcode {
putils.DelKey(mobile)
return fmt.Errorf("验证码错误!")
}
putils.DelKey(mobile)
if apps, _ := dao.GetApps(db, userID, ""); len(apps) > 2 {
return fmt.Errorf("同一个账号最多只能建3个app")
}
if apps, _ := dao.GetApps(db, "", mobile); len(apps) > 0 {
return fmt.Errorf("同一个手机号只能建1个app")
}
apps := &model.Apps{
CreatedAt: &now,
UpdatedAt: &now,
DeletedAt: &utils.DefaultTimeValue,
Name: name,
Type: 0,
Status: 1,
AppKey: putils.RandStringBytes(16),
UserID: userID,
Mobile: mobile,
}
err = dao.Insert(db, apps)
return err
}