agent.gen.go 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. // Code generated by gorm.io/gen. DO NOT EDIT.
  2. // Code generated by gorm.io/gen. DO NOT EDIT.
  3. // Code generated by gorm.io/gen. DO NOT EDIT.
  4. package query
  5. import (
  6. "context"
  7. "gorm.io/gorm"
  8. "gorm.io/gorm/clause"
  9. "gorm.io/gorm/schema"
  10. "gorm.io/gen"
  11. "gorm.io/gen/field"
  12. "gorm.io/plugin/dbresolver"
  13. "wechat-api/database/dao/wechat/model"
  14. )
  15. func newAgent(db *gorm.DB, opts ...gen.DOOption) agent {
  16. _agent := agent{}
  17. _agent.agentDo.UseDB(db, opts...)
  18. _agent.agentDo.UseModel(&model.Agent{})
  19. tableName := _agent.agentDo.TableName()
  20. _agent.ALL = field.NewAsterisk(tableName)
  21. _agent.ID = field.NewInt64(tableName, "id")
  22. _agent.CreatedAt = field.NewTime(tableName, "created_at")
  23. _agent.UpdatedAt = field.NewTime(tableName, "updated_at")
  24. _agent.Status = field.NewInt64(tableName, "status")
  25. _agent.DeletedAt = field.NewField(tableName, "deleted_at")
  26. _agent.Name = field.NewString(tableName, "name")
  27. _agent.Role = field.NewString(tableName, "role")
  28. _agent.Background = field.NewString(tableName, "background")
  29. _agent.Examples = field.NewString(tableName, "examples")
  30. _agent.OrganizationID = field.NewInt64(tableName, "organization_id")
  31. _agent.DatasetID = field.NewString(tableName, "dataset_id")
  32. _agent.CollectionID = field.NewString(tableName, "collection_id")
  33. _agent.fillFieldMap()
  34. return _agent
  35. }
  36. type agent struct {
  37. agentDo
  38. ALL field.Asterisk
  39. ID field.Int64
  40. CreatedAt field.Time // Create Time | 创建日期
  41. UpdatedAt field.Time // Update Time | 修改日期
  42. Status field.Int64 // 状态 1 正常 2 禁用
  43. DeletedAt field.Field // Delete Time | 删除日期
  44. Name field.String // agent 名称
  45. Role field.String // 角色设定
  46. Background field.String // 背景介绍
  47. Examples field.String // 对话案例
  48. OrganizationID field.Int64 // 机构 ID
  49. DatasetID field.String // 知识库ID
  50. CollectionID field.String // 集合ID
  51. fieldMap map[string]field.Expr
  52. }
  53. func (a agent) Table(newTableName string) *agent {
  54. a.agentDo.UseTable(newTableName)
  55. return a.updateTableName(newTableName)
  56. }
  57. func (a agent) As(alias string) *agent {
  58. a.agentDo.DO = *(a.agentDo.As(alias).(*gen.DO))
  59. return a.updateTableName(alias)
  60. }
  61. func (a *agent) updateTableName(table string) *agent {
  62. a.ALL = field.NewAsterisk(table)
  63. a.ID = field.NewInt64(table, "id")
  64. a.CreatedAt = field.NewTime(table, "created_at")
  65. a.UpdatedAt = field.NewTime(table, "updated_at")
  66. a.Status = field.NewInt64(table, "status")
  67. a.DeletedAt = field.NewField(table, "deleted_at")
  68. a.Name = field.NewString(table, "name")
  69. a.Role = field.NewString(table, "role")
  70. a.Background = field.NewString(table, "background")
  71. a.Examples = field.NewString(table, "examples")
  72. a.OrganizationID = field.NewInt64(table, "organization_id")
  73. a.DatasetID = field.NewString(table, "dataset_id")
  74. a.CollectionID = field.NewString(table, "collection_id")
  75. a.fillFieldMap()
  76. return a
  77. }
  78. func (a *agent) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
  79. _f, ok := a.fieldMap[fieldName]
  80. if !ok || _f == nil {
  81. return nil, false
  82. }
  83. _oe, ok := _f.(field.OrderExpr)
  84. return _oe, ok
  85. }
  86. func (a *agent) fillFieldMap() {
  87. a.fieldMap = make(map[string]field.Expr, 12)
  88. a.fieldMap["id"] = a.ID
  89. a.fieldMap["created_at"] = a.CreatedAt
  90. a.fieldMap["updated_at"] = a.UpdatedAt
  91. a.fieldMap["status"] = a.Status
  92. a.fieldMap["deleted_at"] = a.DeletedAt
  93. a.fieldMap["name"] = a.Name
  94. a.fieldMap["role"] = a.Role
  95. a.fieldMap["background"] = a.Background
  96. a.fieldMap["examples"] = a.Examples
  97. a.fieldMap["organization_id"] = a.OrganizationID
  98. a.fieldMap["dataset_id"] = a.DatasetID
  99. a.fieldMap["collection_id"] = a.CollectionID
  100. }
  101. func (a agent) clone(db *gorm.DB) agent {
  102. a.agentDo.ReplaceConnPool(db.Statement.ConnPool)
  103. return a
  104. }
  105. func (a agent) replaceDB(db *gorm.DB) agent {
  106. a.agentDo.ReplaceDB(db)
  107. return a
  108. }
  109. type agentDo struct{ gen.DO }
  110. type IAgentDo interface {
  111. gen.SubQuery
  112. Debug() IAgentDo
  113. WithContext(ctx context.Context) IAgentDo
  114. WithResult(fc func(tx gen.Dao)) gen.ResultInfo
  115. ReplaceDB(db *gorm.DB)
  116. ReadDB() IAgentDo
  117. WriteDB() IAgentDo
  118. As(alias string) gen.Dao
  119. Session(config *gorm.Session) IAgentDo
  120. Columns(cols ...field.Expr) gen.Columns
  121. Clauses(conds ...clause.Expression) IAgentDo
  122. Not(conds ...gen.Condition) IAgentDo
  123. Or(conds ...gen.Condition) IAgentDo
  124. Select(conds ...field.Expr) IAgentDo
  125. Where(conds ...gen.Condition) IAgentDo
  126. Order(conds ...field.Expr) IAgentDo
  127. Distinct(cols ...field.Expr) IAgentDo
  128. Omit(cols ...field.Expr) IAgentDo
  129. Join(table schema.Tabler, on ...field.Expr) IAgentDo
  130. LeftJoin(table schema.Tabler, on ...field.Expr) IAgentDo
  131. RightJoin(table schema.Tabler, on ...field.Expr) IAgentDo
  132. Group(cols ...field.Expr) IAgentDo
  133. Having(conds ...gen.Condition) IAgentDo
  134. Limit(limit int) IAgentDo
  135. Offset(offset int) IAgentDo
  136. Count() (count int64, err error)
  137. Scopes(funcs ...func(gen.Dao) gen.Dao) IAgentDo
  138. Unscoped() IAgentDo
  139. Create(values ...*model.Agent) error
  140. CreateInBatches(values []*model.Agent, batchSize int) error
  141. Save(values ...*model.Agent) error
  142. First() (*model.Agent, error)
  143. Take() (*model.Agent, error)
  144. Last() (*model.Agent, error)
  145. Find() ([]*model.Agent, error)
  146. FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Agent, err error)
  147. FindInBatches(result *[]*model.Agent, batchSize int, fc func(tx gen.Dao, batch int) error) error
  148. Pluck(column field.Expr, dest interface{}) error
  149. Delete(...*model.Agent) (info gen.ResultInfo, err error)
  150. Update(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
  151. UpdateSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
  152. Updates(value interface{}) (info gen.ResultInfo, err error)
  153. UpdateColumn(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
  154. UpdateColumnSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
  155. UpdateColumns(value interface{}) (info gen.ResultInfo, err error)
  156. UpdateFrom(q gen.SubQuery) gen.Dao
  157. Attrs(attrs ...field.AssignExpr) IAgentDo
  158. Assign(attrs ...field.AssignExpr) IAgentDo
  159. Joins(fields ...field.RelationField) IAgentDo
  160. Preload(fields ...field.RelationField) IAgentDo
  161. FirstOrInit() (*model.Agent, error)
  162. FirstOrCreate() (*model.Agent, error)
  163. FindByPage(offset int, limit int) (result []*model.Agent, count int64, err error)
  164. ScanByPage(result interface{}, offset int, limit int) (count int64, err error)
  165. Scan(result interface{}) (err error)
  166. Returning(value interface{}, columns ...string) IAgentDo
  167. UnderlyingDB() *gorm.DB
  168. schema.Tabler
  169. }
  170. func (a agentDo) Debug() IAgentDo {
  171. return a.withDO(a.DO.Debug())
  172. }
  173. func (a agentDo) WithContext(ctx context.Context) IAgentDo {
  174. return a.withDO(a.DO.WithContext(ctx))
  175. }
  176. func (a agentDo) ReadDB() IAgentDo {
  177. return a.Clauses(dbresolver.Read)
  178. }
  179. func (a agentDo) WriteDB() IAgentDo {
  180. return a.Clauses(dbresolver.Write)
  181. }
  182. func (a agentDo) Session(config *gorm.Session) IAgentDo {
  183. return a.withDO(a.DO.Session(config))
  184. }
  185. func (a agentDo) Clauses(conds ...clause.Expression) IAgentDo {
  186. return a.withDO(a.DO.Clauses(conds...))
  187. }
  188. func (a agentDo) Returning(value interface{}, columns ...string) IAgentDo {
  189. return a.withDO(a.DO.Returning(value, columns...))
  190. }
  191. func (a agentDo) Not(conds ...gen.Condition) IAgentDo {
  192. return a.withDO(a.DO.Not(conds...))
  193. }
  194. func (a agentDo) Or(conds ...gen.Condition) IAgentDo {
  195. return a.withDO(a.DO.Or(conds...))
  196. }
  197. func (a agentDo) Select(conds ...field.Expr) IAgentDo {
  198. return a.withDO(a.DO.Select(conds...))
  199. }
  200. func (a agentDo) Where(conds ...gen.Condition) IAgentDo {
  201. return a.withDO(a.DO.Where(conds...))
  202. }
  203. func (a agentDo) Order(conds ...field.Expr) IAgentDo {
  204. return a.withDO(a.DO.Order(conds...))
  205. }
  206. func (a agentDo) Distinct(cols ...field.Expr) IAgentDo {
  207. return a.withDO(a.DO.Distinct(cols...))
  208. }
  209. func (a agentDo) Omit(cols ...field.Expr) IAgentDo {
  210. return a.withDO(a.DO.Omit(cols...))
  211. }
  212. func (a agentDo) Join(table schema.Tabler, on ...field.Expr) IAgentDo {
  213. return a.withDO(a.DO.Join(table, on...))
  214. }
  215. func (a agentDo) LeftJoin(table schema.Tabler, on ...field.Expr) IAgentDo {
  216. return a.withDO(a.DO.LeftJoin(table, on...))
  217. }
  218. func (a agentDo) RightJoin(table schema.Tabler, on ...field.Expr) IAgentDo {
  219. return a.withDO(a.DO.RightJoin(table, on...))
  220. }
  221. func (a agentDo) Group(cols ...field.Expr) IAgentDo {
  222. return a.withDO(a.DO.Group(cols...))
  223. }
  224. func (a agentDo) Having(conds ...gen.Condition) IAgentDo {
  225. return a.withDO(a.DO.Having(conds...))
  226. }
  227. func (a agentDo) Limit(limit int) IAgentDo {
  228. return a.withDO(a.DO.Limit(limit))
  229. }
  230. func (a agentDo) Offset(offset int) IAgentDo {
  231. return a.withDO(a.DO.Offset(offset))
  232. }
  233. func (a agentDo) Scopes(funcs ...func(gen.Dao) gen.Dao) IAgentDo {
  234. return a.withDO(a.DO.Scopes(funcs...))
  235. }
  236. func (a agentDo) Unscoped() IAgentDo {
  237. return a.withDO(a.DO.Unscoped())
  238. }
  239. func (a agentDo) Create(values ...*model.Agent) error {
  240. if len(values) == 0 {
  241. return nil
  242. }
  243. return a.DO.Create(values)
  244. }
  245. func (a agentDo) CreateInBatches(values []*model.Agent, batchSize int) error {
  246. return a.DO.CreateInBatches(values, batchSize)
  247. }
  248. // Save : !!! underlying implementation is different with GORM
  249. // The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
  250. func (a agentDo) Save(values ...*model.Agent) error {
  251. if len(values) == 0 {
  252. return nil
  253. }
  254. return a.DO.Save(values)
  255. }
  256. func (a agentDo) First() (*model.Agent, error) {
  257. if result, err := a.DO.First(); err != nil {
  258. return nil, err
  259. } else {
  260. return result.(*model.Agent), nil
  261. }
  262. }
  263. func (a agentDo) Take() (*model.Agent, error) {
  264. if result, err := a.DO.Take(); err != nil {
  265. return nil, err
  266. } else {
  267. return result.(*model.Agent), nil
  268. }
  269. }
  270. func (a agentDo) Last() (*model.Agent, error) {
  271. if result, err := a.DO.Last(); err != nil {
  272. return nil, err
  273. } else {
  274. return result.(*model.Agent), nil
  275. }
  276. }
  277. func (a agentDo) Find() ([]*model.Agent, error) {
  278. result, err := a.DO.Find()
  279. return result.([]*model.Agent), err
  280. }
  281. func (a agentDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Agent, err error) {
  282. buf := make([]*model.Agent, 0, batchSize)
  283. err = a.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
  284. defer func() { results = append(results, buf...) }()
  285. return fc(tx, batch)
  286. })
  287. return results, err
  288. }
  289. func (a agentDo) FindInBatches(result *[]*model.Agent, batchSize int, fc func(tx gen.Dao, batch int) error) error {
  290. return a.DO.FindInBatches(result, batchSize, fc)
  291. }
  292. func (a agentDo) Attrs(attrs ...field.AssignExpr) IAgentDo {
  293. return a.withDO(a.DO.Attrs(attrs...))
  294. }
  295. func (a agentDo) Assign(attrs ...field.AssignExpr) IAgentDo {
  296. return a.withDO(a.DO.Assign(attrs...))
  297. }
  298. func (a agentDo) Joins(fields ...field.RelationField) IAgentDo {
  299. for _, _f := range fields {
  300. a = *a.withDO(a.DO.Joins(_f))
  301. }
  302. return &a
  303. }
  304. func (a agentDo) Preload(fields ...field.RelationField) IAgentDo {
  305. for _, _f := range fields {
  306. a = *a.withDO(a.DO.Preload(_f))
  307. }
  308. return &a
  309. }
  310. func (a agentDo) FirstOrInit() (*model.Agent, error) {
  311. if result, err := a.DO.FirstOrInit(); err != nil {
  312. return nil, err
  313. } else {
  314. return result.(*model.Agent), nil
  315. }
  316. }
  317. func (a agentDo) FirstOrCreate() (*model.Agent, error) {
  318. if result, err := a.DO.FirstOrCreate(); err != nil {
  319. return nil, err
  320. } else {
  321. return result.(*model.Agent), nil
  322. }
  323. }
  324. func (a agentDo) FindByPage(offset int, limit int) (result []*model.Agent, count int64, err error) {
  325. result, err = a.Offset(offset).Limit(limit).Find()
  326. if err != nil {
  327. return
  328. }
  329. if size := len(result); 0 < limit && 0 < size && size < limit {
  330. count = int64(size + offset)
  331. return
  332. }
  333. count, err = a.Offset(-1).Limit(-1).Count()
  334. return
  335. }
  336. func (a agentDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
  337. count, err = a.Count()
  338. if err != nil {
  339. return
  340. }
  341. err = a.Offset(offset).Limit(limit).Scan(result)
  342. return
  343. }
  344. func (a agentDo) Scan(result interface{}) (err error) {
  345. return a.DO.Scan(result)
  346. }
  347. func (a agentDo) Delete(models ...*model.Agent) (result gen.ResultInfo, err error) {
  348. return a.DO.Delete(models)
  349. }
  350. func (a *agentDo) withDO(do gen.Dao) *agentDo {
  351. a.DO = *do.(*gen.DO)
  352. return a
  353. }