utils

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 12, 2022 License: Apache-2.0 Imports: 38 Imported by: 0

Documentation

Overview

@Title @Description @Author Wangwengang 2021/6/1 上午11:46 @Update Wangwengang 2021/6/1 上午11:46

@Title @Description @Author Wangwengang 2021/6/5 下午2:53 @Update Wangwengang 2021/6/5 下午2:53

@Title @Description @Author Wangwengang 2021/6/27 下午1:49 @Update Wangwengang 2021/6/27 下午1:49

@Title @Description @Author Wangwengang 2021/6/8 下午3:37 @Update Wangwengang 2021/6/8 下午3:37

@Title @Description @Author Wangwengang 2021/6/27 下午2:48 @Update Wangwengang 2021/6/27 下午2:48

@Title @Description @Author Wangwengang 2021/6/27 下午2:35 @Update Wangwengang 2021/6/27 下午2:35

@Title @Description @Author Wangwengang 2021/6/26 下午4:41 @Update Wangwengang 2021/6/26 下午4:41

@Title @Description @Author Wangwengang 2021/6/8 下午5:50 @Update Wangwengang 2021/6/8 下午5:50

@Title @Description @Author Wangwengang 2021/6/2 上午11:02 @Update Wangwengang 2021/6/2 上午11:02

@Title @Description @Author Wangwengang 2021/6/1 下午12:20 @Update Wangwengang 2021/6/1 下午12:20

@Title @Description @Author Wangwengang 2021/6/1 下午12:21 @Update Wangwengang 2021/6/1 下午12:21

Index

Constants

View Source
const (
	ConfigFile = "./config.yaml"
	ConfigEnv  = "YFCONFIGPATH"
)
View Source
const (
	HourMinuteOnlyFormat string = "15:04"
	TimeOnlyFormat       string = "15:04:05"
	TimeFormat           string = "2006-01-02 15:04:05"
	DateTimeFormat       string = "20060102150405"
	MonthFormat          string = "2006-01"
	DateFormat           string = "2006-01-02"
	ShortDateFormat      string = "20060102"
	DateHourFormat       string = "2006010215"
	InnerToken           string = "hk-90ce5980e4a2d5a94ae72e2d9cadc910"
	ShortTimeFormat      string = "01-02 15:04:05"
)
View Source
const (
	SEND_TIMEOUT_SECOND = 5
)

Variables

View Source
var (
	ErrConnSendTimeout = errors.New("Connection send timeout")
	ErrDataIsNil       = errors.New("Send data is nil")
)
View Source
var RR = &RoomDataReciver{
	RecvMsgQueue: make(chan *pb.RoomPushData, 200),
}
View Source
var RS = &RoomDataSender{
	producer:     nil,
	sendMsgQueue: make(chan *pb.RoomPushData, 4096),
}

Functions

func BytesToPrivateKey

func BytesToPrivateKey(priv []byte) (*rsa.PrivateKey, error)

BytesToPrivateKey bytes to private key

func CNYFen2Yuan

func CNYFen2Yuan(fen int64) float64

func CNYYuan2Fen

func CNYYuan2Fen(yuan float64) int64

人民币外部对接转换

func CreateDir

func CreateDir(dirs ...string) (err error)

func CustomTimeEncoder

func CustomTimeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder)

自定义日志输出时间格式

func DateEqual

func DateEqual(date1, date2 time.Time) bool

判断是不是在同一天

func ExistInIds

func ExistInIds(id int64, ids []int64) bool

func GetDatePart

func GetDatePart(t time.Time) string

获取时间 日期部分

func GetDatePartNumber

func GetDatePartNumber(t time.Time) int

获取日期部分 对应的数字 比如 20210805

func GetDateTime

func GetDateTime(t time.Time) string

获取时间 日期+时间

func GetDayDateRange

func GetDayDateRange(t time.Time) (dayStart, dayEnd time.Time)

根据当前时间,获取一天开始结束日期

func GetEightHourTimeRange

func GetEightHourTimeRange(timeObj time.Time) (start time.Time, end time.Time)

