BaseEarlyWarning

package
v5.2.14 Latest Latest
Warning

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

Go to latest
Published: Aug 11, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DeleteSendByID

func DeleteSendByID(args *ArgsDeleteSendByID) (err error)

func DeleteSendByMark

func DeleteSendByMark(args *ArgsDeleteSendByMark) (err error)

func DeleteTemplate

func DeleteTemplate(args *ArgsDeleteTemplate) (err error)

func DeleteToByID

func DeleteToByID(args *ArgsDeleteToByID) (err error)

func Run

func Run()

func SendMod

func SendMod(args *ArgsSendMod) (err error)

func SetUnBind

func SetUnBind(args *ArgsSetUnBind) (err error)

func UpdateSendIsRead

func UpdateSendIsRead(args *ArgsUpdateSendIsRead) (err error)

func UpdateSendIsReadByMark

func UpdateSendIsReadByMark(args *ArgsUpdateSendIsReadByMark) (err error)

func UpdateTemplate

func UpdateTemplate(args *ArgsUpdateTemplate) (err error)

func UpdateTo

func UpdateTo(args *ArgsUpdateTo) (err error)

Types

type ArgsCreateTemplate

type ArgsCreateTemplate struct {
	//标识码
	Mark string `db:"mark"`
	//名称
	Name string `db:"name"`
	//默认过期时间
	DefaultExpireTime string `db:"default_expire_time"`
	//标题
	Title string `db:"title"`
	//内容
	Content string `db:"content"`
	//短消息模版ID
	TemplateID string `db:"template_id"`
	//短消息模版变量
	BindData []string `db:"bind_data"`
}

创建新的模版

type ArgsCreateTo

type ArgsCreateTo struct {
	//用户ID
	UserID int64 `db:"user_id"`
	//昵称
	Name string `db:"name"`
	//描述
	Des string `db:"des"`
	//联系电话
	PhoneNationCode string `db:"phone_nation_code"`
	Phone           string `db:"phone"`
	//邮件地址
	Email string `db:"email"`
}

创建新的预警人

type ArgsDeleteSendByID

type ArgsDeleteSendByID struct {
	//ID
	ID int64 `db:"id"`
}

删除通知

type ArgsDeleteSendByMark

type ArgsDeleteSendByMark struct {
	//标识码
	Mark string `db:"mark"`
}

type ArgsDeleteTemplate

type ArgsDeleteTemplate struct {
	//ID
	ID int64 `db:"id"`
}

删除模块

type ArgsDeleteToByID

type ArgsDeleteToByID struct {
	//ID
	ID int64 `db:"id"`
}

删除预警人

type ArgsGetBindByTemplateID

type ArgsGetBindByTemplateID struct {
	//模版ID
	TemplateID int64
}

通过模版找到关系结构

type ArgsGetBindByToID

type ArgsGetBindByToID struct {
	//送达人ID
	ToID int64
}

通过关联人找到关系结构

type ArgsGetBindID

type ArgsGetBindID struct {
	//绑定ID
	ID int64
}

通过关联人找到关系结构

type ArgsGetMessage

type ArgsGetMessage struct {
	//分页
	Pages CoreSQLPages.ArgsDataList
	//用户ID
	UserID int64
	//送达ID
	ToID int64
	//模版ID
	TemplateID int64
	//是否需要已读参数
	NeedIsRead bool
	//是否已读
	IsRead bool
	//搜索
	Search string
}

获取目标人名下所有消息

type ArgsGetTemplateByID

type ArgsGetTemplateByID struct {
	//ID
	ID int64
}

查看模版

type ArgsGetTemplateByMark

type ArgsGetTemplateByMark struct {
	//Mark
	Mark string
}

type ArgsGetTemplateList

type ArgsGetTemplateList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList
	//搜索
	Search string
}

查看模版列表

type ArgsGetToByID

type ArgsGetToByID struct {
	//ID
	ID int64
}

查看预警人信息

type ArgsGetToByUserID

type ArgsGetToByUserID struct {
	//用户ID
	UserID int64
}

通过用户ID找到预警人

type ArgsGetToList

type ArgsGetToList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList
	//搜索
	Search string
}

查看预警人名单

type ArgsSendMod

type ArgsSendMod struct {
	//模版标识码
	Mark string
	//消息内容组
	Contents map[string]string
}

