Documentation ¶
Index ¶
- Variables
- func ChangeUserPassword(ctx iris.Context)
- func CreateTask(ctx context.Context, t *SmTask) error
- func DeleteTask(ctx context.Context, id string) error
- func GenJwtToken(userUid, userName string) string
- func GenMarkdownVerifyTask(ctx context.Context, name string, group string, desc string, ...) error
- func GenTaskInjectData(input any) string
- func GetQianKunConfigFunc(ctx iris.Context)
- func GetUserInfo(ctx iris.Context)
- func Index(ctx iris.Context)
- func Login(ctx iris.Context)
- func PolicyChange(userName, path, methods string, add bool) error
- func SetTaskSuccess(ctx context.Context, id string, success bool, msg string) error
- func TokenToUserUidMiddleware(ctx iris.Context)
- type ActionItem
- type CasbinConfigDefine
- type Configs
- type DefaultField
- type FilterDataExtra
- type QianKunConfigExtra
- type SmAction
- type SmActionReq
- type SmDashBoard
- type SmDashBoardScreen
- type SmTask
- type SmUserModel
- type SpAdmin
- type TaskInjectBaseReq
- type TaskMarkdownState
- func (u *TaskMarkdownState) Add(n string)
- func (u *TaskMarkdownState) AddCodeStr(code string, languages ...string)
- func (u *TaskMarkdownState) AddImg(href string, title string)
- func (u *TaskMarkdownState) AddTitle(text string, level uint8)
- func (u *TaskMarkdownState) Adds(layout string, inputs ...any)
- func (u *TaskMarkdownState) GetStr(sep ...string) string
- type UserChangePasswordReq
- type UserChangeRolesReq
- type UserLoginReq
- type WelComeConfigDefine
Constants ¶
This section is empty.
Variables ¶
var CustomJwt = jwt.New(jwt.Config{ ValidationKeyGetter: func(token *jwt.Token) (interface{}, error) { return MySecret, nil }, Expiration: true, SigningMethod: jwt.SigningMethodHS256, })
CustomJwt 自定义JWT 使用办法 中间层 handler.CustomJwt.Serve, handler.TokenToUserUidMiddleware,user handler
var MySecret = []byte("8657684ae02840ead423e0d781a7a885")
Functions ¶
func GenMarkdownVerifyTask ¶
func GenMarkdownVerifyTask(ctx context.Context, name string, group string, desc string, content TaskMarkdownState, postUrl string, injectStrData string) error
GenMarkdownVerifyTask 快速创建一个基于markdown介绍的审核类任务
func GenTaskInjectData ¶
GenTaskInjectData 快速生成inject的数据 可以是struct 也可以是map
func GetQianKunConfigFunc ¶
func GetQianKunConfigFunc(ctx iris.Context)
GetQianKunConfigFunc 获取乾坤配置信息
func PolicyChange ¶
PolicyChange 权限变更
func SetTaskSuccess ¶
SetTaskSuccess 设置任务完成
func TokenToUserUidMiddleware ¶
func TokenToUserUidMiddleware(ctx iris.Context)
TokenToUserUidMiddleware 登录token存储信息 记录到上下文中
Types ¶
type ActionItem ¶
type ActionItem struct { Name string `json:"name,omitempty" bson:"name,omitempty"` // 不能重复 ReqUri string `json:"req_uri,omitempty" bson:"req_uri,omitempty"` // 操作请求地址 Scheme string `json:"scheme,omitempty" bson:"scheme,omitempty" ` // 需要用户填写的表单数据 }
ActionItem 操作
func CreateAction ¶
func CreateAction(name string, toUrl string, scheme string) ActionItem
CreateAction 创建一个action
func PassAction ¶
func PassAction(url string) ActionItem
func PassOrNotReasonAction ¶
func PassOrNotReasonAction(passUrl string, notPassUrl string) []ActionItem
PassOrNotReasonAction 通过或者不通过的action 不通过需要输入理由 built 为内置json str
func PassOrRejectAction ¶
func PassOrRejectAction(uri string) []ActionItem
PassOrRejectAction 通过或拒绝action 共用一个uri
func RejectAction ¶
func RejectAction(url string) ActionItem
type CasbinConfigDefine ¶
type Configs ¶
type Configs struct { Name string App *iris.Application ModelList []interface{} // 模型列表 AbridgeName string // tag的解析名称 Prefix string // 前缀 AllowTokenLogin bool // 是否允许root使用token登录 OnFileUpload func(ctx iris.Context) // 图片上传事件 成功返回JSON{origin:"",thumbnail:""} origin必须存在 失败则JSON{detail:"失败理由"} PublicKey string // 公开密钥 如果有密钥则会对上传进行介入 CasbinConfig CasbinConfigDefine GlobalQianKun []QianKunConfigExtra // 全局所有用户都能看到的前端信息 SuperUserQianKun []QianKunConfigExtra // 仅管理员可见 WelComeConfig WelComeConfigDefine }
type DefaultField ¶
type DefaultField struct { Id primitive.ObjectID `bson:"_id" json:"id" comment:"id"` UpdateAt time.Time `bson:"update_at" json:"update_at" comment:"更新时间"` CreateAt time.Time `json:"create_at" bson:"create_at" comment:"创建时间"` }
func (*DefaultField) BeforeInsert ¶
func (u *DefaultField) BeforeInsert(ctx context.Context) error
func (*DefaultField) BeforeUpdate ¶
func (u *DefaultField) BeforeUpdate(ctx context.Context) error
func (*DefaultField) BeforeUpsert ¶
func (u *DefaultField) BeforeUpsert(ctx context.Context) error
type FilterDataExtra ¶
type QianKunConfigExtra ¶
type SmAction ¶
type SmAction struct { DefaultField `bson:",inline,flatten"` CreateUserId primitive.ObjectID `json:"create_user_id" bson:"create_user_id" comment:"创建者"` UserId primitive.ObjectID `json:"user_id" bson:"user_id" comment:"用户"` Scope string `json:"scope" bson:"scope" comment:"作用范围"` // 表名 Name string `json:"name" bson:"name" comment:"操作名称"` Scheme string `json:"scheme" bson:"scheme" comment:"表单定义" mab:"t=textarea"` PostUrl string `json:"post_url" bson:"post_url" comment:"发送接口"` }
type SmActionReq ¶
type SmActionReq struct { Record map[string]any `json:"record" form:"record"` T string `json:"t" form:"t"` Action string `json:"action" form:"action"` Table string `json:"table" form:"table"` }
SmActionReq 动作请求基础
type SmDashBoard ¶
type SmDashBoard struct { DefaultField `bson:",inline,flatten"` ScreenId primitive.ObjectID `json:"screen_id" bson:"screen_id"` // 屏幕ID Name string `json:"name" bson:"name"` // 图表名称 ChatType string `json:"chat_type" bson:"chat_type"` // 图表类型 DataUri string `json:"data_uri" bson:"data_uri"` // 数据请求接口 Extra dashBoardExtra `json:"extra" bson:"extra"` Config string `json:"config" bson:"config"` // 配置文件 json字符串 RefreshSecond uint64 `json:"refresh_second" bson:"refresh_second"` // 数据刷新间隔 0则是不刷新 CreateUserId primitive.ObjectID `json:"create_user_id" bson:"create_user_id"` }
SmDashBoard 图表
type SmDashBoardScreen ¶
type SmDashBoardScreen struct { DefaultField `bson:",inline,flatten"` Priority uint64 `json:"priority" bson:"priority"` // 优先级 越大越提前 Name string `json:"name" bson:"name"` // 屏幕名称 IsDefault bool `json:"is_default" bson:"is_default"` // 是否为默认 CreateUserId primitive.ObjectID `json:"create_user_id" bson:"create_user_id"` ViewUserId []primitive.ObjectID `json:"view_user_id" bson:"view_user_id"` // 有权查看的用户 }
SmDashBoardScreen 仪表台屏幕 只有管理员能够操作
type SmTask ¶
type SmTask struct { DefaultField `bson:",inline,flatten"` Name string `json:"name,omitempty" bson:"name,omitempty" comment:"任务名称"` Desc string `json:"desc,omitempty" bson:"desc,omitempty" comment:"任务描述"` Type uint8 `json:"type,omitempty" bson:"type,omitempty" comment:"任务类型"` // 任务类型 Group string `json:"group,omitempty" bson:"group,omitempty" comment:"任务组"` Tags []string `json:"tags,omitempty" bson:"tags,omitempty" comment:"标签组"` Content string `json:"content,omitempty" bson:"content,omitempty" comment:"任务内容" mab:"t=markdown"` // 任务内容 markdown格式 InjectData string `json:"inject_data,omitempty" bson:"inject_data,omitempty" comment:"t=textarea"` // 任务注入的json字符串 可以自行序列化回去 Action []ActionItem `json:"action,omitempty" bson:"action,omitempty" comment:"按钮组"` ExpTime time.Time `json:"exp_time,omitempty" bson:"exp_time,omitempty" comment:"任务过期时间"` // 任务过期时间 ToUser primitive.ObjectID `json:"to_user,omitempty" bson:"to_user,omitempty" comment:"操作的用户"` // 展示的用户 CreateUser primitive.ObjectID `json:"create_user,omitempty" bson:"create_user,omitempty" comment:"创建用户"` // 创建的用户 Success bool `json:"success,omitempty" bson:"success,omitempty" comment:"操作完成?"` // 操作完成 Msg string `json:"msg,omitempty" bson:"msg,omitempty" comment:"操作结果"` // 操作结果 AllowDelete bool `json:"allow_delete,omitempty" bson:"allow_delete,omitempty" comment:"允许删除"` // 是否允许删除 }
SmTask 任务
func GenTaskGroupAtRoot ¶
GenTaskGroupAtRoot 生成特定组的root任务
type SmUserModel ¶
type SmUserModel struct { DefaultField `bson:",inline,flatten" ` Name string `json:"name" bson:"name" comment:"用户名"` Password string `json:"password" bson:"password" comment:"加密密码"` Salt string `json:"salt" bson:"salt" comment:"salt"` Desc string `json:"desc" bson:"desc" comment:"描述"` Phone string `json:"phone" bson:"phone" comment:"手机号"` SuperUser bool `json:"super_user" bson:"super_user" comment:"是否超级用户?"` CreateId primitive.ObjectID `json:"create_id" bson:"create_id" comment:"创建者ID"` // 创建者ID QianKun []QianKunConfigExtra `json:"qian_kun,omitempty" bson:"qian_kun,omitempty" comment:"乾坤配置"` FilterData []FilterDataExtra `json:"filter_data" bson:"filter_data" comment:"过滤数据"` }
SmUserModel 管理后台用户
var (
RootUser *SmUserModel
)
func AnyGetUser ¶
AnyGetUser 任意参数获取用户
func CreateUser ¶
func CreateUser(ctx context.Context, u *SmUserModel) (*SmUserModel, error)
CreateUser 新增用户
func IdGetUser ¶
func IdGetUser(ctx context.Context, id string) (*SmUserModel, error)
IdGetUser id获取用户
func NameGetUser ¶
func NameGetUser(ctx context.Context, name string) (*SmUserModel, error)
NameGetUser name获取用户
type TaskInjectBaseReq ¶
type TaskMarkdownState ¶
type TaskMarkdownState struct {
Stage []string
}
func (*TaskMarkdownState) Add ¶
func (u *TaskMarkdownState) Add(n string)
func (*TaskMarkdownState) AddCodeStr ¶
func (u *TaskMarkdownState) AddCodeStr(code string, languages ...string)
func (*TaskMarkdownState) AddImg ¶
func (u *TaskMarkdownState) AddImg(href string, title string)
func (*TaskMarkdownState) AddTitle ¶
func (u *TaskMarkdownState) AddTitle(text string, level uint8)
func (*TaskMarkdownState) Adds ¶
func (u *TaskMarkdownState) Adds(layout string, inputs ...any)
func (*TaskMarkdownState) GetStr ¶
func (u *TaskMarkdownState) GetStr(sep ...string) string
type UserChangePasswordReq ¶
type UserChangePasswordReq struct { Id string `json:"id" comment:"id" validate:"required"` Password string `json:"password" comment:"密码" validate:"required,min=6,max=20"` }
UserChangePasswordReq 用户变更密码
type UserChangeRolesReq ¶
type UserChangeRolesReq struct { Id uint64 `json:"id" comment:"id" validate:"required"` Role string `json:"role" comment:"群组名" validate:"required"` Add bool `json:"add" comment:"添加"` }
admin 变更用户群组
type UserLoginReq ¶
type UserLoginReq struct { UserName string `json:"user_name" comment:"用户名" validate:"required,max=20,min=3"` Password string `json:"password" comment:"密码" validate:"required,min=3,max=20"` }
UserLoginReq 用户登录