48 lines
1.3 KiB
Go
48 lines
1.3 KiB
Go
package Nredis
|
|
|
|
import (
|
|
"proxy/MsgDef"
|
|
l4g "proxy/logger"
|
|
"strconv"
|
|
)
|
|
|
|
func RdbSetCreateAcctRecord(r *MsgDef.ChgSyncMobile) error {
|
|
key := "CreateAcct:"+r.ServiceNbr+":"+strconv.Itoa(r.PreId)
|
|
err := rdb.HMSet(ctx, key, "prdInstId", r.PrdInstId, "serviceNbr", r.ServiceNbr,
|
|
"operType", r.OperType, "state", r.State, "ofrId", r.OfrId,
|
|
"custId", r.CustId, "acctId", r.AcctId, "mobileType", r.MobileType, "balance", r.Balance, "birthDate", r.BirthDate, "balanceExpDate", r.BalanceExpDate).Err()
|
|
if err != nil {
|
|
l4g.RedisLog.Errorf("HMSet %s, err: %v", key, err)
|
|
} else {
|
|
l4g.RedisLog.Debugf("HMSet %s, [%#v]", key, r)
|
|
sadd := rdb.SAdd(ctx, "Msg2OcsSet", key)
|
|
if sadd.Err() != nil {
|
|
l4g.RedisLog.Errorf("SAdd Msg2OcsSet %s, err: %v", key, sadd.Err())
|
|
return sadd.Err()
|
|
} else {
|
|
l4g.RedisLog.Debugf("SAdd Msg2OcsSet %s", key)
|
|
}
|
|
}
|
|
|
|
return err
|
|
}
|
|
|
|
func RdbGetCreateAcct(key string) *MsgDef.ChgSyncMobile {
|
|
res := rdb.HGetAll(ctx, key)
|
|
err := res.Err()
|
|
if err != nil {
|
|
l4g.RedisLog.Errorf("HGetAll %s, err: %v", key, err)
|
|
return nil
|
|
}
|
|
|
|
// Scan the results into the struct.
|
|
var acctInfo MsgDef.ChgSyncMobile
|
|
if err = res.Scan(&acctInfo); err != nil {
|
|
l4g.RedisLog.Errorf("HGetAll Scan %s, err: %v", key, err)
|
|
return nil
|
|
} else {
|
|
l4g.RedisLog.Debugf("Get %s, [%v]", key, acctInfo)
|
|
return &acctInfo
|
|
}
|
|
}
|