package http import "errors" type MessageResp struct { Rows int `json:"rows"` } type MessageReq struct { MsgTypeID int `json:"msg_type_id"` Miniprogram Miniprogram `json:"miniprogram"` Target []string `json:"target"` Keys []string `json:"keys"` Content []Tag `json:"content"` } type Miniprogram struct { AppID string `json:"appid"` PagePath string `json:"pagepath"` } type Tag struct { Value string `json:"value"` Color string `json:"color"` } type MessageTypeReq struct { SysName string `form:"sys_name" json:"sys_name" gorm:"sys_name"` ID int `form:"id" json:"id" gorm:"id"` PastureID int `form:"pasture_id" json:"pasture_id" gorm:"pasture_id"` TypeName string `form:"type_name" json:"type_name" gorm:"type_name"` RemindTypeID int `form:"remind_type_id" json:"remind_type_id" gorm:"remind_type_id"` RemindType string `form:"remind_type" json:"remind_type" gorm:"remind_type"` PushDate string `form:"push_date" json:"push_date" gorm:"push_date"` PushTime string `form:"push_time" json:"push_time" gorm:"push_time"` IntervalTime int `form:"interval_time" json:"interval_time" gorm:"interval_time"` PushLimit int `form:"push_limit" json:"push_limit" gorm:"push_limit"` TemplateID string `form:"template_id" json:"template_id" gorm:"template_id"` RolesID string `form:"roles_id" json:"roles_id" gorm:"roles_id"` UsersID string `form:"users_id" json:"users_id" gorm:"users_id"` } func (m MessageTypeReq) Validate() error { if m.SysName == "" || m.PastureID == 0 { return errors.New("sys_name or pasture_id is required") } return nil } func (p MessageReq) Validate() error { return nil }