代码拉取完成,页面将自动刷新
package cmddto
import (
"gitee.com/leijmdas/gobase/goconfig/common/base/basedto"
"gitee.com/leijmdas/gobase/goconfig/common/base/jsonutils"
"gitee.com/leijmdas/goweb/goes/esdto"
"github.com/olivere/elastic/v7"
)
type ScriptDto struct {
basedto.BaseEntity
UpdateClause string
Params map[string]interface{}
}
func NewScriptDto() *ScriptDto {
return &ScriptDto{}
}
type CmdDto struct {
basedto.BaseEntity
esdto.ReqDto
Script *ScriptDto `json:"script"`
Refresh string `json:"refresh"`
Data interface{} `json:"data"`
Doc map[string]interface{} `json:"params"`
BulkDocs []*BulkDoc
BulkStrus []*BulkStru
}
func NewCmdDto() *CmdDto {
var cmd = &CmdDto{
Script: NewScriptDto(),
Refresh: "true",
Doc: make(map[string]interface{}),
BulkDocs: make([]*BulkDoc, 0),
}
cmd.InitProxy(cmd)
return cmd
}
func (self *CmdDto) RefreshStr() string {
return self.Refresh
}
func (self *CmdDto) ScriptAs(updateClause string, params map[string]interface{}) string {
self.Script.UpdateClause = updateClause
self.Script.Params = params
return self.Refresh
}
func (self *CmdDto) NewScript() *elastic.Script {
return elastic.NewScriptInline(self.Script.UpdateClause).Params(self.Script.Params)
}
func (self *CmdDto) AddDoc(id string, doc map[string]any) {
var bd = NewBulkDoc()
bd.Id = id
bd.Doc = doc
self.AddBulkDoc(bd)
}
func (self *CmdDto) AddStru(id string, doc any) {
var bulkStru = NewBulkStru()
bulkStru.Id = id
bulkStru.Doc = doc
self.AddDoc(id, jsonutils.Stru2Map(doc))
self.AddBulkStru(bulkStru)
}
func (self *CmdDto) AddBulkStru(bulkDoc *BulkStru) {
self.BulkStrus = append(self.BulkStrus, bulkDoc)
}
func (self *CmdDto) AddBulkDoc(bulkDoc *BulkDoc) {
self.BulkDocs = append(self.BulkDocs, bulkDoc)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。