给目标告警类目发送一个信息 关系是:任意模块可以使用该方法,该方法将抽取该类目下的目标人,按照预定的方案通知

type ArgsSetBind

type ArgsSetBind struct {
	//送达ID
	ToID int64 `db:"to_id"`
	//模版ID
	TemplateID int64 `db:"template_id"`
	//级别
	Level int `db:"level"`
	//级别模式
	LevelMode string `db:"level_mode"`
	//下一个等待时间
	NextWaitTime string `db:"next_wait_time"`
	//通知方式
	NeedPhone bool `db:"need_phone"`
	NeedSMS   bool `db:"need_sms"`
	NeedEmail bool `db:"need_email"`
	NeedAPP   bool `db:"need_app"`
}

添加或设定关联

type ArgsSetUnBind

type ArgsSetUnBind struct {
	//送达人ID
	// 可以留空
	ToID int64 `db:"to_id"`
	//模版ID
	// 可以留空
	TemplateID int64 `db:"template_id"`
}

解除关系

type ArgsUpdateSendIsRead

type ArgsUpdateSendIsRead struct {
	//ID
	ID int64 `db:"id"`
	//送达人ID
	// 可留空,用于检查
	ToID int64 `db:"to_id"`
}

标记某个ID为已读

type ArgsUpdateSendIsReadByMark

type ArgsUpdateSendIsReadByMark struct {
	//标识码
	Mark string `db:"mark"`
}

标记某个mark全部为已读

type ArgsUpdateTemplate

type ArgsUpdateTemplate struct {
	//ID
	ID int64 `db:"id"`
	//标识码
	Mark string `db:"mark"`
	//名称
	Name string `db:"name"`
	//默认过期时间
	DefaultExpireTime string `db:"default_expire_time"`
	//标题
	Title string `db:"title"`
	//内容
	Content string `db:"content"`
	//短消息模版ID
	TemplateID string `db:"template_id"`
	//短消息模版变量
	BindData []string `db:"bind_data"`
}

修改模版

type ArgsUpdateTo

type ArgsUpdateTo struct {
	//ID
	ID int64 `db:"id"`
	//用户ID
	UserID int64 `db:"user_id"`
	//昵称
	Name string `db:"name"`
	//描述
	Des string `db:"des"`
	//联系电话
	PhoneNationCode string `db:"phone_nation_code"`
	Phone           string `db:"phone"`
	//邮件地址
	Email string `db:"email"`
}

修改预警人

type FieldsBindType

type FieldsBindType struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//优先级
	// 从小到大排序,先给最前面的发送,超时后自动到下一级;
	// 同一级别将视为并列发送处理
	Level int `db:"level" json:"level"`
	//进入下一级条件
	// or 只要有一个同意则完成,否则到下一级
	// and 必须所有人同意才能完成,否则到下一级
	// none 本集自动终结,不再给下一个级别通知
	// 注意,同一个级别的任意修改操作,将造成同级别所有关系条件调整,以确保一致性
	LevelMode string `db:"level_mode" json:"levelMode"`
	//通知下一级的等待时间
	NextWaitTime string `db:"next_wait_time" json:"nextWaitTime"`
	//关系人
	ToID int64 `db:"to_id" json:"toID"`
	//模版ID
	TemplateID int64 `db:"template_id" json:"templateID"`
	//送出方式
	NeedPhone bool `db:"need_phone" json:"needPhone"`
	NeedSMS   bool `db:"need_sms" json:"needSMS"`
	NeedEmail bool `db:"need_email" json:"needEmail"`
	NeedAPP   bool `db:"need_app" json:"needAPP"`
}

模版和送达人关系结构体

func GetBindByTemplateID

func GetBindByTemplateID(args *ArgsGetBindByTemplateID) (data []FieldsBindType, err error)

func GetBindByToID

func GetBindByToID(args *ArgsGetBindByToID) (data []FieldsBindType, err error)

func GetBindID

func GetBindID(args *ArgsGetBindID) (data FieldsBindType, err error)

func SetBind

func SetBind(args *ArgsSetBind) (data FieldsBindType, err error)

type FieldsTemplateBindData

type FieldsTemplateBindData []string

func (*FieldsTemplateBindData) Scan

func (t *FieldsTemplateBindData) Scan(value interface{}) error

func (FieldsTemplateBindData) Value

type FieldsTemplateType

