pageBuilder

package module
v0.0.1 Latest Latest
Warning

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

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

README

pageBuilder

介绍

后台页面构建工具,包含页面构建器,页面模板渲染器

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Interface2String

func Interface2String(value interface{}) string

func IsInArray

func IsInArray(v interface{}, Arr []interface{}) bool

func IsNum

func IsNum(value interface{}) bool

IsNum 任意值转字符串后判断是否是数字

func JsonEncode

func JsonEncode(data interface{}) string

Types

type Button

type Button struct {
	ButtonName  string //按钮名称
	Action      string //权限校验规则,add 或 a/b
	ActionType  int    //操作类型 1、ajax操作 2、弹出页面 3、javascript
	ConfirmMsg  string //确认对话框信息,ActionType=1有效
	LayerTitle  string //弹出窗口标题
	ActionUrl   string //操作地址
	Class       string //样式-类
	Icon        string //icon class
	Display     string //展示条件
	Expand      map[string]string
	BatchAction bool //是否支持批量操作
}

Button 定义按钮结构体

type FormField

type FormField struct {
	Key    string
	Type   string                   //项目类型 text select等
	Title  string                   //项目表标题
	Notice string                   //项目备注
	Value  string                   //默认值
	IsMust bool                     //是否必传
	Data   []map[string]interface{} //数据列表
	Style  string                   //样式
	Expand map[string]interface{}   //拓展数据
}

type ListColumn

type ListColumn struct {
	FieldName  string
	ColumnName string
	DataType   string
	Data       map[interface{}]interface{}
	Options    map[string]interface{} //参数
}

ListColumn 列表展示列数据结构

type ListSearchField

type ListSearchField struct {
	Key      string                      //项目名称 key
	Type     string                      //项目类型 text select等
	Title    string                      //项目表标题
	DefValue interface{}                 //默认值空值
	Value    interface{}                 //预设值
	Data     map[interface{}]interface{} //数据列表
	Style    string                      //样式
	Expand   map[string]interface{}      //拓展数据
}

ListSearchField 列表搜索表单项

type PageBuilder

type PageBuilder struct {
	//!请求ID
	RequestID string

	//! http响应
	HttpResponseWriter http.ResponseWriter
	//! http请求
	HttpRequest *http.Request
	//! http参数
	HttpParams httprouter.Params
	// contains filtered or unexported fields
}

PageBuilder 页面构建器

func (*PageBuilder) DataReset

func (builder *PageBuilder) DataReset()

DataReset 数据重置和初始化 所有操作方法运行前,都需要重置数据,否则会遗留之前的内容

func (*PageBuilder) FormFieldKeysAdd

func (builder *PageBuilder) FormFieldKeysAdd(fieldKeys ...interface{})

FormFieldKeysAdd 新增表单字段key列表

func (*PageBuilder) FormFieldsAdd

func (builder *PageBuilder) FormFieldsAdd(fkey, ftype, ftitle, fnotice, fvalue string, ismust bool,
	dataOrOptions []map[string]interface{},
	style string,
	expand map[string]interface{})

FormFieldsAdd 表单项增加

func (*PageBuilder) GetHttpParams

func (builder *PageBuilder) GetHttpParams() httprouter.Params

func (*PageBuilder) GetHttpRequest

func (builder *PageBuilder) GetHttpRequest() *http.Request

func (*PageBuilder) GetHttpWriter

func (builder *PageBuilder) GetHttpWriter() http.ResponseWriter

func (*PageBuilder) GetStyle

func (builder *PageBuilder) GetStyle() string

func (*PageBuilder) ListColumnAdd

func (builder *PageBuilder) ListColumnAdd(FieldName, ColumnName, DataType string, Data []map[string]interface{})

ListColumnAdd 列表新增一列信息

func (*PageBuilder) ListColumnClear

func (builder *PageBuilder) ListColumnClear()

ListColumnClear 列表清除

func (*PageBuilder) ListConditionAdd

func (builder *PageBuilder) ListConditionAdd(c []interface{})

ListConditionAdd 增加列表页查询条件

func (*PageBuilder) ListRightBtnsAdd

