|
- package db
-
- import (
- "applet/app/db/model"
- "applet/app/md"
- "applet/app/utils/cache"
- "errors"
- "fmt"
- "xorm.io/xorm"
- )
-
- func GetVirtualCoinList(eg *xorm.Engine, masterId string) ([]*model.VirtualCoin, error) {
- var m []*model.VirtualCoin
- cacheKey := fmt.Sprintf(md.VirtualCoinCfgCacheKey, masterId)
-
- err := cache.GetJson(cacheKey, &m)
- if err != nil || len(m) == 0 {
- err := eg.Where("is_use=1").Find(&m)
- if err != nil {
- return nil, err
- }
- cache.SetJson(cacheKey, m, md.CfgCacheTime)
- }
-
- return m, nil
- }
-
- // InsertUserVirtualFlow 插入一条虚拟币流水
- func InsertUserVirtualFlow(eg *xorm.Engine, m model.UserVirtualCoinFlow) error {
- insert, err := eg.Insert(m)
- if err != nil {
- return err
- }
- if insert == 0 {
- return errors.New("插入虚拟币流水错误")
- }
-
- return nil
- }
-
- func InsertUserVirtualFlowWithSess(sess *xorm.Session, m model.UserVirtualCoinFlow) error {
- insert, err := sess.Insert(m)
- if err != nil {
- return err
- }
- if insert == 0 {
- return errors.New("插入虚拟币流水错误")
- }
-
- return nil
- }
-
- func GetBlockCoin(eg *xorm.Engine) (*model.VirtualCoin, error) {
- var m model.VirtualCoin
- get, err := eg.Where("is_block = 1").Get(&m)
- if err != nil {
- return nil, err
- }
- if get {
- return &m, nil
- }
- return nil, errors.New("查询有误!")
- }
|