This commit is contained in:
richboo111
2023-04-25 09:46:26 +08:00
parent 69040cd1cf
commit a5f750ad67
21 changed files with 1552 additions and 32 deletions

View File

@@ -11,4 +11,14 @@ type ICacher interface {
Get(key string) interface{}
GetAs(key string, ptr interface{}) error
Keys(prefix string) ([]string, error)
FlushDB() error
Incr(key string) error
LRange(key string) (retVal []string)
Exists(keys ...string) (int64, error)
RPush(key string, value interface{}) error
Expire(key string, expiration time.Duration) error
LRem(key string, count int, value interface{}) error
LSet(key string, index int, value interface{}) error
ExpireResult(key string, expiration time.Duration) (bool, error)
}

View File

@@ -73,3 +73,47 @@ func (c *Cacher) GetAs(key string, ptr interface{}) error {
func (c *Cacher) Keys(prefix string) ([]string, error) {
return c.client.Keys(prefix + "*").Result()
}
func (c *Cacher) RPush(key string, value interface{}) error {
return c.client.RPush(key, value).Err()
}
func (c *Cacher) FlushDB() error {
return c.client.FlushDB().Err()
}
func (c *Cacher) Expire(key string, expiration time.Duration) error {
return c.client.Expire(key, expiration).Err()
}
func (c *Cacher) ExpireResult(key string, expiration time.Duration) (bool, error) {
ok, err := c.client.Expire(key, expiration).Result()
if err != nil {
return false, err
}
return ok, nil
}
func (c *Cacher) Exists(keys ...string) (int64, error) {
ret := c.client.Exists(keys...)
return ret.Val(), ret.Err()
}
func (c *Cacher) Incr(key string) error {
return c.client.Incr(key).Err()
}
func (c *Cacher) LRange(key string) (retVal []string) {
if c.client.LLen(key).Val() > 0 {
retVal = c.client.LRange(key, 0, -1).Val()
}
return retVal
}
func (c *Cacher) LSet(key string, index int, value interface{}) error {
return c.client.LSet(key, int64(index), value).Err()
}
func (c *Cacher) LRem(key string, count int, value interface{}) error {
return c.client.LRem(key, int64(count), value).Err()
}

View File

@@ -13,7 +13,7 @@ var (
func init() {
testinit1.Init()
cacher = New("localhost", 6379, "")
cacher = New("localhost", 6379, "123456") //ysq本地redis
}
type TestType struct {

View File

@@ -4,9 +4,10 @@ import (
"encoding/json"
"errors"
"fmt"
"time"
"git.rosy.net.cn/jx-callback/business/authz/autils"
"git.rosy.net.cn/jx-callback/globals/api2"
"time"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/model"
@@ -19,6 +20,7 @@ const (
SoundsFileNewOrder = "newOrder.caf"
SoundsFileNewAfsOrder = "afsOrder.caf"
SoundsFileNewCancelOrder = "cancelOrder.caf"
SoundsFileNewImMsg = "" //TODO 待定
)
// NotifyNewOrder 推送新订单
@@ -108,6 +110,43 @@ func NotifyOrderCanceled(order *model.GoodsOrder) (err error) {
return err
}
// NotifyImNewMessage IM 新消息通知
func NotifyImNewMessage(vendorStoreID string, vendorID int) error {
if len(vendorStoreID) == 0 {
return nil
}
var (
temp = 0
msg = MsgContext{}
)
if vendorID == 10 { //美团
temp = 1
} else if vendorID == 11 { //饿了么
temp = 3
}
store, err := dao.GetStoreBaseByVendorStoreID(vendorStoreID, temp)
if err != nil {
return fmt.Errorf("未查到此门店:%s", vendorStoreID)
}
cid, err := GetStoreBoosCID(store.ID)
if err != nil {
globals.SugarLogger.Errorf("IM消息推送,获取门店老板CID错误 %v", err)
return err
}
fmt.Print(cid)
msg.MsgType = "newImMsg"
msg.VendorName = model.VendorChineseNames[temp]
msg.StoreTitle = store.Name
msg.Context = "老板,你有新的用户消息,请及时查看!"
context, _ := json.Marshal(msg)
body := fmt.Sprintf(msg.Context+"(%s)", model.VendorChineseNames[temp])
pushMsgByUniApp(store.ID, store.Name, cid, string(context), body, SoundsFileNewImMsg)
return err
}
// GetStoreBoosCID /************************************************************/
func GetStoreBoosCID(storeId int) ([]string, error) {
// 根据订单获取门店的老板cid