func (builder *PageBuilder) ListRightBtnsAdd(btns ...string)

ListRightBtnsAdd 右侧按钮新增

func (*PageBuilder) ListRightBtnsClear

func (builder *PageBuilder) ListRightBtnsClear()

ListRightBtnsClear 清除右侧按钮

func (*PageBuilder) ListRightBtnsIconClear

func (builder *PageBuilder) ListRightBtnsIconClear()

ListRightBtnsIconClear 清除右侧按钮的图标

func (*PageBuilder) ListSearchFieldAdd

func (builder *PageBuilder) ListSearchFieldAdd(fkey, ftype, ftitle string, defvalue interface{}, value interface{}, data []map[string]interface{},
	style string,
	expand map[string]interface{})

ListSearchFieldAdd 增加列表搜索项

func (*PageBuilder) ListTopBtnsClear

func (builder *PageBuilder) ListTopBtnsClear()

ListTopBtnsClear 清除顶部按钮

func (*PageBuilder) PageTabAdd

func (builder *PageBuilder) PageTabAdd(title, href string)

PageTabAdd 增加一个Tab选项卡

func (*PageBuilder) SetActionName

func (builder *PageBuilder) SetActionName(str string)

SetActionName 设置action名称(动作名称)

func (*PageBuilder) SetAddDataUrl

func (builder *PageBuilder) SetAddDataUrl(url string)

SetAddDataUrl 设置新增页提交地址

func (*PageBuilder) SetAddTplName

func (builder *PageBuilder) SetAddTplName(tplName string)

SetAddTplName 设置新增页模板名称

func (*PageBuilder) SetButton

func (builder *PageBuilder) SetButton(btnName string, btn Button)

func (*PageBuilder) SetButtonActionUrl

func (builder *PageBuilder) SetButtonActionUrl(btnName, url string, isAddend bool)

SetButtonActionUrl 设置按钮链接地址 是否是追加

func (*PageBuilder) SetButtonIcon

func (builder *PageBuilder) SetButtonIcon(btnName, icon string)

SetButtonIcon 设置按钮图标

func (*PageBuilder) SetDeleteField

func (builder *PageBuilder) SetDeleteField(field string)

SetDeleteField 设置删除标记字段

func (*PageBuilder) SetEditDataUrl

func (builder *PageBuilder) SetEditDataUrl(url string)

SetEditDataUrl 设置新增页提交地址

func (*PageBuilder) SetEditTplName

func (builder *PageBuilder) SetEditTplName(tplName string)

SetEditTplName 设置新增页模板名称

func (*PageBuilder) SetFindTplName

func (builder *PageBuilder) SetFindTplName(url string)

SetFindTplName 设置新增页提交地址

func (*PageBuilder) SetFormData

func (builder *PageBuilder) SetFormData(formData gorose.Data)

SetFormData 设置表单默认数据

func (*PageBuilder) SetFormSubmitHide

func (builder *PageBuilder) SetFormSubmitHide()

SetFormSubmitHide 设置表单按钮隐藏

func (*PageBuilder) SetFormSubmitTitle

func (builder *PageBuilder) SetFormSubmitTitle(title string)

SetFormSubmitTitle 设置表单提交按钮文字

func (*PageBuilder) SetHttpParams

func (builder *PageBuilder) SetHttpParams(ps httprouter.Params)

func (*PageBuilder) SetHttpRequest

func (builder *PageBuilder) SetHttpRequest(r *http.Request)

func (*PageBuilder) SetHttpWriter

func (builder *PageBuilder) SetHttpWriter(w http.ResponseWriter)

func (*PageBuilder) SetInsertAutoFields

func (builder *PageBuilder) SetInsertAutoFields(fields ...string)

SetInsertAutoFields 设置插入时自动赋值字段

func (*PageBuilder) SetIsAutoID

func (builder *PageBuilder) SetIsAutoID(isauto bool)

func (*PageBuilder) SetListBatchAction

func (builder *PageBuilder) SetListBatchAction(isOpen bool)

SetListBatchAction 开启批量操作

func (*PageBuilder) SetListColumnStyle

func (builder *PageBuilder) SetListColumnStyle(key, value string)