计算8小时区间

func GetFewDaysAgo

func GetFewDaysAgo(t1 time.Time, days int) time.Time

获取几天前

func GetMonthDateRange

func GetMonthDateRange(t time.Time) (monthStart, monthEnd time.Time)

根据当前时间,获取一个月开始结束日期

func GetNowTimeUTC

func GetNowTimeUTC() string

func GetTimePart

func GetTimePart(t time.Time) string

获取时间 时间部分

func GetTodayAndTomorrowString

func GetTodayAndTomorrowString(t1 time.Time) (string, string)

返回 今天 和 明天

func GetWeekDateRange

func GetWeekDateRange(t time.Time) (weekStart, weekEnd time.Time)

根据当前时间,获取一周开始结束日期

func GetWriteSyncer

func GetWriteSyncer() (zapcore.WriteSyncer, error)

func GetYesterdayDateRange

func GetYesterdayDateRange() (dayStart, dayEnd time.Time)

根据当前时间,获取前一天开始结束日期

func GormMysql

func GormMysql(cfg config.Mysql) *gorm.DB

func MD5

func MD5(text string) string

MD5 生成32位MD5

func NewConsumer

func NewConsumer(topic string, channel string, maxInFlight int) (*nsq.Consumer, error)

初始化消费者(maxInFlight默认赋值100吧)

func NewIMServer

func NewIMServer(cfg config.TencentIM) *tencentIM.IMServer

func NewMongoConn

func NewMongoConn(cfg config.Mongo) *mongo.Client

NewMongoConn 创建链接

func NewProducer

func NewProducer() *nsq.Producer

初始化生产者

func ParseDate

func ParseDate(str string) (time.Time, error)

func ParseStingDateTimeToTimeObj

func ParseStingDateTimeToTimeObj(str string) time.Time

func ParseStingDateToTimeObj

func ParseStingDateToTimeObj(str string) time.Time

func PathExists

func PathExists(path string) (bool, error)

func RandInt64

func RandInt64(min, max int64) int64

生成[min,max)区间的随机数

func Redis

func Redis(cfg config.Redis) *redis.Client

func Viper

func Viper(path ...string) *viper.Viper

func Zap

func Zap() (logger *zap.Logger)

Types

type ConsumerT

type ConsumerT struct {
	RoomDataReciverPtr *RoomDataReciver
	Func               func(*pb.RoomPushData)
}

消费者

func (ConsumerT) HandleMessage

func (c ConsumerT) HandleMessage(message *nsq.Message) error

type RoomDataReciver

type RoomDataReciver struct {
	RecvMsgQueue chan *pb.RoomPushData
}

func (*RoomDataReciver) NewRoomDataReciver

func (r *RoomDataReciver) NewRoomDataReciver(channel string, maxInFlight, concurrency int, f func(data *pb.RoomPushData)) (*nsq.Consumer, error)

type RoomDataSender

type RoomDataSender struct {
	// contains filtered or unexported fields
}

func (*RoomDataSender) InitRoomDataSender

func (r *RoomDataSender) InitRoomDataSender()

初始化生产者

func (*RoomDataSender) Publish

func (r *RoomDataSender) Publish(roomId int64, msgType int32, data []byte) error

func (*RoomDataSender) PublishDirect

func (r *RoomDataSender) PublishDirect(topic string, data []byte) error

发布消息

func (*RoomDataSender) Run

func (p *RoomDataSender) Run()

Directories

Path Synopsis
@Title @Description @Author Wangwengang 2021/6/13 下午5:06 @Update Wangwengang 2021/6/13 下午5:06
@Title @Description @Author Wangwengang 2021/6/13 下午5:06 @Update Wangwengang 2021/6/13 下午5:06
@Title @Description @Author Wangwengang 2021/6/27 下午2:06 @Update Wangwengang 2021/6/27 下午2:06
@Title @Description @Author Wangwengang 2021/6/27 下午2:06 @Update Wangwengang 2021/6/27 下午2:06

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL