123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- package dbUtil
- import (
- "encoding/json"
- "fmt"
- "github.com/gomodule/redigo/redis"
- "github.com/shopspring/decimal"
- "os"
- "strings"
- )
- //var conn redis.Conn
- var pool *redis.Pool
- var TopsMap map[string]string
- var MethodMap map[string]string
- var LvMap map[int]decimal.Decimal
- func init(){
- pool = &redis.Pool{
- MaxIdle: 500,
- MaxActive: 2000,
- IdleTimeout: 120,
- Dial: func() (redis.Conn, error) {
- coon, err := redis.Dial("tcp", "127.0.0.1:6379")
- if err!=nil{
- fmt.Println(err)
- os.Exit(1)
- }
- coon.Send("auth","0x817A=7%BJ#x%H=1rK")
- return coon,err
- },
- }
- tm :=make(map[string]string,0)
- tm["0xddd670a4142d06229b922c5d433d29131580e1a2952c86700b0a36ea9e8b87ee"] = "newDeposit"
- tm["0x056f1f5cdd8662230b94b7f88e06d95549d18e77cb2959933db3849d36df790a"] = "newWithdraw"
- TopsMap = tm
- mm :=make(map[string]string,0)
- mm["transferFrom"] = "Transfer"
- mm["sell"] = "SellOrder"
- MethodMap = mm
- lm :=make(map[int]decimal.Decimal,0)
- lm[1] = decimal.NewFromFloat(0.1)
- lm[2] = decimal.NewFromFloat(0.08)
- lm[3] = decimal.NewFromFloat(0.03)
- lm[4] = decimal.NewFromFloat(0.03)
- lm[5] = decimal.NewFromFloat(0.03)
- lm[6] = decimal.NewFromFloat(0.03)
- lm[7] = decimal.NewFromFloat(0.03)
- lm[8] = decimal.NewFromFloat(0.03)
- lm[9] = decimal.NewFromFloat(0.03)
- lm[10] = decimal.NewFromFloat(0.03)
- LvMap = lm
- }
- func GetValue(key string,t int)interface{}{
- rc := pool.Get()
- defer rc.Close()
- key = strings.ToLower(key)
- if t == 1{
- i, e := rc.Do("get", key)
- if e!=nil {
- fmt.Println("e=",e)
- return 0
- }
- reply, _:= redis.Int64(i,e)
- return reply
- }else if t == 2{
- //fmt.Println("GetValue key=",key)
- r, e := rc.Do("GET", key)
- if e!=nil {
- //fmt.Println("eeeeee=",e)
- return nil
- }
- //fmt.Println("=rrrrr==",r)
- reply, err := redis.Bytes(r,e)
- if err!=nil {
- //fmt.Println("错误13331=",err)
- return nil
- }
- //fmt.Println("===",string(reply))
- var d *[]string
- err = json.Unmarshal(reply, &d)
- if err!=nil {
- fmt.Println("错误11=",err)
- }
- //fmt.Printf("d2结果的原始类型%T,值为%v\n", d, *d)
- return *d
- }else if t == 3{
- i, e := rc.Do("get", key)
- if e!=nil {
- fmt.Println("e=",e)
- return 0
- }
- reply, _:= redis.String(i,e)
- return reply
- }else{
- return ""
- }
- }
- func SetValue(key string,value interface{}){
- rc := pool.Get()
- defer rc.Close()
- key = strings.ToLower(key)
- rc.Do("set",key,value)
- }
- func SetValueTime(key string,value interface{},t int64){
- rc := pool.Get()
- defer rc.Close()
- key = strings.ToLower(key)
- rc.Do("set",key,value,"EX",t)
- }
- func DeleteValue(key string){
- rc := pool.Get()
- defer rc.Close()
- rc.Do("DEL",key)
- }
|