type FieldsTemplateType struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//模版标识码
	// 用于程序内的识别
	// 如果客户修改会造成识别异常或丢弃告警模块
	Mark string `db:"mark" json:"mark"`
	//名称
	// 后台区分使用
	Name string `db:"name" json:"name"`
	//默认超出时间
	// 模版超出时间和送达人超出时间,会自动取最短值计算
	DefaultExpireTime string `db:"default_expire_time" json:"defaultExpireTime"`
	//标题
	// email专用,短信无效
	// 同样可带有[1]结构变量
	Title string `db:"title" json:"title"`
	//内容
	// 例如: 你好!尊敬的[1]用户,欢迎在[2]时间访问[3]系统。
	Content string `db:"content" json:"content"`
	//短消息对应的模版ID
	// 例如,腾讯云需审核过的模版ID,才能使用短信服务
	TemplateID string `db:"template_id" json:"templateID"`
	//内容和可绑定的关系组
	// 对应Content中的变量和值
	// 例如:[]string{"[1]","[2]",...}
	BindData FieldsTemplateBindData `db:"bind_data" json:"bindData"`
}

模版

func CreateTemplate

func CreateTemplate(args *ArgsCreateTemplate) (data FieldsTemplateType, err error)

func GetTemplateByID

func GetTemplateByID(args *ArgsGetTemplateByID) (data FieldsTemplateType, err error)

func GetTemplateByMark

func GetTemplateByMark(args *ArgsGetTemplateByMark) (data FieldsTemplateType, err error)

func GetTemplateList

func GetTemplateList(args *ArgsGetTemplateList) (dataList []FieldsTemplateType, dataCount int64, err error)

type FieldsToType

type FieldsToType struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//绑定用户ID
	UserID int64 `db:"user_id" json:"userID"`
	//姓名
	Name string `db:"name" json:"name"`
	//备注和描述
	Des string `db:"des" json:"des"`
	//联系电话国家区号
	PhoneNationCode string `db:"phone_nation_code" json:"phoneNationCode"`
	//联系电话
	Phone string `db:"phone" json:"phone"`
	//联系邮箱
	Email string `db:"email" json:"email"`
}

送达人关系

func CreateTo

func CreateTo(args *ArgsCreateTo) (data FieldsToType, err error)

func GetToByID

func GetToByID(args *ArgsGetToByID) (data FieldsToType, err error)

func GetToByUserID

func GetToByUserID(args *ArgsGetToByUserID) (data FieldsToType, err error)

func GetToList

func GetToList(args *ArgsGetToList) (dataList []FieldsToType, dataCount int64, err error)

type FieldsWaitBindData

type FieldsWaitBindData map[string]string

func (*FieldsWaitBindData) Scan

func (t *FieldsWaitBindData) Scan(value interface{}) error

func (FieldsWaitBindData) Value

func (t FieldsWaitBindData) Value() (driver.Value, error)

type FieldsWaitType

type FieldsWaitType struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//绑定关系
	BindID int64 `db:"bind_id" json:"bindID"`
	//关联级别
	Level int `db:"level" json:"level"`
	//送达人
	ToID int64 `db:"to_id" json:"toID"`
	//已经全部送出
	IsSend bool `db:"is_send" json:"isSend"`
	//是否已读
	IsRead bool `db:"is_read" json:"isRead"`
	//已经超时处理
	// 给下一级发送完成消息后,自动标记该数据
	ExpireFinish bool `db:"expire_finish" json:"expireFinish"`
	//超时时间
	// 如果未读,超出后自动根据送达下一级发送消息
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//采用模版
	TemplateID int64 `db:"template_id" json:"templateID"`
	//消息数据
	// 来自模版的数据结构
	Content string `db:"content" json:"content"`
	//消息变量
	BindData FieldsWaitBindData `db:"bind_data" json:"bindData"`
	//送出方式
	// 电话联络
	NeedPhone bool `db:"need_phone" json:"needPhone"`
	// 短信推送
	NeedSMS bool `db:"need_sms" json:"needSMS"`
	// 邮件推送
	NeedEmail bool `db:"need_email" json:"needEmail"`
	// APP通知
	NeedAPP bool `db:"need_app" json:"needAPP"`
}

等待送达信息

func GetMessage

func GetMessage(args *ArgsGetMessage) (dataList []FieldsWaitType, dataCount int64, err error)

Jump to

Keyboard shortcuts

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