SetListColumnStyle 设置列表列信息

func (*PageBuilder) SetListColumns

func (builder *PageBuilder) SetListColumns(data []ListColumn)

SetListColumns 设置列表列信息

func (*PageBuilder) SetListCondition

func (builder *PageBuilder) SetListCondition(c [][]interface{})

SetListCondition 设置列表页查询条件

func (*PageBuilder) SetListDataURL

func (builder *PageBuilder) SetListDataURL(url string)

SetListDataURL 设置列表查询数据地址,默认为空,代表当前地址

func (*PageBuilder) SetListFields

func (builder *PageBuilder) SetListFields(fields string)

SetListFields 设置列表查询数据库字段

func (*PageBuilder) SetListFieldsRemove

func (builder *PageBuilder) SetListFieldsRemove(fields ...string)

SetListFieldsRemove 设置列表需要去掉的字段数据

func (*PageBuilder) SetListOrder

func (builder *PageBuilder) SetListOrder(order string)

SetListOrder 设置列表查询排序方式

func (*PageBuilder) SetListPage

func (builder *PageBuilder) SetListPage(page int)

SetListPage 设置列表页码

func (*PageBuilder) SetListPageHide

func (builder *PageBuilder) SetListPageHide()

SetListPageHide 隐藏分页

func (*PageBuilder) SetListPageSize

func (builder *PageBuilder) SetListPageSize(size int)

SetListPageSize 设置列表页分页大小

func (*PageBuilder) SetListRightBtns

func (builder *PageBuilder) SetListRightBtns(btns ...string)

SetListRightBtns 设置列表右侧使用的按钮

func (*PageBuilder) SetListTopBtns

func (builder *PageBuilder) SetListTopBtns(btns ...string)

SetListTopBtns 设置列表顶部使用的列表

func (*PageBuilder) SetListTplName

func (builder *PageBuilder) SetListTplName(tit string)

SetListTplName 设置列表模板名称

func (*PageBuilder) SetPK

func (builder *PageBuilder) SetPK(pk string)

SetPK 设置数据表主键

func (*PageBuilder) SetPageName

func (builder *PageBuilder) SetPageName(str string)

SetPageName 设置结构体名称(控制器名称)

func (*PageBuilder) SetPageNotice

func (builder *PageBuilder) SetPageNotice(str string)

SetPageNotice 设置列表模板名称

func (*PageBuilder) SetPageTabSelect

func (builder *PageBuilder) SetPageTabSelect(index int)

SetPageTabSelect 设置Tab选项卡的选中

func (*PageBuilder) SetStyle

func (builder *PageBuilder) SetStyle(style string)

SetStyle 设置样式

func (*PageBuilder) SetTbName

func (builder *PageBuilder) SetTbName(tbName string)

SetTbName 设置列表模板名称

func (*PageBuilder) SetTitle

func (builder *PageBuilder) SetTitle(tit string)

SetTitle 设置title

func (*PageBuilder) SetUpdateAutoFields

func (builder *PageBuilder) SetUpdateAutoFields(fields ...string)

SetUpdateAutoFields 设置更新时自动赋值字段

func (*PageBuilder) SetUploadImageUrl

func (builder *PageBuilder) SetUploadImageUrl(url string)

SetUploadImageUrl 设置上传图片的地址

func (*PageBuilder) TemplateData

func (builder *PageBuilder) TemplateData() map[string]interface{}

TemplateData 设置模板数据

type Template

type Template struct {
	//模板数据
	DisplayData map[string]interface{}
	//模板名称
	TplName string
	//模板文件集
	Templates []TemplateParseFS
	//模板函数集
	FuncMap template.FuncMap
}

Template 页面构建器模板对象

func (*Template) Display

func (t *Template) Display() (string, error)

Display 模板渲染生成html

func (*Template) Functions

func (t *Template) Functions() template.FuncMap

Functions 获取内置模板

func (*Template) SetDate

func (t *Template) SetDate(key string, value interface{})

SetDate 设置模板数据方法

type TemplateParseFS

type TemplateParseFS struct {
	Fsys     embed.FS
	Patterns []string
}

TemplateParseFS 页面构建器模板文件对象

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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